Tech-invite3GPPspecsGlossariesIETFRFCsGroupsSIPABNFsWorld Map

RFC 8294

 
 
 

Common YANG Data Types for the Routing Area

Part 2 of 2, p. 27 to 43
Prev Section

 


prevText      Top      ToC       Page 27 
4.  IANA Routing Types YANG Module

   <CODE BEGINS> file "iana-routing-types@2017-12-04.yang"

   module iana-routing-types {
     namespace "urn:ietf:params:xml:ns:yang:iana-routing-types";
     prefix iana-rt-types;

     organization
       "IANA";
     contact
       "Internet Assigned Numbers Authority

        Postal: ICANN
                12025 Waterfront Drive, Suite 300
                Los Angeles, CA  90094-2536
                United States of America
        Tel:    +1 310 301 5800
        <mailto:iana@iana.org>";

     description
       "This module contains a collection of YANG data types
        considered defined by IANA and used for routing
        protocols.

        Copyright (c) 2017 IETF Trust and the persons
        identified as authors of the code.  All rights reserved.

        Redistribution and use in source and binary forms, with or
        without modification, is permitted pursuant to, and subject
        to the license terms contained in, the Simplified BSD License
        set forth in Section 4.c of the IETF Trust's Legal Provisions
        Relating to IETF Documents
        (https://trustee.ietf.org/license-info).

        This version of this YANG module is part of RFC 8294; see
        the RFC itself for full legal notices.";

      revision 2017-12-04 {
        description "Initial revision.";
        reference
          "RFC 8294: Common YANG Data Types for the Routing Area.
           Section 4.";
     }

Top      Up      ToC       Page 28 
     /*** Collection of IANA types related to routing ***/
     /*** IANA Address Family enumeration ***/

     typedef address-family {
       type enumeration {
         enum ipv4 {
           value 1;
           description
             "IPv4 Address Family.";
         }

         enum ipv6 {
           value 2;
           description
             "IPv6 Address Family.";
         }

         enum nsap {
           value 3;
           description
             "OSI Network Service Access Point (NSAP) Address Family.";
         }

         enum hdlc {
           value 4;
           description
             "High-Level Data Link Control (HDLC) Address Family.";
         }

         enum bbn1822 {
           value 5;
           description
             "Bolt, Beranek, and Newman Report 1822 (BBN 1822)
              Address Family.";
         }

         enum ieee802 {
           value 6;
           description
             "IEEE 802 Committee Address Family
              (aka Media Access Control (MAC) address).";
         }

         enum e163 {
           value 7;
           description
             "ITU-T E.163 Address Family.";
         }

Top      Up      ToC       Page 29 
         enum e164 {
           value 8;
           description
             "ITU-T E.164 (Switched Multimegabit Data Service (SMDS),
              Frame Relay, ATM) Address Family.";
         }

         enum f69 {
           value 9;
           description
             "ITU-T F.69 (Telex) Address Family.";
         }

         enum x121 {
           value 10;
           description
             "ITU-T X.121 (X.25, Frame Relay) Address Family.";
         }

         enum ipx {
           value 11;
           description
             "Novell Internetwork Packet Exchange (IPX)
              Address Family.";
         }

         enum appletalk {
           value 12;
           description
             "Apple AppleTalk Address Family.";
         }

         enum decnet-iv {
           value 13;
           description
             "Digital Equipment DECnet Phase IV Address Family.";
         }

         enum vines {
           value 14;
           description
             "Banyan Vines Address Family.";
         }

Top      Up      ToC       Page 30 
         enum e164-nsap {
           value 15;
           description
             "ITU-T E.164 with NSAP sub-address Address Family.";
         }

         enum dns {
           value 16;
           description
             "Domain Name System (DNS) Address Family.";
         }

         enum distinguished-name {
           value 17;
           description
             "Distinguished Name Address Family.";
         }

         enum as-num {
           value 18;
           description
             "Autonomous System (AS) Number Address Family.";
         }

         enum xtp-v4 {
           value 19;
           description
             "Xpress Transport Protocol (XTP) over IPv4
              Address Family.";
         }

         enum xtp-v6 {
           value 20;
           description
             "XTP over IPv6 Address Family.";
         }

         enum xtp-native {
           value 21;
           description
             "XTP native mode Address Family.";
         }

         enum fc-port {
           value 22;
           description
             "Fibre Channel (FC) World-Wide Port Name Address Family.";
         }

Top      Up      ToC       Page 31 
         enum fc-node {
           value 23;
           description
             "FC World-Wide Node Name Address Family.";
         }

         enum gwid {
           value 24;
           description
             "ATM Gateway Identifier (GWID) Number Address Family.";
         }

         enum l2vpn {
           value 25;
           description
             "Layer 2 VPN (L2VPN) Address Family.";
         }

         enum mpls-tp-section-eid {
           value 26;
           description
             "MPLS Transport Profile (MPLS-TP) Section Endpoint
              Identifier Address Family.";
         }

         enum mpls-tp-lsp-eid {
           value 27;
           description
             "MPLS-TP Label Switched Path (LSP) Endpoint Identifier
              Address Family.";
         }

         enum mpls-tp-pwe-eid {
           value 28;
           description
             "MPLS-TP Pseudowire Endpoint Identifier Address Family.";
         }

         enum mt-v4 {
           value 29;
           description
             "Multi-Topology IPv4 Address Family.";
         }

Top      Up      ToC       Page 32 
         enum mt-v6 {
           value 30;
           description
             "Multi-Topology IPv6 Address Family.";
         }

         enum eigrp-common-sf {
           value 16384;
           description
             "Enhanced Interior Gateway Routing Protocol (EIGRP)
              Common Service Family Address Family.";
         }

         enum eigrp-v4-sf {
           value 16385;
           description
             "EIGRP IPv4 Service Family Address Family.";
         }

         enum eigrp-v6-sf {
           value 16386;
           description
             "EIGRP IPv6 Service Family Address Family.";
         }

         enum lcaf {
           value 16387;
           description
             "Locator/ID Separation Protocol (LISP)
              Canonical Address Format (LCAF) Address Family.";
         }

         enum bgp-ls {
           value 16388;
           description
             "Border Gateway Protocol - Link State (BGP-LS)
              Address Family.";
         }

         enum mac-48 {
           value 16389;
           description
             "IEEE 48-bit MAC Address Family.";
         }

Top      Up      ToC       Page 33 
         enum mac-64 {
           value 16390;
           description
             "IEEE 64-bit MAC Address Family.";
         }

         enum trill-oui {
           value 16391;
           description
             "Transparent Interconnection of Lots of Links (TRILL)
              IEEE Organizationally Unique Identifier (OUI)
              Address Family.";
         }

         enum trill-mac-24 {
           value 16392;
           description
             "TRILL final 3 octets of 48-bit MAC Address Family.";
         }

         enum trill-mac-40 {
           value 16393;
           description
             "TRILL final 5 octets of 64-bit MAC Address Family.";
         }

         enum ipv6-64 {
           value 16394;
           description
             "First 8 octets (64 bits) of IPv6 address
              Address Family.";
         }

         enum trill-rbridge-port-id {
           value 16395;
           description
             "TRILL Routing Bridge (RBridge) Port ID Address Family.";
         }

         enum trill-nickname {
           value 16396;
           description
             "TRILL Nickname Address Family.";
         }
       }

Top      Up      ToC       Page 34 
       description
         "Enumeration containing all the IANA-defined
          Address Families.";

     }

     /*** Subsequent Address Family Identifiers (SAFIs) ***/
     /*** for multiprotocol BGP enumeration ***/

     typedef bgp-safi {
       type enumeration {
         enum unicast-safi {
           value 1;
           description
             "Unicast SAFI.";
         }

         enum multicast-safi {
           value 2;
           description
             "Multicast SAFI.";
         }

         enum labeled-unicast-safi {
           value 4;
           description
             "Labeled Unicast SAFI.";
         }

         enum multicast-vpn-safi {
           value 5;
           description
             "Multicast VPN SAFI.";
         }

         enum pseudowire-safi {
           value 6;
           description
             "Multi-segment Pseudowire VPN SAFI.";
         }

         enum tunnel-encap-safi {
           value 7;
           description
             "Tunnel Encap SAFI.";
         }

Top      Up      ToC       Page 35 
         enum mcast-vpls-safi {
           value 8;
           description
             "Multicast Virtual Private LAN Service (VPLS) SAFI.";
         }

         enum tunnel-safi {
           value 64;
           description
             "Tunnel SAFI.";
         }

         enum vpls-safi {
           value 65;
           description
             "VPLS SAFI.";
         }

         enum mdt-safi {
           value 66;
           description
             "Multicast Distribution Tree (MDT) SAFI.";
         }

         enum v4-over-v6-safi {
           value 67;
           description
             "IPv4 over IPv6 SAFI.";
         }

         enum v6-over-v4-safi {
           value 68;
           description
             "IPv6 over IPv4 SAFI.";
         }

         enum l1-vpn-auto-discovery-safi {
           value 69;
           description
             "Layer 1 VPN Auto-Discovery SAFI.";
         }

         enum evpn-safi {
           value 70;
           description
             "Ethernet VPN (EVPN) SAFI.";
         }

Top      Up      ToC       Page 36 
         enum bgp-ls-safi {
           value 71;
           description
             "BGP-LS SAFI.";
         }

         enum bgp-ls-vpn-safi {
           value 72;
           description
             "BGP-LS VPN SAFI.";
         }

         enum sr-te-safi {
           value 73;
           description
             "Segment Routing - Traffic Engineering (SR-TE) SAFI.";
         }

         enum labeled-vpn-safi {
           value 128;
           description
             "MPLS Labeled VPN SAFI.";
         }

         enum multicast-mpls-vpn-safi {
           value 129;
           description
             "Multicast for BGP/MPLS IP VPN SAFI.";
         }

         enum route-target-safi {
           value 132;
           description
             "Route Target SAFI.";
         }

         enum ipv4-flow-spec-safi {
           value 133;
           description
             "IPv4 Flow Specification SAFI.";
         }

         enum vpnv4-flow-spec-safi {
           value 134;
           description
             "IPv4 VPN Flow Specification SAFI.";
         }

Top      Up      ToC       Page 37 
         enum vpn-auto-discovery-safi {
           value 140;
           description
             "VPN Auto-Discovery SAFI.";
         }
       }
       description
         "Enumeration for BGP SAFI.";
       reference
         "RFC 4760: Multiprotocol Extensions for BGP-4.";
     }
   }

   <CODE ENDS>

