| rfc9833.original | rfc9833.txt | |||
|---|---|---|---|---|
| Operations and Management Area Working Group M. Boucadair, Ed. | Internet Engineering Task Force (IETF) M. Boucadair, Ed. | |||
| Internet-Draft Orange | Request for Comments: 9833 Orange | |||
| Intended status: Standards Track R. Roberts, Ed. | Category: Standards Track R. Roberts, Ed. | |||
| Expires: 27 July 2025 Juniper | ISSN: 2070-1721 Juniper | |||
| O. G. D. Dios | O. Gonzalez de Dios | |||
| Telefonica | Telefonica | |||
| S. B. Giraldo | S. Barguil | |||
| Nokia | Nokia | |||
| B. Wu | B. Wu | |||
| Huawei Technologies | Huawei Technologies | |||
| 23 January 2025 | September 2025 | |||
| A Common YANG Data Model for Attachment Circuits | A Common YANG Data Model for Attachment Circuits | |||
| draft-ietf-opsawg-teas-common-ac-15 | ||||
| Abstract | Abstract | |||
| The document specifies a common attachment circuits (ACs) YANG model, | The document specifies a common attachment circuits (ACs) YANG data | |||
| which is designed to be reusable by other models. This design is | model, which is designed to be reusable by other models. This design | |||
| meant to ensure consistent AC structures among models that manipulate | is meant to ensure consistent AC structures among models that | |||
| ACs. For example, this common model can be reused by service models | manipulate ACs. For example, this common model can be reused by | |||
| to expose ACs as a service, service models that require binding a | service models to expose ACs as a service, service models that | |||
| service to a set of ACs, network and device models to provision ACs, | require binding a service to a set of ACs, network and device models | |||
| etc. | to provision ACs, etc. | |||
| Discussion Venues | ||||
| This note is to be removed before publishing as an RFC. | ||||
| Discussion of this document takes place on the Operations and | ||||
| Management Area Working Group Working Group mailing list | ||||
| (opsawg@ietf.org), which is archived at | ||||
| https://mailarchive.ietf.org/arch/browse/opsawg/. | ||||
| Source for this draft and an issue tracker can be found at | ||||
| https://github.com/boucadair/attachment-circuit-model. | ||||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
| 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 | This document is a product of the Internet Engineering Task Force | |||
| and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
| time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
| material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
| Internet Standards is available in Section 2 of RFC 7841. | ||||
| This Internet-Draft will expire on 27 July 2025. | Information about the current status of this document, any errata, | |||
| and how to provide feedback on it may be obtained at | ||||
| https://www.rfc-editor.org/info/rfc9833. | ||||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2025 IETF Trust and the persons identified as the | Copyright (c) 2025 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 (https://trustee.ietf.org/ | Provisions Relating to IETF Documents | |||
| license-info) in effect on the date of publication of this document. | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| Please review these documents carefully, as they describe your rights | publication of this document. Please review these documents | |||
| and restrictions with respect to this document. Code Components | carefully, as they describe your rights and restrictions with respect | |||
| extracted from this document must include Revised BSD License text as | to this document. Code Components extracted from this document must | |||
| described in Section 4.e of the Trust Legal Provisions and are | include Revised BSD License text as described in Section 4.e of the | |||
| provided without warranty as described in the Revised BSD License. | Trust Legal Provisions and are provided without warranty as described | |||
| in the Revised BSD License. | ||||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction | |||
| 1.1. Editorial Note (To be removed by RFC Editor) . . . . . . 4 | 2. Conventions and Definitions | |||
| 2. Conventions and Definitions . . . . . . . . . . . . . . . . . 5 | 3. Relationship to Other AC Data Models | |||
| 3. Relationship to Other AC Data Models . . . . . . . . . . . . 6 | 4. Description of the AC Common YANG Module | |||
| 4. Description of the AC Common YANG Module . . . . . . . . . . 7 | 4.1. Features | |||
| 4.1. Features . . . . . . . . . . . . . . . . . . . . . . . . 7 | 4.2. Identities | |||
| 4.2. Identities . . . . . . . . . . . . . . . . . . . . . . . 7 | 4.3. Reusable Groupings | |||
| 4.3. Reusable Groupings . . . . . . . . . . . . . . . . . . . 9 | 5. Common Attachment Circuit YANG Module | |||
| 5. Common Attachment Circuit YANG Module . . . . . . . . . . . . 18 | 6. Security Considerations | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 53 | 7. IANA Considerations | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 54 | 8. References | |||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 54 | 8.1. Normative References | |||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 54 | 8.2. Informative References | |||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 56 | Appendix A. Full Tree | |||
| Appendix A. Full Tree . . . . . . . . . . . . . . . . . . . . . 60 | Acknowledgments | |||
| Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 66 | Contributors | |||
| Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 66 | Authors' Addresses | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 67 | ||||
| 1. Introduction | 1. Introduction | |||
| Connectivity services are provided by networks to customers via | Connectivity services are provided by networks to customers via | |||
| dedicated terminating points (e.g., Service Functions (SFs), Customer | dedicated terminating points (e.g., Service Functions (SFs), Customer | |||
| Premises Equipment (CPEs), Autonomous System Border Routers (ASBRs), | Premises Equipment (CPE), Autonomous System Border Routers (ASBRs), | |||
| data centers gateways, or Internet Exchange Points). A connectivity | data center gateways, or Internet Exchange Points (IXPs)). A | |||
| service ensures data transfer from (or destined to) a given | connectivity service ensures data transfer from (or destined to) a | |||
| terminating point to (or originate from) other terminating points. | given terminating point to (or originating from) other terminating | |||
| Objectives for such a connectivity service may be negotiated and | points. Objectives for such a connectivity service may be negotiated | |||
| agreed upon between a customer and a network provider. | and agreed upon between a customer and a network provider. | |||
| For that data transfer to take place within the provider network, it | For that data transfer to take place within the provider network, it | |||
| is assumed that adequate setup is provisioned over the links | is assumed that adequate setup is provisioned over the links | |||
| connecting the customer's terminating points to the provider network | connecting the customer's terminating points to the provider network | |||
| (typically, a Provider Edge (PE)), thereby enabling successful data | (typically, a Provider Edge (PE)), thereby enabling successful data | |||
| exchange. This necessary provisioning is referred to in this | exchange. This necessary provisioning is referred to in this | |||
| document as "attachment circuit" (AC), while the underlying link is | document as an "attachment circuit" (AC), while the underlying link | |||
| referred to as the "bearer". | is referred to as the "bearer". | |||
| When a customer requests a new service, that service can be | When a customer requests a new service, that service can be | |||
| associated with existing attachment circuits or may require the | associated with existing ACs or may require the instantiation of new | |||
| instantiation of new attachment circuits. Whether these attachment | ACs. Whether these ACs are dedicated to a particular service or | |||
| circuits are dedicated to a particular service or shared among | shared among multiple services depends on the specific deployment. | |||
| multiple services depends on the specific deployment. | ||||
| Examples of attachment circuits are depicted in Figure 1. A Customer | Examples of ACs are depicted in Figure 1. A Customer Edge (CE) may | |||
| Edge (CE) may be realized as a physical node or a logical entity. | be realized as a physical node or a logical entity. From the | |||
| From the network's perspective, a CE is treated as a peer Service | network's perspective, a CE is treated as a peer Service Attachment | |||
| Attachment Point (SAP) [RFC9408]. CEs can be dedicated to a single | Point (SAP) [RFC9408]. CEs can be dedicated to a single service | |||
| service (e.g., Layer 3 Virtual Private Network (VPN) or Layer 2 VPN) | (e.g., Layer 3 Virtual Private Network (VPN) or Layer 2 VPN) or can | |||
| or can host multiple services (e.g., Service Functions [RFC7665]). A | host multiple services (e.g., SFs [RFC7665]). A single AC, as viewed | |||
| single AC, as viewed by the network provider, may be bound to one or | by the network provider, may be bound to one or more peer SAPs (e.g., | |||
| more peer SAPs (e.g., "CE1" and "CE2"). For instance, as discussed | "CE1" and "CE2"). For instance, as discussed in [RFC4364], multiple | |||
| in [RFC4364], multiple CEs can attach to a PE over the same | CEs can attach to a PE over the same AC. This approach is typically | |||
| attachment circuit. This approach is typically deployed when the | deployed when the Layer 2 infrastructure between the CE and the | |||
| Layer 2 infrastructure between the CE and the network supports a | network supports a multipoint service. A single CE may also | |||
| multipoint service. A single CE may also terminate multiple ACs | terminate multiple ACs (e.g., "CE3" and "CE4"), which may be carried | |||
| (e.g., "CE3" and "CE4"), which may be carried over the same or | over the same or distinct bearers. | |||
| distinct bearers. | ||||
| .--------------------. | .--------------------. | |||
| | | | | | | |||
| .------. | .--. (b1) .-----. | .------. | .--. (b1) .-----. | |||
| | +----. | | +---AC---+ | | | +----. | | +---AC---+ | | |||
| | CE1 | | | |PE+---AC---+ CE3 | | | CE1 | | | |PE+---AC---+ CE3 | | |||
| '------' | .--. '--' (b2) '-----' | '------' | .--. '--' (b2) '-----' | |||
| +---AC--+PE| Network | | +---AC--+PE| Network | | |||
| .------. | '--' .--. (b3) .-----. | .------. | '--' .--. (b3) .-----. | |||
| | | | | | +---AC---+ | | | | | | | +---AC---+ | | |||
| skipping to change at page 4, line 25 ¶ | skipping to change at line 133 ¶ | |||
| '------' | '--' (b3) '---+-' | '------' | '--' (b3) '---+-' | |||
| | .--. | | | | .--. | | | |||
| '----------+PE+------' | | '----------+PE+------' | | |||
| '--' | | '--' | | |||
| | | | | | | |||
| '-----------AC----------' | '-----------AC----------' | |||
| (bx) = bearer Id x | (bx) = bearer Id x | |||
| Figure 1: Examples of ACs | Figure 1: Examples of ACs | |||
| This document specifies a common module ("ietf-ac-common") for | This document specifies a common module ("ietf-ac-common") for ACs | |||
| attachment circuits (Section 5). The module is designed to be | (Section 5). The module is designed to be reusable by other models, | |||
| reusable by other models, thereby ensuring consistent AC structures | thereby ensuring consistent AC structures among modules that | |||
| among modules that manipulate ACs. For example, the common module | manipulate ACs. For example, the common module can be reused by | |||
| can be reused by service models to expose AC-as-a-Service (ACaaS) | service models to expose AC as a Service (ACaaS) (e.g., [RFC9834]) or | |||
| (e.g., [I-D.ietf-opsawg-teas-attachment-circuit]) or by service | by service models that require binding a service to a set of ACs | |||
| models that require binding a service to a set of ACs (e.g., Network | (e.g., RFC 9543 Network Slice Service [YANG-NSS])). It can also be | |||
| Slice Service [I-D.ietf-teas-ietf-network-slice-nbi-yang])). It can | used by network models to provision ACs (e.g., [RFC9835]) and device | |||
| also be used by network models to provision ACs (e.g., | models, among others. | |||
| [I-D.ietf-opsawg-ntw-attachment-circuit]) and device models, among | ||||
| others. | ||||
| The common AC module eases data inheritance between modules (e.g., | The common AC module eases data inheritance between modules (e.g., | |||
| from service to network models as per [RFC8969]). | from service to network models as per [RFC8969]). | |||
| The YANG data model in this document conforms to the Network | The YANG data model in this document conforms to the Network | |||
| Management Datastore Architecture (NMDA) defined in [RFC8342]. | Management Datastore Architecture (NMDA) defined in [RFC8342]. | |||
| 1.1. Editorial Note (To be removed by RFC Editor) | ||||
| Note to the RFC Editor: This section is to be removed prior to | ||||
| publication. | ||||
| This document 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. | ||||
| Please apply the following replacements: | ||||
| * XXXX --> the assigned RFC number for this I-D | ||||
| * 2025-01-07 --> the actual date of the publication of this document | ||||
| 2. Conventions and Definitions | 2. Conventions and Definitions | |||
| The meanings of the symbols in the YANG tree diagrams are defined in | The meanings of the symbols in the YANG tree diagrams are defined in | |||
| [RFC8340]. | [RFC8340]. | |||
| LxSM refers to both the Layer 2 Service Model (L2SM) [RFC8466] and | LxSM refers to both the L2VPN Service Model (L2SM) [RFC8466] and the | |||
| the Layer 3 Service Model (L3SM) [RFC8299]. | L3VPN Service Model (L3SM) [RFC8299]. | |||
| LxNM refers to both the Layer 2 Network Model (L2NM) [RFC9291] and | LxNM refers to both the L2VPN Network Model (L2NM) [RFC9291] and the | |||
| the Layer 3 Network Model (L3NM) [RFC9182]. | L3VPN Network Model (L3NM) [RFC9182]. | |||
| This document uses the following term: | This document uses the following term: | |||
| Bearer: A physical or logical link that connects a CE (or site) to a | Bearer: A physical or logical link that connects a CE (or site) to a | |||
| provider network. | provider network. | |||
| A bearer can be a wireless or wired link. One or multiple | A bearer can be a wireless or wired link. One or multiple | |||
| technologies can be used to build a bearer. The bearer type can | technologies can be used to build a bearer. The bearer type can | |||
| be specified by a customer. | be specified by a customer. | |||
| The operator allocates a unique bearer reference to identify a | The operator allocates a unique bearer reference to identify a | |||
| bearer within its network (e.g., customer line identifier). Such | bearer within its network (e.g., customer line identifier). Such | |||
| a reference can be retrieved by a customer and then used in | a reference can be retrieved by a customer and then used in | |||
| subsequent service placement requests to unambiguously identify | subsequent service placement requests to unambiguously identify | |||
| where a service is to be bound. | where a service is to be bound. | |||
| The concept of bearer can be generalized to refer to the required | The concept of bearer can be generalized to refer to the required | |||
| underlying connection for the provisioning of an attachment | underlying connection for the provisioning of an AC. | |||
| circuit. | ||||
| One or multiple attachment circuits may be hosted over the same | One or multiple ACs may be hosted over the same bearer (e.g., | |||
| bearer (e.g., multiple Virtual Local Area Networks (VLANs) on the | multiple Virtual Local Area Networks (VLANs) on the same bearer | |||
| same bearer that is provided by a physical link). | that is provided by a physical link). | |||
| The names of data nodes are prefixed using the prefix associated with | The names of data nodes are prefixed using the prefix associated with | |||
| the corresponding imported YANG module as shown in Table 1. | the corresponding imported YANG module as shown in Table 1. | |||
| +============+==================+========================+ | +============+==================+========================+ | |||
| | Prefix | Module | Reference | | | Prefix | Module | Reference | | |||
| +============+==================+========================+ | +============+==================+========================+ | |||
| | inet | ietf-inet-types | Section 4 of [RFC6991] | | | inet | ietf-inet-types | Section 4 of [RFC6991] | | |||
| +------------+------------------+------------------------+ | +------------+------------------+------------------------+ | |||
| | key-chain | ietf-key-chain | [RFC8177] | | | key-chain | ietf-key-chain | [RFC8177] | | |||
| skipping to change at page 6, line 27 ¶ | skipping to change at line 207 ¶ | |||
| +------------+------------------+------------------------+ | +------------+------------------+------------------------+ | |||
| Table 1: Modules and Their Associated Prefixes | Table 1: Modules and Their Associated Prefixes | |||
| 3. Relationship to Other AC Data Models | 3. Relationship to Other AC Data Models | |||
| Figure 2 depicts the relationship between the various AC data models: | Figure 2 depicts the relationship between the various AC data models: | |||
| * "ietf-ac-common" (Section 5) | * "ietf-ac-common" (Section 5) | |||
| * "ietf-bearer-svc" (Section 5.1 of | * "ietf-bearer-svc" (Section 6.1 of [RFC9834]) | |||
| [I-D.ietf-opsawg-teas-attachment-circuit]) | ||||
| * "ietf-ac-svc" (Section 5.2 of | * "ietf-ac-svc" (Section 6.2 of [RFC9834]) | |||
| [I-D.ietf-opsawg-teas-attachment-circuit]) | ||||
| * "ietf-ac-ntw" ([I-D.ietf-opsawg-ntw-attachment-circuit]) | * "ietf-ac-ntw" [RFC9835] | |||
| * "ietf-ac-glue" ([I-D.ietf-opsawg-ac-lxsm-lxnm-glue]) | * "ietf-ac-glue" [RFC9836] | |||
| ietf-ac-common | ietf-ac-common | |||
| ^ ^ ^ | ^ ^ ^ | |||
| | | | | | | | | |||
| .----------' | '----------. | .----------' | '----------. | |||
| | | | | | | | | |||
| | | | | | | | | |||
| ietf-ac-svc <--- ietf-bearer-svc | | ietf-ac-svc <--- ietf-bearer-svc | | |||
| ^ ^ | | ^ ^ | | |||
| | | | | | | | | |||
| skipping to change at page 7, line 36 ¶ | skipping to change at line 264 ¶ | |||
| The module defines the following features: | The module defines the following features: | |||
| 'layer2-ac': Used to indicate support of ACs with Layer 2 | 'layer2-ac': Used to indicate support of ACs with Layer 2 | |||
| properties. | properties. | |||
| 'layer3-ac': Used to indicate support of ACs with Layer 3 | 'layer3-ac': Used to indicate support of ACs with Layer 3 | |||
| properties. | properties. | |||
| 'server-assigned-reference': Used to indicate support of server- | 'server-assigned-reference': Used to indicate support of server- | |||
| generated references to access relevant resources. For example, a | generated references to access relevant resources. Typically, a | |||
| server can be a network controller or a router in a provider | server can be a network controller or a router in a provider | |||
| network. | network. | |||
| For example, a bearer request is first created using a name which | For example, a bearer request is first created using a name that | |||
| is assigned by the client, but if this feature is supported, the | is assigned by the client, but if this feature is supported, the | |||
| request will also include a server-generated reference. That | request will also include a server-generated reference. That | |||
| reference can be used when requesting the creating of an AC over | reference can be used when requesting the creation of an AC over | |||
| the existing bearer. | the existing bearer. | |||
| 4.2. Identities | 4.2. Identities | |||
| The module defines a set of identities, including the following: | The module defines a set of identities, including the following: | |||
| 'address-allocation-type': Used to specify the IP address allocation | 'address-allocation-type': Used to specify the IP address allocation | |||
| type in an AC. For example, this identity is used to indicate | type in an AC. For example, this identity is used to indicate | |||
| whether the provider network provides DHCP service, DHCP relay, or | whether the provider network provides DHCP service, DHCP relay, or | |||
| static addressing. Note that for the IPv6 case, Stateless Address | static addressing. Note that for the IPv6 case, Stateless Address | |||
| Autoconfiguration (SLAAC) [RFC4862] can be used. | Autoconfiguration (SLAAC) [RFC4862] can be used. | |||
| 'local-defined-next-hop': Used to specify next hop actions. For | 'local-defined-next-hop': Used to specify next-hop actions. For | |||
| example, this identity can be used to indicate an action to | example, this identity can be used to indicate an action to | |||
| discard traffic for a given destination or treat traffic towards | discard traffic for a given destination or treat traffic towards | |||
| addresses within the specified next-hop prefix as though they are | addresses within the specified next-hop prefix as though they are | |||
| connected to a local link. | connected to a local link. | |||
| 'l2-tunnel-type': Used to control the Layer 2 tunnel selection for | 'l2-tunnel-type': Used to control the Layer 2 tunnel selection for | |||
| an AC. The current version supports indicating pseudowire, | an AC. The current version supports indicating pseudowire, | |||
| Virtual Private LAN Service (VPLS), and Virtual eXtensible Local | Virtual Private LAN Service (VPLS), and Virtual eXtensible Local | |||
| Area Network (VXLAN). | Area Network (VXLAN). | |||
| skipping to change at page 8, line 41 ¶ | skipping to change at line 316 ¶ | |||
| NNI. | NNI. | |||
| The reader may refer to [MEF6], [MEF17], [RFC6004], or [RFC6215] | The reader may refer to [MEF6], [MEF17], [RFC6004], or [RFC6215] | |||
| for examples of discussions regarding the use of UNI and NNI | for examples of discussions regarding the use of UNI and NNI | |||
| reference points. | reference points. | |||
| New administrative status types: In addition to the status types | New administrative status types: In addition to the status types | |||
| already defined in [RFC9181], this document defines: | already defined in [RFC9181], this document defines: | |||
| * 'awaiting-validation' to report that a request is pending an | * 'awaiting-validation' to report that a request is pending an | |||
| adiministrator approval. | administrator approval. | |||
| * 'awaiting-processing' to report that a request was approved and | * 'awaiting-processing' to report that a request was approved and | |||
| validated, but is awaiting more processing before activation. | validated but is awaiting more processing before activation. | |||
| * 'admin-prohibited' to report that a request cannot be handled | * 'admin-prohibited' to report that a request cannot be handled | |||
| because of administrative policies. | because of administrative policies. | |||
| * 'rejected' to report that a request was rejected reasons not | * 'rejected' to report that a request was rejected due to reasons | |||
| covered by the other status types. | not covered by the other status types. | |||
| 'bgp-role': Used to indicate BGP role when establishing a BGP | 'bgp-role': Used to indicate the BGP role when establishing a BGP | |||
| session per [RFC9234]. | session per [RFC9234]. | |||
| 4.3. Reusable Groupings | 4.3. Reusable Groupings | |||
| The module also defines a set of reusable groupings, including the | The module also defines a set of reusable groupings, including the | |||
| following: | following: | |||
| 'service-status' (Figure 3): Controls the administrative service | 'service-status' (Figure 3): Controls the administrative service | |||
| status and reports the operational service status. | status and reports the operational service status. | |||
| skipping to change at page 9, line 42 ¶ | skipping to change at line 364 ¶ | |||
| apply to the forwarding of packets conveyed within an AC. Such | apply to the forwarding of packets conveyed within an AC. Such | |||
| policies may consist, for example, of applying Access Control | policies may consist, for example, of applying Access Control | |||
| Lists (ACLs). | Lists (ACLs). | |||
| 'routing-profile-identifier': Refers to a set of routing policies | 'routing-profile-identifier': Refers to a set of routing policies | |||
| that will be invoked (e.g., BGP policies) when building an AC. | that will be invoked (e.g., BGP policies) when building an AC. | |||
| 'op-instructions' (Figure 3): Defines a set of parameters to specify | 'op-instructions' (Figure 3): Defines a set of parameters to specify | |||
| basic scheduling instructions and report related events for a | basic scheduling instructions and report related events for a | |||
| service request (e.g., AC or bearer) ('service-status'). Advanced | service request (e.g., AC or bearer) ('service-status'). Advanced | |||
| scheduling groupings are defined in | scheduling groupings are defined in [YANG-SCHEDULE]. | |||
| [I-D.ietf-netmod-schedule-yang]. | ||||
| grouping service-status: | grouping service-status: | |||
| +-- status | +-- status | |||
| +-- admin-status | +-- admin-status | |||
| | +-- status? identityref | | +-- status? identityref | |||
| | +--ro last-change? yang:date-and-time | | +--ro last-change? yang:date-and-time | |||
| +--ro oper-status | +--ro oper-status | |||
| +--ro status? identityref | +--ro status? identityref | |||
| +--ro last-change? yang:date-and-time | +--ro last-change? yang:date-and-time | |||
| grouping ac-profile-cfg: | grouping ac-profile-cfg: | |||
| +-- valid-provider-identifiers | +-- valid-provider-identifiers | |||
| +-- encryption-profile-identifier* [id] | +-- encryption-profile-identifier* [id] | |||
| | +-- id string | | +-- id string | |||
| +-- qos-profile-identifier* [id] | +-- qos-profile-identifier* [id] | |||
| | +-- id string | | +-- id string | |||
| +-- failure-detection-profile-identifier* [id] | +-- failure-detection-profile-identifier* [id] | |||
| | +-- id string | | +-- id string | |||
| +-- forwarding-profile-identifier* [id] | +-- forwarding-profile-identifier* [id] | |||
| | +-- id string | | +-- id string | |||
| +-- routing-profile-identifier* [id] | +-- routing-profile-identifier* [id] | |||
| +-- id string | +-- id string | |||
| grouping op-instructions: | grouping op-instructions: | |||
| +-- requested-start? yang:date-and-time | +-- requested-start? yang:date-and-time | |||
| +-- requested-stop? yang:date-and-time | +-- requested-stop? yang:date-and-time | |||
| +--ro actual-start? yang:date-and-time | +--ro actual-start? yang:date-and-time | |||
| +--ro actual-stop? yang:date-and-time | +--ro actual-stop? yang:date-and-time | |||
| Figure 3: Service Status, Profiles, and Operational Instructions | Figure 3: Service Status, Profiles, and Operational | |||
| Groupings | Instructions Groupings | |||
| Layer 2 encapsulations (Figure 4): Groupings for the following | Layer 2 encapsulations (Figure 4): Groupings for the following | |||
| encapsulation schemes are supported: dot1Q, QinQ, and priority- | encapsulation schemes are supported: dot1Q, QinQ, and priority- | |||
| tagged. | tagged. | |||
| Layer 2 tunnel services (Figure 4): These groupings are used to | Layer 2 tunnel services (Figure 4): These groupings are used to | |||
| define Layer 2 tunnel services that may be needed for the | define Layer 2 tunnel services that may be needed for the | |||
| activation of an AC. Examples of supported Layer 2 services are | activation of an AC. Examples of supported Layer 2 services are | |||
| the pseudowire (Section 6.1 of [RFC8077]), VPLS, or VXLAN | the pseudowire (Section 6.1 of [RFC8077]), VPLS, or VXLAN | |||
| [RFC7348]. | [RFC7348]. | |||
| grouping dot1q: | grouping dot1q: | |||
| +-- tag-type? identityref | +-- tag-type? identityref | |||
| +-- cvlan-id? uint16 | +-- cvlan-id? uint16 | |||
| grouping priority-tagged: | grouping priority-tagged: | |||
| +-- tag-type? identityref | +-- tag-type? identityref | |||
| grouping qinq: | grouping qinq: | |||
| +-- tag-type? identityref | +-- tag-type? identityref | |||
| +-- svlan-id? uint16 | +-- svlan-id? uint16 | |||
| +-- cvlan-id? uint16 | +-- cvlan-id? uint16 | |||
| grouping pseudowire: | grouping pseudowire: | |||
| +-- vcid? uint32 | +-- vcid? uint32 | |||
| +-- far-end? union | +-- far-end? union | |||
| grouping vpls: | grouping vpls: | |||
| +-- vcid? uint32 | +-- vcid? uint32 | |||
| +-- far-end* union | +-- far-end* union | |||
| grouping vxlan: | grouping vxlan: | |||
| +-- vni-id? uint32 | ||||
| +-- peer-mode? identityref | ||||
| +-- peer-ip-address* inet:ip-address | ||||
| grouping l2-tunnel-service: | ||||
| +-- type? identityref | ||||
| +-- pseudowire | ||||
| | +-- vcid? uint32 | ||||
| | +-- far-end? union | ||||
| +-- vpls | ||||
| | +-- vcid? uint32 | ||||
| | +-- far-end* union | ||||
| +-- vxlan | ||||
| +-- vni-id? uint32 | +-- vni-id? uint32 | |||
| +-- peer-mode? identityref | +-- peer-mode? identityref | |||
| +-- peer-ip-address* inet:ip-address | +-- peer-ip-address* inet:ip-address | |||
| grouping l2-tunnel-service: | ||||
| +-- type? identityref | ||||
| +-- pseudowire | ||||
| | +-- vcid? uint32 | ||||
| | +-- far-end? union | ||||
| +-- vpls | ||||
| | +-- vcid? uint32 | ||||
| | +-- far-end* union | ||||
| +-- vxlan | ||||
| +-- vni-id? uint32 | ||||
| +-- peer-mode? identityref | ||||
| +-- peer-ip-address* inet:ip-address | ||||
| Figure 4: Layer 2 Connection Groupings | Figure 4: Layer 2 Connection Groupings | |||
| Layer 3 address allocation (Figure 5): Defines both IPv4 and IPv6 | Layer 3 address allocation (Figure 5): Defines both IPv4 and IPv6 | |||
| groupings to specify IP address allocation over an AC. Both | groupings to specify IP address allocation over an AC. Both | |||
| dynamic and static address schemes are supported. | dynamic and static address schemes are supported. | |||
| For both IPv4 and IPv6, 'address-allocation-type' is used to | For both IPv4 and IPv6, 'address-allocation-type' is used to | |||
| indicate the IP address allocation mode to activate. When | indicate the IP address allocation mode to activate. When | |||
| 'address-allocation-type' is set to 'provider-dhcp', DHCP | 'address-allocation-type' is set to 'provider-dhcp', DHCP | |||
| assignments can be made locally or by an external DHCP server. | assignments can be made locally or by an external DHCP server. | |||
| Such behavior is controlled by setting 'dhcp-service-type'. | Such behavior is controlled by setting 'dhcp-service-type'. | |||
| Note that if 'address-allocation-type' is set to 'slaac', the | Note that if 'address-allocation-type' is set to 'slaac', the | |||
| Prefix Information option of Router Advertisements that will be | Prefix Information option of Router Advertisements that will be | |||
| issued for SLAAC purposes will carry the IPv6 prefix that is | issued for SLAAC purposes will carry the IPv6 prefix that is | |||
| determined by 'local-address' and 'prefix-length'. | determined by 'local-address' and 'prefix-length'. | |||
| IP connections (Figure 5): Defines IPv4 and IPv6 groupings for | IP connections (Figure 5): Defines IPv4 and IPv6 groupings for | |||
| managing Layer 3 connectivity over an AC. Both basic and more | managing Layer 3 connectivity over an AC. Both basic and more | |||
| elaborated IP connection groupings are supported. | elaborated IP connection groupings are supported. | |||
| grouping ipv4-allocation-type: | grouping ipv4-allocation-type: | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| grouping ipv6-allocation-type: | grouping ipv6-allocation-type: | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| grouping ipv4-connection-basic: | grouping ipv4-connection-basic: | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| +-- (allocation-type)? | +-- (allocation-type)? | |||
| +--:(dynamic) | +--:(dynamic) | |||
| +-- (provider-dhcp)? | +-- (provider-dhcp)? | |||
| | +--:(dhcp-service-type) | | +--:(dhcp-service-type) | |||
| | +-- dhcp-service-type? enumeration | | +-- dhcp-service-type? enumeration | |||
| +-- (dhcp-relay)? | +-- (dhcp-relay)? | |||
| +--:(customer-dhcp-servers) | +--:(customer-dhcp-servers) | |||
| +-- customer-dhcp-servers | +-- customer-dhcp-servers | |||
| +-- server-ip-address* inet:ipv4-address | +-- server-ip-address* inet:ipv4-address | |||
| grouping ipv6-connection-basic: | grouping ipv6-connection-basic: | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| +-- (allocation-type)? | +-- (allocation-type)? | |||
| +--:(dynamic) | +--:(dynamic) | |||
| +-- (provider-dhcp)? | +-- (provider-dhcp)? | |||
| | +--:(dhcp-service-type) | | +--:(dhcp-service-type) | |||
| | +-- dhcp-service-type? enumeration | | +-- dhcp-service-type? enumeration | |||
| +-- (dhcp-relay)? | +-- (dhcp-relay)? | |||
| +--:(customer-dhcp-servers) | +--:(customer-dhcp-servers) | |||
| +-- customer-dhcp-servers | +-- customer-dhcp-servers | |||
| +-- server-ip-address* inet:ipv6-address | +-- server-ip-address* inet:ipv6-address | |||
| grouping ipv4-connection: | grouping ipv4-connection: | |||
| +-- local-address? inet:ipv4-address | +-- local-address? inet:ipv4-address | |||
| +-- virtual-address? inet:ipv4-address | +-- virtual-address? inet:ipv4-address | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| +-- (allocation-type)? | +-- (allocation-type)? | |||
| +--:(dynamic) | +--:(dynamic) | |||
| | +-- (address-assign)? | | +-- (address-assign)? | |||
| | | +--:(number) | | | +--:(number) | |||
| | | | +-- number-of-dynamic-address? uint16 | | | | +-- number-of-dynamic-address? uint16 | |||
| | | +--:(explicit) | | | +--:(explicit) | |||
| | | +-- customer-addresses | | | +-- customer-addresses | |||
| | | +-- address-pool* [pool-id] | | | +-- address-pool* [pool-id] | |||
| | | +-- pool-id string | | | +-- pool-id string | |||
| | | +-- start-address inet:ipv4-address | | | +-- start-address inet:ipv4-address | |||
| | | +-- end-address? inet:ipv4-address | | | +-- end-address? inet:ipv4-address | |||
| | +-- (provider-dhcp)? | | +-- (provider-dhcp)? | |||
| | | +--:(dhcp-service-type) | | | +--:(dhcp-service-type) | |||
| | | +-- dhcp-service-type? enumeration | | | +-- dhcp-service-type? enumeration | |||
| | +-- (dhcp-relay)? | | +-- (dhcp-relay)? | |||
| | +--:(customer-dhcp-servers) | | +--:(customer-dhcp-servers) | |||
| | +-- customer-dhcp-servers | | +-- customer-dhcp-servers | |||
| | +-- server-ip-address* inet:ipv4-address | | +-- server-ip-address* inet:ipv4-address | |||
| +--:(static-addresses) | +--:(static-addresses) | |||
| +-- address* [address-id] | +-- address* [address-id] | |||
| +-- address-id string | +-- address-id string | |||
| +-- customer-address? inet:ipv4-address | +-- customer-address? inet:ipv4-address | |||
| grouping ipv6-connection: | grouping ipv6-connection: | |||
| +-- local-address? inet:ipv6-address | +-- local-address? inet:ipv6-address | |||
| +-- virtual-address? inet:ipv6-address | +-- virtual-address? inet:ipv6-address | |||
| +-- prefix-length? uint8 | +-- prefix-length? uint8 | |||
| +-- address-allocation-type? identityref | +-- address-allocation-type? identityref | |||
| +-- (allocation-type)? | +-- (allocation-type)? | |||
| +--:(dynamic) | +--:(dynamic) | |||
| | +-- (address-assign)? | | +-- (address-assign)? | |||
| | | +--:(number) | | | +--:(number) | |||
| | | | +-- number-of-dynamic-address? uint16 | | | | +-- number-of-dynamic-address? uint16 | |||
| | | +--:(explicit) | | | +--:(explicit) | |||
| | | +-- customer-addresses | | | +-- customer-addresses | |||
| | | +-- address-pool* [pool-id] | | | +-- address-pool* [pool-id] | |||
| | | +-- pool-id string | | | +-- pool-id string | |||
| | | +-- start-address inet:ipv6-address | | | +-- start-address inet:ipv6-address | |||
| | | +-- end-address? inet:ipv6-address | | | +-- end-address? inet:ipv6-address | |||
| | +-- (provider-dhcp)? | | +-- (provider-dhcp)? | |||
| | | +--:(dhcp-service-type) | | | +--:(dhcp-service-type) | |||
| | | +-- dhcp-service-type? enumeration | | | +-- dhcp-service-type? enumeration | |||
| | +-- (dhcp-relay)? | | +-- (dhcp-relay)? | |||
| | +--:(customer-dhcp-servers) | | +--:(customer-dhcp-servers) | |||
| | +-- customer-dhcp-servers | | +-- customer-dhcp-servers | |||
| | +-- server-ip-address* inet:ipv6-address | | +-- server-ip-address* inet:ipv6-address | |||
| +--:(static-addresses) | +--:(static-addresses) | |||
| +-- address* [address-id] | +-- address* [address-id] | |||
| +-- address-id string | +-- address-id string | |||
| +-- customer-address? inet:ipv6-address | +-- customer-address? inet:ipv6-address | |||
| Figure 5: Layer 3 Connection Groupings | Figure 5: Layer 3 Connection Groupings | |||
| Routing parameters & OAM (Figure 6): In addition to static routing, | Routing parameters & Operations, Administration, and Maintenance | |||
| the module supports the following routing protocols: BGP | (OAM) (Figure 6): In addition to static routing, the module supports | |||
| [RFC4271], OSPF [RFC4577] or [RFC6565], IS-IS | the following routing protocols: BGP [RFC4271], OSPF [RFC4577] | |||
| [ISO10589][RFC1195][RFC5308], and RIP [RFC2453]. For all | [RFC6565], IS-IS [ISO10589][RFC1195][RFC5308], and RIP [RFC2453]. | |||
| supported routing protocols, 'address-family' indicates whether | For all supported routing protocols, 'address-family' indicates | |||
| IPv4, IPv6, or both address families are to be activated. For | whether IPv4, IPv6, or both address families are to be activated. | |||
| example, this parameter is used to determine whether RIPv2 | For example, this parameter is used to determine whether RIPv2 | |||
| [RFC2453], RIP Next Generation (RIPng), or both are to be enabled | [RFC2453], RIP Next Generation (RIPng), or both are to be enabled | |||
| [RFC2080]. More details about supported routing groupings are | [RFC2080]. More details about supported routing groupings are | |||
| provided hereafter: | provided hereafter: | |||
| * Authentication: These groupings include the required | Authentication: These groupings include the required information | |||
| information to manage the authentication of OSPF, IS-IS, | to manage the authentication of OSPF, IS-IS, BGP, and RIP. The | |||
| BGP, and RIP. The groupings support local specification of | groupings support local specification of authentication keys | |||
| authentication keys and the associated authentication | and the associated authentication algorithm to accommodate | |||
| algorithm to accomodate legacy implementations that do not | legacy implementations that do not support key chains | |||
| support key chains [RFC8177]. | [RFC8177]. | |||
| Note that this version of the common AC model covers | Note that this version of the common AC model covers | |||
| authentication options that are common to both OSPFv2 | authentication options that are common to both OSPFv2 [RFC4577] | |||
| [RFC4577] and OSPFv3 [RFC6565]; as such, the model does not | and OSPFv3 [RFC6565]; as such, the model does not support | |||
| support [RFC4552]. | [RFC4552]. | |||
| Similar to [RFC9182], this version of the common AC model | Similar to [RFC9182], this version of the common AC model | |||
| assumes that parameters specific to the TCP-AO are | assumes that parameters specific to the TCP Authentication | |||
| preconfigured as part of the key chain that is referenced in | Option (TCP-AO) are preconfigured as part of the key chain that | |||
| the model. No assumption is made about how such a key chain | is referenced in the model. No assumption is made about how | |||
| is preconfigured. However, the structure of the key chain | such a key chain is preconfigured. However, the structure of | |||
| should cover data nodes beyond those in [RFC8177], mainly | the key chain should cover data nodes beyond those in | |||
| SendID and RecvID (Section 3.1 of [RFC5925]). | [RFC8177], mainly SendID and RecvID (Section 3.1 of [RFC5925]). | |||
| * BGP peer groups ('bgp-peer-group-without-name' and 'bgp-peer- | BGP peer groups ('bgp-peer-group-without-name' and 'bgp-peer- | |||
| group-with-name'): Includes a set of parameters to identify a | group-with-name'): Includes a set of parameters to identify a BGP | |||
| BGP peer group. Such a group can be defined by providing a | peer group. Such a group can be defined by providing a local | |||
| local AS Number (ASN), a customer's ASN, and the address | Autonomous System Number (ASN), a customer's ASN, and the | |||
| families to be activated for this group. BGP peer groups can | address families to be activated for this group. BGP peer | |||
| be identified by a name ('bgp-peer-group-with-name'). | groups can be identified by a name ('bgp-peer-group-with- | |||
| name'). | ||||
| * Basic OSPF and IS-IS parameters ('ospf-basic' and 'isis- | Basic OSPF and IS-IS parameters ('ospf-basic' and 'isis- | |||
| basic'): These groupings include the minimal set of routing | basic'): These groupings include the minimal set of routing | |||
| configuration that is required for the activation of OSPF and | configuration that is required for the activation of OSPF and | |||
| IS-IS. | IS-IS. | |||
| * Static routing: Parameters to configure an entry or a list of | Static routing: Parameters to configure an entry or a list of IP | |||
| IP static routing entries. | static routing entries. | |||
| The 'redundancy-group' grouping lists the groups to which an AC | The 'redundancy-group' grouping lists the groups to which an AC | |||
| belongs [RFC9181]. For example, the 'group-id' is used to | belongs [RFC9181]. For example, the 'group-id' is used to | |||
| associate redundancy or protection constraints of ACs. | associate redundancy or protection constraints of ACs. | |||
| grouping bgp-authentication: | grouping bgp-authentication: | |||
| +-- authentication | +-- authentication | |||
| +-- enabled? boolean | +-- enabled? boolean | |||
| +-- keying-material | +-- keying-material | |||
| +-- (option)? | +-- (option)? | |||
| +--:(ao) | +--:(ao) | |||
| | +-- enable-ao? boolean | | +-- enable-ao? boolean | |||
| | +-- ao-keychain? key-chain:key-chain-ref | | +-- ao-keychain? key-chain:key-chain-ref | |||
| +--:(md5) | +--:(md5) | |||
| | +-- md5-keychain? key-chain:key-chain-ref | | +-- md5-keychain? key-chain:key-chain-ref | |||
| +--:(explicit) | +--:(explicit) | |||
| +-- key-id? uint32 | +-- key-id? uint32 | |||
| +-- key? string | +-- key? string | |||
| +-- crypto-algorithm? identityref | +-- crypto-algorithm? identityref | |||
| grouping ospf-authentication: | grouping ospf-authentication: | |||
| +-- authentication | +-- authentication | |||
| +-- enabled? boolean | +-- enabled? boolean | |||
| +-- keying-material | +-- keying-material | |||
| +-- (option)? | +-- (option)? | |||
| +--:(auth-key-chain) | +--:(auth-key-chain) | |||
| | +-- key-chain? key-chain:key-chain-ref | | +-- key-chain? key-chain:key-chain-ref | |||
| +--:(auth-key-explicit) | +--:(auth-key-explicit) | |||
| +-- key-id? uint32 | +-- key-id? uint32 | |||
| +-- key? string | +-- key? string | |||
| +-- crypto-algorithm? identityref | +-- crypto-algorithm? identityref | |||
| grouping isis-authentication: | grouping isis-authentication: | |||
| +-- authentication | +-- authentication | |||
| +-- enabled? boolean | +-- enabled? boolean | |||
| +-- keying-material | +-- keying-material | |||
| +-- (option)? | +-- (option)? | |||
| +--:(auth-key-chain) | +--:(auth-key-chain) | |||
| | +-- key-chain? key-chain:key-chain-ref | | +-- key-chain? key-chain:key-chain-ref | |||
| +--:(auth-key-explicit) | +--:(auth-key-explicit) | |||
| +-- key-id? uint32 | +-- key-id? uint32 | |||
| +-- key? string | +-- key? string | |||
| +-- crypto-algorithm? identityref | +-- crypto-algorithm? identityref | |||
| grouping rip-authentication: | grouping rip-authentication: | |||
| +-- authentication | +-- authentication | |||
| +-- enabled? boolean | +-- enabled? boolean | |||
| +-- keying-material | +-- keying-material | |||
| +-- (option)? | +-- (option)? | |||
| +--:(auth-key-chain) | +--:(auth-key-chain) | |||
| | +-- key-chain? key-chain:key-chain-ref | | +-- key-chain? key-chain:key-chain-ref | |||
| +--:(auth-key-explicit) | +--:(auth-key-explicit) | |||
| +-- key? string | +-- key? string | |||
| +-- crypto-algorithm? identityref | +-- crypto-algorithm? identityref | |||
| grouping bgp-peer-group-without-name: | grouping bgp-peer-group-without-name: | |||
| +-- local-as? inet:as-number | +-- local-as? inet:as-number | |||
| +-- peer-as? inet:as-number | +-- peer-as? inet:as-number | |||
| +-- address-family? identityref | +-- address-family? identityref | |||
| +-- role? identityref | +-- role? identityref | |||
| grouping bgp-peer-group-with-name: | grouping bgp-peer-group-with-name: | |||
| +-- name? string | +-- name? string | |||
| +-- local-as? inet:as-number | +-- local-as? inet:as-number | |||
| +-- peer-as? inet:as-number | +-- peer-as? inet:as-number | |||
| +-- address-family? identityref | +-- address-family? identityref | |||
| +-- role? identityref | +-- role? identityref | |||
| grouping ospf-basic: | grouping ospf-basic: | |||
| +-- address-family? identityref | +-- address-family? identityref | |||
| +-- area-id yang:dotted-quad | +-- area-id yang:dotted-quad | |||
| +-- metric? uint16 | +-- metric? uint16 | |||
| grouping isis-basic: | grouping isis-basic: | |||
| +-- address-family? identityref | +-- address-family? identityref | |||
| +-- area-address area-address | +-- area-address area-address | |||
| grouping ipv4-static-rtg-entry: | grouping ipv4-static-rtg-entry: | |||
| +-- lan? inet:ipv4-prefix | +-- lan? inet:ipv4-prefix | |||
| +-- lan-tag? string | ||||
| +-- next-hop? union | ||||
| +-- metric? uint32 | ||||
| grouping ipv4-static-rtg: | ||||
| +-- ipv4-lan-prefixes* [lan next-hop] {vpn-common:ipv4}? | ||||
| +-- lan inet:ipv4-prefix | ||||
| +-- lan-tag? string | +-- lan-tag? string | |||
| +-- next-hop union | +-- next-hop? union | |||
| +-- metric? uint32 | +-- metric? uint32 | |||
| +-- status | grouping ipv4-static-rtg: | |||
| +-- admin-status | +-- ipv4-lan-prefixes* [lan next-hop] {vpn-common:ipv4}? | |||
| | +-- status? identityref | +-- lan inet:ipv4-prefix | |||
| | +--ro last-change? yang:date-and-time | +-- lan-tag? string | |||
| +--ro oper-status | +-- next-hop union | |||
| +--ro status? identityref | +-- metric? uint32 | |||
| +--ro last-change? yang:date-and-time | +-- status | |||
| grouping ipv6-static-rtg-entry: | +-- admin-status | |||
| +-- lan? inet:ipv6-prefix | | +-- status? identityref | |||
| +-- lan-tag? string | | +--ro last-change? yang:date-and-time | |||
| +-- next-hop? union | +--ro oper-status | |||
| +-- metric? uint32 | +--ro status? identityref | |||
| grouping ipv6-static-rtg: | +--ro last-change? yang:date-and-time | |||
| +-- ipv6-lan-prefixes* [lan next-hop] {vpn-common:ipv6}? | grouping ipv6-static-rtg-entry: | |||
| +-- lan inet:ipv6-prefix | +-- lan? inet:ipv6-prefix | |||
| +-- lan-tag? string | +-- lan-tag? string | |||
| +-- next-hop union | +-- next-hop? union | |||
| +-- metric? uint32 | +-- metric? uint32 | |||
| +-- status | grouping ipv6-static-rtg: | |||
| +-- admin-status | +-- ipv6-lan-prefixes* [lan next-hop] {vpn-common:ipv6}? | |||
| | +-- status? identityref | +-- lan inet:ipv6-prefix | |||
| | +--ro last-change? yang:date-and-time | +-- lan-tag? string | |||
| +--ro oper-status | +-- next-hop union | |||
| +--ro status? identityref | +-- metric? uint32 | |||
| +--ro last-change? yang:date-and-time | +-- status | |||
| grouping bfd: | +-- admin-status | |||
| +-- holdtime? uint32 | | +-- status? identityref | |||
| grouping redundancy-group: | | +--ro last-change? yang:date-and-time | |||
| +-- group* [group-id] | +--ro oper-status | |||
| +-- group-id? string | +--ro status? identityref | |||
| +-- precedence? identityref | +--ro last-change? yang:date-and-time | |||
| grouping bfd: | ||||
| +-- holdtime? uint32 | ||||
| grouping redundancy-group: | ||||
| +-- group* [group-id] | ||||
| +-- group-id? string | ||||
| +-- precedence? identityref | ||||
| Figure 6: Routing & OAM Groupings | Figure 6: Routing & OAM Groupings | |||
| Bandwidth parameters (Figure 7): Bandwidth parameters can be | Bandwidth parameters (Figure 7): Bandwidth parameters can be | |||
| represented using the Committed Information Rate (CIR), the Excess | represented using the Committed Information Rate (CIR), the Excess | |||
| Information Rate (EIR), or the Peak Information Rate (PIR). | Information Rate (EIR), or the Peak Information Rate (PIR). | |||
| These parameters can be provided per bandwidth type. Type values | These parameters can be provided per bandwidth type. Type values | |||
| are taken from [RFC9181]. For example, the following values can | are taken from [RFC9181]. For example, the following values can | |||
| be used: | be used: | |||
| * 'bw-per-cos': The bandwidth is per Class of Service (CoS). | 'bw-per-cos': The bandwidth is per Class of Service (CoS). | |||
| * 'bw-per-site': The bandwidth is to all ACs that belong to the | 'bw-per-site': The bandwidth is for all ACs that belong to the | |||
| same site. | same site. | |||
| grouping bandwidth-parameters: | grouping bandwidth-parameters: | |||
| +-- cir? uint64 | +-- cir? uint64 | |||
| +-- cbs? uint64 | +-- cbs? uint64 | |||
| +-- eir? uint64 | +-- eir? uint64 | |||
| +-- ebs? uint64 | +-- ebs? uint64 | |||
| +-- pir? uint64 | +-- pir? uint64 | |||
| +-- pbs? uint64 | +-- pbs? uint64 | |||
| grouping bandwidth-per-type: | grouping bandwidth-per-type: | |||
| +-- bandwidth* [bw-type] | +-- bandwidth* [bw-type] | |||
| +-- bw-type identityref | +-- bw-type identityref | |||
| +-- (type)? | +-- (type)? | |||
| +--:(per-cos) | +--:(per-cos) | |||
| | +-- cos* [cos-id] | | +-- cos* [cos-id] | |||
| | +-- cos-id uint8 | | +-- cos-id uint8 | |||
| | +-- cir? uint64 | | +-- cir? uint64 | |||
| | +-- cbs? uint64 | | +-- cbs? uint64 | |||
| | +-- eir? uint64 | | +-- eir? uint64 | |||
| | +-- ebs? uint64 | | +-- ebs? uint64 | |||
| | +-- pir? uint64 | | +-- pir? uint64 | |||
| | +-- pbs? uint64 | | +-- pbs? uint64 | |||
| +--:(other) | +--:(other) | |||
| +-- cir? uint64 | +-- cir? uint64 | |||
| +-- cbs? uint64 | +-- cbs? uint64 | |||
| +-- eir? uint64 | +-- eir? uint64 | |||
| +-- ebs? uint64 | +-- ebs? uint64 | |||
| +-- pir? uint64 | +-- pir? uint64 | |||
| +-- pbs? uint64 | +-- pbs? uint64 | |||
| Figure 7: Bandwidth Groupings | Figure 7: Bandwidth Groupings | |||
| 5. Common Attachment Circuit YANG Module | 5. Common Attachment Circuit YANG Module | |||
| This module uses types defined in [RFC6991], [RFC8177], and | This module uses types defined in [RFC6991], [RFC8177], [RFC9181], | |||
| [RFC9181]. | and [IEEE_802.1Q]. | |||
| <CODE BEGINS> file "ietf-ac-common@2025-01-07.yang" | <CODE BEGINS> file "ietf-ac-common@2025-08-11.yang" | |||
| module ietf-ac-common { | module ietf-ac-common { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-ac-common"; | namespace "urn:ietf:params:xml:ns:yang:ietf-ac-common"; | |||
| prefix ac-common; | prefix ac-common; | |||
| import ietf-vpn-common { | import ietf-vpn-common { | |||
| prefix vpn-common; | prefix vpn-common; | |||
| reference | reference | |||
| "RFC 9181: A Common YANG Data Model for Layer 2 and Layer 3 | "RFC 9181: A Common YANG Data Model for Layer 2 and Layer 3 | |||
| VPNs"; | VPNs"; | |||
| skipping to change at page 19, line 32 ¶ | skipping to change at line 794 ¶ | |||
| } | } | |||
| organization | organization | |||
| "IETF OPSAWG (Operations and Management Area Working Group)"; | "IETF OPSAWG (Operations and Management Area Working Group)"; | |||
| contact | contact | |||
| "WG Web: <https://datatracker.ietf.org/wg/opsawg/> | "WG Web: <https://datatracker.ietf.org/wg/opsawg/> | |||
| WG List: <mailto:opsawg@ietf.org> | WG List: <mailto:opsawg@ietf.org> | |||
| Editor: Mohamed Boucadair | Editor: Mohamed Boucadair | |||
| <mailto:mohamed.boucadair@orange.com> | <mailto:mohamed.boucadair@orange.com> | |||
| Author: Richard Roberts | Editor: Richard Roberts | |||
| <mailto:rroberts@juniper.net> | <mailto:rroberts@juniper.net> | |||
| Author: Oscar Gonzalez de Dios | Author: Oscar Gonzalez de Dios | |||
| <mailto:oscar.gonzalezdedios@telefonica.com> | <mailto:oscar.gonzalezdedios@telefonica.com> | |||
| Author: Samier Barguil | Author: Samier Barguil | |||
| <mailto:ssamier.barguil_giraldo@nokia.com> | <mailto:ssamier.barguil_giraldo@nokia.com> | |||
| Author: Bo Wu | Author: Bo Wu | |||
| <mailto:lana.wubo@huawei.com>"; | <mailto:lana.wubo@huawei.com>"; | |||
| description | description | |||
| "This YANG module defines a common attachment circuit (AC) | "This YANG module defines a common attachment circuit (AC) | |||
| YANG model with a set of reusable features, types, | YANG module with a set of reusable features, types, | |||
| identities, and groupings. | identities, and groupings. | |||
| Copyright (c) 2025 IETF Trust and the persons identified as | Copyright (c) 2025 IETF Trust and the persons identified as | |||
| authors of the code. All rights reserved. | authors of the code. All rights reserved. | |||
| Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
| without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
| to the license terms contained in, the Revised BSD License | to the license terms contained in, the Revised BSD License | |||
| set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
| Relating to IETF Documents | Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
| This version of this YANG module is part of RFC XXXX; see the | This version of this YANG module is part of RFC 9833; see the | |||
| RFC itself for full legal notices."; | RFC itself for full legal notices."; | |||
| revision 2025-01-07 { | revision 2025-08-11 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference | reference | |||
| "RFC XXXX: A Common YANG Data Model for Attachment Circuits"; | "RFC 9833: A Common YANG Data Model for Attachment Circuits"; | |||
| } | } | |||
| /****************************Features************************/ | /****************************Features************************/ | |||
| feature layer2-ac { | feature layer2-ac { | |||
| description | description | |||
| "Indicates support of Layer 2 ACs."; | "Indicates support of Layer 2 ACs."; | |||
| } | } | |||
| feature layer3-ac { | feature layer3-ac { | |||
| skipping to change at page 22, line 6 ¶ | skipping to change at line 912 ¶ | |||
| identity local-defined-next-hop { | identity local-defined-next-hop { | |||
| description | description | |||
| "Base identity of local defined next hops."; | "Base identity of local defined next hops."; | |||
| } | } | |||
| identity discard { | identity discard { | |||
| base local-defined-next-hop; | base local-defined-next-hop; | |||
| description | description | |||
| "Indicates an action to discard traffic for the corresponding | "Indicates an action to discard traffic for the corresponding | |||
| destination. For example, this can be used to black-hole | destination."; | |||
| traffic."; | ||||
| } | } | |||
| identity local-link { | identity local-link { | |||
| base local-defined-next-hop; | base local-defined-next-hop; | |||
| description | description | |||
| "Treat traffic towards addresses within the specified next-hop | "Treat traffic towards addresses within the specified next-hop | |||
| prefix as though they are connected to a local link."; | prefix as though they are connected to a local link."; | |||
| } | } | |||
| // Layer 2 tunnel types | // Layer 2 tunnel types | |||
| skipping to change at page 23, line 6 ¶ | skipping to change at line 959 ¶ | |||
| // Layer 3 tunnel types | // Layer 3 tunnel types | |||
| identity l3-tunnel-type { | identity l3-tunnel-type { | |||
| description | description | |||
| "Base identity for Layer 3 tunnel selection for an AC."; | "Base identity for Layer 3 tunnel selection for an AC."; | |||
| } | } | |||
| identity ip-in-ip { | identity ip-in-ip { | |||
| base l3-tunnel-type; | base l3-tunnel-type; | |||
| description | description | |||
| "IP in IP Tunneling."; | "IP-in-IP tunneling."; | |||
| reference | reference | |||
| "RFC 2003: IP Encapsulation within IP"; | "RFC 2003: IP Encapsulation within IP"; | |||
| } | } | |||
| identity ipsec { | identity ipsec { | |||
| base l3-tunnel-type; | base l3-tunnel-type; | |||
| description | description | |||
| "IP Security (IPsec)."; | "IP Security (IPsec)."; | |||
| reference | reference | |||
| "RFC 4301: Security Architecture for the Internet | "RFC 4301: Security Architecture for the Internet | |||
| skipping to change at page 23, line 35 ¶ | skipping to change at line 988 ¶ | |||
| "RFC 1701: Generic Routing Encapsulation (GRE) | "RFC 1701: Generic Routing Encapsulation (GRE) | |||
| RFC 1702: Generic Routing Encapsulation over IPv4 networks | RFC 1702: Generic Routing Encapsulation over IPv4 networks | |||
| RFC 7676: IPv6 Support for Generic Routing Encapsulation | RFC 7676: IPv6 Support for Generic Routing Encapsulation | |||
| (GRE)"; | (GRE)"; | |||
| } | } | |||
| // Tagging precedence | // Tagging precedence | |||
| identity precedence-type { | identity precedence-type { | |||
| description | description | |||
| "Redundancy type. Attachment to a network can be created | "Redundancy type. Attachment to a network can be created | |||
| with primary and secondary tagging."; | with primary and secondary tagging."; | |||
| } | } | |||
| identity primary { | identity primary { | |||
| base precedence-type; | base precedence-type; | |||
| description | description | |||
| "Identifies the main attachment circuit."; | "Identifies the main AC."; | |||
| } | } | |||
| identity secondary { | identity secondary { | |||
| base precedence-type; | base precedence-type; | |||
| description | description | |||
| "Identifies a secondary attachment circuit."; | "Identifies a secondary AC."; | |||
| } | } | |||
| // AC type | // AC type | |||
| identity role { | identity role { | |||
| description | description | |||
| "Base identity for the network role of an AC."; | "Base identity for the network role of an AC."; | |||
| } | } | |||
| identity uni { | identity uni { | |||
| base role; | base role; | |||
| description | description | |||
| "User-to-Network Interface (UNI)."; | "User-to-Network Interface (UNI)."; | |||
| } | } | |||
| identity nni { | identity nni { | |||
| base role; | base role; | |||
| description | description | |||
| "Network-to-Network Interface (NNI)."; | "Network-to-Network Interface (NNI)."; | |||
| } | } | |||
| identity public-nni { | identity public-nni { | |||
| base role; | base role; | |||
| description | description | |||
| "Public peering. This is typically set using a shared | "Public peering. This is typically set using a shared | |||
| network, such as an Internet Exchange Point (IXP)."; | network, such as an Internet Exchange Point (IXP)."; | |||
| } | } | |||
| // More Admin status types | // More Admin status types | |||
| identity awaiting-validation { | identity awaiting-validation { | |||
| base vpn-common:administrative-status; | base vpn-common:administrative-status; | |||
| description | description | |||
| "This administrative status reflects that a request is | "This administrative status reflects that a request is | |||
| pending an administrator approval."; | pending an administrator approval."; | |||
| } | } | |||
| identity awaiting-processing { | identity awaiting-processing { | |||
| base vpn-common:administrative-status; | base vpn-common:administrative-status; | |||
| description | description | |||
| "This administrative status reflects that a request was | "This administrative status reflects that a request was | |||
| approved and validated, but is awaiting more processing | approved and validated but is awaiting more processing | |||
| before activation."; | before activation."; | |||
| } | } | |||
| identity admin-prohibited { | identity admin-prohibited { | |||
| base vpn-common:administrative-status; | base vpn-common:administrative-status; | |||
| description | description | |||
| "This administrative status reflects that a request cannot | "This administrative status reflects that a request cannot | |||
| be handled because of administrative policies."; | be handled because of administrative policies."; | |||
| } | } | |||
| identity rejected { | identity rejected { | |||
| base vpn-common:administrative-status; | base vpn-common:administrative-status; | |||
| description | description | |||
| "This administrative status reflects that a request was | "This administrative status reflects that a request was | |||
| rejected because, e.g., there are no sufficient resources | rejected because, e.g., there are no sufficient resources | |||
| or other reasons not covered by the other status types."; | or other reasons not covered by the other status types."; | |||
| } | } | |||
| // BGP role | // BGP role | |||
| identity bgp-role { | identity bgp-role { | |||
| description | description | |||
| "Used to indicate BGP role when establishing a BGP session."; | "Used to indicate the BGP role when establishing a BGP | |||
| session."; | ||||
| reference | reference | |||
| "RFC 9234: Route Leak Prevention and Detection Using | "RFC 9234: Route Leak Prevention and Detection Using | |||
| Roles in UPDATE and OPEN Messages, Section 4"; | Roles in UPDATE and OPEN Messages, Section 4"; | |||
| } | } | |||
| identity provider { | identity provider { | |||
| base bgp-role; | base bgp-role; | |||
| description | description | |||
| "The local AS is a transit provider of the remote AS."; | "The local AS is a transit provider of the remote AS."; | |||
| } | } | |||
| skipping to change at page 25, line 43 ¶ | skipping to change at line 1094 ¶ | |||
| identity rs { | identity rs { | |||
| base bgp-role; | base bgp-role; | |||
| description | description | |||
| "The local AS is a Route Server (RS)."; | "The local AS is a Route Server (RS)."; | |||
| } | } | |||
| identity rs-client { | identity rs-client { | |||
| base bgp-role; | base bgp-role; | |||
| description | description | |||
| "The local AS is a client of an RS and the RS is the | "The local AS is a client of an RS, and the RS is the | |||
| remote AS."; | remote AS."; | |||
| } | } | |||
| identity peer { | identity peer { | |||
| base bgp-role; | base bgp-role; | |||
| description | description | |||
| "The local and remote ASes have a peering relationship."; | "The local and remote ASes have a peering relationship."; | |||
| } | } | |||
| /****************************Typedefs************************/ | /****************************Typedefs************************/ | |||
| typedef predefined-next-hop { | typedef predefined-next-hop { | |||
| type identityref { | type identityref { | |||
| base local-defined-next-hop; | base local-defined-next-hop; | |||
| } | } | |||
| description | description | |||
| "Predefined next-hop designation for locally generated | "Predefined next-hop designation for locally generated | |||
| routes."; | routes."; | |||
| } | } | |||
| skipping to change at page 31, line 42 ¶ | skipping to change at line 1381 ¶ | |||
| leaf vni-id { | leaf vni-id { | |||
| type uint32; | type uint32; | |||
| description | description | |||
| "VXLAN Network Identifier (VNI)."; | "VXLAN Network Identifier (VNI)."; | |||
| } | } | |||
| leaf peer-mode { | leaf peer-mode { | |||
| type identityref { | type identityref { | |||
| base vpn-common:vxlan-peer-mode; | base vpn-common:vxlan-peer-mode; | |||
| } | } | |||
| description | description | |||
| "Specifies the VXLAN access mode. By default, the peer mode | "Specifies the VXLAN access mode. By default, the peer mode | |||
| is set to 'static-mode'."; | is set to 'static-mode'."; | |||
| } | } | |||
| leaf-list peer-ip-address { | leaf-list peer-ip-address { | |||
| type inet:ip-address; | type inet:ip-address; | |||
| description | description | |||
| "List of a peer's IP addresses."; | "List of a peer's IP addresses."; | |||
| } | } | |||
| } | } | |||
| // Layer 2 Tunnel service | // Layer 2 Tunnel service | |||
| skipping to change at page 33, line 7 ¶ | skipping to change at line 1444 ¶ | |||
| // IPv4 allocation type | // IPv4 allocation type | |||
| grouping ipv4-allocation-type { | grouping ipv4-allocation-type { | |||
| description | description | |||
| "IPv4-specific parameters."; | "IPv4-specific parameters."; | |||
| leaf prefix-length { | leaf prefix-length { | |||
| type uint8 { | type uint8 { | |||
| range "0..32"; | range "0..32"; | |||
| } | } | |||
| description | description | |||
| "Subnet prefix length expressed in bits. It is applied to | "Subnet prefix length expressed in bits. It is applied to | |||
| both local and customer addresses."; | both local and customer addresses."; | |||
| } | } | |||
| leaf address-allocation-type { | leaf address-allocation-type { | |||
| type identityref { | type identityref { | |||
| base address-allocation-type; | base address-allocation-type; | |||
| } | } | |||
| must "not(derived-from-or-self(current(), 'ac-common:slaac') " | must "not(derived-from-or-self(current(), 'ac-common:slaac') " | |||
| + "or derived-from-or-self(current(), " | + "or derived-from-or-self(current(), " | |||
| + "'ac-common:provider-dhcp-slaac'))" { | + "'ac-common:provider-dhcp-slaac'))" { | |||
| error-message "SLAAC is only applicable to IPv6."; | error-message "SLAAC is only applicable to IPv6."; | |||
| skipping to change at page 33, line 35 ¶ | skipping to change at line 1472 ¶ | |||
| // IPv6 allocation type | // IPv6 allocation type | |||
| grouping ipv6-allocation-type { | grouping ipv6-allocation-type { | |||
| description | description | |||
| "IPv6-specific parameters."; | "IPv6-specific parameters."; | |||
| leaf prefix-length { | leaf prefix-length { | |||
| type uint8 { | type uint8 { | |||
| range "0..128"; | range "0..128"; | |||
| } | } | |||
| description | description | |||
| "Subnet prefix length expressed in bits. It is applied to | "Subnet prefix length expressed in bits. It is applied to | |||
| both local and customer addresses."; | both local and customer addresses."; | |||
| } | } | |||
| leaf address-allocation-type { | leaf address-allocation-type { | |||
| type identityref { | type identityref { | |||
| base address-allocation-type; | base address-allocation-type; | |||
| } | } | |||
| description | description | |||
| "Defines how IPv6 addresses are allocated to the peer | "Defines how IPv6 addresses are allocated to the peer | |||
| termination points."; | termination points."; | |||
| } | } | |||
| skipping to change at page 34, line 15 ¶ | skipping to change at line 1500 ¶ | |||
| uses ipv4-allocation-type; | uses ipv4-allocation-type; | |||
| choice allocation-type { | choice allocation-type { | |||
| description | description | |||
| "Choice of the IPv4 address allocation."; | "Choice of the IPv4 address allocation."; | |||
| case dynamic { | case dynamic { | |||
| description | description | |||
| "When the addresses are allocated by DHCP or other dynamic | "When the addresses are allocated by DHCP or other dynamic | |||
| means local to the infrastructure."; | means local to the infrastructure."; | |||
| choice provider-dhcp { | choice provider-dhcp { | |||
| description | description | |||
| "Parameters related to DHCP-allocated addresses. IP | "Parameters related to DHCP-allocated addresses. IP | |||
| addresses are allocated by DHCP, that is provided by | addresses are allocated by DHCP, which is provided by | |||
| the operator."; | the operator."; | |||
| leaf dhcp-service-type { | leaf dhcp-service-type { | |||
| type enumeration { | type enumeration { | |||
| enum server { | enum server { | |||
| description | description | |||
| "Local DHCP server."; | "Local DHCP server."; | |||
| } | } | |||
| enum relay { | enum relay { | |||
| description | description | |||
| "Local DHCP relay. DHCP requests are relayed to | "Local DHCP relay. DHCP requests are relayed to | |||
| a provider's server."; | a provider's server."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Indicates the type of DHCP service to be enabled on | "Indicates the type of DHCP service to be enabled on | |||
| an AC."; | an AC."; | |||
| } | } | |||
| } | } | |||
| choice dhcp-relay { | choice dhcp-relay { | |||
| description | description | |||
| skipping to change at page 35, line 4 ¶ | skipping to change at line 1536 ¶ | |||
| leaf-list server-ip-address { | leaf-list server-ip-address { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| "IPv4 addresses of the customer's DHCP server."; | "IPv4 addresses of the customer's DHCP server."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| // Basic parameters for an IPv6 connection | // Basic parameters for an IPv6 connection | |||
| grouping ipv6-connection-basic { | grouping ipv6-connection-basic { | |||
| description | description | |||
| "Basic set for IPv6-specific parameters for the connection."; | "Basic set for IPv6-specific parameters for the connection."; | |||
| uses ipv6-allocation-type; | uses ipv6-allocation-type; | |||
| choice allocation-type { | choice allocation-type { | |||
| description | description | |||
| "Choice of the IPv6 address allocation."; | "Choice of the IPv6 address allocation."; | |||
| case dynamic { | case dynamic { | |||
| description | description | |||
| "When the addresses are allocated by DHCP or other dynamic | "When the addresses are allocated by DHCP or other dynamic | |||
| means local to the infrastructure."; | means local to the infrastructure."; | |||
| choice provider-dhcp { | choice provider-dhcp { | |||
| description | description | |||
| "Parameters related to DHCP-allocated addresses. | "Parameters related to DHCP-allocated addresses. | |||
| IP addresses are allocated by DHCP, that is provided | IP addresses are allocated by DHCP, which is provided | |||
| by the operator."; | by the operator."; | |||
| leaf dhcp-service-type { | leaf dhcp-service-type { | |||
| type enumeration { | type enumeration { | |||
| enum server { | enum server { | |||
| description | description | |||
| "Local DHCP server."; | "Local DHCP server."; | |||
| } | } | |||
| enum relay { | enum relay { | |||
| description | description | |||
| "Local DHCP relay. DHCP requests are relayed to a | "Local DHCP relay. DHCP requests are relayed to a | |||
| provider's server."; | provider's server."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Indicates the type of DHCP service to be enabled on | "Indicates the type of DHCP service to be enabled on | |||
| the AC."; | the AC."; | |||
| } | } | |||
| } | } | |||
| choice dhcp-relay { | choice dhcp-relay { | |||
| description | description | |||
| skipping to change at page 37, line 34 ¶ | skipping to change at line 1663 ¶ | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| "Indicates the last address in the pool."; | "Indicates the last address in the pool."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| choice provider-dhcp { | choice provider-dhcp { | |||
| description | description | |||
| "Parameters related to DHCP-allocated addresses. IP | "Parameters related to DHCP-allocated addresses. IP | |||
| addresses are allocated by DHCP, which is provided by | addresses are allocated by DHCP, which is provided by | |||
| the operator."; | the operator."; | |||
| leaf dhcp-service-type { | leaf dhcp-service-type { | |||
| type enumeration { | type enumeration { | |||
| enum server { | enum server { | |||
| description | description | |||
| "Local DHCP server."; | "Local DHCP server."; | |||
| } | } | |||
| enum relay { | enum relay { | |||
| description | description | |||
| "Local DHCP relay. DHCP requests are relayed to | "Local DHCP relay. DHCP requests are relayed to | |||
| a provider's server."; | a provider's server."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Indicates the type of DHCP service to be enabled on | "Indicates the type of DHCP service to be enabled on | |||
| this AC."; | this AC."; | |||
| } | } | |||
| } | } | |||
| choice dhcp-relay { | choice dhcp-relay { | |||
| description | description | |||
| "The DHCP relay is provided by the operator."; | "The DHCP relay is provided by the operator."; | |||
| container customer-dhcp-servers { | container customer-dhcp-servers { | |||
| description | description | |||
| "Container for a list of the customer's DHCP servers."; | "Container for a list of the customer's DHCP servers."; | |||
| leaf-list server-ip-address { | leaf-list server-ip-address { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| skipping to change at page 38, line 27 ¶ | skipping to change at line 1704 ¶ | |||
| } | } | |||
| } | } | |||
| } | } | |||
| case static-addresses { | case static-addresses { | |||
| description | description | |||
| "Lists the IPv4 addresses that are used."; | "Lists the IPv4 addresses that are used."; | |||
| list address { | list address { | |||
| key "address-id"; | key "address-id"; | |||
| ordered-by user; | ordered-by user; | |||
| description | description | |||
| "Lists the IPv4 addresses that are used. The first | "Lists the IPv4 addresses that are used. The first | |||
| address of the list is the primary address of the | address of the list is the primary address of the | |||
| connection."; | connection."; | |||
| leaf address-id { | leaf address-id { | |||
| type string; | type string; | |||
| description | description | |||
| "An identifier of the static IPv4 address."; | "An identifier of the static IPv4 address."; | |||
| } | } | |||
| leaf customer-address { | leaf customer-address { | |||
| type inet:ipv4-address; | type inet:ipv4-address; | |||
| description | description | |||
| skipping to change at page 40, line 34 ¶ | skipping to change at line 1807 ¶ | |||
| IP addresses are allocated by DHCP, which is provided | IP addresses are allocated by DHCP, which is provided | |||
| by the operator."; | by the operator."; | |||
| leaf dhcp-service-type { | leaf dhcp-service-type { | |||
| type enumeration { | type enumeration { | |||
| enum server { | enum server { | |||
| description | description | |||
| "Local DHCP server."; | "Local DHCP server."; | |||
| } | } | |||
| enum relay { | enum relay { | |||
| description | description | |||
| "Local DHCP relay. DHCP requests are relayed | "Local DHCP relay. DHCP requests are relayed | |||
| to a provider's server."; | to a provider's server."; | |||
| } | } | |||
| } | } | |||
| description | description | |||
| "Indicates the type of DHCP service to be enabled | "Indicates the type of DHCP service to be enabled | |||
| on this access."; | on this access."; | |||
| } | } | |||
| } | } | |||
| choice dhcp-relay { | choice dhcp-relay { | |||
| description | description | |||
| skipping to change at page 41, line 4 ¶ | skipping to change at line 1826 ¶ | |||
| choice dhcp-relay { | choice dhcp-relay { | |||
| description | description | |||
| "The DHCP relay is provided by the operator."; | "The DHCP relay is provided by the operator."; | |||
| container customer-dhcp-servers { | container customer-dhcp-servers { | |||
| description | description | |||
| "Container for a list of the customer's DHCP servers."; | "Container for a list of the customer's DHCP servers."; | |||
| leaf-list server-ip-address { | leaf-list server-ip-address { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description | description | |||
| "IPv6 addresses of the customer's DHCP server."; | "IPv6 addresses of the customer's DHCP server."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| case static-addresses { | case static-addresses { | |||
| description | description | |||
| "Lists the IPv6 addresses that are used by the customer."; | "Lists the IPv6 addresses that are used by the customer."; | |||
| list address { | list address { | |||
| key "address-id"; | key "address-id"; | |||
| ordered-by user; | ordered-by user; | |||
| description | description | |||
| "Lists the IPv6 addresses that are used. The first | "Lists the IPv6 addresses that are used. The first | |||
| address of the list is the primary IP address of | address of the list is the primary IP address of | |||
| the connection."; | the connection."; | |||
| leaf address-id { | leaf address-id { | |||
| type string; | type string; | |||
| description | description | |||
| "An identifier of the static IPv6 address."; | "An identifier of the static IPv6 address."; | |||
| } | } | |||
| leaf customer-address { | leaf customer-address { | |||
| type inet:ipv6-address; | type inet:ipv6-address; | |||
| description | description | |||
| skipping to change at page 46, line 40 ¶ | skipping to change at line 2102 ¶ | |||
| } | } | |||
| // Basic routing parameters | // Basic routing parameters | |||
| grouping bgp-peer-group-without-name { | grouping bgp-peer-group-without-name { | |||
| description | description | |||
| "Identifies a BGP peer-group configured on the local system."; | "Identifies a BGP peer-group configured on the local system."; | |||
| leaf local-as { | leaf local-as { | |||
| type inet:as-number; | type inet:as-number; | |||
| description | description | |||
| "Indicates a local AS Number (ASN). This ASN is exposed to | "Indicates a local Autonomous System Number (ASN). This ASN | |||
| a customer so that it knows which ASN to use to set up | is exposed to a customer so that it knows which ASN to use | |||
| a BGP session."; | to set up a BGP session."; | |||
| } | } | |||
| leaf peer-as { | leaf peer-as { | |||
| type inet:as-number; | type inet:as-number; | |||
| description | description | |||
| "Indicates the customer's ASN when the customer requests | "Indicates the customer's ASN when the customer requests | |||
| BGP routing."; | BGP routing."; | |||
| } | } | |||
| leaf address-family { | leaf address-family { | |||
| type identityref { | type identityref { | |||
| base vpn-common:address-family; | base vpn-common:address-family; | |||
| skipping to change at page 47, line 25 ¶ | skipping to change at line 2135 ¶ | |||
| description | description | |||
| "Specifies the BGP role (provider, customer, peer, etc.)."; | "Specifies the BGP role (provider, customer, peer, etc.)."; | |||
| reference | reference | |||
| "RFC 9234: Route Leak Prevention and Detection Using | "RFC 9234: Route Leak Prevention and Detection Using | |||
| Roles in UPDATE and OPEN Messages, Section 4"; | Roles in UPDATE and OPEN Messages, Section 4"; | |||
| } | } | |||
| } | } | |||
| grouping bgp-peer-group-with-name { | grouping bgp-peer-group-with-name { | |||
| description | description | |||
| "Identifies a BGP peer-group configured on the local system - | "Identifies a BGP peer-group configured on the local system, | |||
| identified by a peer-group name."; | identified by a peer-group name."; | |||
| leaf name { | leaf name { | |||
| type string; | type string; | |||
| description | description | |||
| "Specifies the name of the BGP peer-group."; | "Specifies the name of the BGP peer-group."; | |||
| } | } | |||
| uses bgp-peer-group-without-name; | uses bgp-peer-group-without-name; | |||
| } | } | |||
| grouping ospf-basic { | grouping ospf-basic { | |||
| skipping to change at page 48, line 12 ¶ | skipping to change at line 2170 ¶ | |||
| reference | reference | |||
| "RFC 4577: OSPF as the Provider/Customer Edge Protocol | "RFC 4577: OSPF as the Provider/Customer Edge Protocol | |||
| for BGP/MPLS IP Virtual Private Networks | for BGP/MPLS IP Virtual Private Networks | |||
| (VPNs), Section 4.2.3 | (VPNs), Section 4.2.3 | |||
| RFC 6565: OSPFv3 as a Provider Edge to Customer Edge | RFC 6565: OSPFv3 as a Provider Edge to Customer Edge | |||
| (PE-CE) Routing Protocol, Section 4.2"; | (PE-CE) Routing Protocol, Section 4.2"; | |||
| } | } | |||
| leaf metric { | leaf metric { | |||
| type uint16; | type uint16; | |||
| description | description | |||
| "Metric of the AC. It is used in the routing state | "Metric of the AC. It is used in the routing state | |||
| calculation and path selection."; | calculation and path selection."; | |||
| } | } | |||
| } | } | |||
| grouping isis-basic { | grouping isis-basic { | |||
| description | description | |||
| "Basic configuration specific to IS-IS."; | "Basic configuration specific to IS-IS."; | |||
| leaf address-family { | leaf address-family { | |||
| type identityref { | type identityref { | |||
| base vpn-common:address-family; | base vpn-common:address-family; | |||
| skipping to change at page 50, line 23 ¶ | skipping to change at line 2277 ¶ | |||
| } | } | |||
| } | } | |||
| grouping ipv6-static-rtg { | grouping ipv6-static-rtg { | |||
| description | description | |||
| "A set of parameters specific to IPv6 static routing."; | "A set of parameters specific to IPv6 static routing."; | |||
| list ipv6-lan-prefixes { | list ipv6-lan-prefixes { | |||
| if-feature "vpn-common:ipv6"; | if-feature "vpn-common:ipv6"; | |||
| key "lan next-hop"; | key "lan next-hop"; | |||
| description | description | |||
| "List of LAN prefixes for the customer terminating points."; | "List of LAN prefixes for the customer-terminating points."; | |||
| uses ipv6-static-rtg-entry; | uses ipv6-static-rtg-entry; | |||
| uses ac-common:service-status; | uses ac-common:service-status; | |||
| } | } | |||
| } | } | |||
| // OAM | // OAM | |||
| grouping bfd { | grouping bfd { | |||
| description | description | |||
| "Groups a set of basic BFD parameters."; | "Groups a set of basic BFD parameters."; | |||
| skipping to change at page 51, line 4 ¶ | skipping to change at line 2305 ¶ | |||
| holdtime period if the provider allows the customer | holdtime period if the provider allows the customer | |||
| to use this function. | to use this function. | |||
| If the provider doesn't allow the customer to use | If the provider doesn't allow the customer to use | |||
| this function, fixed values will not be set."; | this function, fixed values will not be set."; | |||
| reference | reference | |||
| "RFC 5880: Bidirectional Forwarding Detection (BFD), | "RFC 5880: Bidirectional Forwarding Detection (BFD), | |||
| Section 6.8.18"; | Section 6.8.18"; | |||
| } | } | |||
| } | } | |||
| // redundancy | // redundancy | |||
| grouping redundancy-group { | grouping redundancy-group { | |||
| description | description | |||
| "A grouping for redundancy group."; | "A grouping for redundancy group."; | |||
| list group { | list group { | |||
| key "group-id"; | key "group-id"; | |||
| description | description | |||
| "Specifies a list of group identifiers."; | "Specifies a list of group identifiers."; | |||
| leaf group-id { | leaf group-id { | |||
| type string; | type string; | |||
| description | description | |||
| "Indicates the group-id to which an AC belongs."; | "Indicates the group-id to which an AC belongs."; | |||
| } | } | |||
| leaf precedence { | leaf precedence { | |||
| type identityref { | type identityref { | |||
| base ac-common:precedence-type; | base ac-common:precedence-type; | |||
| } | } | |||
| description | description | |||
| "Defines redundancy of an AC."; | "Defines redundancy of an AC."; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| // QoS | // QoS | |||
| grouping bandwidth-parameters { | grouping bandwidth-parameters { | |||
| description | description | |||
| "A grouping for bandwidth parameters."; | "A grouping for bandwidth parameters."; | |||
| leaf cir { | leaf cir { | |||
| type uint64; | type uint64; | |||
| units "bps"; | units "bps"; | |||
| description | description | |||
| "Committed Information Rate (CIR). The maximum number of bits | "Committed Information Rate (CIR). The maximum number of | |||
| that a port can receive or send during one second over | bits that a port can receive or send during one second over | |||
| an interface."; | an interface."; | |||
| } | } | |||
| leaf cbs { | leaf cbs { | |||
| type uint64; | type uint64; | |||
| units "bytes"; | units "bytes"; | |||
| description | description | |||
| "Committed Burst Size (CBS). CBS controls the bursty nature | "Committed Burst Size (CBS). CBS controls the bursty nature | |||
| of the traffic. Traffic that does not use the configured | of the traffic. Traffic that does not use the configured | |||
| CIR accumulates credits until the credits reach the | CIR accumulates credits until the credits reach the | |||
| configured CBS."; | configured CBS."; | |||
| } | } | |||
| leaf eir { | leaf eir { | |||
| type uint64; | type uint64; | |||
| units "bps"; | units "bps"; | |||
| description | description | |||
| "Excess Information Rate (EIR), i.e., excess frame delivery | "Excess Information Rate (EIR), i.e., excess frame delivery | |||
| allowed not subject to a Service Level Agreement (SLA). | allowed not subject to a Service Level Agreement (SLA). | |||
| The traffic rate can be limited by EIR."; | The traffic rate can be limited by EIR."; | |||
| } | } | |||
| leaf ebs { | leaf ebs { | |||
| type uint64; | type uint64; | |||
| units "bytes"; | units "bytes"; | |||
| description | description | |||
| "Excess Burst Size (EBS). The bandwidth available for burst | "Excess Burst Size (EBS). The bandwidth available for burst | |||
| traffic from the EBS is subject to the amount of bandwidth | traffic from the EBS is subject to the amount of bandwidth | |||
| that is accumulated during periods when traffic allocated | that is accumulated during periods when traffic allocated | |||
| by the EIR policy is not used."; | by the EIR policy is not used."; | |||
| } | } | |||
| leaf pir { | leaf pir { | |||
| type uint64; | type uint64; | |||
| units "bps"; | units "bps"; | |||
| description | description | |||
| "Peak Information Rate (PIR), i.e., maximum frame delivery | "Peak Information Rate (PIR), i.e., maximum frame delivery | |||
| allowed. It is equal to or less than sum of CIR and EIR."; | allowed. It is equal to or less than the sum of the CIR and | |||
| EIR."; | ||||
| } | } | |||
| leaf pbs { | leaf pbs { | |||
| type uint64; | type uint64; | |||
| units "bytes"; | units "bytes"; | |||
| description | description | |||
| "Peak Burst Size (PBS)."; | "Peak Burst Size (PBS)."; | |||
| } | } | |||
| } | } | |||
| grouping bandwidth-per-type { | grouping bandwidth-per-type { | |||
| skipping to change at page 53, line 35 ¶ | skipping to change at line 2434 ¶ | |||
| uses bandwidth-parameters; | uses bandwidth-parameters; | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| 6. Security Considerations | 6. Security Considerations | |||
| This section is modeled after the template described in Section 3.7 | ||||
| of [I-D.ietf-netmod-rfc8407bis]. | ||||
| The "ietf-ac-common" YANG module defines a data model that is | The "ietf-ac-common" YANG module defines a data model that is | |||
| designed to be accessed via YANG-based management protocols, such as | designed to be accessed via YANG-based management protocols, such as | |||
| NETCONF [RFC6241] and RESTCONF [RFC8040]. These protocols have to | NETCONF [RFC6241] and RESTCONF [RFC8040]. These protocols have to | |||
| use a secure transport layer (e.g., SSH [RFC4252], TLS [RFC8446], and | use a secure transport layer (e.g., SSH [RFC4252], TLS [RFC8446], and | |||
| QUIC [RFC9000]) and have to use mutual authentication. | QUIC [RFC9000]) and have to use mutual authentication. | |||
| The Network Configuration Access Control Model (NACM) [RFC8341] | The Network Configuration Access Control Model (NACM) [RFC8341] | |||
| provides the means to restrict access for particular NETCONF or | provides the means to restrict access for particular NETCONF or | |||
| RESTCONF users to a preconfigured subset of all available NETCONF or | RESTCONF users to a preconfigured subset of all available NETCONF or | |||
| RESTCONF protocol operations and content. | RESTCONF protocol operations and content. | |||
| skipping to change at page 54, line 28 ¶ | skipping to change at line 2472 ¶ | |||
| groupings will inherit the security considerations discussed in | groupings will inherit the security considerations discussed in | |||
| Section 5 of [RFC8177]. Also, these groupings support supplying | Section 5 of [RFC8177]. Also, these groupings support supplying | |||
| explicit keys as strings in ASCII format. The use of keys in | explicit keys as strings in ASCII format. The use of keys in | |||
| hexadecimal string format would afford greater key entropy with the | hexadecimal string format would afford greater key entropy with the | |||
| same number of key-string octets. However, such a format is not | same number of key-string octets. However, such a format is not | |||
| included in this version of the common AC model, because it is not | included in this version of the common AC model, because it is not | |||
| supported by the underlying device modules (e.g., [RFC8695]). | supported by the underlying device modules (e.g., [RFC8695]). | |||
| 7. IANA Considerations | 7. IANA Considerations | |||
| IANA is requested to register the following URI in the "ns" | IANA has registered the following URI in the "ns" subregistry within | |||
| subregistry within the "IETF XML Registry" [RFC3688]: | the "IETF XML Registry" [RFC3688]: | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-ac-common | URI: urn:ietf:params:xml:ns:yang:ietf-ac-common | |||
| 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. | |||
| IANA is requested to register the following YANG module in the "YANG | IANA has registered the following YANG module in the "YANG Module | |||
| Module Names" subregistry [RFC6020] within the "YANG Parameters" | Names" subregistry [RFC6020] within the "YANG Parameters" registry: | |||
| registry: | ||||
| Name: ietf-ac-common | Name: ietf-ac-common | |||
| Namespace: urn:ietf:params:xml:ns:yang:ietf-ac-common | Maintained by IANA? N | |||
| Prefix: ac-common | Namespace: urn:ietf:params:xml:ns:yang:ietf-ac-common | |||
| Maintained by IANA? N | Prefix: ac-common | |||
| Reference: RFC XXXX | Reference: RFC 9833 | |||
| 8. References | 8. References | |||
| 8.1. Normative References | 8.1. Normative References | |||
| [ISO10589] ISO, "Information technology - Telecommunications and | [IEEE_802.1Q] | |||
| IEEE, "IEEE Standard for Local and Metropolitan Area | ||||
| Networks-Bridges and Bridged Networks", IEEE Std 802.1Q- | ||||
| 2022, DOI 10.1109/IEEESTD.2022.10004498, December 2022, | ||||
| <https://doi.org/10.1109/IEEESTD.2022.10004498>. | ||||
| [ISO10589] ISO/IEC, "Information technology - Telecommunications and | ||||
| information exchange between systems - Intermediate System | information exchange between systems - Intermediate System | |||
| to Intermediate System intra-domain routeing information | to Intermediate System intra-domain routeing information | |||
| exchange protocol for use in conjunction with the protocol | exchange protocol for use in conjunction with the protocol | |||
| for providing the connectionless-mode network service | for providing the connectionless-mode network service | |||
| (ISO8473)", 2002, | (ISO8473)", ISO/IEC 10589:2002, November 2002, | |||
| <https://www.iso.org/standard/30932.html>. | <https://www.iso.org/standard/30932.html>. | |||
| [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and | [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and | |||
| dual environments", RFC 1195, DOI 10.17487/RFC1195, | dual environments", RFC 1195, DOI 10.17487/RFC1195, | |||
| December 1990, <https://www.rfc-editor.org/rfc/rfc1195>. | December 1990, <https://www.rfc-editor.org/info/rfc1195>. | |||
| [RFC2080] Malkin, G. and R. Minnear, "RIPng for IPv6", RFC 2080, | [RFC2080] Malkin, G. and R. Minnear, "RIPng for IPv6", RFC 2080, | |||
| DOI 10.17487/RFC2080, January 1997, | DOI 10.17487/RFC2080, January 1997, | |||
| <https://www.rfc-editor.org/rfc/rfc2080>. | <https://www.rfc-editor.org/info/rfc2080>. | |||
| [RFC2453] Malkin, G., "RIP Version 2", STD 56, RFC 2453, | [RFC2453] Malkin, G., "RIP Version 2", STD 56, RFC 2453, | |||
| DOI 10.17487/RFC2453, November 1998, | DOI 10.17487/RFC2453, November 1998, | |||
| <https://www.rfc-editor.org/rfc/rfc2453>. | <https://www.rfc-editor.org/info/rfc2453>. | |||
| [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
| DOI 10.17487/RFC3688, January 2004, | DOI 10.17487/RFC3688, January 2004, | |||
| <https://www.rfc-editor.org/rfc/rfc3688>. | <https://www.rfc-editor.org/info/rfc3688>. | |||
| [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A | [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A | |||
| Border Gateway Protocol 4 (BGP-4)", RFC 4271, | Border Gateway Protocol 4 (BGP-4)", RFC 4271, | |||
| DOI 10.17487/RFC4271, January 2006, | DOI 10.17487/RFC4271, January 2006, | |||
| <https://www.rfc-editor.org/rfc/rfc4271>. | <https://www.rfc-editor.org/info/rfc4271>. | |||
| [RFC4577] Rosen, E., Psenak, P., and P. Pillay-Esnault, "OSPF as the | [RFC4577] Rosen, E., Psenak, P., and P. Pillay-Esnault, "OSPF as the | |||
| Provider/Customer Edge Protocol for BGP/MPLS IP Virtual | Provider/Customer Edge Protocol for BGP/MPLS IP Virtual | |||
| Private Networks (VPNs)", RFC 4577, DOI 10.17487/RFC4577, | Private Networks (VPNs)", RFC 4577, DOI 10.17487/RFC4577, | |||
| June 2006, <https://www.rfc-editor.org/rfc/rfc4577>. | June 2006, <https://www.rfc-editor.org/info/rfc4577>. | |||
| [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, | [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, | |||
| DOI 10.17487/RFC5308, October 2008, | DOI 10.17487/RFC5308, October 2008, | |||
| <https://www.rfc-editor.org/rfc/rfc5308>. | <https://www.rfc-editor.org/info/rfc5308>. | |||
| [RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP | [RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP | |||
| Authentication Option", RFC 5925, DOI 10.17487/RFC5925, | Authentication Option", RFC 5925, DOI 10.17487/RFC5925, | |||
| June 2010, <https://www.rfc-editor.org/rfc/rfc5925>. | June 2010, <https://www.rfc-editor.org/info/rfc5925>. | |||
| [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
| the Network Configuration Protocol (NETCONF)", RFC 6020, | the Network Configuration Protocol (NETCONF)", RFC 6020, | |||
| DOI 10.17487/RFC6020, October 2010, | DOI 10.17487/RFC6020, October 2010, | |||
| <https://www.rfc-editor.org/rfc/rfc6020>. | <https://www.rfc-editor.org/info/rfc6020>. | |||
| [RFC6565] Pillay-Esnault, P., Moyer, P., Doyle, J., Ertekin, E., and | [RFC6565] Pillay-Esnault, P., Moyer, P., Doyle, J., Ertekin, E., and | |||
| M. Lundberg, "OSPFv3 as a Provider Edge to Customer Edge | M. Lundberg, "OSPFv3 as a Provider Edge to Customer Edge | |||
| (PE-CE) Routing Protocol", RFC 6565, DOI 10.17487/RFC6565, | (PE-CE) Routing Protocol", RFC 6565, DOI 10.17487/RFC6565, | |||
| June 2012, <https://www.rfc-editor.org/rfc/rfc6565>. | June 2012, <https://www.rfc-editor.org/info/rfc6565>. | |||
| [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | |||
| RFC 6991, DOI 10.17487/RFC6991, July 2013, | RFC 6991, DOI 10.17487/RFC6991, July 2013, | |||
| <https://www.rfc-editor.org/rfc/rfc6991>. | <https://www.rfc-editor.org/info/rfc6991>. | |||
| [RFC7348] Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger, | [RFC7348] Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger, | |||
| L., Sridhar, T., Bursell, M., and C. Wright, "Virtual | L., Sridhar, T., Bursell, M., and C. Wright, "Virtual | |||
| eXtensible Local Area Network (VXLAN): A Framework for | eXtensible Local Area Network (VXLAN): A Framework for | |||
| Overlaying Virtualized Layer 2 Networks over Layer 3 | Overlaying Virtualized Layer 2 Networks over Layer 3 | |||
| Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014, | Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014, | |||
| <https://www.rfc-editor.org/rfc/rfc7348>. | <https://www.rfc-editor.org/info/rfc7348>. | |||
| [RFC8077] Martini, L., Ed. and G. Heron, Ed., "Pseudowire Setup and | [RFC8077] Martini, L., Ed. and G. Heron, Ed., "Pseudowire Setup and | |||
| Maintenance Using the Label Distribution Protocol (LDP)", | Maintenance Using the Label Distribution Protocol (LDP)", | |||
| STD 84, RFC 8077, DOI 10.17487/RFC8077, February 2017, | STD 84, RFC 8077, DOI 10.17487/RFC8077, February 2017, | |||
| <https://www.rfc-editor.org/rfc/rfc8077>. | <https://www.rfc-editor.org/info/rfc8077>. | |||
| [RFC8177] Lindem, A., Ed., Qu, Y., Yeung, D., Chen, I., and J. | [RFC8177] Lindem, A., Ed., Qu, Y., Yeung, D., Chen, I., and J. | |||
| Zhang, "YANG Data Model for Key Chains", RFC 8177, | Zhang, "YANG Data Model for Key Chains", RFC 8177, | |||
| DOI 10.17487/RFC8177, June 2017, | DOI 10.17487/RFC8177, June 2017, | |||
| <https://www.rfc-editor.org/rfc/rfc8177>. | <https://www.rfc-editor.org/info/rfc8177>. | |||
| [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration | [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration | |||
| Access Control Model", STD 91, RFC 8341, | Access Control Model", STD 91, RFC 8341, | |||
| DOI 10.17487/RFC8341, March 2018, | DOI 10.17487/RFC8341, March 2018, | |||
| <https://www.rfc-editor.org/rfc/rfc8341>. | <https://www.rfc-editor.org/info/rfc8341>. | |||
| [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | |||
| and R. Wilton, "Network Management Datastore Architecture | and R. Wilton, "Network Management Datastore Architecture | |||
| (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | |||
| <https://www.rfc-editor.org/rfc/rfc8342>. | <https://www.rfc-editor.org/info/rfc8342>. | |||
| [RFC9181] Barguil, S., Gonzalez de Dios, O., Ed., Boucadair, M., | [RFC9181] Barguil, S., Gonzalez de Dios, O., Ed., Boucadair, M., | |||
| Ed., and Q. Wu, "A Common YANG Data Model for Layer 2 and | Ed., and Q. Wu, "A Common YANG Data Model for Layer 2 and | |||
| Layer 3 VPNs", RFC 9181, DOI 10.17487/RFC9181, February | Layer 3 VPNs", RFC 9181, DOI 10.17487/RFC9181, February | |||
| 2022, <https://www.rfc-editor.org/rfc/rfc9181>. | 2022, <https://www.rfc-editor.org/info/rfc9181>. | |||
| 8.2. Informative References | 8.2. Informative References | |||
| [I-D.ietf-netmod-rfc8407bis] | [MEF17] The Metro Ethernet Forum, "Service OAM Requirements & | |||
| Bierman, A., Boucadair, M., and Q. Wu, "Guidelines for | Framework - Phase 1", MEF Technical Specification, MEF 17, | |||
| Authors and Reviewers of Documents Containing YANG Data | April 2007, <https://www.mef.net/wp- | |||
| Models", Work in Progress, Internet-Draft, draft-ietf- | content/uploads/2015/04/MEF-17.pdf>. | |||
| netmod-rfc8407bis-22, 14 January 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-netmod- | ||||
| rfc8407bis-22>. | ||||
| [I-D.ietf-netmod-schedule-yang] | ||||
| Ma, Q., Wu, Q., Boucadair, M., and D. King, "A Common YANG | ||||
| Data Model for Scheduling", Work in Progress, Internet- | ||||
| Draft, draft-ietf-netmod-schedule-yang-03, 10 October | ||||
| 2024, <https://datatracker.ietf.org/doc/html/draft-ietf- | ||||
| netmod-schedule-yang-03>. | ||||
| [I-D.ietf-opsawg-ac-lxsm-lxnm-glue] | ||||
| Boucadair, M., Roberts, R., Barguil, S., and O. G. de | ||||
| Dios, "A YANG Data Model for Augmenting VPN Service and | ||||
| Network Models with Attachment Circuits", Work in | ||||
| Progress, Internet-Draft, draft-ietf-opsawg-ac-lxsm-lxnm- | ||||
| glue-13, 9 January 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-opsawg- | ||||
| ac-lxsm-lxnm-glue-13>. | ||||
| [I-D.ietf-opsawg-ntw-attachment-circuit] | ||||
| Boucadair, M., Roberts, R., de Dios, O. G., Barguil, S., | ||||
| and B. Wu, "A Network YANG Data Model for Attachment | ||||
| Circuits", Work in Progress, Internet-Draft, draft-ietf- | ||||
| opsawg-ntw-attachment-circuit-15, 9 January 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-opsawg- | ||||
| ntw-attachment-circuit-15>. | ||||
| [I-D.ietf-opsawg-teas-attachment-circuit] | ||||
| Boucadair, M., Roberts, R., de Dios, O. G., Barguil, S., | ||||
| and B. Wu, "YANG Data Models for Bearers and 'Attachment | ||||
| Circuits'-as-a-Service (ACaaS)", Work in Progress, | ||||
| Internet-Draft, draft-ietf-opsawg-teas-attachment-circuit- | ||||
| 19, 9 January 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-opsawg- | ||||
| teas-attachment-circuit-19>. | ||||
| [I-D.ietf-teas-ietf-network-slice-nbi-yang] | ||||
| Wu, B., Dhody, D., Rokui, R., Saad, T., and J. Mullooly, | ||||
| "A YANG Data Model for the RFC 9543 Network Slice | ||||
| Service", Work in Progress, Internet-Draft, draft-ietf- | ||||
| teas-ietf-network-slice-nbi-yang-18, 21 January 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-teas- | ||||
| ietf-network-slice-nbi-yang-18>. | ||||
| [MEF17] The Metro Ethernet Forum, "Technical Specification MEF 17, | ||||
| Service OAM Requirements & Framework - Phase 1", April | ||||
| 2007, <https://www.mef.net/wp-content/uploads/2015/04/MEF- | ||||
| 17.pdf>. | ||||
| [MEF6] The Metro Ethernet Forum, "Technical Specification MEF 6, | [MEF6] The Metro Ethernet Forum, "Ethernet Services Definitions - | |||
| Ethernet Services Definitions - Phase I", June 2004, | Phase I", MEF Technical Specification, MEF 6, August 2004, | |||
| <https://www.mef.net/Assets/Technical_Specifications/PDF/ | <https://www.mef.net/Assets/Technical_Specifications/PDF/ | |||
| MEF_6.pdf>. | MEF_6.pdf>. | |||
| [RFC1701] Hanks, S., Li, T., Farinacci, D., and P. Traina, "Generic | [RFC1701] Hanks, S., Li, T., Farinacci, D., and P. Traina, "Generic | |||
| Routing Encapsulation (GRE)", RFC 1701, | Routing Encapsulation (GRE)", RFC 1701, | |||
| DOI 10.17487/RFC1701, October 1994, | DOI 10.17487/RFC1701, October 1994, | |||
| <https://www.rfc-editor.org/rfc/rfc1701>. | <https://www.rfc-editor.org/info/rfc1701>. | |||
| [RFC1702] Hanks, S., Li, T., Farinacci, D., and P. Traina, "Generic | [RFC1702] Hanks, S., Li, T., Farinacci, D., and P. Traina, "Generic | |||
| Routing Encapsulation over IPv4 networks", RFC 1702, | Routing Encapsulation over IPv4 networks", RFC 1702, | |||
| DOI 10.17487/RFC1702, October 1994, | DOI 10.17487/RFC1702, October 1994, | |||
| <https://www.rfc-editor.org/rfc/rfc1702>. | <https://www.rfc-editor.org/info/rfc1702>. | |||
| [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, | [RFC2003] Perkins, C., "IP Encapsulation within IP", RFC 2003, | |||
| DOI 10.17487/RFC2003, October 1996, | DOI 10.17487/RFC2003, October 1996, | |||
| <https://www.rfc-editor.org/rfc/rfc2003>. | <https://www.rfc-editor.org/info/rfc2003>. | |||
| [RFC3644] Snir, Y., Ramberg, Y., Strassner, J., Cohen, R., and B. | [RFC3644] Snir, Y., Ramberg, Y., Strassner, J., Cohen, R., and B. | |||
| Moore, "Policy Quality of Service (QoS) Information | Moore, "Policy Quality of Service (QoS) Information | |||
| Model", RFC 3644, DOI 10.17487/RFC3644, November 2003, | Model", RFC 3644, DOI 10.17487/RFC3644, November 2003, | |||
| <https://www.rfc-editor.org/rfc/rfc3644>. | <https://www.rfc-editor.org/info/rfc3644>. | |||
| [RFC4252] Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH) | [RFC4252] Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH) | |||
| Authentication Protocol", RFC 4252, DOI 10.17487/RFC4252, | Authentication Protocol", RFC 4252, DOI 10.17487/RFC4252, | |||
| January 2006, <https://www.rfc-editor.org/rfc/rfc4252>. | January 2006, <https://www.rfc-editor.org/info/rfc4252>. | |||
| [RFC4301] Kent, S. and K. Seo, "Security Architecture for the | [RFC4301] Kent, S. and K. Seo, "Security Architecture for the | |||
| Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, | Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, | |||
| December 2005, <https://www.rfc-editor.org/rfc/rfc4301>. | December 2005, <https://www.rfc-editor.org/info/rfc4301>. | |||
| [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private | [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private | |||
| Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, February | Networks (VPNs)", RFC 4364, DOI 10.17487/RFC4364, February | |||
| 2006, <https://www.rfc-editor.org/rfc/rfc4364>. | 2006, <https://www.rfc-editor.org/info/rfc4364>. | |||
| [RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality | [RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality | |||
| for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006, | for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006, | |||
| <https://www.rfc-editor.org/rfc/rfc4552>. | <https://www.rfc-editor.org/info/rfc4552>. | |||
| [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless | [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless | |||
| Address Autoconfiguration", RFC 4862, | Address Autoconfiguration", RFC 4862, | |||
| DOI 10.17487/RFC4862, September 2007, | DOI 10.17487/RFC4862, September 2007, | |||
| <https://www.rfc-editor.org/rfc/rfc4862>. | <https://www.rfc-editor.org/info/rfc4862>. | |||
| [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection | |||
| (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, | |||
| <https://www.rfc-editor.org/rfc/rfc5880>. | <https://www.rfc-editor.org/info/rfc5880>. | |||
| [RFC6004] Berger, L. and D. Fedyk, "Generalized MPLS (GMPLS) Support | [RFC6004] Berger, L. and D. Fedyk, "Generalized MPLS (GMPLS) Support | |||
| for Metro Ethernet Forum and G.8011 Ethernet Service | for Metro Ethernet Forum and G.8011 Ethernet Service | |||
| Switching", RFC 6004, DOI 10.17487/RFC6004, October 2010, | Switching", RFC 6004, DOI 10.17487/RFC6004, October 2010, | |||
| <https://www.rfc-editor.org/rfc/rfc6004>. | <https://www.rfc-editor.org/info/rfc6004>. | |||
| [RFC6215] Bocci, M., Levrau, L., and D. Frost, "MPLS Transport | [RFC6215] Bocci, M., Levrau, L., and D. Frost, "MPLS Transport | |||
| Profile User-to-Network and Network-to-Network | Profile User-to-Network and Network-to-Network | |||
| Interfaces", RFC 6215, DOI 10.17487/RFC6215, April 2011, | Interfaces", RFC 6215, DOI 10.17487/RFC6215, April 2011, | |||
| <https://www.rfc-editor.org/rfc/rfc6215>. | <https://www.rfc-editor.org/info/rfc6215>. | |||
| [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | |||
| and A. Bierman, Ed., "Network Configuration Protocol | and A. Bierman, Ed., "Network Configuration Protocol | |||
| (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | |||
| <https://www.rfc-editor.org/rfc/rfc6241>. | <https://www.rfc-editor.org/info/rfc6241>. | |||
| [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | |||
| Chaining (SFC) Architecture", RFC 7665, | Chaining (SFC) Architecture", RFC 7665, | |||
| DOI 10.17487/RFC7665, October 2015, | DOI 10.17487/RFC7665, October 2015, | |||
| <https://www.rfc-editor.org/rfc/rfc7665>. | <https://www.rfc-editor.org/info/rfc7665>. | |||
| [RFC7676] Pignataro, C., Bonica, R., and S. Krishnan, "IPv6 Support | [RFC7676] Pignataro, C., Bonica, R., and S. Krishnan, "IPv6 Support | |||
| for Generic Routing Encapsulation (GRE)", RFC 7676, | for Generic Routing Encapsulation (GRE)", RFC 7676, | |||
| DOI 10.17487/RFC7676, October 2015, | DOI 10.17487/RFC7676, October 2015, | |||
| <https://www.rfc-editor.org/rfc/rfc7676>. | <https://www.rfc-editor.org/info/rfc7676>. | |||
| [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF | [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF | |||
| Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, | Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, | |||
| <https://www.rfc-editor.org/rfc/rfc8040>. | <https://www.rfc-editor.org/info/rfc8040>. | |||
| [RFC8299] Wu, Q., Ed., Litkowski, S., Tomotaki, L., and K. Ogaki, | [RFC8299] Wu, Q., Ed., Litkowski, S., Tomotaki, L., and K. Ogaki, | |||
| "YANG Data Model for L3VPN Service Delivery", RFC 8299, | "YANG Data Model for L3VPN Service Delivery", RFC 8299, | |||
| DOI 10.17487/RFC8299, January 2018, | DOI 10.17487/RFC8299, January 2018, | |||
| <https://www.rfc-editor.org/rfc/rfc8299>. | <https://www.rfc-editor.org/info/rfc8299>. | |||
| [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
| BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
| <https://www.rfc-editor.org/rfc/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
| [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | |||
| Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | |||
| <https://www.rfc-editor.org/rfc/rfc8446>. | <https://www.rfc-editor.org/info/rfc8446>. | |||
| [RFC8466] Wen, B., Fioccola, G., Ed., Xie, C., and L. Jalil, "A YANG | [RFC8466] Wen, B., Fioccola, G., Ed., Xie, C., and L. Jalil, "A YANG | |||
| Data Model for Layer 2 Virtual Private Network (L2VPN) | Data Model for Layer 2 Virtual Private Network (L2VPN) | |||
| Service Delivery", RFC 8466, DOI 10.17487/RFC8466, October | Service Delivery", RFC 8466, DOI 10.17487/RFC8466, October | |||
| 2018, <https://www.rfc-editor.org/rfc/rfc8466>. | 2018, <https://www.rfc-editor.org/info/rfc8466>. | |||
| [RFC8695] Liu, X., Sarda, P., and V. Choudhary, "A YANG Data Model | [RFC8695] Liu, X., Sarda, P., and V. Choudhary, "A YANG Data Model | |||
| for the Routing Information Protocol (RIP)", RFC 8695, | for the Routing Information Protocol (RIP)", RFC 8695, | |||
| DOI 10.17487/RFC8695, February 2020, | DOI 10.17487/RFC8695, February 2020, | |||
| <https://www.rfc-editor.org/rfc/rfc8695>. | <https://www.rfc-editor.org/info/rfc8695>. | |||
| [RFC8969] Wu, Q., Ed., Boucadair, M., Ed., Lopez, D., Xie, C., and | [RFC8969] Wu, Q., Ed., Boucadair, M., Ed., Lopez, D., Xie, C., and | |||
| L. Geng, "A Framework for Automating Service and Network | L. Geng, "A Framework for Automating Service and Network | |||
| Management with YANG", RFC 8969, DOI 10.17487/RFC8969, | Management with YANG", RFC 8969, DOI 10.17487/RFC8969, | |||
| January 2021, <https://www.rfc-editor.org/rfc/rfc8969>. | January 2021, <https://www.rfc-editor.org/info/rfc8969>. | |||
| [RFC9000] Iyengar, J., Ed. and M. Thomson, Ed., "QUIC: A UDP-Based | [RFC9000] Iyengar, J., Ed. and M. Thomson, Ed., "QUIC: A UDP-Based | |||
| Multiplexed and Secure Transport", RFC 9000, | Multiplexed and Secure Transport", RFC 9000, | |||
| DOI 10.17487/RFC9000, May 2021, | DOI 10.17487/RFC9000, May 2021, | |||
| <https://www.rfc-editor.org/rfc/rfc9000>. | <https://www.rfc-editor.org/info/rfc9000>. | |||
| [RFC9182] Barguil, S., Gonzalez de Dios, O., Ed., Boucadair, M., | [RFC9182] Barguil, S., Gonzalez de Dios, O., Ed., Boucadair, M., | |||
| Ed., Munoz, L., and A. Aguado, "A YANG Network Data Model | Ed., Munoz, L., and A. Aguado, "A YANG Network Data Model | |||
| for Layer 3 VPNs", RFC 9182, DOI 10.17487/RFC9182, | for Layer 3 VPNs", RFC 9182, DOI 10.17487/RFC9182, | |||
| February 2022, <https://www.rfc-editor.org/rfc/rfc9182>. | February 2022, <https://www.rfc-editor.org/info/rfc9182>. | |||
| [RFC9234] Azimov, A., Bogomazov, E., Bush, R., Patel, K., and K. | [RFC9234] Azimov, A., Bogomazov, E., Bush, R., Patel, K., and K. | |||
| Sriram, "Route Leak Prevention and Detection Using Roles | Sriram, "Route Leak Prevention and Detection Using Roles | |||
| in UPDATE and OPEN Messages", RFC 9234, | in UPDATE and OPEN Messages", RFC 9234, | |||
| DOI 10.17487/RFC9234, May 2022, | DOI 10.17487/RFC9234, May 2022, | |||
| <https://www.rfc-editor.org/rfc/rfc9234>. | <https://www.rfc-editor.org/info/rfc9234>. | |||
| [RFC9291] Boucadair, M., Ed., Gonzalez de Dios, O., Ed., Barguil, | [RFC9291] Boucadair, M., Ed., Gonzalez de Dios, O., Ed., Barguil, | |||
| S., and L. Munoz, "A YANG Network Data Model for Layer 2 | S., and L. Munoz, "A YANG Network Data Model for Layer 2 | |||
| VPNs", RFC 9291, DOI 10.17487/RFC9291, September 2022, | VPNs", RFC 9291, DOI 10.17487/RFC9291, September 2022, | |||
| <https://www.rfc-editor.org/rfc/rfc9291>. | <https://www.rfc-editor.org/info/rfc9291>. | |||
| [RFC9408] Boucadair, M., Ed., Gonzalez de Dios, O., Barguil, S., Wu, | [RFC9408] Boucadair, M., Ed., Gonzalez de Dios, O., Barguil, S., Wu, | |||
| Q., and V. Lopez, "A YANG Network Data Model for Service | Q., and V. Lopez, "A YANG Network Data Model for Service | |||
| Attachment Points (SAPs)", RFC 9408, DOI 10.17487/RFC9408, | Attachment Points (SAPs)", RFC 9408, DOI 10.17487/RFC9408, | |||
| June 2023, <https://www.rfc-editor.org/rfc/rfc9408>. | June 2023, <https://www.rfc-editor.org/info/rfc9408>. | |||
| [RFC9834] Boucadair, M., Ed., Roberts, R., Ed., Gonzalez de Dios, | ||||
| O., Barguil, S., and B. Wu, "YANG Data Models for Bearers | ||||
| and Attachment Circuits as a Service (ACaaS)", RFC 9834, | ||||
| September 2025, <https://www.rfc-editor.org/info/rfc9834>. | ||||
| [RFC9835] Boucadair, M., Ed., Roberts, R., Gonzalez de Dios, O., | ||||
| Barguil, S., and B. Wu, "A Network YANG Data Model for | ||||
| Attachment Circuits", RFC 9835, September 2025, | ||||
| <https://www.rfc-editor.org/info/rfc9835>. | ||||
| [RFC9836] Boucadair, M., Ed., Roberts, R., Barguil, S., and O. | ||||
| Gonzalez de Dios, "A YANG Data Model for Augmenting VPN | ||||
| Service and Network Models with Attachment Circuits", | ||||
| RFC 9836, September 2025, | ||||
| <https://www.rfc-editor.org/info/rfc9836>. | ||||
| [YANG-NSS] Wu, B., Dhody, D., Rokui, R., Saad, T., and J. Mullooly, | ||||
| "A YANG Data Model for the RFC 9543 Network Slice | ||||
| Service", Work in Progress, Internet-Draft, draft-ietf- | ||||
| teas-ietf-network-slice-nbi-yang-25, 9 May 2025, | ||||
| <https://datatracker.ietf.org/doc/html/draft-ietf-teas- | ||||
| ietf-network-slice-nbi-yang-25>. | ||||
| [YANG-SCHEDULE] | ||||
| Ma, Q., Ed., Wu, Q., Boucadair, M., Ed., and D. King, "A | ||||
| Common YANG Data Model for Scheduling", Work in Progress, | ||||
| Internet-Draft, draft-ietf-netmod-schedule-yang-04, 7 | ||||
| February 2025, <https://datatracker.ietf.org/doc/html/ | ||||
| draft-ietf-netmod-schedule-yang-04>. | ||||
| Appendix A. Full Tree | Appendix A. Full Tree | |||
| module: ietf-ac-common | module: ietf-ac-common | |||
| grouping service-status: | grouping service-status: | |||
| +-- status | +-- status | |||
| +-- admin-status | +-- admin-status | |||
| | +-- status? identityref | | +-- status? identityref | |||
| | +--ro last-change? yang:date-and-time | | +--ro last-change? yang:date-and-time | |||
| skipping to change at page 66, line 36 ¶ | skipping to change at line 3039 ¶ | |||
| +-- ebs? uint64 | +-- ebs? uint64 | |||
| +-- pir? uint64 | +-- pir? uint64 | |||
| +-- pbs? uint64 | +-- pbs? uint64 | |||
| Acknowledgments | Acknowledgments | |||
| The document reuses many of the structures that were defined in | The document reuses many of the structures that were defined in | |||
| [RFC9181] and [RFC9182]. | [RFC9181] and [RFC9182]. | |||
| Thanks to Ebben Aries for the YANG Doctors review, Andy Smith and | Thanks to Ebben Aries for the YANG Doctors review, Andy Smith and | |||
| Gyanh Mishra for the rtg-dir reviews, Watson Ladd for the sec-dir | Gyanh Mishra for the RTGDIR reviews, Watson Ladd for the SECDIR | |||
| review, and Behcet Sarikaya for the genart review. | review, and Behcet Sarikaya for the GENART review. | |||
| Thanks to Reza Rokui for the Shepherd review. | Thanks to Reza Rokui for the shepherd review. | |||
| Thanks to Mahesh Jethanandani for the AD review. | Thanks to Mahesh Jethanandani for the AD review. | |||
| Thanks to Éric Vyncke, Gunter Van de Velde, Orie Steele, and Paul | Thanks to Éric Vyncke, Gunter Van de Velde, Orie Steele, and Paul | |||
| Wouters for the IESG review. | Wouters for the IESG review. | |||
| Contributors | Contributors | |||
| Victor Lopez | Victor Lopez | |||
| Nokia | Nokia | |||
| skipping to change at page 67, line 34 ¶ | skipping to change at line 3085 ¶ | |||
| Email: mohamed.boucadair@orange.com | Email: mohamed.boucadair@orange.com | |||
| Richard Roberts (editor) | Richard Roberts (editor) | |||
| Juniper | Juniper | |||
| Email: rroberts@juniper.net | Email: rroberts@juniper.net | |||
| Oscar Gonzalez de Dios | Oscar Gonzalez de Dios | |||
| Telefonica | Telefonica | |||
| Email: oscar.gonzalezdedios@telefonica.com | Email: oscar.gonzalezdedios@telefonica.com | |||
| Samier Barguil Giraldo | Samier Barguil | |||
| Nokia | Nokia | |||
| Email: samier.barguil_giraldo@nokia.com | Email: samier.barguil_giraldo@nokia.com | |||
| Bo Wu | Bo Wu | |||
| Huawei Technologies | Huawei Technologies | |||
| Email: lana.wubo@huawei.com | Email: lana.wubo@huawei.com | |||
| End of changes. 159 change blocks. | ||||
| 637 lines changed or deleted | 586 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||