| < draft-ietf-spring-sr-yang-16.txt | draft-ietf-spring-sr-yang-17.txt > | |||
|---|---|---|---|---|
| skipping to change at page 1, line 16 ¶ | skipping to change at page 1, line 16 ¶ | |||
| Expires: January 10, 2021 Futurewei | Expires: January 10, 2021 Futurewei | |||
| A. Lindem | A. Lindem | |||
| Cisco Systems | Cisco Systems | |||
| P. Sarkar | P. Sarkar | |||
| Individual | Individual | |||
| J. Tantsura | J. Tantsura | |||
| Apstra | Apstra | |||
| July 9, 2020 | July 9, 2020 | |||
| YANG Data Model for Segment Routing | YANG Data Model for Segment Routing | |||
| draft-ietf-spring-sr-yang-16 | draft-ietf-spring-sr-yang-17 | |||
| Abstract | Abstract | |||
| This document defines a YANG data model ([RFC6020], [RFC7950]) for | This document defines a YANG data model for segment routing | |||
| segment routing ([RFC8402]) configuration and operation. This YANG | configuration and operation, which is to be augmented by different | |||
| model is intended to be used on network elements to configure or | segment routing data planes. The document also defines a YANG model | |||
| operate segment routing MPLS data plane [RFC8660]. This document | that is intended to be used on network elements to configure or | |||
| defines also generic containers that SHOULD be reused by IGP protocol | operate segment routing MPLS data plane, as well as some generic | |||
| modules to support segment routing. | containers to be reused by IGP protocol modules to support segment | |||
| routing. | ||||
| 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 | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| 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 https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| skipping to change at page 2, line 22 ¶ | skipping to change at page 2, line 22 ¶ | |||
| 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 | |||
| 2. Terminology and Notation . . . . . . . . . . . . . . . . . . 3 | 2. Terminology and Notation . . . . . . . . . . . . . . . . . . 3 | |||
| 2.1. Tree diagram . . . . . . . . . . . . . . . . . . . . . . 3 | 2.1. Tree diagram . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 3 | 2.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 3 | |||
| 3. Design of the Data Model . . . . . . . . . . . . . . . . . . 3 | 3. Design of the Data Model . . . . . . . . . . . . . . . . . . 3 | |||
| 4. Configuration . . . . . . . . . . . . . . . . . . . . . . . . 5 | 4. Configuration . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5. IGP Control plane configuration . . . . . . . . . . . . . . . 6 | 5. IGP Control plane configuration . . . . . . . . . . . . . . . 6 | |||
| 5.1. IGP interface configuration . . . . . . . . . . . . . . . 7 | 5.1. IGP interface configuration . . . . . . . . . . . . . . . 7 | |||
| 5.1.1. Adjacency SID properties . . . . . . . . . . . . . . 7 | 5.1.1. Adjacency SID properties . . . . . . . . . . . . . . 7 | |||
| 5.1.1.1. Bundling . . . . . . . . . . . . . . . . . . . . 7 | 5.1.1.1. Bundling . . . . . . . . . . . . . . . . . . . . 7 | |||
| 5.1.1.2. Protection . . . . . . . . . . . . . . . . . . . 8 | 5.1.1.2. Protection . . . . . . . . . . . . . . . . . . . 8 | |||
| 6. States . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 6. States . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 7. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 8 | 7. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 8. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 8. YANG Module . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 9. Security Considerations . . . . . . . . . . . . . . . . . . . 27 | 9. Security Considerations . . . . . . . . . . . . . . . . . . . 27 | |||
| 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 28 | 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 28 | |||
| 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 | 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 | |||
| 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 28 | 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 29 | |||
| 12.1. Normative References . . . . . . . . . . . . . . . . . . 28 | 12.1. Normative References . . . . . . . . . . . . . . . . . . 29 | |||
| 12.2. Informative References . . . . . . . . . . . . . . . . . 30 | 12.2. Informative References . . . . . . . . . . . . . . . . . 31 | |||
| Appendix A. Configuration example . . . . . . . . . . . . . . . 30 | Appendix A. Configuration example . . . . . . . . . . . . . . . 31 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 32 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 33 | |||
| 1. Introduction | 1. Introduction | |||
| This document defines a YANG data model for segment routing | This document defines a YANG data model [RFC7950] for segment routing | |||
| configuration and operation. This document does not define the IGP | [RFC8402] configuration and operation. The document also defines a | |||
| extensions to support segment routing but defines generic groupings | YANG model that is intended to be used on network elements to | |||
| that SHOULD be reused by IGP extension modules. The reason of this | configure or operate segment routing MPLS data plane [RFC8660] This | |||
| design choice is to not require implementations to support all IGP | document does not define the IGP extensions to support segment | |||
| extensions. For example, an implementation may support IS-IS | routing but defines generic groupings that SHOULD be reused by IGP | |||
| extension but not OSPF. | extension modules. The reason of this design choice is to not | |||
| require implementations to support all IGP extensions. For example, | ||||
| an implementation may support IS-IS extension but not OSPF. | ||||
| The YANG modules in this document conform to the Network Management | The YANG modules in this document conform to the Network Management | |||
| Datastore Architecture (NMDA) [RFC8342]. | Datastore Architecture (NMDA) [RFC8342]. | |||
| 2. Terminology and Notation | 2. Terminology and Notation | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| skipping to change at page 7, line 18 ¶ | skipping to change at page 7, line 24 ¶ | |||
| 5.1. IGP interface configuration | 5.1. IGP interface configuration | |||
| The interface configuration is part of the "igp-interface-cfg" | The interface configuration is part of the "igp-interface-cfg" | |||
| grouping and includes Adjacency SID properties. | grouping and includes Adjacency SID properties. | |||
| 5.1.1. Adjacency SID properties | 5.1.1. Adjacency SID properties | |||
| 5.1.1.1. Bundling | 5.1.1.1. Bundling | |||
| This section is a first proposal on how to use S-bit in Adj-SID to | ||||
| create bundles. Authors would like to trigger discussion based on | ||||
| this first proposal. | ||||
| In case of parallel IP links between routers, an additional Adjacency | In case of parallel IP links between routers, an additional Adjacency | |||
| SID may be advertised representing more than one adjacency (i.e., a | SID [RFC8402] may be advertised representing more than one adjacency | |||
| bundle of adjacencies). The "advertise-adj-group-sid" configuration | (i.e., a bundle of adjacencies). The "advertise-adj-group-sid" | |||
| controls whether or not an additional adjacency SID is advertised. | configuration controls whether or not an additional adjacency SID is | |||
| advertised. | ||||
| The "advertise-adj-group-sid" would be a list of "group-id". The | The "advertise-adj-group-sid" would be a list of "group-id". The | |||
| "group-id" will permit to identify interfaces that must be bundled | "group-id" will permit to identify interfaces that must be bundled | |||
| together. | together. | |||
| +-------+ +------+ | +-------+ +------+ | |||
| | | ------- L1 ---- | | | | | ------- L1 ---- | | | |||
| | R1 | ------- L2 ---- | R2 | | | R1 | ------- L2 ---- | R2 | | |||
| | | ------- L3 ---- | | | | | ------- L3 ---- | | | |||
| | | ------- L4 ---- | | | | | ------- L4 ---- | | | |||
| skipping to change at page 21, line 52 ¶ | skipping to change at page 22, line 4 ¶ | |||
| description | description | |||
| "Name of the mapping policy."; | "Name of the mapping policy."; | |||
| } | } | |||
| container entries { | container entries { | |||
| description | description | |||
| "IPv4/IPv6 mapping entries."; | "IPv4/IPv6 mapping entries."; | |||
| list mapping-entry { | list mapping-entry { | |||
| key "prefix algorithm"; | key "prefix algorithm"; | |||
| description | description | |||
| "Mapping entries."; | "Mapping entries."; | |||
| uses sr-cmn:prefix-sid; | ||||
| uses sr-cmn:prefix-sid; | ||||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| container connected-prefix-sid-map { | container connected-prefix-sid-map { | |||
| description | description | |||
| "Prefix SID configuration."; | "Prefix SID configuration."; | |||
| list connected-prefix-sid { | list connected-prefix-sid { | |||
| key "prefix algorithm"; | key "prefix algorithm"; | |||
| description | description | |||
| skipping to change at page 28, line 27 ¶ | skipping to change at page 28, line 30 ¶ | |||
| requested to be made: | requested to be made: | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-segment-routing-commmon | URI: urn:ietf:params:xml:ns:yang:ietf-segment-routing-commmon | |||
| 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:ietf-segment-routing | URI: urn:ietf:params:xml:ns:yang:ietf-segment-routing | |||
| 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:ietf-segment-routing-mpls | ||||
| Registrant Contact: The IESG. | ||||
| XML: N/A, the requested URI is an XML namespace. | ||||
| This document registers a YANG module in the YANG Module Names | This document registers a YANG module in the YANG Module Names | |||
| registry [RFC6020]. | registry [RFC6020]. | |||
| name: ietf-segment-routing-common | name: ietf-segment-routing-common | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-segment-routing-common | namespace: urn:ietf:params:xml:ns:yang:ietf-segment-routing-common | |||
| prefix: sr-cmn | prefix: sr-cmn | |||
| reference: RFC XXXX | reference: RFC XXXX | |||
| name: ietf-segment-routing | name: ietf-segment-routing | |||
| namespace: urn:ietf:params:xml:ns:yang:ietf-segment-routing | namespace: urn:ietf:params:xml:ns:yang:ietf-segment-routing | |||
| prefix: sr | prefix: sr | |||
| reference: RFC XXXX | reference: RFC XXXX | |||
| name: ietf-segment-routing | ||||
| namespace: urn:ietf:params:xml:ns:yang:ietf-segment-routing-mpls | ||||
| prefix: sr-mpls | ||||
| reference: RFC XXXX | ||||
| 12. References | 12. References | |||
| 12.1. Normative References | 12.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/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
| End of changes. 11 change blocks. | ||||
| 28 lines changed or deleted | 37 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/ | ||||