5.  IANA Considerations

   This document registers the following namespace URIs in the "IETF XML
   Registry" [RFC3688]:

   URI: urn:ietf:params:xml:ns:yang:ietf-routing-types
   Registrant Contact: The IESG.
   XML: N/A; the requested URI is an XML namespace.

   URI: urn:ietf:params:xml:ns:yang:iana-routing-types
   Registrant Contact: IANA.
   XML: N/A; the requested URI is an XML namespace.

   This document registers the following YANG modules in the "YANG
   Module Names" registry [RFC6020]:

   Name:         ietf-routing-types
   Namespace:    urn:ietf:params:xml:ns:yang:ietf-routing-types
   Prefix:       rt-types
   Reference:    RFC 8294

   Name:         iana-routing-types
   Namespace:    urn:ietf:params:xml:ns:yang:iana-routing-types
   Prefix:       iana-rt-types
   Reference:    RFC 8294

Top      Up      ToC       Page 38 
5.1.  IANA-Maintained iana-routing-types Module

   This document defines the initial version of the IANA-maintained
   iana-routing-types YANG module (Section 4).

   The iana-routing-types YANG module is intended to reflect the
   "Address Family Numbers" registry [IANA-ADDRESS-FAMILY-REGISTRY] and
   the "Subsequent Address Family Identifiers (SAFI) Parameters"
   registry [IANA-SAFI-REGISTRY].

   IANA has added this note to the "iana-routing-types YANG Module"
   registry:

      Address Families and Subsequent Address Families must not be
      directly added to the iana-routing-types YANG module.  They must
      instead be respectively added to the "Address Family Numbers" and
      "Subsequent Address Family Identifiers (SAFI) Parameters"
      registries.

   When an Address Family or Subsequent Address Family is respectively
   added to the "Address Family Numbers" registry or the "Subsequent
   Address Family Identifiers (SAFI) Parameters" registry, a new "enum"
   statement must be added to the iana-routing-types YANG module.  The
   name of the "enum" is the same as the corresponding Address Family or
   SAFI, except that it will be a valid YANG identifier in all lowercase
   and with hyphens separating individual words in compound identifiers.
   The following "enum" statement, and substatements thereof, should be
   defined:

      "enum": Contains the YANG enum identifier for the "address-family"
              (for Address Families) or "bgp-safi" (for Subsequent
              Address Families).  This may be the same as the
              "address-family" or "bgp-safi", or it may be a shorter
              version to facilitate YANG identifier usage.

      "value": Contains the IANA-assigned value corresponding to the
               "address-family" (for Address Families) or "bgp-safi"
               (for Subsequent Address Families).

      "status": Include only if a registration has been deprecated (use
                the value "deprecated") or obsoleted (use the value
                "obsolete").

