| < draft-ietf-teas-te-service-mapping-yang-06.txt | draft-ietf-teas-te-service-mapping-yang-07.txt > | |||
|---|---|---|---|---|
| TEAS Working Group Y. Lee, Ed. | TEAS Working Group Y. Lee, Ed. | |||
| Internet-Draft Samsung Electronics | Internet-Draft Samsung Electronics | |||
| Intended status: Standards Track D. Dhody, Ed. | Intended status: Standards Track D. Dhody, Ed. | |||
| Expires: August 24, 2021 G. Fioccola | Expires: August 25, 2021 G. Fioccola | |||
| Q. Wu, Ed. | Q. Wu, Ed. | |||
| Huawei Technologies | Huawei Technologies | |||
| D. Ceccarelli | D. Ceccarelli | |||
| Ericsson | Ericsson | |||
| J. Tantsura | J. Tantsura | |||
| Apstra | Apstra | |||
| February 20, 2021 | February 21, 2021 | |||
| Traffic Engineering (TE) and Service Mapping Yang Model | Traffic Engineering (TE) and Service Mapping Yang Model | |||
| draft-ietf-teas-te-service-mapping-yang-06 | draft-ietf-teas-te-service-mapping-yang-07 | |||
| Abstract | Abstract | |||
| This document provides a YANG data model to map customer service | This document provides a YANG data model to map customer service | |||
| models (e.g., the L3VPN Service Model (L3SM)) to Traffic Engineering | models (e.g., the L3VPN Service Model (L3SM)) to Traffic Engineering | |||
| (TE) models (e.g., the TE Tunnel or the Virtual Network (VN) model). | (TE) models (e.g., the TE Tunnel or the Virtual Network (VN) model). | |||
| This model is referred to as TE Service Mapping Model and is | This model is referred to as TE Service Mapping Model and is | |||
| applicable generically to the operator's need for seamless control | applicable generically to the operator's need for seamless control | |||
| and management of their VPN services with TE tunnel support. | and management of their VPN services with TE tunnel support. | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 46 ¶ | |||
| 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/. | |||
| 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 August 24, 2021. | This Internet-Draft will expire on August 25, 2021. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2021 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 | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://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 43 ¶ | skipping to change at page 2, line 43 ¶ | |||
| 3.2. TE and Network Models . . . . . . . . . . . . . . . . . . 9 | 3.2. TE and Network Models . . . . . . . . . . . . . . . . . . 9 | |||
| 4. L3VPN Architecture in the ACTN Context . . . . . . . . . . . 10 | 4. L3VPN Architecture in the ACTN Context . . . . . . . . . . . 10 | |||
| 4.1. Service Mapping . . . . . . . . . . . . . . . . . . . . . 13 | 4.1. Service Mapping . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 4.2. Site Mapping . . . . . . . . . . . . . . . . . . . . . . 13 | 4.2. Site Mapping . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 5. Applicability of TE-Service Mapping in Generic context . . . 14 | 5. Applicability of TE-Service Mapping in Generic context . . . 14 | |||
| 6. YANG Data Trees . . . . . . . . . . . . . . . . . . . . . . . 14 | 6. YANG Data Trees . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 6.1. Service Mapping Types . . . . . . . . . . . . . . . . . . 14 | 6.1. Service Mapping Types . . . . . . . . . . . . . . . . . . 14 | |||
| 6.2. Service Models . . . . . . . . . . . . . . . . . . . . . 16 | 6.2. Service Models . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 6.2.1. L3SM . . . . . . . . . . . . . . . . . . . . . . . . 16 | 6.2.1. L3SM . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 6.2.2. L2SM . . . . . . . . . . . . . . . . . . . . . . . . 17 | 6.2.2. L2SM . . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 6.2.3. L1CSM . . . . . . . . . . . . . . . . . . . . . . . . 17 | 6.2.3. L1CSM . . . . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 6.3. Network Models . . . . . . . . . . . . . . . . . . . . . 18 | 6.3. Network Models . . . . . . . . . . . . . . . . . . . . . 19 | |||
| 6.3.1. L3NM . . . . . . . . . . . . . . . . . . . . . . . . 18 | 6.3.1. L3NM . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
| 6.3.2. L2NM . . . . . . . . . . . . . . . . . . . . . . . . 19 | 6.3.2. L2NM . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
| 7. YANG Data Models . . . . . . . . . . . . . . . . . . . . . . 20 | 7. YANG Data Models . . . . . . . . . . . . . . . . . . . . . . 21 | |||
| 7.1. ietf-te-service-mapping-types . . . . . . . . . . . . . . 20 | 7.1. ietf-te-service-mapping-types . . . . . . . . . . . . . . 21 | |||
| 7.2. Service Models . . . . . . . . . . . . . . . . . . . . . 30 | 7.2. Service Models . . . . . . . . . . . . . . . . . . . . . 31 | |||
| 7.2.1. ietf-l3sm-te-service-mapping . . . . . . . . . . . . 30 | 7.2.1. ietf-l3sm-te-service-mapping . . . . . . . . . . . . 31 | |||
| 7.2.2. ietf-l2sm-te-service-mapping . . . . . . . . . . . . 32 | 7.2.2. ietf-l2sm-te-service-mapping . . . . . . . . . . . . 33 | |||
| 7.2.3. ietf-l1csm-te-service-mapping . . . . . . . . . . . . 34 | 7.2.3. ietf-l1csm-te-service-mapping . . . . . . . . . . . . 36 | |||
| 7.3. Network Models . . . . . . . . . . . . . . . . . . . . . 36 | 7.3. Network Models . . . . . . . . . . . . . . . . . . . . . 38 | |||
| 7.3.1. ietf-l3nm-te-service-mapping . . . . . . . . . . . . 36 | 7.3.1. ietf-l3nm-te-service-mapping . . . . . . . . . . . . 38 | |||
| 7.3.2. ietf-l2nm-te-service-mapping . . . . . . . . . . . . 38 | 7.3.2. ietf-l2nm-te-service-mapping . . . . . . . . . . . . 40 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 40 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 42 | |||
| 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 42 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 43 | |||
| 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 43 | 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 45 | |||
| 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 43 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 45 | |||
| 11.1. Normative References . . . . . . . . . . . . . . . . . . 43 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 45 | |||
| 11.2. Informative References . . . . . . . . . . . . . . . . . 46 | 11.2. Informative References . . . . . . . . . . . . . . . . . 48 | |||
| Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 47 | Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 49 | |||
| Appendix B. Discussion . . . . . . . . . . . . . . . . . . . . . 49 | Appendix B. Discussion . . . . . . . . . . . . . . . . . . . . . 51 | |||
| Appendix C. Contributor Addresses . . . . . . . . . . . . . . . 49 | Appendix C. Contributor Addresses . . . . . . . . . . . . . . . 51 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 50 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 52 | |||
| 1. Introduction | 1. Introduction | |||
| Data models are a representation of objects that can be configured or | Data models are a representation of objects that can be configured or | |||
| monitored within a system. Within the IETF, YANG [RFC7950] is the | monitored within a system. Within the IETF, YANG [RFC7950] is the | |||
| language of choice for documenting data models, and YANG models have | language of choice for documenting data models, and YANG models have | |||
| been produced to allow configuration or modelling of a variety of | been produced to allow configuration or modelling of a variety of | |||
| network devices, protocol instances, and network services. YANG data | network devices, protocol instances, and network services. YANG data | |||
| models have been classified in [RFC8199] and [RFC8309]. | models have been classified in [RFC8199] and [RFC8309]. | |||
| skipping to change at page 16, line 9 ¶ | skipping to change at page 16, line 9 ¶ | |||
| | ... | | ... | |||
| +--:(objective-function) | +--:(objective-function) | |||
| {path-optimization-objective-function}? | {path-optimization-objective-function}? | |||
| +--rw objective-function | +--rw objective-function | |||
| +--rw objective-function-type? identityref | +--rw objective-function-type? identityref | |||
| 6.2. Service Models | 6.2. Service Models | |||
| 6.2.1. L3SM | 6.2.1. L3SM | |||
| module: ietf-l3sm-te-service-mapping | module: ietf-l3sm-te-service-mapping | |||
| augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:vpn-services | augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:vpn-services | |||
| /l3vpn-svc:vpn-service: | /l3vpn-svc:vpn-service: | |||
| +--rw te-service-mapping! | +--rw te-service-mapping! | |||
| +--rw te-mapping | +--rw te-mapping | |||
| +--rw map-type? identityref | +--rw map-type? identityref | |||
| +--rw te-policy | +--rw te-policy | |||
| | +--rw color? uint32 | | +--rw color? uint32 | |||
| | +--rw protection-type? identityref | | +--rw protection-type? identityref | |||
| | +--rw availability-type? identityref | | +--rw availability-type? identityref | |||
| +--rw (te)? | +--rw (te)? | |||
| | +--:(vn) | | +--:(vn) | |||
| | | +--rw vn* -> /vn:vn/vn/vn-id | | | +--rw vn* -> /vn:vn/vn/vn-id | |||
| | +--:(te-topo) | | +--:(te-topo) | |||
| | | +--rw vn-topology-id? te-types:te-topology-id | | | +--rw vn-topology-id? te-types:te-topology-id | |||
| | | +--rw abstract-node? | | | +--rw abstract-node? | |||
| | | -> /nw:networks/network/node/node-id | | | -> /nw:networks/network/node/node-id | |||
| | +--:(te-tunnel) | | +--:(te-tunnel) | |||
| | +--rw te-tunnel* te:tunnel-ref | | +--rw te-tunnel* te:tunnel-ref | |||
| | +--rw sr-policy* | | +--rw sr-policy* | |||
| | [policy-color-ref policy-endpoint-ref] | | [policy-color-ref policy-endpoint-ref] | |||
| | {sr-policy}? | | {sr-policy}? | |||
| | +--rw policy-color-ref leafref | | +--rw policy-color-ref leafref | |||
| | +--rw policy-endpoint-ref leafref | | +--rw policy-endpoint-ref leafref | |||
| +--rw te-mapping-template-ref? | +--rw te-mapping-template-ref? | |||
| -> /te-mapping-templates/te-mapping-template/id | -> /tsmt:te-mapping-templates/te-mapping-template/id | |||
| {template}? | {template}? | |||
| augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site | augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site | |||
| /l3vpn-svc:site-network-accesses | /l3vpn-svc:site-network-accesses | |||
| /l3vpn-svc:site-network-access: | /l3vpn-svc:site-network-access: | |||
| +--rw (te)? | +--rw (te)? | |||
| +--:(vn) | +--:(vn) | |||
| | +--rw ap* -> /vn:ap/ap/ap-id | | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | |||
| +--:(te) | +--:(te) | |||
| +--rw ltp? te-types:te-tp-id | +--rw ltp? te-types:te-tp-id | |||
| augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site | augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site | |||
| /l3vpn-svc:service/l3vpn-svc:qos/l3vpn-svc:qos-profile | /l3vpn-svc:service/l3vpn-svc:qos/l3vpn-svc:qos-profile | |||
| /l3vpn-svc:qos-profile/l3vpn-svc:custom/l3vpn-svc:classes | /l3vpn-svc:qos-profile/l3vpn-svc:custom/l3vpn-svc:classes | |||
| /l3vpn-svc:class: | /l3vpn-svc:class: | |||
| +--rw vnap? -> /vn:ap/ap/vn-ap/vn-ap-id | +--rw (te)? | |||
| +--:(vn) | ||||
| | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | ||||
| +--:(te) | ||||
| +--rw ltp? te-types:te-tp-id | ||||
| augment /l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site | ||||
| /l3vpn-svc:site-network-accesses | ||||
| /l3vpn-svc:site-network-access/l3vpn-svc:service | ||||
| /l3vpn-svc:qos/l3vpn-svc:qos-profile | ||||
| /l3vpn-svc:qos-profile/l3vpn-svc:custom/l3vpn-svc:classes | ||||
| /l3vpn-svc:class: | ||||
| +--rw (te)? | ||||
| +--:(vn) | ||||
| | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | ||||
| +--:(te) | ||||
| +--rw ltp? te-types:te-tp-id | ||||
| 6.2.2. L2SM | 6.2.2. L2SM | |||
| module: ietf-l2sm-te-service-mapping | module: ietf-l2sm-te-service-mapping | |||
| augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:vpn-services | augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:vpn-services | |||
| /l2vpn-svc:vpn-service: | /l2vpn-svc:vpn-service: | |||
| +--rw te-service-mapping! | +--rw te-service-mapping! | |||
| +--rw te-mapping | +--rw te-mapping | |||
| +--rw map-type? identityref | +--rw map-type? identityref | |||
| +--rw te-policy | +--rw te-policy | |||
| | +--rw color? uint32 | | +--rw color? uint32 | |||
| | +--rw protection-type? identityref | | +--rw protection-type? identityref | |||
| | +--rw availability-type? identityref | | +--rw availability-type? identityref | |||
| +--rw (te)? | +--rw (te)? | |||
| | +--:(vn) | | +--:(vn) | |||
| | | +--rw vn* -> /vn:vn/vn/vn-id | | | +--rw vn* -> /vn:vn/vn/vn-id | |||
| | +--:(te-topo) | | +--:(te-topo) | |||
| | | +--rw vn-topology-id? te-types:te-topology-id | | | +--rw vn-topology-id? te-types:te-topology-id | |||
| | | +--rw abstract-node? | | | +--rw abstract-node? | |||
| | | -> /nw:networks/network/node/node-id | | | -> /nw:networks/network/node/node-id | |||
| | +--:(te-tunnel) | | +--:(te-tunnel) | |||
| | +--rw te-tunnel* te:tunnel-ref | | +--rw te-tunnel* te:tunnel-ref | |||
| | +--rw sr-policy* | | +--rw sr-policy* | |||
| | [policy-color-ref policy-endpoint-ref] | | [policy-color-ref policy-endpoint-ref] | |||
| | {sr-policy}? | | {sr-policy}? | |||
| | +--rw policy-color-ref leafref | | +--rw policy-color-ref leafref | |||
| | +--rw policy-endpoint-ref leafref | | +--rw policy-endpoint-ref leafref | |||
| +--rw te-mapping-template-ref? | +--rw te-mapping-template-ref? | |||
| -> /te-mapping-templates/te-mapping-template/id | -> /tsmt:te-mapping-templates/te-mapping-template/id | |||
| {template}? | {template}? | |||
| augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site | augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site | |||
| /l2vpn-svc:site-network-accesses | /l2vpn-svc:site-network-accesses | |||
| /l2vpn-svc:site-network-access: | /l2vpn-svc:site-network-access: | |||
| +--rw (te)? | +--rw (te)? | |||
| +--:(vn) | +--:(vn) | |||
| | +--rw ap* -> /vn:ap/ap/ap-id | | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | |||
| +--:(te) | +--:(te) | |||
| +--rw ltp? te-types:te-tp-id | +--rw ltp? te-types:te-tp-id | |||
| augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site | augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site | |||
| /l2vpn-svc:service/l2vpn-svc:qos/l2vpn-svc:qos-profile | /l2vpn-svc:service/l2vpn-svc:qos/l2vpn-svc:qos-profile | |||
| /l2vpn-svc:qos-profile/l2vpn-svc:custom/l2vpn-svc:classes | /l2vpn-svc:qos-profile/l2vpn-svc:custom/l2vpn-svc:classes | |||
| /l2vpn-svc:class: | /l2vpn-svc:class: | |||
| +--rw vnap? -> /vn:ap/ap/vn-ap/vn-ap-id | +--rw (te)? | |||
| +--:(vn) | ||||
| | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | ||||
| +--:(te) | ||||
| +--rw ltp? te-types:te-tp-id | ||||
| augment /l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site | ||||
| /l2vpn-svc:site-network-accesses | ||||
| /l2vpn-svc:site-network-access/l2vpn-svc:service | ||||
| /l2vpn-svc:qos/l2vpn-svc:qos-profile | ||||
| /l2vpn-svc:qos-profile/l2vpn-svc:custom/l2vpn-svc:classes | ||||
| /l2vpn-svc:class: | ||||
| +--rw (te)? | ||||
| +--:(vn) | ||||
| | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | ||||
| +--:(te) | ||||
| +--rw ltp? te-types:te-tp-id | ||||
| 6.2.3. L1CSM | 6.2.3. L1CSM | |||
| module: ietf-l1csm-te-service-mapping | module: ietf-l1csm-te-service-mapping | |||
| augment /l1csm:l1-connectivity/l1csm:services/l1csm:service: | augment /l1csm:l1-connectivity/l1csm:services/l1csm:service: | |||
| +--rw te-service-mapping! | +--rw te-service-mapping! | |||
| +--rw te-mapping | +--rw te-mapping | |||
| +--rw map-type? identityref | +--rw map-type? identityref | |||
| +--rw te-policy | +--rw te-policy | |||
| | +--rw color? uint32 | | +--rw color? uint32 | |||
| | +--rw protection-type? identityref | | +--rw protection-type? identityref | |||
| | +--rw availability-type? identityref | | +--rw availability-type? identityref | |||
| +--rw (te)? | +--rw (te)? | |||
| | +--:(vn) | | +--:(vn) | |||
| | | +--rw vn* -> /vn:vn/vn/vn-id | | | +--rw vn* -> /vn:vn/vn/vn-id | |||
| | +--:(te-topo) | | +--:(te-topo) | |||
| | | +--rw vn-topology-id? te-types:te-topology-id | | | +--rw vn-topology-id? te-types:te-topology-id | |||
| | | +--rw abstract-node? | | | +--rw abstract-node? | |||
| | | -> /nw:networks/network/node/node-id | | | -> /nw:networks/network/node/node-id | |||
| | +--:(te-tunnel) | | +--:(te-tunnel) | |||
| | +--rw te-tunnel* te:tunnel-ref | | +--rw te-tunnel* te:tunnel-ref | |||
| | +--rw sr-policy* | | +--rw sr-policy* | |||
| | [policy-color-ref policy-endpoint-ref] | | [policy-color-ref policy-endpoint-ref] | |||
| | {sr-policy}? | | {sr-policy}? | |||
| | +--rw policy-color-ref leafref | | +--rw policy-color-ref leafref | |||
| | +--rw policy-endpoint-ref leafref | | +--rw policy-endpoint-ref leafref | |||
| +--rw te-mapping-template-ref? | +--rw te-mapping-template-ref? | |||
| -> /te-mapping-templates/te-mapping-template/id | -> /tsmt:te-mapping-templates/te-mapping-template/id | |||
| {template}? | {template}? | |||
| augment /l1csm:l1-connectivity/l1csm:access/l1csm:unis/l1csm:uni: | augment /l1csm:l1-connectivity/l1csm:access/l1csm:unis/l1csm:uni: | |||
| +--rw (te)? | +--rw (te)? | |||
| +--:(vn) | +--:(vn) | |||
| | +--rw ap* -> /vn:ap/ap/ap-id | | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | |||
| +--:(te) | +--:(te) | |||
| +--rw ltp? te-types:te-tp-id | +--rw ltp? te-types:te-tp-id | |||
| 6.3. Network Models | 6.3. Network Models | |||
| 6.3.1. L3NM | 6.3.1. L3NM | |||
| module: ietf-l3nm-te-service-mapping | module: ietf-l3nm-te-service-mapping | |||
| augment /l3vpn-ntw:l3vpn-ntw/l3vpn-ntw:vpn-services | augment /l3vpn-ntw:l3vpn-ntw/l3vpn-ntw:vpn-services | |||
| /l3vpn-ntw:vpn-service: | /l3vpn-ntw:vpn-service: | |||
| +--rw te-service-mapping! | +--rw te-service-mapping! | |||
| +--rw te-mapping | +--rw te-mapping | |||
| +--rw map-type? identityref | +--rw map-type? identityref | |||
| +--rw te-policy | +--rw te-policy | |||
| | +--rw color? uint32 | | +--rw color? uint32 | |||
| | +--rw protection-type? identityref | | +--rw protection-type? identityref | |||
| | +--rw availability-type? identityref | | +--rw availability-type? identityref | |||
| +--rw (te)? | +--rw (te)? | |||
| | +--:(vn) | | +--:(vn) | |||
| | | +--rw vn* -> /vn:vn/vn/vn-id | | | +--rw vn* -> /vn:vn/vn/vn-id | |||
| | +--:(te-topo) | | +--:(te-topo) | |||
| | | +--rw vn-topology-id? te-types:te-topology-id | | | +--rw vn-topology-id? te-types:te-topology-id | |||
| | | +--rw abstract-node? | | | +--rw abstract-node? | |||
| | | -> /nw:networks/network/node/node-id | | | -> /nw:networks/network/node/node-id | |||
| | +--:(te-tunnel) | | +--:(te-tunnel) | |||
| | +--rw te-tunnel* te:tunnel-ref | | +--rw te-tunnel* te:tunnel-ref | |||
| | +--rw sr-policy* | | +--rw sr-policy* | |||
| | [policy-color-ref policy-endpoint-ref] | | [policy-color-ref policy-endpoint-ref] | |||
| | {sr-policy}? | | {sr-policy}? | |||
| | +--rw policy-color-ref leafref | | +--rw policy-color-ref leafref | |||
| | +--rw policy-endpoint-ref leafref | | +--rw policy-endpoint-ref leafref | |||
| +--rw te-mapping-template-ref? | +--rw te-mapping-template-ref? | |||
| -> /te-mapping-templates/te-mapping-template/id | -> /tsmt:te-mapping-templates/te-mapping-template/id | |||
| {template}? | {template}? | |||
| augment /l3vpn-ntw:l3vpn-ntw/l3vpn-ntw:vpn-services | augment /l3vpn-ntw:l3vpn-ntw/l3vpn-ntw:vpn-services | |||
| /l3vpn-ntw:vpn-service/l3vpn-ntw:vpn-nodes | /l3vpn-ntw:vpn-service/l3vpn-ntw:vpn-nodes | |||
| /l3vpn-ntw:vpn-node/l3vpn-ntw:vpn-network-accesses | /l3vpn-ntw:vpn-node/l3vpn-ntw:vpn-network-accesses | |||
| /l3vpn-ntw:vpn-network-access: | /l3vpn-ntw:vpn-network-access: | |||
| +--rw (te)? | +--rw (te)? | |||
| +--:(vn) | +--:(vn) | |||
| | +--rw ap* -> /vn:ap/ap/ap-id | | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | |||
| +--:(te) | +--:(te) | |||
| +--rw ltp? te-types:te-tp-id | +--rw ltp? te-types:te-tp-id | |||
| 6.3.2. L2NM | 6.3.2. L2NM | |||
| module: ietf-l2nm-te-service-mapping | module: ietf-l2nm-te-service-mapping | |||
| augment /l2vpn-ntw:l2vpn-ntw/l2vpn-ntw:vpn-services | augment /l2vpn-ntw:l2vpn-ntw/l2vpn-ntw:vpn-services | |||
| /l2vpn-ntw:vpn-service: | /l2vpn-ntw:vpn-service: | |||
| +--rw te-service-mapping! | +--rw te-service-mapping! | |||
| +--rw te-mapping | +--rw te-mapping | |||
| +--rw map-type? identityref | +--rw map-type? identityref | |||
| +--rw te-policy | +--rw te-policy | |||
| | +--rw color? uint32 | | +--rw color? uint32 | |||
| | +--rw protection-type? identityref | | +--rw protection-type? identityref | |||
| | +--rw availability-type? identityref | | +--rw availability-type? identityref | |||
| +--rw (te)? | +--rw (te)? | |||
| | +--:(vn) | | +--:(vn) | |||
| | | +--rw vn* -> /vn:vn/vn/vn-id | | | +--rw vn* -> /vn:vn/vn/vn-id | |||
| | +--:(te-topo) | | +--:(te-topo) | |||
| | | +--rw vn-topology-id? te-types:te-topology-id | | | +--rw vn-topology-id? te-types:te-topology-id | |||
| | | +--rw abstract-node? | | | +--rw abstract-node? | |||
| | | -> /nw:networks/network/node/node-id | | | -> /nw:networks/network/node/node-id | |||
| | +--:(te-tunnel) | | +--:(te-tunnel) | |||
| | +--rw te-tunnel* te:tunnel-ref | | +--rw te-tunnel* te:tunnel-ref | |||
| | +--rw sr-policy* | | +--rw sr-policy* | |||
| | [policy-color-ref policy-endpoint-ref] | | [policy-color-ref policy-endpoint-ref] | |||
| | {sr-policy}? | | {sr-policy}? | |||
| | +--rw policy-color-ref leafref | | +--rw policy-color-ref leafref | |||
| | +--rw policy-endpoint-ref leafref | | +--rw policy-endpoint-ref leafref | |||
| +--rw te-mapping-template-ref? | +--rw te-mapping-template-ref? | |||
| -> /te-mapping-templates/te-mapping-template/id | -> /tsmt:te-mapping-templates/te-mapping-template/id | |||
| {template}? | {template}? | |||
| augment /l2vpn-ntw:l2vpn-ntw/l2vpn-ntw:vpn-services | augment /l2vpn-ntw:l2vpn-ntw/l2vpn-ntw:vpn-services | |||
| /l2vpn-ntw:vpn-service/l2vpn-ntw:vpn-nodes | /l2vpn-ntw:vpn-service/l2vpn-ntw:vpn-nodes | |||
| /l2vpn-ntw:vpn-node/l2vpn-ntw:vpn-network-accesses | /l2vpn-ntw:vpn-node/l2vpn-ntw:vpn-network-accesses | |||
| /l2vpn-ntw:vpn-network-access: | /l2vpn-ntw:vpn-network-access: | |||
| +--rw (te)? | +--rw (te)? | |||
| +--:(vn) | +--:(vn) | |||
| | +--rw ap* -> /vn:ap/ap/ap-id | | +--rw vn-ap* -> /vn:ap/ap/vn-ap/vn-ap-id | |||
| +--:(te) | +--:(te) | |||
| +--rw ltp? te-types:te-tp-id | +--rw ltp? te-types:te-tp-id | |||
| 7. YANG Data Models | 7. YANG Data Models | |||
| The YANG codes are as follows: | The YANG codes are as follows: | |||
| 7.1. ietf-te-service-mapping-types | 7.1. ietf-te-service-mapping-types | |||
| <CODE BEGINS> file "ietf-te-service-mapping-types@2021-02-20.yang" | <CODE BEGINS> file "ietf-te-service-mapping-types@2021-02-22.yang" | |||
| module ietf-te-service-mapping-types { | module ietf-te-service-mapping-types { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-te-service-mapping-types"; | "urn:ietf:params:xml:ns:yang:ietf-te-service-mapping-types"; | |||
| prefix tsmt; | prefix tsmt; | |||
| /* Import te-types */ | /* Import te-types */ | |||
| import ietf-te-types { | import ietf-te-types { | |||
| skipping to change at page 22, line 45 ¶ | skipping to change at page 23, line 45 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Features | * Features | |||
| */ | */ | |||
| feature template { | feature template { | |||
| skipping to change at page 27, line 33 ¶ | skipping to change at page 28, line 33 ¶ | |||
| //grouping | //grouping | |||
| grouping te-endpoint-ref { | grouping te-endpoint-ref { | |||
| description | description | |||
| "The reference to TE endpoints."; | "The reference to TE endpoints."; | |||
| choice te { | choice te { | |||
| description | description | |||
| "How the TE endpoint is defined by VN's AP or TE's LTP"; | "How the TE endpoint is defined by VN's AP or TE's LTP"; | |||
| case vn { | case vn { | |||
| leaf-list ap { | leaf-list vn-ap { | |||
| type leafref { | type leafref { | |||
| path "/vn:ap/vn:ap/vn:ap-id"; | path "/vn:ap/vn:ap/vn:vn-ap/vn:vn-ap-id"; | |||
| } | } | |||
| description | description | |||
| "The reference to VN's AP"; | "The reference to VNAP"; | |||
| reference | reference | |||
| "RFC 8453: Framework for Abstraction and Control of TE | "RFC 8453: Framework for Abstraction and Control of TE | |||
| Networks (ACTN)"; | Networks (ACTN)"; | |||
| } | } | |||
| } | } | |||
| case te { | case te { | |||
| leaf ltp { | leaf ltp { | |||
| type te-types:te-tp-id; | type te-types:te-tp-id; | |||
| description | description | |||
| "Reference LTP in the TE-topology"; | "Reference LTP in the TE-topology"; | |||
| skipping to change at page 28, line 12 ¶ | skipping to change at page 29, line 12 ¶ | |||
| "RFC 8795: YANG Data Model for Traffic Engineering (TE) | "RFC 8795: YANG Data Model for Traffic Engineering (TE) | |||
| Topologies"; | Topologies"; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| //grouping | //grouping | |||
| grouping vnap-ref { | ||||
| description | ||||
| "The reference to VNAP."; | ||||
| leaf vnap { | ||||
| type leafref { | ||||
| path "/vn:ap/vn:ap/vn:vn-ap/vn:vn-ap-id"; | ||||
| } | ||||
| description | ||||
| "The reference to VNAP"; | ||||
| reference | ||||
| "RFC 8453: Framework for Abstraction and Control of TE | ||||
| Networks (ACTN)"; | ||||
| } | ||||
| } | ||||
| //grouping | ||||
| grouping te-policy { | grouping te-policy { | |||
| description | description | |||
| "Various underlying TE policy requirements"; | "Various underlying TE policy requirements"; | |||
| leaf color { | leaf color { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "Maps to the underlying colored TE resources"; | "Maps to the underlying colored TE resources"; | |||
| } | } | |||
| leaf protection-type { | leaf protection-type { | |||
| type identityref { | type identityref { | |||
| skipping to change at page 30, line 23 ¶ | skipping to change at page 31, line 9 ¶ | |||
| "List for templates."; | "List for templates."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 7.2. Service Models | 7.2. Service Models | |||
| 7.2.1. ietf-l3sm-te-service-mapping | 7.2.1. ietf-l3sm-te-service-mapping | |||
| <CODE BEGINS> file "ietf-l3sm-te-service-mapping@2021-02-20.yang" | <CODE BEGINS> file "ietf-l3sm-te-service-mapping@2021-02-22.yang" | |||
| module ietf-l3sm-te-service-mapping { | module ietf-l3sm-te-service-mapping { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-l3sm-te-service-mapping"; | "urn:ietf:params:xml:ns:yang:ietf-l3sm-te-service-mapping"; | |||
| prefix l3-tsm; | prefix l3-tsm; | |||
| import ietf-te-service-mapping-types { | import ietf-te-service-mapping-types { | |||
| prefix tsmt; | prefix tsmt; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| skipping to change at page 31, line 30 ¶ | skipping to change at page 32, line 14 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Augmentation to L3SM | * Augmentation to L3SM | |||
| */ | */ | |||
| skipping to change at page 32, line 4 ¶ | skipping to change at page 32, line 36 ¶ | |||
| + "/l3vpn-svc:vpn-service" { | + "/l3vpn-svc:vpn-service" { | |||
| description | description | |||
| "L3SM augmented to include TE parameters and mapping"; | "L3SM augmented to include TE parameters and mapping"; | |||
| container te-service-mapping { | container te-service-mapping { | |||
| presence "Indicates L3 service to TE mapping"; | presence "Indicates L3 service to TE mapping"; | |||
| description | description | |||
| "Container to augment l3sm to TE parameters and mapping"; | "Container to augment l3sm to TE parameters and mapping"; | |||
| uses tsmt:te-mapping; | uses tsmt:te-mapping; | |||
| } | } | |||
| } | } | |||
| //augment | //augment | |||
| augment "/l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site" | augment "/l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site" | |||
| + "/l3vpn-svc:site-network-accesses" | + "/l3vpn-svc:site-network-accesses" | |||
| + "/l3vpn-svc:site-network-access" { | + "/l3vpn-svc:site-network-access" { | |||
| description | description | |||
| "This augment is only valid for TE mapping of L3SM network-access | "This augment is only valid for TE mapping of L3SM network-access | |||
| to TE endpoints"; | to TE endpoints"; | |||
| uses tsmt:te-endpoint-ref; | uses tsmt:te-endpoint-ref; | |||
| } | } | |||
| //augment | //augment | |||
| augment "/l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site" | augment "/l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site" | |||
| + "/l3vpn-svc:service/l3vpn-svc:qos/l3vpn-svc:qos-profile" | + "/l3vpn-svc:service/l3vpn-svc:qos/l3vpn-svc:qos-profile" | |||
| + "/l3vpn-svc:qos-profile/l3vpn-svc:custom" | + "/l3vpn-svc:qos-profile/l3vpn-svc:custom" | |||
| + "/l3vpn-svc:classes/l3vpn-svc:class" { | + "/l3vpn-svc:classes/l3vpn-svc:class" { | |||
| when './l3vpn-svc:bandwidth/l3vpn-svc:end-to-end' { | ||||
| description | ||||
| "applicable only with end-to-end"; | ||||
| } | ||||
| description | description | |||
| "This augment is only valid for the custom qos-profile with | "This augment is for per-class in site for custom QoS profile"; | |||
| end-to-end set"; | uses tsmt:te-endpoint-ref; | |||
| uses tsmt:vnap-ref; | } | |||
| augment "/l3vpn-svc:l3vpn-svc/l3vpn-svc:sites/l3vpn-svc:site" | ||||
| + "/l3vpn-svc:site-network-accesses" | ||||
| + "/l3vpn-svc:site-network-access" | ||||
| + "/l3vpn-svc:service/l3vpn-svc:qos/l3vpn-svc:qos-profile" | ||||
| + "/l3vpn-svc:qos-profile/l3vpn-svc:custom" | ||||
| + "/l3vpn-svc:classes/l3vpn-svc:class" { | ||||
| description | ||||
| "This augment is for per-class in site-network-access for custom | ||||
| QoS profile"; | ||||
| uses tsmt:te-endpoint-ref; | ||||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 7.2.2. ietf-l2sm-te-service-mapping | 7.2.2. ietf-l2sm-te-service-mapping | |||
| <CODE BEGINS> file "ietf-l2sm-te-service-mapping@2021-02-20.yang" | <CODE BEGINS> file "ietf-l2sm-te-service-mapping@2021-02-22.yang" | |||
| module ietf-l2sm-te-service-mapping { | module ietf-l2sm-te-service-mapping { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-l2sm-te-service-mapping"; | "urn:ietf:params:xml:ns:yang:ietf-l2sm-te-service-mapping"; | |||
| prefix l2-tsm; | prefix l2-tsm; | |||
| import ietf-te-service-mapping-types { | import ietf-te-service-mapping-types { | |||
| prefix tsmt; | prefix tsmt; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| skipping to change at page 33, line 43 ¶ | skipping to change at page 34, line 33 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Augmentation to L2SM | * Augmentation to L2SM | |||
| */ | */ | |||
| skipping to change at page 34, line 39 ¶ | skipping to change at page 35, line 31 ¶ | |||
| augment "/l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site" | augment "/l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site" | |||
| + "/l2vpn-svc:service/l2vpn-svc:qos/l2vpn-svc:qos-profile" | + "/l2vpn-svc:service/l2vpn-svc:qos/l2vpn-svc:qos-profile" | |||
| + "/l2vpn-svc:qos-profile/l2vpn-svc:custom" | + "/l2vpn-svc:qos-profile/l2vpn-svc:custom" | |||
| + "/l2vpn-svc:classes/l2vpn-svc:class" { | + "/l2vpn-svc:classes/l2vpn-svc:class" { | |||
| when './l2vpn-svc:bandwidth/l2vpn-svc:end-to-end' { | when './l2vpn-svc:bandwidth/l2vpn-svc:end-to-end' { | |||
| description | description | |||
| "applicable only with end-to-end"; | "applicable only with end-to-end"; | |||
| } | } | |||
| description | description | |||
| "This augment is only valid for the custom qos-profile with | "This augment is for per-class in site for custom QoS profile"; | |||
| end-to-end set"; | uses tsmt:te-endpoint-ref; | |||
| uses tsmt:vnap-ref; | } | |||
| augment "/l2vpn-svc:l2vpn-svc/l2vpn-svc:sites/l2vpn-svc:site" | ||||
| + "/l2vpn-svc:site-network-accesses" | ||||
| + "/l2vpn-svc:site-network-access" | ||||
| + "/l2vpn-svc:service/l2vpn-svc:qos/l2vpn-svc:qos-profile" | ||||
| + "/l2vpn-svc:qos-profile/l2vpn-svc:custom" | ||||
| + "/l2vpn-svc:classes/l2vpn-svc:class" { | ||||
| description | ||||
| "This augment is for per-class in site-network-access for custom | ||||
| QoS profile"; | ||||
| uses tsmt:te-endpoint-ref; | ||||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 7.2.3. ietf-l1csm-te-service-mapping | 7.2.3. ietf-l1csm-te-service-mapping | |||
| <CODE BEGINS> file "ietf-l1csm-te-service-mapping@2021-02-20.yang" | <CODE BEGINS> file "ietf-l1csm-te-service-mapping@2021-02-22.yang" | |||
| module ietf-l1csm-te-service-mapping { | module ietf-l1csm-te-service-mapping { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-l1csm-te-service-mapping"; | "urn:ietf:params:xml:ns:yang:ietf-l1csm-te-service-mapping"; | |||
| prefix l1-tsm; | prefix l1-tsm; | |||
| import ietf-te-service-mapping-types { | import ietf-te-service-mapping-types { | |||
| prefix tsmt; | prefix tsmt; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| import ietf-l1csm { | import ietf-l1csm { | |||
| prefix l1csm; | prefix l1csm; | |||
| reference | reference | |||
| skipping to change at page 36, line 6 ¶ | skipping to change at page 37, line 14 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Augmentation to L1CSM | * Augmentation to L1CSM | |||
| */ | */ | |||
| skipping to change at page 36, line 40 ¶ | skipping to change at page 37, line 48 ¶ | |||
| augment "/l1csm:l1-connectivity/l1csm:access/l1csm:unis/" | augment "/l1csm:l1-connectivity/l1csm:access/l1csm:unis/" | |||
| + "l1csm:uni" { | + "l1csm:uni" { | |||
| description | description | |||
| "This augment the L1CSM UNI with a reference | "This augment the L1CSM UNI with a reference | |||
| to TE endpoints"; | to TE endpoints"; | |||
| uses tsmt:te-endpoint-ref; | uses tsmt:te-endpoint-ref; | |||
| } | } | |||
| //augment | //augment | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 7.3. Network Models | 7.3. Network Models | |||
| 7.3.1. ietf-l3nm-te-service-mapping | 7.3.1. ietf-l3nm-te-service-mapping | |||
| <CODE BEGINS> file "ietf-l3nm-te-service-mapping@202-02-20.yang" | <CODE BEGINS> file "ietf-l3nm-te-service-mapping@202-02-22.yang" | |||
| module ietf-l3nm-te-service-mapping { | module ietf-l3nm-te-service-mapping { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-l3nm-te-service-mapping"; | "urn:ietf:params:xml:ns:yang:ietf-l3nm-te-service-mapping"; | |||
| prefix l3nm-tsm; | prefix l3nm-tsm; | |||
| import ietf-te-service-mapping-types { | import ietf-te-service-mapping-types { | |||
| prefix tsmt; | prefix tsmt; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| import ietf-l3vpn-ntw { | import ietf-l3vpn-ntw { | |||
| prefix l3vpn-ntw; | prefix l3vpn-ntw; | |||
| reference | reference | |||
| skipping to change at page 38, line 5 ¶ | skipping to change at page 39, line 14 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Augmentation to L3NM | * Augmentation to L3NM | |||
| */ | */ | |||
| skipping to change at page 38, line 47 ¶ | skipping to change at page 40, line 7 ¶ | |||
| to TE endpoints when underlying TE is used"; | to TE endpoints when underlying TE is used"; | |||
| uses tsmt:te-endpoint-ref; | uses tsmt:te-endpoint-ref; | |||
| } | } | |||
| //augment | //augment | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 7.3.2. ietf-l2nm-te-service-mapping | 7.3.2. ietf-l2nm-te-service-mapping | |||
| <CODE BEGINS> file "ietf-l2nm-te-service-mapping@2021-02-20.yang" | <CODE BEGINS> file "ietf-l2nm-te-service-mapping@2021-02-22.yang" | |||
| module ietf-l2nm-te-service-mapping { | module ietf-l2nm-te-service-mapping { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace | namespace | |||
| "urn:ietf:params:xml:ns:yang:ietf-l2nm-te-service-mapping"; | "urn:ietf:params:xml:ns:yang:ietf-l2nm-te-service-mapping"; | |||
| prefix l2nm-tsm; | prefix l2nm-tsm; | |||
| import ietf-te-service-mapping-types { | import ietf-te-service-mapping-types { | |||
| prefix tsmt; | prefix tsmt; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| import ietf-l2vpn-ntw { | import ietf-l2vpn-ntw { | |||
| prefix l2vpn-ntw; | prefix l2vpn-ntw; | |||
| reference | reference | |||
| "I-D.ietf-opsawg-l2nm: A Layer 2 VPN Network YANG Model"; | "I-D.ietf-opsawg-l2nm: A Layer 2 VPN Network YANG Model"; | |||
| } | } | |||
| skipping to change at page 39, line 51 ¶ | skipping to change at page 41, line 12 ¶ | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC XXXX; see the | |||
| RFC itself for full legal notices. | RFC itself for full legal notices. | |||
| The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL | |||
| NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', | |||
| 'MAY', and 'OPTIONAL' in this document are to be interpreted as | 'MAY', and 'OPTIONAL' in this document are to be interpreted as | |||
| described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, | |||
| they appear in all capitals, as shown here."; | they appear in all capitals, as shown here."; | |||
| revision 2021-02-20 { | revision 2021-02-22 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | "RFC XXXX: Traffic Engineering and Service Mapping Yang Model"; | |||
| } | } | |||
| /* | /* | |||
| * Augmentation to L2NM | * Augmentation to L2NM | |||
| */ | */ | |||
| End of changes. 35 change blocks. | ||||
| 256 lines changed or deleted | 286 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/ | ||||