| < draft-ietf-rtgwg-routing-types-02.txt | draft-ietf-rtgwg-routing-types-03.txt > | |||
|---|---|---|---|---|
| Network Working Group X. Liu | Network Working Group X. Liu | |||
| Internet-Draft Jabil | Internet-Draft Jabil | |||
| Intended status: Standards Track Y. Qu | Intended status: Standards Track Y. Qu | |||
| Expires: September 4, 2017 Futurewei Technologies, Inc. | Expires: November 11, 2017 Futurewei Technologies, Inc. | |||
| A. Lindem | A. Lindem | |||
| Cisco Systems | Cisco Systems | |||
| C. Hopps | C. Hopps | |||
| Deutsche Telekom | Deutsche Telekom | |||
| L. Berger | L. Berger | |||
| LabN Consulting, L.L.C. | LabN Consulting, L.L.C. | |||
| March 3, 2017 | May 10, 2017 | |||
| Routing Area Common YANG Data Types | Routing Area Common YANG Data Types | |||
| draft-ietf-rtgwg-routing-types-02 | draft-ietf-rtgwg-routing-types-03 | |||
| Abstract | Abstract | |||
| This document defines a collection of common data types using the | This document defines a collection of common data types using the | |||
| YANG data modeling language. These derived common types are designed | YANG data modeling language. These derived common types are designed | |||
| to be imported by other modules defined in the routing area. | to be imported by other modules defined in the routing area. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| skipping to change at page 1, line 39 ¶ | skipping to change at page 1, line 39 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on September 4, 2017. | This Internet-Draft will expire on November 11, 2017. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2017 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| skipping to change at page 2, line 16 ¶ | skipping to change at page 2, line 16 ¶ | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 | 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 | |||
| 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 | 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. IETF Routing Types YANG Module . . . . . . . . . . . . . . . 6 | |||
| 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 | 4. IANA Routing Types YANG Module . . . . . . . . . . . . . . . 18 | |||
| 5. Security Considerations . . . . . . . . . . . . . . . . . . . 21 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 | |||
| 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 21 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 28 | |||
| 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 21 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 29 | |||
| 7.1. Normative References . . . . . . . . . . . . . . . . . . 21 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 29 | |||
| 7.2. Informative References . . . . . . . . . . . . . . . . . 22 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 29 | |||
| 7.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 23 | 8.2. Informative References . . . . . . . . . . . . . . . . . 29 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 | 8.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 31 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 31 | ||||
| 1. Introduction | 1. Introduction | |||
| The YANG [RFC6020] [RFC7950] is a data modeling language used to | The YANG [RFC6020] [RFC7950] is a data modeling language used to | |||
| model configuration data, state data, Remote Procedure Calls, and | model configuration data, state data, Remote Procedure Calls, and | |||
| notifications for network management protocols. The YANG language | notifications for network management protocols. The YANG language | |||
| supports a small set of built-in data types and provides mechanisms | supports a small set of built-in data types and provides mechanisms | |||
| to derive other types from the built-in types. | to derive other types from the built-in types. | |||
| This document introduces a collection of common data types derived | This document introduces a collection of common data types derived | |||
| skipping to change at page 3, line 7 ¶ | skipping to change at page 3, line 7 ¶ | |||
| document are to be interpreted as described in BCP 14, RFC 2119 | document are to be interpreted as described in BCP 14, RFC 2119 | |||
| [RFC2119]. | [RFC2119]. | |||
| 1.2. Terminology | 1.2. Terminology | |||
| The terminology for describing YANG data models is found in | The terminology for describing YANG data models is found in | |||
| [RFC7950]. | [RFC7950]. | |||
| 2. Overview | 2. Overview | |||
| This document defines the following data types: | This document defines the two models for common routing types, ietf- | |||
| routing-types and iana-routing-types. The only module imports are | ||||
| from [RFC6021]. The ietf-routing-types model contains common routing | ||||
| types other than those corresponding directly to IANA mappings. | ||||
| These include: | ||||
| router-id | router-id | |||
| Router Identifiers are commonly used to identify a nodes in | Router Identifiers are commonly used to identify a nodes in | |||
| routing and other control plane protocols. An example usage of | routing and other control plane protocols. An example usage of | |||
| router-id can be found in [I-D.ietf-ospf-yang]. | router-id can be found in [I-D.ietf-ospf-yang]. | |||
| address-family | address-family | |||
| This type defines values for use in address family identifiers. | This type defines values for use in address family identifiers. | |||
| The values are based on the IANA Address Family Numbers Registry | The values are based on the IANA Address Family Numbers Registry | |||
| [1]. An example usage can be found in [I-D.ietf-idr-bgp-model]. | [1]. An example usage can be found in [I-D.ietf-idr-bgp-model]. | |||
| skipping to change at page 5, line 7 ¶ | skipping to change at page 5, line 12 ¶ | |||
| represented in a uint32 (4 octets). An example of where this type | represented in a uint32 (4 octets). An example of where this type | |||
| may/will be used is [I-D.ietf-teas-yang-rsvp]. | may/will be used is [I-D.ietf-teas-yang-rsvp]. | |||
| timer-value-milliseconds | timer-value-milliseconds | |||
| This type covers timers which can be set in milliseconds, not set, | This type covers timers which can be set in milliseconds, not set, | |||
| or set to infinity. This type supports a range of values that can | or set to infinity. This type supports a range of values that can | |||
| be represented in a uint32 (4 octets). Examples of where this | be represented in a uint32 (4 octets). Examples of where this | |||
| type may/will be used include [I-D.ietf-teas-yang-rsvp] and | type may/will be used include [I-D.ietf-teas-yang-rsvp] and | |||
| [I-D.ietf-bfd-yang]. | [I-D.ietf-bfd-yang]. | |||
| percentage | ||||
| This type defines a percentage with a range of 0-100%. An example | ||||
| usage can be found in [I-D.ietf-idr-bgp-model]. | ||||
| timeticks64 | ||||
| This type is based on the timeticks type defined in [RFC6991] but | ||||
| with 64-bit precision. It represents the time in hundredths of a | ||||
| second between two epochs. An example usage can be found in | ||||
| [I-D.ietf-idr-bgp-model]. | ||||
| generalized-label | generalized-label | |||
| This type represents a generalized label for Generalized Multi- | This type represents a generalized label for Generalized Multi- | |||
| Protocol Label Switching (GMPLS) [RFC3471]. The Generalized Label | Protocol Label Switching (GMPLS) [RFC3471]. The Generalized Label | |||
| does not identify its type, which is known from the context. An | does not identify its type, which is known from the context. An | |||
| example usage can be found in [I-D.ietf-teas-yang-te]. | example usage can be found in [I-D.ietf-teas-yang-te]. | |||
| mpls-label-special-purpose | mpls-label-special-purpose | |||
| This type represents the special-purpose Multiprotocol Label | This type represents the special-purpose Multiprotocol Label | |||
| Switching (MPLS) label values [RFC7274]. An example usage can be | Switching (MPLS) label values [RFC7274]. An example usage can be | |||
| found in [I-D.ietf-mpls-base-yang]. | found in [I-D.ietf-mpls-base-yang]. | |||
| skipping to change at page 5, line 47 ¶ | skipping to change at page 6, line 14 ¶ | |||
| This grouping defines a reusable collection of schema nodes | This grouping defines a reusable collection of schema nodes | |||
| representing an MPLS label stack [RFC3032]. An example usage can | representing an MPLS label stack [RFC3032]. An example usage can | |||
| be found in [I-D.ietf-mpls-base-yang]. | be found in [I-D.ietf-mpls-base-yang]. | |||
| vpn-route-targets | vpn-route-targets | |||
| This grouping defines a reusable collection of schema nodes | This grouping defines a reusable collection of schema nodes | |||
| representing Route Target import-export rules used in the BGP | representing Route Target import-export rules used in the BGP | |||
| enabled Virtual Private Networks (VPNs). [RFC4364][RFC4664]. An | enabled Virtual Private Networks (VPNs). [RFC4364][RFC4664]. An | |||
| example usage can be found in [I-D.ietf-bess-l2vpn-yang]. | example usage can be found in [I-D.ietf-bess-l2vpn-yang]. | |||
| 3. YANG Module | The iana-routing-types model contains common routing types | |||
| corresponding directly to IANA mappings. These include: | ||||
| <CODE BEGINS> file "ietf-routing-types@2017-02-27.yang" | address-family | |||
| This type defines values for use in address family identifiers. | ||||
| The values are based on the IANA Address Family Numbers Registry | ||||
| [2]. An example usage can be found in [I-D.ietf-idr-bgp-model]. | ||||
| subsequent-address-family | ||||
| This type defines values for use in subsequent address family | ||||
| (SAFI) identifiers. The values are based on the IANA Subsequent | ||||
| Address Family Identifiers Registry [3]. | ||||
| 3. IETF Routing Types YANG Module | ||||
| <CODE BEGINS> file "ietf-routing-types@2017-05-10.yang" | ||||
| module ietf-routing-types { | module ietf-routing-types { | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-routing-types"; | namespace "urn:ietf:params:xml:ns:yang:ietf-routing-types"; | |||
| prefix "rt-types"; | prefix "rt-types"; | |||
| import ietf-yang-types { | import ietf-yang-types { | |||
| prefix "yang"; | prefix "yang"; | |||
| } | } | |||
| import ietf-inet-types { | import ietf-inet-types { | |||
| prefix "inet"; | prefix "inet"; | |||
| } | } | |||
| organization "IETF Routing Area Working Group (rtgwg)"; | organization "IETF Routing Area Working Group (rtgwg)"; | |||
| contact | contact | |||
| "Routing Area Working Group - <rtgwg@ietf.org>"; | "Routing Area Working Group - <rtgwg@ietf.org>"; | |||
| description | description | |||
| "This module contains a collection of YANG data types | "This module contains a collection of YANG data types | |||
| considered generally useful for routing protocols."; | considered generally useful for routing protocols. | |||
| revision 2017-02-27 { | 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 | ||||
| (http://trustee.ietf.org/license-info). | ||||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | ||||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'MAY', and | ||||
| 'OPTIONAL' in the module text are to be interpreted as described | ||||
| in RFC 2119. | ||||
| This version of this YANG module is part of RFC XXXX; | ||||
| see the RFC itself for full legal notices."; | ||||
| revision 2017-05-10 { | ||||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC TBD: Routing YANG Data Types"; | "RFC TBD: Routing YANG Data Types"; | |||
| } | } | |||
| /*** collection of types related to routing ***/ | /*** collection of types related to routing ***/ | |||
| typedef router-id { | typedef router-id { | |||
| type yang:dotted-quad; | type yang:dotted-quad; | |||
| description | description | |||
| "A 32-bit number in the dotted quad format assigned to each | "A 32-bit number in the dotted quad format assigned to each | |||
| router. This number uniquely identifies the router within an | router. This number uniquely identifies the router within an | |||
| Autonomous System."; | Autonomous System."; | |||
| } | } | |||
| // address-family | ||||
| identity address-family { | ||||
| description | ||||
| "Base identity from which identities describing address | ||||
| families are derived."; | ||||
| } | ||||
| identity ipv4 { | ||||
| base address-family; | ||||
| description | ||||
| "This identity represents IPv4 address family."; | ||||
| } | ||||
| identity ipv6 { | ||||
| base address-family; | ||||
| description | ||||
| "This identity represents IPv6 address family."; | ||||
| } | ||||
| //The rest of the values deinfed in the IANA registry | ||||
| identity nsap { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity hdlc { | ||||
| base address-family; | ||||
| description | ||||
| "(8-bit multidrop) | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity bbn1822 { | ||||
| base address-family; | ||||
| description | ||||
| "AHIP (BBN report #1822) | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity ieee802 { | ||||
| base address-family; | ||||
| description | ||||
| "(includes all 802 media plus Ethernet canonical format) | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity e163 { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity e164 { | ||||
| base address-family; | ||||
| description | ||||
| "SMDS, Frame Relay, ATM | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity f69 { | ||||
| base address-family; | ||||
| description | ||||
| "(Telex) | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity x121 { | ||||
| base address-family; | ||||
| description | ||||
| "(X.25, Frame Relay) | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity ipx { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity appletalk { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity decnet-iv { | ||||
| base address-family; | ||||
| description | ||||
| "Decnet IV | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity vines { | ||||
| base address-family; | ||||
| description | ||||
| "Banyan Vines | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity e164-nsap { | ||||
| base address-family; | ||||
| description | ||||
| "E.164 with NSAP format subaddress | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity dns { | ||||
| base address-family; | ||||
| description | ||||
| "Domain Name System | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity dn { | ||||
| base address-family; | ||||
| description | ||||
| "Distinguished Name | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity as-num { | ||||
| base address-family; | ||||
| description | ||||
| "AS Number | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity xtp-v4 { | ||||
| base address-family; | ||||
| description | ||||
| "XTP over IPv4 | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity xtp-v6 { | ||||
| base address-family; | ||||
| description | ||||
| "XTP over IPv6 | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity xtp { | ||||
| base address-family; | ||||
| description | ||||
| "XTP native mode XTP | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity fc-port { | ||||
| base address-family; | ||||
| description | ||||
| "Fibre Channel World-Wide Port Name | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity fc-node { | ||||
| base address-family; | ||||
| description | ||||
| "Fibre Channel World-Wide Node Name | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity gwid { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity l2vpn { | ||||
| base address-family; | ||||
| description | ||||
| "Address family from IANA registry."; | ||||
| } | ||||
| identity mpls-tp-section-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP Section Endpoint Identifier | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity mpls-tp-lsp-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP LSP Endpoint Identifier | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity mpls-tp-pwe-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP Pseudowire Endpoint Identifier | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity mt-v4 { | ||||
| base address-family; | ||||
| description | ||||
| "Multi-Topology IPv4. | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| identity mt-v6 { | ||||
| base address-family; | ||||
| description | ||||
| "Multi-Topology IPv6. | ||||
| Address family from IANA registry."; | ||||
| } | ||||
| /*** collection of types related to VPN ***/ | /*** collection of types related to VPN ***/ | |||
| typedef route-target { | typedef route-target { | |||
| type string { | type string { | |||
| pattern | pattern | |||
| '(0:(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|' | '(0:(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|' | |||
| + '[0-5]?\d{0,3}\d):(429496729[0-5]|42949672[0-8]\d|' | + '[0-5]?\d{0,3}\d):(429496729[0-5]|42949672[0-8]\d|' | |||
| + '4294967[01]\d{2}|429496[0-6]\d{3}|42949[0-5]\d{4}|' | + '4294967[01]\d{2}|429496[0-6]\d{3}|42949[0-5]\d{4}|' | |||
| + '4294[0-8]\d{5}|429[0-3]\d{6}|42[0-8]\d{7}|4[01]\d{8}|' | + '4294[0-8]\d{5}|429[0-3]\d{6}|42[0-8]\d{7}|4[01]\d{8}|' | |||
| + '[0-3]?\d{0,8}\d))|' | + '[0-3]?\d{0,8}\d))|' | |||
| + '(1:(((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|' | + '(1:(((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|' | |||
| skipping to change at page 13, line 22 ¶ | skipping to change at page 10, line 30 ¶ | |||
| "RFC4291: IP Version 6 Addressing Architecture. Sec 2.7. | "RFC4291: IP Version 6 Addressing Architecture. Sec 2.7. | |||
| RFC7346: IPv6 Multicast Address Scopes."; | RFC7346: IPv6 Multicast Address Scopes."; | |||
| } | } | |||
| typedef ip-multicast-group-address { | typedef ip-multicast-group-address { | |||
| type union { | type union { | |||
| type ipv4-multicast-group-address; | type ipv4-multicast-group-address; | |||
| type ipv6-multicast-group-address; | type ipv6-multicast-group-address; | |||
| } | } | |||
| description | description | |||
| "This type represents an IP multicast group address and is IP | "This type represents a version-neutral IP multicast group | |||
| version neutral. The format of the textual representation | address. The format of the textual representation implies | |||
| implies the IP version."; | the IP version."; | |||
| } | } | |||
| typedef ipv4-multicast-source-address { | typedef ipv4-multicast-source-address { | |||
| type union { | type union { | |||
| type enumeration { | type enumeration { | |||
| enum '*' { | enum '*' { | |||
| description | description | |||
| "Any source address."; | "Any source address."; | |||
| } | } | |||
| } | } | |||
| skipping to change at page 14, line 20 ¶ | skipping to change at page 11, line 28 ¶ | |||
| pattern | pattern | |||
| '0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|' | '0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|' | |||
| + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?[pP](\+)?(12[0-7]|' | + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?[pP](\+)?(12[0-7]|' | |||
| + '1[01]\d|0?\d?\d)?)'; | + '1[01]\d|0?\d?\d)?)'; | |||
| } | } | |||
| description | description | |||
| "Bandwidth in IEEE 754 floating point 32-bit binary format: | "Bandwidth in IEEE 754 floating point 32-bit binary format: | |||
| (-1)**(S) * 2**(Exponent-127) * (1 + Fraction), | (-1)**(S) * 2**(Exponent-127) * (1 + Fraction), | |||
| where Exponent uses 8 bits, and Fraction uses 23 bits. | where Exponent uses 8 bits, and Fraction uses 23 bits. | |||
| The units are octets per second. | The units are octets per second. | |||
| The encoding format is the external hexadecimal-significand | The encoding format is the external hexadecimal-significant | |||
| character sequences specified in IEEE 754 and C99, | character sequences specified in IEEE 754 and C99. The | |||
| restricted to be normalized, non-negative, and non-fraction: | format is restricted to be normalized, non-negative, and | |||
| 0x1.hhhhhhp{+}d or 0X1.HHHHHHP{+}D | non-fraction: 0x1.hhhhhhp{+}d or 0X1.HHHHHHP{+}D | |||
| where 'h' and 'H' are hexadecimal digits, 'd' and 'D' are | where 'h' and 'H' are hexadecimal digits, 'd' and 'D' are | |||
| integers in the range of [0..127]. | integers in the range of [0..127]. | |||
| When six hexadecimal digits are used for 'hhhhhh' or 'HHHHHH', | When six hexadecimal digits are used for 'hhhhhh' or 'HHHHHH', | |||
| the least significant digit must be an even number. | the least significant digit must be an even number. | |||
| 'x' and 'X' indicate hexadecimal; 'p' and 'P' indicate power | 'x' and 'X' indicate hexadecimal; 'p' and 'P' indicate power | |||
| of two. | of two. Some examples are: 0x0p0, 0x1p10, and | |||
| Some examples are: 0x0p0, 0x1p10, and 0x1.abcde2p+20"; | 0x1.abcde2p+20"; | |||
| reference | reference | |||
| "IEEE Std 754-2008: IEEE Standard for Floating-Point | "IEEE Std 754-2008: IEEE Standard for Floating-Point | |||
| Arithmetic."; | Arithmetic."; | |||
| } | } | |||
| typedef link-access-type { | typedef link-access-type { | |||
| type enumeration { | type enumeration { | |||
| enum "broadcast" { | enum "broadcast" { | |||
| description | description | |||
| "Specify broadcast multi-access network."; | "Specify broadcast multi-access network."; | |||
| skipping to change at page 15, line 33 ¶ | skipping to change at page 12, line 41 ¶ | |||
| type enumeration { | type enumeration { | |||
| enum "infinity" { | enum "infinity" { | |||
| description "The timer is set to infinity."; | description "The timer is set to infinity."; | |||
| } | } | |||
| enum "not-set" { | enum "not-set" { | |||
| description "The timer is not set."; | description "The timer is not set."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| units seconds; | units seconds; | |||
| description "Timer value type, in seconds (16 bit range)."; | description "Timer value type, in seconds (16-bit range)."; | |||
| } | } | |||
| typedef timer-value-seconds32 { | typedef timer-value-seconds32 { | |||
| type union { | type union { | |||
| type uint32 { | type uint32 { | |||
| range "1..4294967295"; | range "1..4294967295"; | |||
| } | } | |||
| type enumeration { | type enumeration { | |||
| enum "infinity" { | enum "infinity" { | |||
| description "The timer is set to infinity."; | description "The timer is set to infinity."; | |||
| skipping to change at page 15, line 44 ¶ | skipping to change at page 13, line 4 ¶ | |||
| } | } | |||
| typedef timer-value-seconds32 { | typedef timer-value-seconds32 { | |||
| type union { | type union { | |||
| type uint32 { | type uint32 { | |||
| range "1..4294967295"; | range "1..4294967295"; | |||
| } | } | |||
| type enumeration { | type enumeration { | |||
| enum "infinity" { | enum "infinity" { | |||
| description "The timer is set to infinity."; | description "The timer is set to infinity."; | |||
| } | } | |||
| enum "not-set" { | enum "not-set" { | |||
| description "The timer is not set."; | description "The timer is not set."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| units seconds; | units seconds; | |||
| description "Timer value type, in seconds (32 bit range)."; | description "Timer value type, in seconds (32-bit range)."; | |||
| } | } | |||
| typedef timer-value-milliseconds { | typedef timer-value-milliseconds { | |||
| type union { | type union { | |||
| type uint32{ | type uint32{ | |||
| range "1..4294967295"; | range "1..4294967295"; | |||
| } | } | |||
| type enumeration { | type enumeration { | |||
| enum "infinity" { | enum "infinity" { | |||
| description "The timer is set to infinity."; | description "The timer is set to infinity."; | |||
| } | } | |||
| enum "not-set" { | enum "not-set" { | |||
| description "The timer is not set."; | description "The timer is not set."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| units milliseconds; | units milliseconds; | |||
| description "Timer value type, in milliseconds."; | description "Timer value type, in milliseconds."; | |||
| } | } | |||
| typedef percentage { | ||||
| type uint8 { | ||||
| range "0..100"; | ||||
| } | ||||
| description | ||||
| "Integer indicating a percentage value"; | ||||
| } | ||||
| typedef timeticks64 { | ||||
| type uint64; | ||||
| description | ||||
| "This type is based on the timeticks type defined in | ||||
| RFC 6991, but with 64-bit width. It represents the time, | ||||
| modulo 2^64, in hundredths of a second between two epochs."; | ||||
| reference | ||||
| "RFC 6991 - Common YANG Data Types"; | ||||
| } | ||||
| /*** collection of types related to MPLS/GMPLS ***/ | /*** collection of types related to MPLS/GMPLS ***/ | |||
| typedef generalized-label { | typedef generalized-label { | |||
| type binary; | type binary; | |||
| description | description | |||
| "Generalized label. Nodes sending and receiving the | "Generalized label. Nodes sending and receiving the | |||
| Generalized Label know the kinds of link they are | Generalized Label are aware of the link-specific | |||
| using. Hence, the Generalized Label does not identify | label context and type."; | |||
| its type. Instead, nodes are expected to know from | ||||
| the context and type of label to expect."; | ||||
| reference "RFC3471: Section 3.2"; | reference "RFC3471: Section 3.2"; | |||
| } | } | |||
| identity mpls-label-special-purpose-value { | identity mpls-label-special-purpose-value { | |||
| description | description | |||
| "Base identity for deriving identities describing | "Base identity for deriving identities describing | |||
| special-purpose Multiprotocol Label Switching (MPLS) label | special-purpose Multiprotocol Label Switching (MPLS) label | |||
| values."; | values."; | |||
| reference | reference | |||
| "RFC7274: Allocating and Retiring Special-Purpose MPLS | "RFC7274: Allocating and Retiring Special-Purpose MPLS | |||
| skipping to change at page 18, line 28 ¶ | skipping to change at page 16, line 4 ¶ | |||
| Sections 3.1 and 5."; | Sections 3.1 and 5."; | |||
| } | } | |||
| typedef mpls-label-special-purpose { | typedef mpls-label-special-purpose { | |||
| type identityref { | type identityref { | |||
| base mpls-label-special-purpose-value; | base mpls-label-special-purpose-value; | |||
| } | } | |||
| description | description | |||
| "This type represents the special-purpose Multiprotocol Label | "This type represents the special-purpose Multiprotocol Label | |||
| Switching (MPLS) label values."; | Switching (MPLS) label values."; | |||
| reference | reference | |||
| "RFC3032: MPLS Label Stack Encoding. | "RFC3032: MPLS Label Stack Encoding. | |||
| RFC7274: Allocating and Retiring Special-Purpose MPLS | RFC7274: Allocating and Retiring Special-Purpose MPLS | |||
| Labels."; | Labels."; | |||
| } | } | |||
| typedef mpls-label-general-use { | typedef mpls-label-general-use { | |||
| type uint32 { | type uint32 { | |||
| range "16..1048575"; | range "16..1048575"; | |||
| } | } | |||
| description | description | |||
| "The 20 bits label values in an MPLS label stack entry, | "The 20-bit label values in an MPLS label stack entry, | |||
| specified in RFC3032. This label value does not include | specified in RFC3032. This label value does not include | |||
| the encodings of Traffic Class and TTL (time to live). | the encodings of Traffic Class and TTL (time to live). | |||
| The label range specified by this type is for general use, | The label range specified by this type is for general use, | |||
| with special-purpose MPLS label values excluded."; | with special-purpose MPLS label values excluded."; | |||
| reference | reference | |||
| "RFC3032: MPLS Label Stack Encoding."; | "RFC3032: MPLS Label Stack Encoding."; | |||
| } | } | |||
| typedef mpls-label { | typedef mpls-label { | |||
| type union { | type union { | |||
| skipping to change at page 19, line 4 ¶ | skipping to change at page 16, line 29 ¶ | |||
| The label range specified by this type is for general use, | The label range specified by this type is for general use, | |||
| with special-purpose MPLS label values excluded."; | with special-purpose MPLS label values excluded."; | |||
| reference | reference | |||
| "RFC3032: MPLS Label Stack Encoding."; | "RFC3032: MPLS Label Stack Encoding."; | |||
| } | } | |||
| typedef mpls-label { | typedef mpls-label { | |||
| type union { | type union { | |||
| type mpls-label-special-purpose; | type mpls-label-special-purpose; | |||
| type mpls-label-general-use; | type mpls-label-general-use; | |||
| } | } | |||
| description | description | |||
| "The 20 bits label values in an MPLS label stack entry, | "The 20-bit label values in an MPLS label stack entry, | |||
| specified in RFC3032. This label value does not include | specified in RFC3032. This label value does not include | |||
| the encodings of Traffic Class and TTL (time to live)."; | the encodings of Traffic Class and TTL (time to live)."; | |||
| reference | reference | |||
| "RFC3032: MPLS Label Stack Encoding."; | "RFC3032: MPLS Label Stack Encoding."; | |||
| } | } | |||
| /* | /* | |||
| * Groupings | * Groupings | |||
| */ | */ | |||
| grouping mpls-label-stack { | grouping mpls-label-stack { | |||
| skipping to change at page 20, line 10 ¶ | skipping to change at page 17, line 34 ¶ | |||
| } | } | |||
| description | description | |||
| "Traffic Class (TC)."; | "Traffic Class (TC)."; | |||
| reference | reference | |||
| "RFC5462: Multiprotocol Label Switching (MPLS) Label | "RFC5462: Multiprotocol Label Switching (MPLS) Label | |||
| Stack Entry: 'EXP' Field Renamed to 'Traffic Class' | Stack Entry: 'EXP' Field Renamed to 'Traffic Class' | |||
| Field."; | Field."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } // mpls-label-stack | } | |||
| grouping vpn-route-targets { | grouping vpn-route-targets { | |||
| description | description | |||
| "A grouping that specifies Route Target import-export rules | "A grouping that specifies Route Target import-export rules | |||
| used in the BGP enabled Virtual Private Networks (VPNs)."; | used in the BGP enabled Virtual Private Networks (VPNs)."; | |||
| reference | reference | |||
| "RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs). | "RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs). | |||
| RFC4664: Framework for Layer 2 Virtual Private Networks | RFC4664: Framework for Layer 2 Virtual Private Networks | |||
| (L2VPNs)"; | (L2VPNs)"; | |||
| list vpn-target { | list vpn-target { | |||
| skipping to change at page 20, line 28 ¶ | skipping to change at page 18, line 4 ¶ | |||
| RFC4664: Framework for Layer 2 Virtual Private Networks | RFC4664: Framework for Layer 2 Virtual Private Networks | |||
| (L2VPNs)"; | (L2VPNs)"; | |||
| list vpn-target { | list vpn-target { | |||
| key route-target; | key route-target; | |||
| description | description | |||
| "List of Route Targets."; | "List of Route Targets."; | |||
| leaf route-target { | leaf route-target { | |||
| type rt-types:route-target; | type rt-types:route-target; | |||
| description | description | |||
| "Route Target value"; | "Route Target value"; | |||
| } | } | |||
| leaf route-target-type { | leaf route-target-type { | |||
| type rt-types:route-target-type; | type rt-types:route-target-type; | |||
| mandatory true; | mandatory true; | |||
| description | description | |||
| "Import/export type of the Route Target."; | "Import/export type of the Route Target."; | |||
| } | } | |||
| } | } | |||
| } // vpn-route-targets | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 4. IANA Considerations | 4. IANA Routing Types YANG Module | |||
| <CODE BEGINS> file "iana-routing-types@2017-05-10.yang" | ||||
| module iana-routing-types { | ||||
| namespace "urn:ietf:params:xml:ns:yang:iana-routing-types"; | ||||
| prefix "iana-rt-types"; | ||||
| organization "IETF Routing Area Working Group (rtgwg)"; | ||||
| contact | ||||
| "Routing Area Working Group - <rtgwg@ietf.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 | ||||
| (http://trustee.ietf.org/license-info). | ||||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | ||||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'MAY', and | ||||
| 'OPTIONAL' in the module text are to be interpreted as described | ||||
| in RFC 2119. | ||||
| This version of this YANG module is part of RFC XXXX; | ||||
| see the RFC itself for full legal notices."; | ||||
| revision 2017-05-10 { | ||||
| description | ||||
| "Initial revision."; | ||||
| reference | ||||
| "RFC TBD: IANA Routing YANG Data Types"; | ||||
| } | ||||
| /*** Collection of IANA types related to routing ***/ | ||||
| /*** IANA address family Identies ***/ | ||||
| identity address-family { | ||||
| description | ||||
| "Base identity from which identities describing address | ||||
| families are derived."; | ||||
| } | ||||
| identity ipv4 { | ||||
| base address-family; | ||||
| description | ||||
| "IPv4 Address Family - IANA Registry Assigned Number: 1"; | ||||
| } | ||||
| identity ipv6 { | ||||
| base address-family; | ||||
| description | ||||
| "IPv6 Address Family - IANA Registry Assigned Number: 2"; | ||||
| } | ||||
| identity nsap { | ||||
| base address-family; | ||||
| description | ||||
| "OSI Network Service Access Point (NSAP) Address Family - | ||||
| IANA Registry Assigned Number: 3"; | ||||
| } | ||||
| identity hdlc { | ||||
| base address-family; | ||||
| description | ||||
| "High-Level Data Link Control (HDLC) Address Family - | ||||
| IANA Registry Assigned Number: 4"; | ||||
| } | ||||
| identity bbn1822 { | ||||
| base address-family; | ||||
| description | ||||
| "Bolt, Beranek, and Newman Report 1822 (BBN 1822) | ||||
| Address Family - IANA Registry Assigned Number: 5"; | ||||
| } | ||||
| identity ieee802 { | ||||
| base address-family; | ||||
| description | ||||
| "IEEE 802 Committee Address Family (aka, MAC address) - | ||||
| IANA Registry Assigned Number: 6"; | ||||
| } | ||||
| identity e163 { | ||||
| base address-family; | ||||
| description | ||||
| "ITU-T E.163 Address Family - | ||||
| IANA Registry Assigned Number: 7"; | ||||
| } | ||||
| identity e164 { | ||||
| base address-family; | ||||
| description | ||||
| "ITU-T E.164 (SMDS, Frame Relay, ATM) Address Family - | ||||
| IANA Registry Assigned Number: 8"; | ||||
| } | ||||
| identity f69 { | ||||
| base address-family; | ||||
| description | ||||
| "ITU-T F.69 (Telex) Address Family - | ||||
| IANA Registry Assigned Number: 9"; | ||||
| } | ||||
| identity x121 { | ||||
| base address-family; | ||||
| description | ||||
| "ITU-T X.121 (X.25, Frame Relay) Address Family - | ||||
| IANA Registry Assigned Number: 10"; | ||||
| } | ||||
| identity ipx { | ||||
| base address-family; | ||||
| description | ||||
| "Novell Internetwork Packet Exchange (IPX) | ||||
| Address Family - IANA Registry Assigned Number: 11"; | ||||
| } | ||||
| identity appletalk { | ||||
| base address-family; | ||||
| description | ||||
| "Apple AppleTalk Address Family - | ||||
| IANA Registry Assigned Number: 12"; | ||||
| } | ||||
| identity decnet-iv { | ||||
| base address-family; | ||||
| description | ||||
| "Digital Equipment DECnet Phase IV Address Family - | ||||
| IANA Registry Assigned Number: 13"; | ||||
| } | ||||
| identity vines { | ||||
| base address-family; | ||||
| description | ||||
| "Banyan Vines Address Family - | ||||
| IANA Registry Assigned Number: 14"; | ||||
| } | ||||
| identity e164-nsap { | ||||
| base address-family; | ||||
| description | ||||
| "ITU-T E.164 with NSAP sub-address Address Family - | ||||
| IANA Registry Assigned Number: 15"; | ||||
| } | ||||
| identity dns { | ||||
| base address-family; | ||||
| description | ||||
| "Domain Name System (DNS) Address Family - | ||||
| IANA Registry Assigned Number: 16"; | ||||
| } | ||||
| identity distinguished-name { | ||||
| base address-family; | ||||
| description | ||||
| "Distinguished Name Address Family - | ||||
| IANA Registry Assigned Number: 17"; | ||||
| } | ||||
| identity as-num { | ||||
| base address-family; | ||||
| description | ||||
| "AS Number Family - | ||||
| IANA Registry Assigned Number: 18"; | ||||
| } | ||||
| identity xtp-v4 { | ||||
| base address-family; | ||||
| description | ||||
| "Xpress Transport Protocol (XTP) over IPv4 | ||||
| Address Family - IANA Registry Assigned Number: 19"; | ||||
| } | ||||
| identity xtp-v6 { | ||||
| base address-family; | ||||
| description | ||||
| "Xpress Transport Protocol (XTP) over IPv4 | ||||
| Address Family - IANA Registry Assigned Number: 20"; | ||||
| } | ||||
| identity xtp-native { | ||||
| base address-family; | ||||
| description | ||||
| "Xpress Transport Protocol (XTP) native mode | ||||
| Address Family - IANA Registry Assigned Number: 21"; | ||||
| } | ||||
| identity fc-port { | ||||
| base address-family; | ||||
| description | ||||
| "Fibre Channel (FC) World-Wide Port Name | ||||
| Address Family - IANA Registry Assigned Number: 22"; | ||||
| } | ||||
| identity fc-node { | ||||
| base address-family; | ||||
| description | ||||
| "Fibre Channel (FC) World-Wide Node Name | ||||
| Address Family - IANA Registry Assigned Number: 23"; | ||||
| } | ||||
| identity gwid { | ||||
| base address-family; | ||||
| description | ||||
| "ATM Gateway Identifier (GWID) Number Family - | ||||
| IANA Registry Assigned Number: 24"; | ||||
| } | ||||
| identity l2vpn { | ||||
| base address-family; | ||||
| description | ||||
| "Layer-2 VPN (L2VPN) Address Family - | ||||
| IANA Registry Assigned Number: 25"; | ||||
| } | ||||
| identity mpls-tp-section-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP Section Endpoint Identifier Address Family - | ||||
| IANA Registry Assigned Number: 26"; | ||||
| } | ||||
| identity mpls-tp-lsp-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP LSP Endpoint Identifier Address Family - | ||||
| IANA Registry Assigned Number: 27"; | ||||
| } | ||||
| identity mpls-tp-pwe-eid { | ||||
| base address-family; | ||||
| description | ||||
| "MPLS-TP Pseudowire Endpoint Identifier | ||||
| Address Family - IANA Registry Assigned Number: 28"; | ||||
| } | ||||
| identity mt-v4 { | ||||
| base address-family; | ||||
| description | ||||
| "Multi-Topology IPv4 Address Family - | ||||
| Address Family - IANA Registry Assigned Number: 29"; | ||||
| } | ||||
| identity mt-v6 { | ||||
| base address-family; | ||||
| description | ||||
| "Multi-Topology IPv6 Address Family - | ||||
| Address Family - IANA Registry Assigned Number: 30"; | ||||
| } | ||||
| identity eigrp-common-sf { | ||||
| base address-family; | ||||
| description | ||||
| "Enhanced Interior Gateway Routing Protocol (EIGRP) | ||||
| Common Service Family Address Family - | ||||
| IANA Registry Assigned Number: 16384"; | ||||
| } | ||||
| identity eigrp-v4-sf { | ||||
| base address-family; | ||||
| description | ||||
| "Enhanced Interior Gateway Routing Protocol (EIGRP) | ||||
| IPv4 Service Family Address Family - | ||||
| IANA Registry Assigned Number: 16385"; | ||||
| } | ||||
| identity eigrp-v6-sf { | ||||
| base address-family; | ||||
| description | ||||
| "Enhanced Interior Gateway Routing Protocol (EIGRP) | ||||
| IPv6 Service Family Address Family - | ||||
| IANA Registry Assigned Number: 16386"; | ||||
| } | ||||
| identity lcaf { | ||||
| base address-family; | ||||
| description | ||||
| "LISP Canonical Address Format (LCAF) | ||||
| Address Family - IANA Registry Assigned Number: 16387"; | ||||
| } | ||||
| identity bgp-ls { | ||||
| base address-family; | ||||
| description | ||||
| "Border Gatway Protocol - Link State (BGP-LS) | ||||
| Address Family - IANA Registry Assigned Number: 16388"; | ||||
| } | ||||
| identity mac-48 { | ||||
| base address-family; | ||||
| description | ||||
| "IEEE 48-bit Media Access Control (MAC) | ||||
| Address Family - IANA Registry Assigned Number: 16389"; | ||||
| } | ||||
| identity mac-64 { | ||||
| base address-family; | ||||
| description | ||||
| "IEEE 64-bit Media Access Control (MAC) | ||||
| Address Family - IANA Registry Assigned Number: 16390"; | ||||
| } | ||||
| identity trill-oui { | ||||
| base address-family; | ||||
| description | ||||
| "TRILL IEEE Organizationally Unique Identifier (OUI) - | ||||
| Address Family - IANA Registry Assigned Number: 16391"; | ||||
| } | ||||
| identity trill-mac-24 { | ||||
| base address-family; | ||||
| description | ||||
| "TRILL Final 3 octets of 48-bit MAC address | ||||
| Address Family - IANA Registry Assigned Number: 16392"; | ||||
| } | ||||
| identity trill-mac-48 { | ||||
| base address-family; | ||||
| description | ||||
| "TRILL Final 5 octets of 64-bit MAC address | ||||
| Address Family - IANA Registry Assigned Number: 16393"; | ||||
| } | ||||
| identity trill-rbridge-port-id { | ||||
| base address-family; | ||||
| description | ||||
| "TRILL Remote Bridge (RBridge) Port ID | ||||
| Address Family - IANA Registry Assigned Number: 16394"; | ||||
| } | ||||
| identity trill-nickname { | ||||
| base address-family; | ||||
| description | ||||
| "TRILL Nickname | ||||
| Address Family - IANA Registry Assigned Number: 16395"; | ||||
| } | ||||
| /*** Subsequent Address Family for Multi-Protocol BGP */ | ||||
| identity bgp-safi { | ||||
| description | ||||
| "Base identity from which identities describing BGP | ||||
| Subsequent Address Family Identifier (SAFI) - RFC 4760."; | ||||
| } | ||||
| identity unicast-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Unicast SAFI - | ||||
| IANA Registry Assigned Number: 1"; | ||||
| } | ||||
| identity multicast-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multicast SAFI - | ||||
| IANA Registry Assigned Number: 2"; | ||||
| } | ||||
| identity labeled-unicast-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Labeled Unicast SAFI - | ||||
| IANA Registry Assigned Number: 4"; | ||||
| } | ||||
| identity multicast-vpn-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multicast VPN SAFI - | ||||
| IANA Registry Assigned Number: 5"; | ||||
| } | ||||
| identity pseudowire-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multi-segment Pseudowire VPN SAFI - | ||||
| IANA Registry Assigned Number: 6"; | ||||
| } | ||||
| identity tunnel-enap-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Tunnel Encap SAFI - | ||||
| IANA Registry Assigned Number: 7"; | ||||
| } | ||||
| identity mcast-vpls-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multicast Virtual Private LAN Service (VPLS) SAFI - | ||||
| IANA Registry Assigned Number: 8"; | ||||
| } | ||||
| identity tunnel-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Tunnel SAFI - | ||||
| IANA Registry Assigned Number: 64"; | ||||
| } | ||||
| identity vpls-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Virtual Private LAN Service (VPLS) SAFI - | ||||
| IANA Registry Assigned Number: 65"; | ||||
| } | ||||
| identity mdt-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multicast Distribution Tree (MDT) SAFI - | ||||
| IANA Registry Assigned Number: 66"; | ||||
| } | ||||
| identity v4-over-v6-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "IPv4 over IPv6 SAFI - | ||||
| IANA Registry Assigned Number: 67"; | ||||
| } | ||||
| identity v6-over-v4-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "IPv6 over IPv4 SAFI - | ||||
| IANA Registry Assigned Number: 68"; | ||||
| } | ||||
| identity l1-vpn-auto-discovery-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Layer-1 VPN Auto Discovery SAFI - | ||||
| IANA Registry Assigned Number: 69"; | ||||
| } | ||||
| identity evpn-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Ethernet VPN (EVPN) SAFI - | ||||
| IANA Registry Assigned Number: 70"; | ||||
| } | ||||
| identity bgp-ls-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "BGP Link-State (BGP-LS) SAFI - | ||||
| IANA Registry Assigned Number: 71"; | ||||
| } | ||||
| identity bgp-ls-vpn-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "BGP Link-State (BGP-LS) VPN SAFI - | ||||
| IANA Registry Assigned Number: 72"; | ||||
| } | ||||
| identity sr-te-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Segment Routing - Traffic Engineering (SR-TE) SAFI - | ||||
| IANA Registry Assigned Number: 73"; | ||||
| } | ||||
| identity labeled-vpn-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "MPLS Labeled VPN SAFI - | ||||
| IANA Registry Assigned Number: 128"; | ||||
| } | ||||
| identity multicast-mpls-vpn-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Multicast for BGP/MPLS IP VPN SAFI - | ||||
| IANA Registry Assigned Number: 129"; | ||||
| } | ||||
| identity route-target-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "Route Target SAFI - | ||||
| IANA Registry Assigned Number: 132"; | ||||
| } | ||||
| identity ipv4-flow-spec-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "IPv4 Flow Specification SAFI - | ||||
| IANA Registry Assigned Number: 133"; | ||||
| } | ||||
| identity vpnv4-flow-spec-safi { | ||||
| base bgp-safi; | ||||
| description | ||||
| "IPv4 VPN Flow Specification SAFI - | ||||
| IANA Registry Assigned Number: 134"; | ||||
| } | ||||
| } | ||||
| <CODE ENDS> | ||||
| 5. IANA Considerations | ||||
| RFC Ed.: In this section, replace all occurrences of 'XXXX' with the | RFC Ed.: In this section, replace all occurrences of 'XXXX' with the | |||
| actual RFC number (and remove this note). | actual RFC number (and remove this note). | |||
| This document registers the following namespace URIs in the IETF XML | This document registers the following namespace URIs in the IETF XML | |||
| registry [RFC3688]: | registry [RFC3688]: | |||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-routing-types | URI: urn:ietf:params:xml:ns:yang:ietf-routing-types | |||
| Registrant Contact: The IESG. | Registrant Contact: The IESG. | |||
| XML: N/A, the requested URI is an XML namespace. | XML: N/A, the requested URI is an XML namespace. | |||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | |||
| -------------------------------------------------------------------- | ||||
| URI: urn:ietf:params:xml:ns:yang:iana-routing-types | ||||
| Registrant Contact: The IESG. | ||||
| XML: N/A, the requested URI is an XML namespace. | ||||
| -------------------------------------------------------------------- | ||||
| This document registers the following YANG modules in the YANG Module | This document registers the following YANG modules in the YANG Module | |||
| Names registry [RFC6020]: | Names registry [RFC6020]: | |||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | |||
| name: ietf-routing-types | name: ietf-routing-types | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-routing-types | namespace: urn:ietf:params:xml:ns:yang:ietf-routing-types | |||
| prefix: rt-types | prefix: rt-types | |||
| reference: RFC XXXX | reference: RFC XXXX | |||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | |||
| 5. Security Considerations | -------------------------------------------------------------------- | |||
| name: iana-routing-types | ||||
| namespace: urn:ietf:params:xml:ns:yang:iana-routing-types | ||||
| prefix: iana-rt-types | ||||
| reference: RFC XXXX | ||||
| -------------------------------------------------------------------- | ||||
| 6. Security Considerations | ||||
| This document defines common data types using the YANG data modeling | This document defines common data types using the YANG data modeling | |||
| language. The definitions themselves have no security impact on the | language. The definitions themselves have no security impact on the | |||
| Internet, but the usage of these definitions in concrete YANG modules | Internet, but the usage of these definitions in concrete YANG modules | |||
| might have. The security considerations spelled out in the YANG | might have. The security considerations spelled out in the YANG | |||
| specification [RFC7950] apply for this document as well. | specification [RFC7950] apply for this document as well. | |||
| 6. Acknowledgements | 7. Acknowledgements | |||
| The Routing Area Yang Architecture design team members included Acee | The Routing Area Yang Architecture design team members included Acee | |||
| Lindem, Anees Shaikh, Christian Hopps, Dean Bogdanovic, Ebben Aries, | Lindem, Anees Shaikh, Christian Hopps, Dean Bogdanovic, Ebben Aries, | |||
| Lou Berger, Qin Wu, Rob Shakir, Xufeng Liu, and Yingzhen Qu. | Lou Berger, Qin Wu, Rob Shakir, Xufeng Liu, and Yingzhen Qu. | |||
| 7. References | 8. References | |||
| 7.1. Normative References | 8.1. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ | |||
| DOI 10.17487/RFC2119, March 1997, | RFC2119, March 1997, | |||
| <http://www.rfc-editor.org/info/rfc2119>. | <http://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
| the Network Configuration Protocol (NETCONF)", RFC 6020, | the Network Configuration Protocol (NETCONF)", RFC 6020, | |||
| DOI 10.17487/RFC6020, October 2010, | DOI 10.17487/RFC6020, October 2010, | |||
| <http://www.rfc-editor.org/info/rfc6020>. | <http://www.rfc-editor.org/info/rfc6020>. | |||
| [RFC6021] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC | ||||
| 6021, DOI 10.17487/RFC6021, October 2010, | ||||
| <http://www.rfc-editor.org/info/rfc6021>. | ||||
| [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | |||
| RFC 7950, DOI 10.17487/RFC7950, August 2016, | RFC 7950, DOI 10.17487/RFC7950, August 2016, | |||
| <http://www.rfc-editor.org/info/rfc7950>. | <http://www.rfc-editor.org/info/rfc7950>. | |||
| 7.2. Informative References | 8.2. Informative References | |||
| [IEEE754] IEEE, "IEEE Standard for Floating-Point Arithmetic", IEEE | [IEEE754] IEEE, "IEEE Standard for Floating-Point Arithmetic", IEEE | |||
| Std 754-2008, August 2008. | Std 754-2008, August 2008. | |||
| [I-D.ietf-bfd-yang] | [I-D.ietf-bfd-yang] | |||
| Zheng, L., Rahman, R., Networks, J., Jethanandani, M., and | Rahman, R., Zheng, L., Networks, J., Jethanandani, M., and | |||
| G. Mirsky, "Yang Data Model for Bidirectional Forwarding | G. Mirsky, "Yang Data Model for Bidirectional Forwarding | |||
| Detection (BFD)", draft-ietf-bfd-yang-04 (work in | Detection (BFD)", draft-ietf-bfd-yang-05 (work in | |||
| progress), January 2017. | progress), March 2017. | |||
| [I-D.ietf-idr-bgp-model] | [I-D.ietf-idr-bgp-model] | |||
| Shaikh, A., Shakir, R., Patel, K., Hares, S., D'Souza, K., | Shaikh, A., Shakir, R., Patel, K., Hares, S., D'Souza, K., | |||
| Bansal, D., Clemm, A., Zhdankin, A., Jethanandani, M., and | Bansal, D., Clemm, A., Zhdankin, A., Jethanandani, M., and | |||
| X. Liu, "BGP Model for Service Provider Networks", draft- | X. Liu, "BGP Model for Service Provider Networks", draft- | |||
| ietf-idr-bgp-model-02 (work in progress), July 2016. | ietf-idr-bgp-model-02 (work in progress), July 2016. | |||
| [I-D.ietf-ospf-yang] | [I-D.ietf-ospf-yang] | |||
| Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, | Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, | |||
| "Yang Data Model for OSPF Protocol", draft-ietf-ospf- | "Yang Data Model for OSPF Protocol", draft-ietf-ospf- | |||
| yang-06 (work in progress), October 2016. | yang-07 (work in progress), March 2017. | |||
| [I-D.ietf-pim-yang] | [I-D.ietf-pim-yang] | |||
| Liu, X., McAllister, P., Peter, A., Sivakumar, M., Liu, | Liu, X., McAllister, P., Peter, A., Sivakumar, M., Liu, | |||
| Y., and f. hu, "A YANG data model for Protocol-Independent | Y., and f. hu, "A YANG data model for Protocol-Independent | |||
| Multicast (PIM)", draft-ietf-pim-yang-05 (work in | Multicast (PIM)", draft-ietf-pim-yang-08 (work in | |||
| progress), February 2017. | progress), April 2017. | |||
| [I-D.ietf-teas-yang-rsvp] | [I-D.ietf-teas-yang-rsvp] | |||
| Beeram, V., Saad, T., Gandhi, R., Liu, X., Shah, H., Chen, | Beeram, V., Saad, T., Gandhi, R., Liu, X., Bryskin, I., | |||
| X., Jones, R., and B. Wen, "A YANG Data Model for Resource | and H. Shah, "A YANG Data Model for Resource Reservation | |||
| Reservation Protocol (RSVP)", draft-ietf-teas-yang-rsvp-06 | Protocol (RSVP)", draft-ietf-teas-yang-rsvp-07 (work in | |||
| (work in progress), October 2016. | progress), March 2017. | |||
| [I-D.ietf-teas-yang-te] | [I-D.ietf-teas-yang-te] | |||
| Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., | Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., and | |||
| Bryskin, I., Chen, X., Jones, R., and B. Wen, "A YANG Data | I. Bryskin, "A YANG Data Model for Traffic Engineering | |||
| Model for Traffic Engineering Tunnels and Interfaces", | Tunnels and Interfaces", draft-ietf-teas-yang-te-06 (work | |||
| draft-ietf-teas-yang-te-05 (work in progress), October | in progress), March 2017. | |||
| 2016. | ||||
| [I-D.ietf-bess-l2vpn-yang] | [I-D.ietf-bess-l2vpn-yang] | |||
| Shah, H., Brissette, P., Chen, I., Hussain, I., and B. | Shah, H., Brissette, P., Chen, I., Hussain, I., Wen, B., | |||
| Wen, "YANG Data Model for MPLS-based L2VPN", draft-ietf- | and K. Tiruveedhula, "YANG Data Model for MPLS-based | |||
| bess-l2vpn-yang-02 (work in progress), October 2016. | L2VPN", draft-ietf-bess-l2vpn-yang-05 (work in progress), | |||
| March 2017. | ||||
| [I-D.ietf-mpls-base-yang] | [I-D.ietf-mpls-base-yang] | |||
| Raza, K., Gandhi, R., Liu, X., Beeram, V., Saad, T., | Raza, K., Gandhi, R., Liu, X., Beeram, V., Saad, T., | |||
| Bryskin, I., Chen, X., Jones, R., and B. Wen, "A YANG Data | Bryskin, I., Chen, X., Jones, R., and B. Wen, "A YANG Data | |||
| Model for MPLS Base", draft-ietf-mpls-base-yang-01 (work | Model for MPLS Base", draft-ietf-mpls-base-yang-04 (work | |||
| in progress), July 2016. | in progress), March 2017. | |||
| [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., | [RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., | |||
| Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack | Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack | |||
| Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001, | Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001, | |||
| <http://www.rfc-editor.org/info/rfc3032>. | <http://www.rfc-editor.org/info/rfc3032>. | |||
| [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., | |||
| and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP | |||
| Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, | |||
| <http://www.rfc-editor.org/info/rfc3209>. | <http://www.rfc-editor.org/info/rfc3209>. | |||
| [RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label | [RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label | |||
| Switching (GMPLS) Signaling Functional Description", | Switching (GMPLS) Signaling Functional Description", RFC | |||
| RFC 3471, DOI 10.17487/RFC3471, January 2003, | 3471, DOI 10.17487/RFC3471, January 2003, | |||
| <http://www.rfc-editor.org/info/rfc3471>. | <http://www.rfc-editor.org/info/rfc3471>. | |||
| [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private | [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private | |||
| Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, February | Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, February | |||
| 2006, <http://www.rfc-editor.org/info/rfc4364>. | 2006, <http://www.rfc-editor.org/info/rfc4364>. | |||
| [RFC4664] Andersson, L., Ed. and E. Rosen, Ed., "Framework for Layer | [RFC4664] Andersson, L., Ed. and E. Rosen, Ed., "Framework for Layer | |||
| 2 Virtual Private Networks (L2VPNs)", RFC 4664, | 2 Virtual Private Networks (L2VPNs)", RFC 4664, DOI | |||
| DOI 10.17487/RFC4664, September 2006, | 10.17487/RFC4664, September 2006, | |||
| <http://www.rfc-editor.org/info/rfc4664>. | <http://www.rfc-editor.org/info/rfc4664>. | |||
| [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | |||
| <http://www.rfc-editor.org/info/rfc5880>. | <http://www.rfc-editor.org/info/rfc5880>. | |||
| [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC | ||||
| 6991, DOI 10.17487/RFC6991, July 2013, | ||||
| <http://www.rfc-editor.org/info/rfc6991>. | ||||
| [RFC7274] Kompella, K., Andersson, L., and A. Farrel, "Allocating | [RFC7274] Kompella, K., Andersson, L., and A. Farrel, "Allocating | |||
| and Retiring Special-Purpose MPLS Labels", RFC 7274, | and Retiring Special-Purpose MPLS Labels", RFC 7274, DOI | |||
| DOI 10.17487/RFC7274, June 2014, | 10.17487/RFC7274, June 2014, | |||
| <http://www.rfc-editor.org/info/rfc7274>. | <http://www.rfc-editor.org/info/rfc7274>. | |||
| 7.3. URIs | 8.3. URIs | |||
| [1] http://www.iana.org/assignments/address-family-numbers/address- | [1] http://www.iana.org/assignments/address-family-numbers/address- | |||
| family-numbers.xhtml | family-numbers.xhtml | |||
| [2] http://www.iana.org/assignments/address-family-numbers/address- | ||||
| family-numbers.xhtml | ||||
| [3] https://www.iana.org/assignments/safi-namespace/safi- | ||||
| namespace.xhtml#safi-namespace-2 | ||||
| Authors' Addresses | Authors' Addresses | |||
| Xufeng Liu | Xufeng Liu | |||
| Jabil | Jabil | |||
| 8281 Greensboro Drive, Suite 200 | 8281 Greensboro Drive, Suite 200 | |||
| McLean VA 22102 | McLean VA 22102 | |||
| USA | USA | |||
| EMail: Xufeng_Liu@jabil.com | EMail: Xufeng_Liu@jabil.com | |||
| Yingzhen Qu | Yingzhen Qu | |||
| Futurewei Technologies, Inc. | Futurewei Technologies, Inc. | |||
| 2330 Central Expressway | 2330 Central Expressway | |||
| Santa Clara CA 95050 | Santa Clara CA 95050 | |||
| USA | USA | |||
| EMail: yingzhen.qu@huawei.com | EMail: yingzhen.qu@huawei.com | |||
| Acee Lindem | Acee Lindem | |||
| Cisco Systems | Cisco Systems | |||
| End of changes. 52 change blocks. | ||||
| 258 lines changed or deleted | 638 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||