Top      Up      ToC       Page 39 
      "description": Replicate the description from the registry,
                     if any.  Insert line breaks as needed so that the
                     line does not exceed 72 characters.

      "reference": Replicate the reference from the registry, if any,
                   and add the title of the document.

   Unassigned or reserved values are not present in these modules.

   When the iana-routing-types YANG module is updated, a new "revision"
   statement must be added in front of the existing revision statements.

   IANA has added this new note to the "Address Family Numbers" and
   "Subsequent Address Family Identifiers (SAFI) Parameters" registries:

      When this registry is modified, the YANG module iana-routing-types
      must be updated as defined in RFC 8294.

6.  Security Considerations

   This document defines common routing type definitions (i.e., typedef
   statements) using the YANG data modeling language.  The definitions
   themselves have no security or privacy impact on the Internet, but
   the usage of these definitions in concrete YANG modules might have.
   The security considerations spelled out in the YANG 1.1 specification
   [RFC7950] apply for this document as well.

7.  References

7.1.  Normative References

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              DOI 10.17487/RFC3688, January 2004,
              <https://www.rfc-editor.org/info/rfc3688>.

   [RFC6020]  Bjorklund, M., Ed., "YANG - A Data Modeling Language for
              the Network Configuration Protocol (NETCONF)", RFC 6020,
              DOI 10.17487/RFC6020, October 2010,
              <https://www.rfc-editor.org/info/rfc6020>.

   [RFC6991]  Schoenwaelder, J., Ed., "Common YANG Data Types",
              RFC 6991, DOI 10.17487/RFC6991, July 2013,
              <https://www.rfc-editor.org/info/rfc6991>.

   [RFC7950]  Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
              RFC 7950, DOI 10.17487/RFC7950, August 2016,
              <https://www.rfc-editor.org/info/rfc7950>.

