A YANG Data Model for MPLS Base
RFC 8960
Document | Type | RFC - Proposed Standard (December 2020) Errata | |
---|---|---|---|
Authors | Tarek Saad , Syed Kamran Raza , Rakesh Gandhi , Xufeng Liu , Vishnu Pavan Beeram | ||
Last updated | 2022-08-02 | ||
RFC stream | Internet Engineering Task Force (IETF) | ||
Formats | |||
Additional resources | Mailing list discussion | ||
IESG | Responsible AD | Deborah Brungard | |
Send notices to | (None) |
RFC 8960
NETCONF Working Group K. Watsen Internet-Draft Watsen Networks Intended status: Standards Track 17 April 2023 Expires: 19 October 2023 RESTCONF Client and Server Models draft-ietf-netconf-restconf-client-server-29 Abstract This document defines two YANG modules, one module to configure a RESTCONF client and the other module to configure a RESTCONF server. Both modules support the TLS transport protocol with both standard RESTCONF and RESTCONF Call Home connections. Editorial Note (To be removed by RFC Editor) This draft contains placeholder values that need to be replaced with finalized values at the time of publication. This note summarizes all of the substitutions that are needed. No other RFC Editor instructions are specified elsewhere in this document. Artwork in this document contains shorthand references to drafts in progress. Please apply the following replacements (note: not all may be present): * AAAA --> the assigned RFC value for draft-ietf-netconf-crypto- types * BBBB --> the assigned RFC value for draft-ietf-netconf-trust- anchors * CCCC --> the assigned RFC value for draft-ietf-netconf-keystore * DDDD --> the assigned RFC value for draft-ietf-netconf-tcp-client- server * EEEE --> the assigned RFC value for draft-ietf-netconf-ssh-client- server * FFFF --> the assigned RFC value for draft-ietf-netconf-tls-client- server * GGGG --> the assigned RFC value for draft-ietf-netconf-http- client-server Watsen Expires 19 October 2023 [Page 1] Internet-Draft RESTCONF Client and Server Models April 2023 * HHHH --> the assigned RFC value for draft-ietf-netconf-netconf- client-server * IIII --> the assigned RFC value for this draft Artwork in this document contains placeholder values for the date of publication of this draft. Please apply the following replacement: * 2023-04-17 --> the publication date of this draft The "Relation to other RFCs" section Section 1.1 contains the text "one or more YANG modules" and, later, "modules". This text is sourced from a file in a context where it is unknown how many modules a draft defines. The text is not wrong as is, but it may be improved by stating more directly how many modules are defined. The "Relation to other RFCs" section Section 1.1 contains a self- reference to this draft, along with a corresponding Informative Reference in the Appendix. The following Appendix section is to be removed prior to publication: * Appendix A. Change Log Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on 19 October 2023. Copyright Notice Copyright (c) 2023 IETF Trust and the persons identified as the document authors. All rights reserved. Watsen Expires 19 October 2023 [Page 2] Internet-Draft RESTCONF Client and Server Models April 2023 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/ license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Relation to other RFCs . . . . . . . . . . . . . . . . . 4 1.2. Specification Language . . . . . . . . . . . . . . . . . 6 1.3. Adherence to the NMDA . . . . . . . . . . . . . . . . . . 6 1.4. Conventions . . . . . . . . . . . . . . . . . . . . . . . 6 2. The "ietf-restconf-client" Module . . . . . . . . . . . . . . 6 2.1. Data Model Overview . . . . . . . . . . . . . . . . . . . 6 2.2. Example Usage . . . . . . . . . . . . . . . . . . . . . . 11 2.3. YANG Module . . . . . . . . . . . . . . . . . . . . . . . 15 3. The "ietf-restconf-server" Module . . . . . . . . . . . . . . 26 3.1. Data Model Overview . . . . . . . . . . . . . . . . . . . 26 3.2. Example Usage . . . . . . . . . . . . . . . . . . . . . . 31 3.3. YANG Module . . . . . . . . . . . . . . . . . . . . . . . 35 4. Security Considerations . . . . . . . . . . . . . . . . . . . 48 4.1. The "ietf-restconf-client" YANG Module . . . . . . . . . 48 4.2. The "ietf-restconf-server" YANG Module . . . . . . . . . 49 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 49 5.1. The "IETF XML" Registry . . . . . . . . . . . . . . . . . 49 5.2. The "YANG Module Names" Registry . . . . . . . . . . . . 50 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 50 6.1. Normative References . . . . . . . . . . . . . . . . . . 50 6.2. Informative References . . . . . . . . . . . . . . . . . 51 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 53 A.1. 00 to 01 . . . . . . . . . . . . . . . . . . . . . . . . 53 A.2. 01 to 02 . . . . . . . . . . . . . . . . . . . . . . . . 53 A.3. 02 to 03 . . . . . . . . . . . . . . . . . . . . . . . . 53 A.4. 03 to 04 . . . . . . . . . . . . . . . . . . . . . . . . 53 A.5. 04 to 05 . . . . . . . . . . . . . . . . . . . . . . . . 54 A.6. 05 to 06 . . . . . . . . . . . . . . . . . . . . . . . . 54 A.7. 06 to 07 . . . . . . . . . . . . . . . . . . . . . . . . 54 A.8. 07 to 08 . . . . . . . . . . . . . . . . . . . . . . . . 54 A.9. 08 to 09 . . . . . . . . . . . . . . . . . . . . . . . . 54 A.10. 09 to 10 . . . . . . . . . . . . . . . . . . . . . . . . 55 A.11. 10 to 11 . . . . . . . . . . . . . . . . . . . . . . . . 55 A.12. 11 to 12 . . . . . . . . . . . . . . . . . . . . . . . . 55 A.13. 12 to 13 . . . . . . . . . . . . . . . . . . . . . . . . 55 A.14. 13 to 14 . . . . . . . . . . . . . . . . . . . . . . . . 56 Watsen Expires 19 October 2023 [Page 3] Internet-Draft RESTCONF Client and Server Models April 2023 A.15. 14 to 15 . . . . . . . . . . . . . . . . . . . . . . . . 56 A.16. 15 to 16 . . . . . . . . . . . . . . . . . . . . . . . . 56 A.17. 16 to 17 . . . . . . . . . . . . . . . . . . . . . . . . 56 A.18. 17 to 18 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.19. 18 to 19 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.20. 19 to 20 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.21. 20 to 21 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.22. 21 to 22 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.23. 22 to 23 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.24. 23 to 24 . . . . . . . . . . . . . . . . . . . . . . . . 57 A.25. 24 to 25 . . . . . . . . . . . . . . . . . . . . . . . . 58 A.26. 25 to 26 . . . . . . . . . . . . . . . . . . . . . . . . 58 A.27. 26 to 27 . . . . . . . . . . . . . . . . . . . . . . . . 58 A.28. 27 to 28 . . . . . . . . . . . . . . . . . . . . . . . . 58 A.29. 28 to 29 . . . . . . . . . . . . . . . . . . . . . . . . 58 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 58 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 58 1. Introduction This document defines two YANG [RFC7950] modules, one module to configure a RESTCONF client and the other module to configure a RESTCONF server [RFC8040]. Both modules support the TLS [RFC8446] transport protocol with both standard RESTCONF and RESTCONF Call Home connections [RFC8071]. 1.1. Relation to other RFCs This document presents one or more YANG modules [RFC7950] that are part of a collection of RFCs that work together to, ultimately, enable the configuration of both the clients and servers of both the NETCONF [RFC6241] and RESTCONF [RFC8040] protocols. The normative dependency relationship between the various RFCs in this collection is presented in the below diagram. The labels in the diagram represent the primary purpose provided by each RFC. URLs for each RFC are provided below the diagram. Watsen Expires 19 October 2023 [Page 4] Internet-Draft RESTCONF Client and Server Models April 2023 ": "198.51.100.2/32", "ietf-mpls:route-context":"SID-IDX:2" } ] } }, { "name":"RIB-V6", "address-family": "ietf-ipv6-unicast-routing:v6ur:ipv6-unicast", "routes":{ "route":[ { "next-hop":{ "outgoing-interface":"eth0", "ietf-mpls:mpls-label-stack":{ "entry":[ { "id":1, "label":16003, "ttl":255 } ] }, "ietf-ipv6-unicast-routing:next-hop-address": "2001:db8:0:1::1" }, "source-protocol":"ietf-isis:isis", "ietf-mpls:mpls-enabled":true, "ietf-mpls:mpls-local-label":16003, "ietf-ipv6-unicast-routing:destination-prefix": "2001:db8:0:10::1/128", "ietf-mpls:route-context":"SID-IDX:3" }, { "next-hop":{ "next-hop-list":{ "next-hop":[ { "outgoing-interface":"eth0", "ietf-mpls:index":"1", "ietf-mpls:backup-index":"2", "ietf-mpls:role":"primary-and-backup", "ietf-mpls:mpls-label-stack":{ "entry":[ { "id":1, "label":16004, "ttl":255 } ] }, "ietf-ipv6-unicast-routing:address": "2001:db8:0:1::1" }, { "outgoing-interface":"eth1", "ietf-mpls:index":"2", "ietf-mpls:backup-index":"1", "ietf-mpls:role":"primary-and-backup", "ietf-mpls:mpls-label-stack":{ "entry":[ { "id":1, "label":16004, "ttl":255 } ] }, "ietf-ipv6-unicast-routing:address": "2001:db8:0:2::1" } ] } }, "source-protocol":"ietf-isis:isis", "ietf-mpls:mpls-enabled":true, "ietf-mpls:mpls-local-label":16004, "ietf-ipv6-unicast-routing:destination-prefix": "2001:db8:0:10::2/128", "ietf-mpls:route-context":"SID-IDX:4" } ] } }, { "name":"RIB-MPLS", "address-family":"ietf-mpls:mpls:mpls", "routes":{ "route":[ { "next-hop":{ "outgoing-interface":"eth0", "ietf-mpls:mpls-label-stack":{ "entry":[ { "id":1, "label":24002, "ttl":255 } ] }, "ietf-ipv4-unicast-routing:next-hop-address": "192.0.2.5" }, "source-protocol":"ietf-rsvp:rsvp", "ietf-mpls:mpls-enabled":true, "ietf-mpls:mpls-local-label":24001, "ietf-mpls:destination-prefix":"24001", "ietf-mpls:route-context": "RSVP Src:198.51.100.3,Dst:198.51.100.4,T:10,L:1" } ] } } ] }, "ietf-mpls:mpls":{ "mpls-label-blocks":{ "mpls-label-block":[ { "index":"mpls-srgb-label-block", "start-label":16000, "end-label":16500, "block-allocation-mode": "ietf-mpls:label-block-alloc-mode-manager" } ] }, "interfaces":{ "interface":[ { "name":"eth0", "mpls-enabled":true, "maximum-labeled-packet":1488 }, { "name":"eth1", "mpls-enabled":true, "maximum-labeled-packet":1488 } ] } } } } Figure 6: Instance Data Tree Example Acknowledgments The authors would like to thank Xia Chen for her contributions to the early draft revisions of this document. Contributors Igor Bryskin Huawei Technologies Email: i_bryskin@yahoo.com Himanshu Shah Ciena Email: hshah@ciena.com Authors' Addresses Tarek Saad Juniper Networks Email: tsaad@juniper.net Kamran Raza Cisco Systems, Inc. Email: skraza@cisco.com Rakesh Gandhi Cisco Systems, Inc. Email: rgandhi@cisco.com Xufeng Liu Volta Networks Email: xufeng.liu.ietf@gmail.com Vishnu Pavan Beeram Juniper Networks Email: vbeeram@juniper.net