BESS Working Group K. Raza Internet-Draft K. Majumdar Intended status: Standards Track Cisco Systems Expires: January 6, 2020 B. Decraene Orange Z. Jiang Tencent S. Matsushima Softbank July 5, 2019 Yang Data Model for SRv6 based Services draft-raza-bess-srv6-services-yang-00 Abstract This document defines a YANG data model that can be used to configure and manage SRv6 based services in BGP. The YANG module in this document conforms to the Network Management Datastore Architecture (NMDA). 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 January 9, 2020. Copyright Notice Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved. 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 Raza, et al. Expires January 9, 2020 [Page 1] Internet-Draft Yang Data Model for SRv6 based Services July 2019 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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Specification of Requirements . . . . . . . . . . . . . . . . 3 3. Model Overview . . . . . . . . . . . . . . . . . . . . . . . 3 4. Configuration and State . . . . . . . . . . . . . . . . . . . 3 4.1. Tree . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 6 6. Executables (Actions) . . . . . . . . . . . . . . . . . . . . 6 7. Yang Module . . . . . . . . . . . . . . . . . . . . . . . . . 6 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 9. Security Considerations . . . . . . . . . . . . . . . . . . . 14 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 15 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 15 12.1. Normative References . . . . . . . . . . . . . . . . . . 15 12.2. Informative References . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 1. Introduction YANG [RFC6020] [RFC7950] is a data definition language that was introduced to define the contents of a conceptual data store that allows network devices to be managed using NETCONF [RFC6241]. Segment Routing (SR), as defined in [RFC8402], is source routing paradigm where a node steers a packet through an ordered list of instructions, called segments. A segment is idenfied using its SID (Segment Identifier) and may represent a topological path, a service endpoint, a virtual network function, etc. The IPv6 dataplane instantiation of SR is called SRv6 as specified in [I-D.ietf-spring-srv6-network-programming] BGP overlay service endpoints can be identified using SRv6 service SIDs. These services include L3VPN, EVPN, and Internet services. The procedures and messages for BGP overlay services using SRv6 SID are specified in [I-D.dawra-bess-srv6-services] This document defines the YANG model for managing these SRv6 based services in BGP. Raza, et al. Expires January 9, 2020 [Page 2] Internet-Draft Yang Data Model for SRv6 based Services July 2019 2. Specification of Requirements The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 3. Model Overview The modeling in this document complies with the Network Management Datastore Architecture (NMDA) [RFC8342]. The operational state data is combined with the associated configuration data in the same hierarchy [RFC8407]. When protocol states are retrieved from the NMDA operational state datastore, the returned states cover all "config true" (rw) and "config false" (ro) nodes defined in the schema. The scope of data modeling is for the following management constructs: o Configuration o Operational State o Notifications o Executables (Actions) The Yang extensions proposed in this model augment the base BGP model defined in [I-D.ietf-idr-bgp-model]. The common data types for SRv6 are imported from [I-D.raza-spring-srv6-yang]. TBD: The base BGP model [I-D.ietf-idr-bgp-model] in its current form is not scoped within the context of a Network Instance. Therefore, the context of a VRF is not fully realized. The extensions done in this model should fall within the scope of a VRF, once the top BGP container is linked under Network Instance. 4. Configuration and State Current revision of this document defines the following areas: o Configuration: Enable Segment-routing SRv6 based service o Configuration: Designate SRv6 locator for SID allocation o Configuration: Specify SID allocation mode (per-vrf, per-ce) Raza, et al. Expires January 9, 2020 [Page 3] Internet-Draft Yang Data Model for SRv6 based Services July 2019 o State: Info related to Remote SRv6 SID learnt in a service route The BGP service here refers to overlay for global (Internet) as well L3VPN service for IPv4 and IPv6. [Ed Note: TODO EVPN] 4.1. Tree module: ietf-bgp-srv6-services augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global: +--rw segment-routing +--rw srv6 +--rw locator? -> /rt:routing/srv6:srv6/locators/locator/name augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv4-unicast: +--rw segment-routing +--rw srv6 +--rw locator? -> /rt:routing/srv6:srv6/locators/locator/name +--rw sid-alloc-mode? enumeration augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv6-unicast: +--rw segment-routing +--rw srv6 +--rw locator? -> /rt:routing/srv6:srv6/locators/locator/name +--rw sid-alloc-mode? enumeration augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv4-unicast: +--rw segment-routing +--rw srv6 +--rw locator? -> /rt:routing/srv6:srv6/locators/locator/name +--rw sid-alloc-mode? enumeration augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv6-unicast: +--rw segment-routing +--rw srv6 +--rw locator? -> /rt:routing/srv6:srv6/locators/locator/name +--rw sid-alloc-mode? enumeration augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv4-unicast: +--ro routes +--ro route* [prefix neighbor add-path-id] +--ro prefix union +--ro neighbor inet:ip-address +--ro add-path-id uint32 +--ro srv6 +--ro received-sids* [received-sid] Raza, et al. Expires January 9, 2020 [Page 4] Internet-Draft Yang Data Model for SRv6 based Services July 2019 | +--ro received-sid srv6-types:srv6-sid +--ro local-sids* [local-sid] +--ro local-sid srv6-types:srv6-sid +--ro locator? -> /rt:routing/srv6:srv6/locators/locator/name augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv6-unicast: +--ro routes +--ro route* [prefix neighbor add-path-id] +--ro prefix union +--ro neighbor inet:ip-address +--ro add-path-id uint32 +--ro srv6 +--ro received-sids* [received-sid] | +--ro received-sid srv6-types:srv6-sid +--ro local-sids* [local-sid] +--ro local-sid srv6-types:srv6-sid +--ro locator? -> /rt:routing/srv6:srv6/locators/locator/name augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv4-unicast: +--ro routes +--ro route* [rd prefix neighbor add-path-id] +--ro rd rt-types:route-distinguisher +--ro prefix union +--ro neighbor inet:ip-address +--ro add-path-id uint32 +--ro srv6 +--ro received-sids* [received-sid] | +--ro received-sid srv6-types:srv6-sid +--ro local-sids* [local-sid] +--ro local-sid srv6-types:srv6-sid +--ro locator? -> /rt:routing/srv6:srv6/locators/locator/name augment /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv6-unicast: +--ro routes +--ro route* [rd prefix neighbor add-path-id] +--ro rd rt-types:route-distinguisher +--ro prefix union +--ro neighbor inet:ip-address +--ro add-path-id uint32 +--ro srv6 +--ro received-sids* [received-sid] | +--ro received-sid srv6-types:srv6-sid +--ro local-sids* [local-sid] +--ro local-sid srv6-types:srv6-sid +--ro locator? -> /rt:routing/srv6:srv6/locators/locator/name Raza, et al. Expires January 9, 2020 [Page 5] Internet-Draft Yang Data Model for SRv6 based Services July 2019 5. Notifications TBD 6. Executables (Actions) TBD 7. Yang Module file "ietf-bgp-srv6-services@2019-07-08.yang" module ietf-bgp-srv6-services { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-bgp-srv6-services"; // replace with IANA namespace when assigned prefix bgp-srv6-svc ; import ietf-inet-types { prefix "inet"; reference "RFC 6991: Common YANG Data Types"; } import ietf-routing-types { prefix "rt-types"; reference "RFC 8294: Common YANG Data Types for the Routing Area"; } import ietf-routing { prefix "rt"; reference "RFC 8349: A YANG Data Model for Routing Management (NMDA version)"; } import ietf-srv6-types { prefix srv6-types; reference "RFC XXXX: YANG Data Model for SRv6"; // RFC Editor: replace XXXX with actual RFC number and remove // this note } import ietf-srv6-base { prefix srv6; Raza, et al. Expires January 9, 2020 [Page 6] Internet-Draft Yang Data Model for SRv6 based Services July 2019 } import ietf-bgp { prefix bgp; } organization "IETF BESS Working Group"; contact "BESS working group - bess@ietf.org"; description "This YANG module defines a data model to configure and manage SRv6 extensions in BGP. Terms and Acronyms AF : Address Family BGP (bgp) : Border Gateway Protocol EVPN: Ethernet VPN SR : Segment Routing SID : Segment Identifier SRv6 : Segment Routing with IPv6 Data plane VPN : Virtual Private Network VRF : Virtual Routing and Forwarding "; revision 2019-07-08 { description "Initial revision" ; reference ""; } // Sid type union typedef sid-type { type union { type rt-types:mpls-label; type srv6-types:srv6-sid; } Raza, et al. Expires January 9, 2020 [Page 7] Internet-Draft Yang Data Model for SRv6 based Services July 2019 description "Type definition for Segment Identifier. This is a union type which can be either a SR MPLS SID in the form of a label, or a SRv6 SID in the form of an IPv6 address."; reference "TBD"; } grouping route-key-leafs { description "Grouping for key leafs identifying a route"; leaf prefix { type union { type inet:ip-prefix; type string; } description "BGP Prefix. This is a temp definition to cover ip-prefix and other NLRI formats. Import the type once defined in base BGP RIB model"; } leaf neighbor { type inet:ip-address; description "BGP Neighbor"; } leaf add-path-id { type uint32; description "Add-path ID"; } } grouping common-bgp-route-grouping { description "BGP route list" ; container routes { config false; description "BGP Route in local RIB"; list route { key "prefix neighbor add-path-id"; description "BGP route list"; uses route-key-leafs; } } } grouping common-bgp-vpn-route-grouping { description "BGP route list" ; container routes { config false; description "BGP VPN Route in local RIB"; list route { Raza, et al. Expires January 9, 2020 [Page 8] Internet-Draft Yang Data Model for SRv6 based Services July 2019 key "rd prefix neighbor add-path-id"; description "Route List"; leaf rd { type rt-types:route-distinguisher; description "Route Distinguisher"; } uses route-key-leafs; } } } // // SRv6 extensions related Groupings // grouping srv6-grouping { description "SRv6 container"; container segment-routing { description "Segment-routing parameters"; container srv6 { description "Segment-routing with IPv6 dataplane (SRv6) parameters"; } } } grouping srv6-locator-grouping { description "SRv6 locator ref"; leaf locator { type leafref { path "/rt:routing/srv6:srv6/srv6:locators/srv6:locator/srv6:name"; } description "Reference to an SRv6 Locator"; } } grouping segment-routing-srv6-locator-grouping { description "An absolute reference to an SRv6 locator"; container segment-routing { description "Segment-routing parameters"; container srv6 { description "Segment-routing with IPv6 dataplane (SRv6) parameters"; Raza, et al. Expires January 9, 2020 [Page 9] Internet-Draft Yang Data Model for SRv6 based Services July 2019 uses srv6-locator-grouping; } } } // SRv6 VPN Sid allocation mode grouping srv6-sid-mode { description "SRv6 VPN SID allocation mode"; leaf sid-alloc-mode { type enumeration { enum per-ce { description "Allocate SRv6 SID per CE"; } enum per-route { description "Allocate SRv6 SID per prefix"; } enum per-vpn { description "Allocate SRv6 SID per VPN"; } } description "BGP SRv6 SID allocation model"; } } grouping srv6-attr-sid-info { description "SRv6 SID info per route"; container srv6 { description "Per Route SRv6 parameters"; list received-sids { key "received-sid"; description "List of received SRv6 SIDs"; leaf received-sid { type srv6-types:srv6-sid; description "Received SID"; } } list local-sids { key "local-sid"; description "List of local SRv6 SIDs"; leaf local-sid { type srv6-types:srv6-sid; description "Local SID"; } uses srv6-locator-grouping; } } } Raza, et al. Expires January 9, 2020 [Page 10] Internet-Draft Yang Data Model for SRv6 based Services July 2019 // // BGP Specific Paramters // // SRv6 Loc designation augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global" { description "Augment BGP global"; uses segment-routing-srv6-locator-grouping; } // Augment AF with route list augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv4-unicast" { description "Augment BGP SAFI route"; uses common-bgp-route-grouping; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv6-unicast" { description "Augment BGP SAFI route"; uses common-bgp-route-grouping; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv4-unicast" { description "Augment BGP SAFI route"; uses common-bgp-vpn-route-grouping; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv6-unicast" { description "Augment BGP SAFI route"; uses common-bgp-vpn-route-grouping; } /* TODO augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l2vpn-evpn" { description "Augment BGP SAFI route"; uses common-bgp-vpn-route-grouping; } */ // SRv6 VPN SID allocation mode configuration. augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + Raza, et al. Expires January 9, 2020 [Page 11] Internet-Draft Yang Data Model for SRv6 based Services July 2019 "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv4-unicast" { description "Augment BGP global IPv4 unicast AF mode to add SR specific parameters"; container segment-routing { description "Segment Routing specific parameters"; container srv6 { description "SRv6 specific parameters"; uses srv6-locator-grouping; uses srv6-sid-mode; } } } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv6-unicast" { description "Augment BGP global IPv6 unicast AF mode to add SR specific parameters"; container segment-routing { description "Segment Routing specific parameters"; container srv6 { description "SRv6 specific parameters"; uses srv6-locator-grouping; uses srv6-sid-mode; } } } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv4-unicast" { description "Augment BGP L3VPN IPv4 unicast AF mode to add SR specific parameters"; container segment-routing { description "Segment Routing specific parameters"; container srv6 { description "SRv6 specific parameters"; uses srv6-locator-grouping; uses srv6-sid-mode; } } } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv6-unicast" { description "Augment BGP L3VPN IPv6 unicast AF mode Raza, et al. Expires January 9, 2020 [Page 12] Internet-Draft Yang Data Model for SRv6 based Services July 2019 to add SR specific parameters"; container segment-routing { description "Segment Routing specific parameters"; container srv6 { description "SRv6 specific parameters"; uses srv6-locator-grouping; uses srv6-sid-mode; } } } // SRv6 local and remote sids per route. augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv4-unicast/" + "bgp-srv6-svc:routes/bgp-srv6-svc:route" { description "Augment AF route with SRv6 SID info"; uses srv6-attr-sid-info; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:ipv6-unicast/" + "bgp-srv6-svc:routes/bgp-srv6-svc:route" { description "Augment AF route with SRv6 SID info"; uses srv6-attr-sid-info; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv4-unicast/" + "bgp-srv6-svc:routes/bgp-srv6-svc:route" { description "Augment AF route with SRv6 SID info"; uses srv6-attr-sid-info; } augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l3vpn-ipv6-unicast/" + "bgp-srv6-svc:routes/bgp-srv6-svc:route" { description "Augment AF route with SRv6 SID info"; uses srv6-attr-sid-info; } /* TODO augment "/rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/" + "bgp:bgp/bgp:global/bgp:afi-safis/bgp:afi-safi/bgp:l2vpn-evpn/" + "bgp-srv6-svc:routes/bgp-srv6-svc:route" { description Raza, et al. Expires January 9, 2020 [Page 13] Internet-Draft Yang Data Model for SRv6 based Services July 2019 "Augment AF route with SRv6 SID info"; uses srv6-attr-sid-info; } */ } 8. IANA Considerations This document requests the registration of the following URI in the IETF "XML registry" [RFC3688]: +------------------------------------------------+------------+-----+ | URI | Registrant | XML | +------------------------------------------------+------------+-----+ | urn:ietf:params:xml:ns:yang:ietf-bgp- | The IESG | N/A | | srv6-services | | | +------------------------------------------------+------------+-----+ This document requests the registration of the following YANG module in the "YANG Module Names" registry [RFC6020]: +--------------+------------------------------+------------+--------+ | Name | Namespace | Prefix | Refere | | | | | nce | +--------------+------------------------------+------------+--------+ | ietf-bgp-srv | urn:ietf:params:xml:ns:yang | bgp-srv6-s | This d | | 6-services | :ietf-bgp-srv6-services | ervices | ocumen | | | | | t | +--------------+------------------------------+------------+--------+ -- RFC Editor: Replace "This document" with the document RFC number at time of publication, and remove this note. 9. Security Considerations The transport protocol used for sending the BGP Segment Routing data MUST support authentication and SHOULD support encryption. The data- model by itself does not create any security implications. This draft does not change any underlying security issues inherent in [I-D.ietf-idr-bgp-model]. Raza, et al. Expires January 9, 2020 [Page 14] Internet-Draft Yang Data Model for SRv6 based Services July 2019 10. Acknowledgements TBD. 11. Contributors Dhanendra Jain Email: dhanendra.ietf@gmail.com Zafar Ali Cisco Systems Email: zali@cisco.com Sharmila Palani Cisco Systems Email: spalani@cisco.com 12. References 12.1. Normative References [I-D.dawra-bess-srv6-services] Dawra, G., Filsfils, C., Brissette, P., Agrawal, S., Leddy, J., daniel.voyer@bell.ca, d., daniel.bernier@bell.ca, d., Steinberg, D., Raszuk, R., Decraene, B., Matsushima, S., Zhuang, S., and J. Rabadan, "SRv6 BGP based Overlay services", draft-dawra-bess- srv6-services-01 (work in progress), July 2019. [I-D.ietf-idr-bgp-model] Jethanandani, M., Patel, K., and S. Hares, "BGP YANG Model for Service Provider Networks", draft-ietf-idr-bgp- model-06 (work in progress), June 2019. [I-D.raza-spring-srv6-yang] Raza, K., Rajamanickam, J., Liu, X., Hu, Z., Hussain, I., Shah, H., daniel.voyer@bell.ca, d., Elmalky, H., Matsushima, S., Horiba, K., and A. Abdelsalam, "YANG Data Model for SRv6 Base and Static", draft-raza-spring- srv6-yang-03 (work in progress), May 2019. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . Raza, et al. Expires January 9, 2020 [Page 15] Internet-Draft Yang Data Model for SRv6 based Services July 2019 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, DOI 10.17487/RFC3688, January 2004, . [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, DOI 10.17487/RFC6020, October 2010, . [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., and A. Bierman, Ed., "Network Configuration Protocol (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, . [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10.17487/RFC7950, August 2016, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., and R. Wilton, "Network Management Datastore Architecture (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, . [RFC8407] Bierman, A., "Guidelines for Authors and Reviewers of Documents Containing YANG Data Models", BCP 216, RFC 8407, DOI 10.17487/RFC8407, October 2018, . 12.2. Informative References [I-D.ietf-spring-srv6-network-programming] Filsfils, C., Camarillo, P., Leddy, J., daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6 Network Programming", draft-ietf-spring-srv6-network- programming-01 (work in progress), July 2019. [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, July 2018, . Raza, et al. Expires January 9, 2020 [Page 16] Internet-Draft Yang Data Model for SRv6 based Services July 2019 Authors' Addresses Kamran Raza Cisco Systems Email: skraza@cisco.com Kausik Majumdar Cisco Systems Email: kmajumda@cisco.com Bruno Decraene Orange Email: bruno.decraene@orange.com Zhichun Jiang Tencent Email: zcjiang@tencent.com Satoru Matsushima Softbank Email: satoru.matsushima@g.softbank.co.jp Raza, et al. Expires January 9, 2020 [Page 17]