Top      Up      ToC       Page 40 
   [IANA-ADDRESS-FAMILY-REGISTRY]
              "IANA Address Family Numbers Registry",
              <https://www.iana.org/assignments/
              address-family-numbers/>.

   [IANA-SAFI-REGISTRY]
              "IANA Subsequent Address Family Identifiers (SAFI)
              Parameters Registry",
              <https://www.iana.org/assignments/safi-namespace/>.

7.2.  Informative References

   [IEEE754]  IEEE, "IEEE Standard for Floating-Point Arithmetic",
              IEEE 754-2008, DOI 10.1109/IEEESTD.2008.4610935.

   [BGP-Model]
              Shaikh, A., Ed., Shakir, R., Ed., Patel, K., Ed., Hares,
              S., Ed., D'Souza, K., Bansal, D., Clemm, A., Zhdankin, A.,
              Jethanandani, M., and X. Liu, "BGP Model for Service
              Provider Networks", Work in Progress,
              draft-ietf-idr-bgp-model-02, July 2016.

   [OSPF-YANG]
              Yeung, D., Qu, Y., Zhang, J., Chen, I., and A. Lindem,
              "Yang Data Model for OSPF Protocol", Work in Progress,
              draft-ietf-ospf-yang-09, October 2017.

   [PIM-YANG] Liu, X., McAllister, P., Peter, A., Sivakumar, M., Liu,
              Y., and F. Hu, "A YANG data model for Protocol-Independent
              Multicast (PIM)", Work in Progress,
              draft-ietf-pim-yang-12, December 2017.

   [TE-YANG]  Saad, T., Ed., Gandhi, R., Liu, X., Beeram, V., Shah, H.,
              and I. Bryskin, "A YANG Data Model for Traffic Engineering
              Tunnels and Interfaces", Work in Progress,
              draft-ietf-teas-yang-te-09, October 2017.

   [L2VPN-YANG]
              Shah, H., Ed., Brissette, P., Ed., Chen, I., Ed., Hussain,
              I., Ed., Wen, B., Ed., and K. Tiruveedhula, Ed., "YANG
              Data Model for MPLS-based L2VPN", Work in Progress,
              draft-ietf-bess-l2vpn-yang-07, September 2017.

   [MPLS-Base-YANG]
              Saad, T., Raza, K., Gandhi, R., Liu, X., Beeram, V., Shah,
              H., Bryskin, I., Chen, X., Jones, R., and B. Wen, "A YANG
              Data Model for MPLS Base", Work in Progress,
              draft-ietf-mpls-base-yang-05, July 2017.

Top      Up      ToC       Page 41 
   [RFC3032]  Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y.,
              Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack
              Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001,
              <https://www.rfc-editor.org/info/rfc3032>.

   [RFC3209]  Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
              and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
              Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
              <https://www.rfc-editor.org/info/rfc3209>.

   [RFC3471]  Berger, L., Ed., "Generalized Multi-Protocol Label
              Switching (GMPLS) Signaling Functional Description",
              RFC 3471, DOI 10.17487/RFC3471, January 2003,
              <https://www.rfc-editor.org/info/rfc3471>.

   [RFC4364]  Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private
              Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364,
              February 2006, <https://www.rfc-editor.org/info/rfc4364>.

   [RFC4664]  Andersson, L., Ed., and E. Rosen, Ed., "Framework for
              Layer 2 Virtual Private Networks (L2VPNs)", RFC 4664,
              DOI 10.17487/RFC4664, September 2006,
              <https://www.rfc-editor.org/info/rfc4664>.

   [RFC5701]  Rekhter, Y., "IPv6 Address Specific BGP Extended Community
              Attribute", RFC 5701, DOI 10.17487/RFC5701, November 2009,
              <https://www.rfc-editor.org/info/rfc5701>.

   [RFC5880]  Katz, D. and D. Ward, "Bidirectional Forwarding Detection
              (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010,
              <https://www.rfc-editor.org/info/rfc5880>.

   [RFC7274]  Kompella, K., Andersson, L., and A. Farrel, "Allocating
              and Retiring Special-Purpose MPLS Labels", RFC 7274,
              DOI 10.17487/RFC7274, June 2014,
              <https://www.rfc-editor.org/info/rfc7274>.

   [RFC7432]  Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A.,
              Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based
              Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432,
              February 2015, <https://www.rfc-editor.org/info/rfc7432>.

Top      Up      ToC       Page 42 
Acknowledgements

   The Routing Area YANG Architecture design team members included Acee
   Lindem, Anees Shaikh, Christian Hopps, Dean Bogdanovic, Ebben Aries,
   Lou Berger, Qin Wu, Rob Shakir, Xufeng Liu, and Yingzhen Qu.

   Thanks to Martin Bjorklund, Tom Petch, Stewart Bryant, and Radek
   Krejci for comments on the model and document text.  Thanks to Jeff
   Haas and Robert Raszuk for suggestions for additional common routing
   types.

Top      Up      ToC       Page 43 
Authors' Addresses

   Xufeng Liu
   Jabil
   8281 Greensboro Drive, Suite 200
   McLean, VA  22102

   United States of America
   Email: Xufeng_Liu@jabil.com


   Yingzhen Qu
   Futurewei Technologies, Inc.
   2330 Central Expressway
   Santa Clara, CA  95050
   United States of America

   Email: yingzhen.qu@huawei.com


   Acee Lindem
   Cisco Systems
   301 Midenhall Way
   Cary, NC  27513
   United States of America

   Email: acee@cisco.com


   Christian Hopps
   Deutsche Telekom

   Email: chopps@chopps.org


   Lou Berger
   LabN Consulting, L.L.C.

   Email: lberger@labn.net