rfc9834v1.txt   rfc9834.txt 
Internet Engineering Task Force (IETF) M. Boucadair, Ed. Internet Engineering Task Force (IETF) M. Boucadair, Ed.
Request for Comments: 9834 Orange Request for Comments: 9834 Orange
Category: Standards Track R. Roberts, Ed. Category: Standards Track R. Roberts, Ed.
ISSN: 2070-1721 Juniper ISSN: 2070-1721 Juniper
O. Gonzalez de Dios O. Gonzalez de Dios
Telefonica Telefonica
S. Barguil Giraldo S. Barguil
Nokia Nokia
B. Wu B. Wu
Huawei Technologies Huawei Technologies
August 2025 September 2025
YANG Data Models for Bearers and 'Attachment Circuits'-as-a-Service YANG Data Models for Bearers and Attachment Circuits as a Service
(ACaaS) (ACaaS)
Abstract Abstract
Delivery of network services assumes that appropriate setup is Delivery of network services assumes that appropriate setup is
provisioned over the links that connect customer termination points provisioned over the links that connect customer termination points
and a provider network. The required setup to allow successful data and a provider network. The required setup to allow successful data
exchange over these links is referred to as an attachment circuit exchange over these links is referred to as an attachment circuit
(AC), while the underlying link is referred to as a "bearer". (AC), while the underlying link is referred to as a "bearer".
This document specifies a YANG service data model for ACs. This This document specifies a YANG service data model for ACs. This
model can be used for the provisioning of ACs before or during model can be used for the provisioning of ACs before or during
service provisioning (e.g., Network Slice Service). service provisioning (e.g., RFC 9543 Network Slice Service).
The document also specifies a YANG service data model for managing The document also specifies a YANG service data model for managing
bearers over which ACs are established. bearers over which ACs are established.
Status of This Memo Status of This Memo
This is an Internet Standards Track document. This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has (IETF). It represents the consensus of the IETF community. It has
skipping to change at line 73 skipping to change at line 73
1. Introduction 1. Introduction
1.1. Scope and Intended Use 1.1. Scope and Intended Use
1.2. Positioning ACaaS vs. Other Data Models 1.2. Positioning ACaaS vs. Other Data Models
1.2.1. Why Not Use the L2SM as a Reference Data Model for 1.2.1. Why Not Use the L2SM as a Reference Data Model for
ACaaS? ACaaS?
1.2.2. Why Not Use the L3SM as a Reference Data Model for 1.2.2. Why Not Use the L3SM as a Reference Data Model for
ACaaS? ACaaS?
2. Conventions and Definitions 2. Conventions and Definitions
3. Relationship to Other AC Data Models 3. Relationship to Other AC Data Models
4. Sample Uses of the Data Models 4. Sample Uses of the Data Models
4.1. ACs Terminated by One or Multiple Customer Edges (CEs) 4.1. ACs Terminated by One or Multiple CEs
4.2. Separate AC Provisioning vs. Actual Service Provisioning 4.2. Separate AC Provisioning vs. Actual Service Provisioning
4.3. Sample Deployment Models 4.3. Sample Deployment Models
5. Description of the Data Models 5. Description of the Data Models
5.1. The Bearer Service ("ietf-bearer-svc") YANG Module 5.1. The Bearer Service ("ietf-bearer-svc") YANG Module
5.2. The Attachment Circuit Service ("ietf-ac-svc") YANG Module 5.2. The Attachment Circuit Service ("ietf-ac-svc") YANG Module
5.2.1. Overall Structure 5.2.1. Overall Structure
5.2.2. Service Profiles 5.2.2. Service Profiles
5.2.3. Attachment Circuits Profiles 5.2.3. Attachment Circuits Profiles
5.2.4. AC Placement Constraints 5.2.4. AC Placement Constraints
5.2.5. Attachment Circuits 5.2.5. Attachment Circuits
skipping to change at line 135 skipping to change at line 135
Routers (ASBRs), data centers gateways, or Internet Exchange Points Routers (ASBRs), data centers gateways, or Internet Exchange Points
(IXPs). A connectivity service is basically about ensuring data (IXPs). A connectivity service is basically about ensuring data
transfer received from or destined to a given termination point to or transfer received from or destined to a given termination point to or
from other termination points. The objectives for the connectivity from other termination points. The objectives for the connectivity
service can be negotiated and agreed upon between the customer and service can be negotiated and agreed upon between the customer and
the network provider. To facilitate data transfer within the the network provider. To facilitate data transfer within the
provider network, it is assumed that the appropriate setup is provider network, it is assumed that the appropriate setup is
provisioned over the links that connect customer termination points provisioned over the links that connect customer termination points
and a provider network (usually via a Provider Edge (PE)), allowing and a provider network (usually via a Provider Edge (PE)), allowing
data to be successfully exchanged over these links. The required data to be successfully exchanged over these links. The required
setup is referred to in this document as an attachment circuit (AC), setup is referred to in this document as an AC, while the underlying
while the underlying link is referred to as a "bearer". link is referred to as a "bearer".
When a customer requests a new service, the service can be bound to When a customer requests a new service, the service can be bound to
existing attachment circuits or trigger the instantiation of new existing ACs or trigger the instantiation of new ACs. The
attachment circuits. The provisioning of a service should, thus, provisioning of a service should, thus, accommodate both deployments.
accommodate both deployments.
Also, because the instantiation of an attachment circuit requires Also, because the instantiation of an AC requires coordinating the
coordinating the provisioning of endpoints that might not belong to provisioning of endpoints that might not belong to the same
the same administrative entity (customer vs. provider or distinct administrative entity (customer vs. provider or distinct operational
operational teams within the same provider, etc.), providing teams within the same provider, etc.), providing programmatic means
programmatic means to expose 'Attachment Circuits'-as-a-Service to expose Attachment Circuits as a Service (ACaaS) greatly simplifies
(ACaaS) greatly simplifies the provisioning of services delivered the provisioning of services delivered over an AC. For example,
over an attachment circuit. For example, management systems of management systems of adjacent domains that need to connect via an AC
adjacent domains that need to connect via an AC will use such means will use such means to agree upon the resources that are required for
to agree upon the resources that are required for the activation of the activation of both sides of an AC (e.g., Layer 2 tags, IP address
both sides of an AC (e.g., Layer 2 tags, IP address family, or IP family, or IP subnets).
subnets).
This document specifies a YANG service data model ("ietf-ac-svc") for This document specifies a YANG service data model ("ietf-ac-svc") for
managing attachment circuits that are exposed by a network to its managing ACs that are exposed by a network to its customers, such as
customers, such as an enterprise site, an SF, a hosting an enterprise site, an SF, a hosting infrastructure, or a peer
infrastructure, or a peer network provider. The model can be used network provider. The model can be used for the provisioning of ACs
for the provisioning of ACs prior to or during advanced service prior to or during advanced service provisioning (e.g., RFC 9543
provisioning (e.g., IETF Network Slice Service defined in "A Network Slice Service defined in "A Framework for Network Slices in
Framework for Network Slices in Networks Built from IETF Networks Built from IETF Technologies" [RFC9543]).
Technologies" [RFC9543]).
The "ietf-ac-svc" module (Section 6.2) includes a set of reusable The "ietf-ac-svc" module (Section 6.2) includes a set of reusable
groupings. Whether a service model that wants to describe the groupings. Whether a service model that wants to describe the ACs
attachment circuits associated with the service reuses structures associated with the service reuses structures defined in the "ietf-
defined in the "ietf-ac-svc" or simply includes an AC reference (that ac-svc" or simply includes an AC reference (that was communicated
was communicated during AC service instantiation) is a design choice during AC service instantiation) is a design choice of these service
of these service models. Relying upon the AC service model to manage models. Relying upon the AC service model to manage ACs over which
ACs over which services are delivered has the merit of decorrelating services are delivered has the merit of decorrelating the management
the management of the (core) service from the ACs. This allows of the (core) service from the ACs. This allows upgrades (to reflect
upgrades (to reflect recent AC technologies or new features such as recent AC technologies or new features such as new encryption schemes
new encryption schemes or additional routing protocols) to be done in or additional routing protocols) to be done in just one place rather
just one place rather than in each (core) service model. This than in each (core) service model. This document favors the approach
document favors the approach of completely relying upon the AC of completely relying upon the AC service model instead of
service model instead of duplicating data nodes into specific modules duplicating data nodes into specific modules of advanced services
of advanced services that are delivered over an attachment circuit. that are delivered over an AC.
Since the provisioning of an AC requires a bearer to be in place, Since the provisioning of an AC requires a bearer to be in place,
this document introduces a new module called "ietf-bearer-svc", which this document introduces a new module called "ietf-bearer-svc", which
enables customers to manage their bearers (Section 6.1). The enables customers to manage their bearers (Section 6.1). The
customers can then retrieve a provider-assigned bearer reference that customers can then retrieve a provider-assigned bearer reference that
they will include in their AC service requests. Likewise, a customer they will include in their AC service requests. Likewise, a customer
may retrieve whether their bearers support a synchronization may learn whether their bearers support a synchronization mechanism
mechanism such as Sync Ethernet (SyncE) [ITU-T-G.781]. An example of such as Sync Ethernet (SyncE) [ITU-T-G.781]. An example of
retrieving a bearer reference is provided in Appendix A.1. retrieving a bearer reference is provided in Appendix A.1.
An AC service request can provide a reference to a bearer or a set of An AC service request can provide a reference to a bearer or a set of
peer Service Attachment Points (SAPs) specified in "A YANG Network peer Service Attachment Points (SAPs) specified in "A YANG Network
Data Model for Service Attachment Points (SAPs)" [RFC9408]. Both Data Model for Service Attachment Points (SAPs)" [RFC9408]. Both
schemes are supported in the AC service model. When several bearers schemes are supported in the AC service model. When several bearers
are available, the AC service request may filter them based on the are available, the AC service request may filter them based on the
bearer type, synchronization support, etc. bearer type, synchronization support, etc.
Each AC is identified with a unique identifier within a provider Each AC is identified with a unique identifier within a provider
skipping to change at line 212 skipping to change at line 209
details about the (node-specific) attachment interfaces are not details about the (node-specific) attachment interfaces are not
exposed in the AC service model. However, these details are exposed exposed in the AC service model. However, these details are exposed
at the network model per "A Network YANG Data Model for Attachment at the network model per "A Network YANG Data Model for Attachment
Circuits" [RFC9835]. "A YANG Data Model for Augmenting VPN Service Circuits" [RFC9835]. "A YANG Data Model for Augmenting VPN Service
and Network Models with Attachment Circuits" [RFC9836] specifies and Network Models with Attachment Circuits" [RFC9836] specifies
augmentations to the L2VPN Service Model (L2SM) [RFC8466] and the augmentations to the L2VPN Service Model (L2SM) [RFC8466] and the
L3VPN Service Model (L3SM) [RFC8299] to bind LxVPN services to ACs. L3VPN Service Model (L3SM) [RFC8299] to bind LxVPN services to ACs.
The AC service model does not make any assumptions about the internal The AC service model does not make any assumptions about the internal
structure or even the nature of the services that will be delivered structure or even the nature of the services that will be delivered
over an attachment circuit or a set of attachment circuits. over an AC or a set of ACs. Customers do not have access to that
Customers do not have access to that network view other than the ACs network view other than the ACs that they ordered. For example, the
that they ordered. For example, the AC service model can be used to AC service model can be used to provision a set of ACs to connect
provision a set of ACs to connect multiple sites (Site1, Site2, ..., multiple sites (Site1, Site2, ..., SiteX) for a customer who also
SiteX) for a customer who also requested VPN services. If the requested VPN services. If the provisioning of these services
provisioning of these services requires specific configuration on requires specific configuration on ASBR nodes, such configuration is
ASBR nodes, such configuration is handled at the network level and is handled at the network level and is not exposed to the customer at
not exposed to the customer at the service level. However, the the service level. However, the network controller will have access
network controller will have access to such a view, as the service to such a view, as the service points in these ASBRs will be exposed
points in these ASBRs will be exposed as SAPs with 'role' set to as SAPs with 'role' set to 'ietf-sap-ntw:nni' [RFC9408].
'ietf-sap-ntw:nni' [RFC9408].
The AC service model can be used in a variety of contexts, such as The AC service model can be used in a variety of contexts, such as
(but not limited to) those provided in Appendix A: (but not limited to) those provided in Appendix A:
* Create an AC over an existing bearer (Appendix A.2). * Create an AC over an existing bearer (Appendix A.2).
* Request an attachment circuit for a known peer SAP (Appendix A.3). * Request an AC for a known peer SAP (Appendix A.3).
* Instantiate multiple attachment circuits over the same bearer * Instantiate multiple ACs over the same bearer (Appendix A.4).
(Appendix A.4).
* Control the precedence over multiple attachment circuits * Control the precedence over multiple ACs (Appendix A.5).
(Appendix A.5).
* Create multiple ACs bound to multiple CEs (Appendix A.6). * Create multiple ACs bound to multiple CEs (Appendix A.6).
* Bind a Slice Service to a set of pre-provisioned attachment * Bind an RFC 9543 Network Slice Service to a set of pre-provisioned
circuits (Appendix A.7). ACs (Appendix A.7).
* Connect an enterprise network to a provider network using BGP * Connect an enterprise network to a provider network using BGP
(Appendix A.9). (Appendix A.9).
* Connect a Cloud Infrastructure to a service provider network * Connect a Cloud Infrastructure to a service provider network
(Appendix A.8). (Appendix A.8).
* Interconnect provider networks (e.g., [RFC8921] or [PEERING-API]). * Interconnect provider networks (e.g., [RFC8921] or [PEERING-API]).
Such ACs are identified with a 'role' set to 'ac-common:nni' or Such ACs are identified with a 'role' set to 'ac-common:nni' or
'ac-common:public-nni'. See Appendix A.10 to illustrate the use 'ac-common:public-nni'. See Appendix A.10 to illustrate the use
skipping to change at line 321 skipping to change at line 315
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
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
"YANG Tree Diagrams" [RFC8340]. "YANG Tree Diagrams" [RFC8340].
LxSM refers to both the L2SM and the L3SM. LxSM refers to both the L2SM and the L3SM.
LxVPN refers to both Layer 2 VPN (L2VPN) and Layer 3 VPN (L3VPN).
LxNM refers to both the L2VPN Network Model (L2NM) and the L3VPN LxNM refers to both the L2VPN Network Model (L2NM) and the L3VPN
Network Model (L3NM). Network Model (L3NM).
LxVPN refers to both Layer 2 VPN (L2VPN) and Layer 3 VPN (L3VPN).
This document uses the following terms: This document uses the following terms:
Bearer: A physical or logical link that connects a customer node (or Bearer: A physical or logical link that connects a customer node (or
site) to a provider network. site) to a 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 (e.g., Link Aggregation technologies can be used to build a bearer (e.g., Link Aggregation
Group (LAG) [IEEE802.1AX]). The bearer type can be specified by a Group (LAG) [IEEE802.1AX]). The bearer type can be specified by a
customer. 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 used in subsequent a reference can be retrieved by a customer and used in subsequent
service placement requests to unambiguously identify where a service placement requests to unambiguously identify where a
service is to be bound. service is to be bound.
The concept of a bearer can be generalized to refer to the The concept of a bearer can be generalized to refer to the
required underlying connection for the provisioning of an required underlying connection for the provisioning of an AC.
attachment 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 VLANs on the same bearer that is provided multiple VLANs on the same bearer that is provided by a physical
by a physical link). link).
Customer Edge (CE): Equipment that is dedicated to a customer and is Customer Edge (CE): Equipment that is dedicated to a customer and is
connected to one or more PEs via ACs. connected to one or more PEs via ACs.
A CE can be a router, a bridge, a switch, etc. A CE can be a router, a bridge, a switch, etc.
Provider Edge (PE): Equipment owned and managed by the service Provider Edge (PE): Equipment owned and managed by the service
provider that can support multiple services for different provider that can support multiple services for different
customers. customers.
Per "Provider Provisioned Virtual Private Network (VPN) Per "Provider Provisioned Virtual Private Network (VPN)
Terminology" (Section 5.2 of [RFC4026]), a PE is a device located Terminology" (Section 5.2 of [RFC4026]), a PE is a device located
at the edge of the service network with the functionality that is at the edge of the service network with the functionality that is
needed to interface with the customer. needed to interface with the customer.
A PE is connected to one or more CEs via ACs. A PE is connected to one or more CEs via ACs.
Network controller: Denotes a functional entity responsible for the Network controller: Denotes a functional entity responsible for the
management of the service provider network. management of the service provider network. One or multiple
network controllers can be deployed in a service provider network.
Network Function (NF): Used to refer to the same concept as Service Network Function (NF): Used to refer to the same concept as SF
Function (SF) (Section 1.4 of [RFC7665]). (Section 1.4 of [RFC7665]).
NF is also used in this document, as this term is widely used NF is also used in this document, as this term is widely used
outside the IETF. outside the IETF.
NF and SF are used interchangeably. NF and SF are used interchangeably.
Parent Bearer: Refers to a bearer (e.g., LAG) that is used to build Parent Bearer: Refers to a bearer (e.g., LAG) that is used to build
other bearers. These bearers (called child bearers) inherit the other bearers. These bearers (called child bearers) inherit the
parent bearer properties. parent bearer properties.
Parent AC: Refers to an AC that is used to build other ACs. These Parent AC: Refers to an AC that is used to build other ACs. These
ACs (called child ACs) inherit the parent AC properties. ACs (called Child ACs) inherit the Parent AC properties.
Service orchestrator: Refers to a functional entity that interacts Service orchestrator: Refers to a functional entity that interacts
with the customer of a network service. with the customer of a network service.
A service orchestrator is typically responsible for the attachment A service orchestrator is typically responsible for the ACs, the
circuits, the PE selection, and requesting the activation of the PE selection, and requesting the activation of the requested
requested service to a network controller. service to a network controller.
A service orchestrator may interact with one or more network
controllers.
Service provider network: A network that is able to provide network Service provider network: A network that is able to provide network
services (e.g., Layer 2 VPN (L2VPN), Layer 3 VPN (L3VPN), or services (e.g., LxVPN or RFC 9543 Network Slice Services).
Network Slice Services).
Service provider: An entity that offers network services (e.g., Service provider: An entity that offers network services (e.g.,
Layer 2 VPN, Layer 3 VPN, or Network Slice Services). LxVPN or RFC 9543 Network Slice Services).
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 line 456 skipping to change at line 452
Figure 1: AC Data Models Figure 1: AC Data Models
The "ietf-ac-common" module is imported by the "ietf-bearer-svc", The "ietf-ac-common" module is imported by the "ietf-bearer-svc",
"ietf-ac-svc", and "ietf-ac-ntw" modules. Bearers managed using the "ietf-ac-svc", and "ietf-ac-ntw" modules. Bearers managed using the
"ietf-bearer-svc" module may be referenced by service ACs managed "ietf-bearer-svc" module may be referenced by service ACs managed
using the "ietf-ac-svc" module. Similarly, a bearer managed using using the "ietf-ac-svc" module. Similarly, a bearer managed using
the "ietf-bearer-svc" module may list the set of ACs that use that the "ietf-bearer-svc" module may list the set of ACs that use that
bearer. To facilitate correlation between an AC service request and bearer. To facilitate correlation between an AC service request and
the actual AC provisioned in the network, "ietf-ac-ntw" leverages the the actual AC provisioned in the network, "ietf-ac-ntw" leverages the
AC references exposed by the "ietf-ac-svc" module. Furthermore, to AC references exposed by the "ietf-ac-svc" module. Furthermore, to
bind Layer 2 VPN or Layer 3 VPN services with ACs, the "ietf-ac-glue" bind L2VPN or L3VPN services with ACs, the "ietf-ac-glue" module
module augments the LxSM and LxNM with AC service references exposed augments the LxSM and LxNM with AC service references exposed by the
by the "ietf-ac-svc" module and AC network references exposed by the "ietf-ac-svc" module and AC network references exposed by the "ietf-
"ietf-ac-ntw" module. ac-ntw" module.
4. Sample Uses of the Data Models 4. Sample Uses of the Data Models
4.1. ACs Terminated by One or Multiple Customer Edges (CEs) 4.1. ACs Terminated by One or Multiple CEs
Figure 2 depicts two target topology flavors that involve ACs. These Figure 2 depicts two target topology flavors that involve ACs. These
topologies have the following characteristics: topologies have the following characteristics:
* A CE can be either a physical device or a logical entity. Such * A CE can be either a physical device or a logical entity. Such
logical entity is typically a software component (e.g., a virtual logical entity is typically a software component (e.g., a virtual
Service Function that is hosted within the provider's network or a SF that is hosted within the provider's network or a third-party
third-party infrastructure). A CE is seen by the network as a infrastructure). A CE is seen by the network as a peer SAP.
peer SAP.
* An AC service request may include one or multiple ACs, which may * An AC service request may include one or multiple ACs, which may
be associated to a single CE or multiple CEs. be associated to a single CE or multiple CEs.
* CEs may be either dedicated to one single connectivity service or * CEs may be either dedicated to one single connectivity service or
host multiple connectivity services (e.g., CEs with roles of SFs host multiple connectivity services (e.g., CEs with roles of SFs
[RFC7665]). [RFC7665]).
* A network provider may bind a single AC to one or multiple peer * A network provider may bind a single AC to one or multiple peer
SAPs (e.g., CE1 and CE2 are tagged as peer SAPs for the same AC). SAPs (e.g., CE1 and CE2 are tagged as peer SAPs for the same AC).
For example, and as discussed in [RFC4364], multiple CEs can be For example, and as discussed in [RFC4364], multiple CEs can be
attached to a PE over the same attachment circuit. This scenario attached to a PE over the same AC. This scenario is typically
is typically implemented when the Layer 2 infrastructure between implemented when the Layer 2 infrastructure between the CE and the
the CE and the network is a multipoint service. network is a multipoint service.
* A single CE may terminate multiple ACs, which can be associated * A single CE may terminate multiple ACs, which can be associated
with the same bearer or distinct bearers. with the same bearer or distinct bearers.
* Customers may request protection schemes in which the ACs * Customers may request protection schemes in which the ACs
associated with their endpoints are terminated by the same PE associated with their endpoints are terminated by the same PE
(e.g., CE3), distinct PEs (e.g., CE4), etc. The network provider (e.g., CE3), distinct PEs (e.g., CE4), etc. The network provider
uses this request to decide where to terminate the AC in the uses this request to decide where to terminate the AC in the
provider network (i.e., select which PE(s) to use) and also provider network (i.e., select which PE(s) to use) and also
whether to enable specific capabilities (e.g., Virtual Router whether to enable specific capabilities (e.g., Virtual Router
skipping to change at line 526 skipping to change at line 521
'-----------AC----------' '-----------AC----------'
(bx) = bearer Id x (bx) = bearer Id x
Figure 2: Examples of ACs Figure 2: Examples of ACs
4.2. Separate AC Provisioning vs. Actual Service Provisioning 4.2. Separate AC Provisioning vs. Actual Service Provisioning
The procedure to provision a service in a service provider network The procedure to provision a service in a service provider network
may depend on the practices adopted by a service provider. This may depend on the practices adopted by a service provider. This
includes the workflow put in place for the provisioning of network includes the workflow put in place for the provisioning of network
services and how they are bound to an attachment circuit. For services and how they are bound to an AC. For example, a single AC
example, a single attachment circuit may be used to host multiple may be used to host multiple connectivity services. In order to
connectivity services. In order to avoid service interference and avoid service interference and redundant information in various
redundant information in various locations, a service provider may locations, a service provider may expose an interface to manage ACs
expose an interface to manage ACs network-wide. Customers can then network-wide. Customers can then request a bearer or an AC to be put
request a bearer or an attachment circuit to be put in place and then in place and then refer to that bearer or AC when requesting services
refer to that bearer or AC when requesting services that are bound to that are bound to the bearer or AC. [RFC9836] specifies
the bearer or AC. [RFC9836] specifies augmentations to the L2SM and augmentations to the L2SM and the L3SM to bind LxVPN services to ACs.
the L3SM to bind LxVPN services to ACs.
4.3. Sample Deployment Models 4.3. Sample Deployment Models
Figure 3 illustrates an example of how the bearer/AC service models Figure 3 illustrates an example of how the bearer/AC service models
can be used between a customer and a provider. Internals to the can be used between a customer and a provider. Internals to the
provider orchestration domain (or customer orchestration domain) are provider orchestration domain (or customer orchestration domain) are
hidden to the customer (or provider). hidden to the customer (or provider).
Resources that are needed to activate an AC (e.g., Layer 2 or Layer 3 Resources that are needed to activate an AC (e.g., Layer 2 or Layer 3
identifiers) are typically imposed by the provider. However, the identifiers) are typically imposed by the provider. However, the
skipping to change at line 626 skipping to change at line 620
Models | | | Models | | |
.---+---. | | .---+---. | |
| Config | | | | Config | | |
| Manager | | | | Manager | | |
'---+---' | | '---+---' | |
| | | | | |
NETCONF/CLI....................... NETCONF/CLI.......................
| | | | | |
.--------------------------------. .--------------------------------.
.---. Bearer | | Bearer .---. .---. Bearer | | Bearer .---.
|CE#1+--------+ Network +--------+CE#2| |CE1 +--------+ Network +--------+ CE2|
'---' | | '---' '---' | | '---'
'--------------------------------' '--------------------------------'
Site A Site B Site A Site B
Figure 5: An Example of AC Model Usage (Focus on the Provider's Figure 5: An Example of AC Model Usage (Focus on the Provider's
Internals) Internals)
In order to ease the mapping between the service model and underlying In order to ease the mapping between the service model and underlying
network models (e.g., the L3VPN Network Model (L3NM) and SAP), the network models (e.g., the L3VPN Network Model (L3NM) and SAP), the
name conventions used in existing network data models are reused as name conventions used in existing network data models are reused as
skipping to change at line 777 skipping to change at line 771
protocols (e.g., Link Layer Discovery Protocol (LLDP) protocols (e.g., Link Layer Discovery Protocol (LLDP)
[IEEE802.1AB]) to automatically discover and connect to available [IEEE802.1AB]) to automatically discover and connect to available
network resources. A network controller can use such reported network resources. A network controller can use such reported
information to expose discovered bearers from the network using information to expose discovered bearers from the network using
the same bearer data model structure. the same bearer data model structure.
A request to create a bearer may include a set of constraints A request to create a bearer may include a set of constraints
('placement-constraints') that are used by a controller to decide the ('placement-constraints') that are used by a controller to decide the
network terminating side of a bearer (e.g., PE selection, PE network terminating side of a bearer (e.g., PE selection, PE
redundancy, or PoP selection). Future placement criteria redundancy, or PoP selection). Future placement criteria
('constraint-type') may be defined in the future to accommodate ('constraint-type') may be defined to accommodate specific deployment
specific deployment contexts. A request may also include some timing contexts. A request may also include some timing constraints
constraints ('requested-start', 'requested-stop') that are applicable ('requested-start', 'requested-stop') that are applicable for a set
for a set of bearers. The timing constraints can be adjusted at the of bearers. The timing constraints can be adjusted at the 'bearer'
'bearer' level. These adjusted values take precedence over the level. These adjusted values take precedence over the global values.
global values.
The descriptions of the bearer data nodes are as follows: The descriptions of the bearer data nodes are as follows:
'name': Used to uniquely identify a bearer. This name is typically 'name': Used to uniquely identify a bearer. This name is typically
selected by the client when requesting a bearer. selected by the client when requesting a bearer.
'customer-name': Indicates the name of the customer who ordered the 'customer-name': Indicates the name of the customer who ordered the
bearer. bearer.
'description': Includes a textual description of the bearer. 'description': Includes a textual description of the bearer.
skipping to change at line 823 skipping to change at line 816
set to 'true'. set to 'true'.
'sync-phy-type': Specifies the Sync PHY mechanism (e.g., SyncE 'sync-phy-type': Specifies the Sync PHY mechanism (e.g., SyncE
[ITU-T-G.781]) enabled for the bearer. [ITU-T-G.781]) enabled for the bearer.
'provider-location-reference': Indicates a location identified by a 'provider-location-reference': Indicates a location identified by a
provider-assigned reference. provider-assigned reference.
'customer-point': Specifies the customer termination point for the 'customer-point': Specifies the customer termination point for the
bearer. A bearer request can indicate a device, a site, a bearer. A bearer request can indicate a device, a site, a
combination thereof, or custom information when requesting a combination thereof, or custom information. All these schemes are
bearer. All these schemes are supported in the model. supported in the model.
'type': Specifies the bearer type (Ethernet, wireless, LAG, etc.). 'type': Specifies the bearer type (Ethernet, wireless, LAG, etc.).
'test-only': Indicates that a request is only for test validation 'test-only': Indicates that a request is only for test validation
and not for enforcement, even if there are no errors. This is and not for enforcement, even if there are no errors. This is
used for feasibility checks. This data node is applicable only used for feasibility checks. This data node is applicable only
when the data model is used with protocols that do not natively when the data model is used with protocols that do not have built-
support such option. For example, this data node is redundant in support of such option. For example, this data node is
with the "test-only" value of the <test-option> parameter in the redundant with the "test-only" value of the <test-option>
NETCONF <edit-config> operation (Section 7.2 of [RFC6241]). parameter in the NETCONF <edit-config> operation (Section 7.2 of
[RFC6241]).
'bearer-reference': Returns an internal reference for the service 'bearer-reference': Returns an internal reference for the service
provider to uniquely identify the bearer. This reference can be provider to uniquely identify the bearer. This reference can be
used when requesting services. Appendix A.1 provides an example used when requesting services. Appendix A.1 provides an example
about how this reference can be retrieved by a customer. about how this reference can be retrieved by a customer.
Whether the 'bearer-reference' mirrors the content of the 'name' Whether the 'bearer-reference' mirrors the content of the 'name'
is deployment-specific. The module does not assume nor preclude is deployment-specific. The module does not assume nor preclude
such schemes. such schemes.
'ac-svc-ref': Specifies the set of attachment circuits that are 'ac-svc-ref': Specifies the set of ACs that are bound to the bearer.
bound to the bearer.
'requested-start': Specifies the requested date and time when the 'requested-start': Specifies the requested date and time when the
bearer is expected to be active. bearer is expected to be active.
'requested-stop': Specifies the requested date and time when the 'requested-stop': Specifies the requested date and time when the
bearer is expected to be disabled. bearer is expected to be disabled.
'actual-start': Reports the actual date and time when the bearer 'actual-start': Reports the actual date and time when the bearer was
actually was enabled. enabled.
'actual-stop': Reports the actual date and time when the bearer 'actual-stop': Reports the actual date and time when the bearer was
actually was disabled. disabled.
'status': Used to track the overall status of a given bearer. Both 'status': Used to track the overall status of a given bearer. Both
the operational and administrative status are maintained together the operational and administrative status are maintained together
with a timestamp. with a timestamp.
The 'admin-status' attribute is typically configured by a network The 'admin-status' attribute is typically configured by a network
operator to indicate whether the service is enabled, disabled, or operator to indicate whether the service is enabled, disabled, or
subjected to additional testing or pre-deployment checks. These subjected to additional testing or pre-deployment checks. These
additional options, such as 'admin-testing' and 'admin-pre- additional options, such as 'admin-testing' and 'admin-pre-
deployment', provide the operators the flexibility to conduct deployment', provide the operators the flexibility to conduct
skipping to change at line 1048 skipping to change at line 1041
'forwarding-profile-identifier': Refers to the policies that apply 'forwarding-profile-identifier': Refers to the policies that apply
to the forwarding of packets conveyed within an AC. Such policies to the forwarding of packets conveyed within an AC. Such policies
may consist, for example, of applying Access Control Lists (ACLs). may consist, for example, of applying Access Control 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.
5.2.2.2. Referencing Service/Specific Profiles 5.2.2.2. Referencing Service/Specific Profiles
All the above mentioned profiles are uniquely identified by the All the above mentioned profiles are uniquely identified by the
provider server by an identifier. To ease referencing these profiles provider server. To ease referencing these profiles by other data
by other data models, specific typedefs are defined for each of these models, specific typedefs are defined for each of these profiles.
profiles. Likewise, an attachment circuit reference typedef is Likewise, an AC reference typedef is defined when referencing a
defined when referencing a (global) attachment circuit by its name is (global) AC by its name is required. These typedefs SHOULD be used
required. These typedefs SHOULD be used when other modules need a when other modules need a reference to one of these profiles or ACs.
reference to one of these profiles or attachment circuits.
5.2.3. Attachment Circuits Profiles 5.2.3. Attachment Circuits Profiles
The 'ac-group-profile' defines reusable parameters for a set of ACs. The 'ac-group-profile' defines reusable parameters for a set of ACs.
Each profile is identified by 'name'. Some of the data nodes can be Each profile is identified by 'name'. Some of the data nodes can be
adjusted at the 'ac' level. These adjusted values take precedence adjusted at the 'ac' level. These adjusted values take precedence
over the global values. The structure of 'ac-group-profile' is over the global values. The structure of 'ac-group-profile' is
similar to the one used to model each 'ac' (Figure 10). similar to the one used to model each 'ac' (Figure 10).
5.2.4. AC Placement Constraints 5.2.4. AC Placement Constraints
skipping to change at line 1171 skipping to change at line 1163
AC or a set of ACs. AC or a set of ACs.
'description': Includes a textual description of the AC. 'description': Includes a textual description of the AC.
'test-only': Indicates that a request is only for a validation test 'test-only': Indicates that a request is only for a validation test
and not for enforcement, even if there are no errors. This is and not for enforcement, even if there are no errors. This is
used for feasibility checks. This data node is applicable only used for feasibility checks. This data node is applicable only
when the data model is used with protocols that do not have built- when the data model is used with protocols that do not have built-
in support of such option. in support of such option.
'requested-start': Specifies the requested date and time when the 'requested-start': Specifies the requested date and time when the AC
attachment circuit is expected to be active. is expected to be active.
'requested-stop': Specifies the requested date and time when the 'requested-stop': Specifies the requested date and time when the AC
attachment circuit is expected to be disabled. is expected to be disabled.
'actual-start': Reports the actual date and time when the attachment 'actual-start': Reports the actual date and time when the AC was
circuit actually was enabled. enabled.
'actual-stop': Reports the actual date and time when the attachment 'actual-stop': Reports the actual date and time when the AC was
circuit actually was disabled. disabled.
'role': Specifies whether an AC is used, e.g., as User-to-Network 'role': Specifies whether an AC is used, e.g., as User-to-Network
Interface (UNI) or Network-to-Network Interface (NNI). Interface (UNI) or Network-to-Network Interface (NNI).
'peer-sap-id': Includes references to the remote endpoints of an 'peer-sap-id': Includes references to the remote endpoints of an AC
attachment circuit [RFC9408]. 'peer' is drawn here from the [RFC9408]. 'peer' is drawn here from the perspective of the
perspective of the provider network. That is, a 'peer-sap' will provider network. That is, a 'peer-sap' will refer to a customer
refer to a customer node. node.
'group-profile-ref': Indicates references to one or more profiles 'group-profile-ref': Indicates references to one or more profiles
that are defined in Section 5.2.3. that are defined in Section 5.2.3.
'parent-ref': Specifies an AC that is inherited by an attachment 'parent-ref': Specifies an AC that is inherited by an AC.
circuit.
In contexts where dynamic termination points are managed for a In contexts where dynamic termination points are managed for a
given AC, a parent AC can be defined with a set of stable and given AC, a Parent AC can be defined with a set of stable and
common information, while "child" ACs are defined to track dynamic common information, while "Child" ACs are defined to track dynamic
information. These "child" ACs are bound to the parent AC, which information. These "Child" ACs are bound to the Parent AC, which
is exposed to services (as a stable reference). is exposed to services (as a stable reference).
Whenever a parent AC is deleted, all its "child" ACs MUST be Whenever a Parent AC is deleted, all its "Child" ACs MUST be
deleted. deleted.
A "child" AC MAY rely upon more than one parent AC (e.g., parent A "Child" AC MAY rely upon more than one Parent AC (e.g., parent
Layer 2 AC and parent Layer 3 AC). In such cases, these ACs MUST Layer 2 AC and parent Layer 3 AC). In such cases, these ACs MUST
NOT be overlapping. An example to illustrate the use of multiple NOT be overlapping. An example to illustrate the use of multiple
parent ACs is provided in Appendix A.12. Parent ACs is provided in Appendix A.12.
'child-ref': Lists one or more references of child ACs that rely 'child-ref': Lists one or more references of Child ACs that rely
upon this attachment circuit as a parent AC. upon this AC as a Parent AC.
'group': Lists the groups to which an AC belongs [RFC9181]. For 'group': Lists the groups to which an AC belongs [RFC9181]. For
example, the 'group-id' is used to associate redundancy or example, the 'group-id' is used to associate redundancy or
protection constraints of ACs. An example is provided in protection constraints of ACs. An example is provided in
Appendix A.5. Appendix A.5.
'service-ref': Reports the set of services that are bound to the 'service-ref': Reports the set of services that are bound to the AC.
attachment circuit. The services are indexed by their type. The services are indexed by their type.
'server-reference': Reports the internal reference that is assigned 'server-reference': Reports the internal reference that is assigned
by the provider for this AC. This reference is used to by the provider for this AC. This reference is used to
accommodate deployment contexts (e.g., Section 9.1.2 of [RFC8921]) accommodate deployment contexts (e.g., Section 9.1.2 of [RFC8921])
where an identifier is generated by the provider to identify a where an identifier is generated by the provider to identify a
service order locally. service order locally.
'name': Associates a name that uniquely identifies an AC within a 'name': Associates a name that uniquely identifies an AC within a
service provider network. service provider network.
skipping to change at line 1577 skipping to change at line 1568
'failure-detection-profile': Indicates a failure detection profile 'failure-detection-profile': Indicates a failure detection profile
(e.g., BFD) that applies for this entry. (e.g., BFD) that applies for this entry.
'status': Used to convey the status of a static route entry. This 'status': Used to convey the status of a static route entry. This
data node can also be used to control the (de)activation of data node can also be used to control the (de)activation of
individual static route entries. individual static route entries.
5.2.5.3.2. BGP 5.2.5.3.2. BGP
An AC service activation with BGP routing SHOULD include at least the An AC service activation with BGP routing [RFC4271] SHOULD include at
customer's AS Number (ASN) and the provider's ASN. Additional least the customer's AS Number (ASN) and the provider's ASN.
information can be supplied by a customer in a request or exposed by Additional information can be supplied by a customer in a request or
a provider in a response to a query request in order to ease the exposed by a provider in a response to a query request in order to
process of automating the provisioning of BGP sessions (the customer ease the process of automating the provisioning of BGP sessions (the
does not use the primary IP address to establish the underlying BGP customer does not use the primary IP address to establish the
session, communicate the provider's IP address used to establish the underlying BGP session, communicate the provider's IP address used to
BGP session, share authentication parameters, bind the session to a establish the BGP session, share authentication parameters, bind the
forwarding protection profile, etc.). session to a forwarding protection profile, etc.).
The BGP tree structure is shown in Figure 16. The BGP tree structure is shown in Figure 16.
| ... | ...
+--rw routing-protocols +--rw routing-protocols
| +--rw routing-protocol* [id] | +--rw routing-protocol* [id]
| +--rw id string | +--rw id string
| +--rw type? identityref | +--rw type? identityref
| +--rw routing-profiles* [id] | +--rw routing-profiles* [id]
| | +--rw id routing-profile-reference | | +--rw id routing-profile-reference
skipping to change at line 1750 skipping to change at line 1741
establish this BGP session. If not present, this means that the establish this BGP session. If not present, this means that the
primary customer IP address is used as the remote IP address. primary customer IP address is used as the remote IP address.
'requested-start': Specifies the requested date and time when the 'requested-start': Specifies the requested date and time when the
BGP session is expected to be active. BGP session is expected to be active.
'requested-stop': Specifies the requested date and time when the BGP 'requested-stop': Specifies the requested date and time when the BGP
session is expected to be disabled. session is expected to be disabled.
'actual-start': Reports the actual date and time when the BGP 'actual-start': Reports the actual date and time when the BGP
session actually was enabled. session was enabled.
'actual-stop': Reports the actual date and time when the BGP session 'actual-stop': Reports the actual date and time when the BGP session
actually was disabled. was disabled.
'status': Indicates the status of the BGP routing instance. 'status': Indicates the status of the BGP routing instance.
'peer-group': Specifies a name of a peer group. 'peer-group': Specifies a name of a peer group.
Parameters that are provided at the 'neighbor' level take Parameters that are provided at the 'neighbor' level take
precedence over the ones provided in the peer group. precedence over the ones provided in the peer group.
This is an optional parameter. This is an optional parameter.
skipping to change at line 2237 skipping to change at line 2228
VPNs"; VPNs";
} }
import ietf-ac-common { import ietf-ac-common {
prefix ac-common; prefix ac-common;
reference reference
"RFC 9833: A Common YANG Data Model for Attachment Circuits"; "RFC 9833: A Common YANG Data Model for Attachment Circuits";
} }
import ietf-ac-svc { import ietf-ac-svc {
prefix ac-svc; prefix ac-svc;
reference reference
"RFC 9834: YANG Data Models for Bearers and 'Attachment "RFC 9834: YANG Data Models for Bearers and Attachment
Circuits'-as-a-Service (ACaaS)"; Circuits as a Service (ACaaS)";
} }
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 generic YANG module for exposing "This YANG module defines a generic YANG module for exposing
network bearers as a service. network bearers as a service.
skipping to change at line 2278 skipping to change at line 2269
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 xxx; see the This version of this YANG module is part of RFC xxx; see the
RFC itself for full legal notices."; RFC itself for full legal notices.";
revision 2025-08-11 { revision 2025-08-11 {
description description
"Initial revision."; "Initial revision.";
reference reference
"RFC 9834: YANG Data Models for Bearers and 'Attachment "RFC 9834: YANG Data Models for Bearers and Attachment
Circuits'-as-a-Service (ACaaS)"; Circuits as a Service (ACaaS)";
} }
// Identities // Identities
identity identification-type { identity identification-type {
description description
"Base identity for identification of bearers."; "Base identity for identification of bearers.";
} }
identity device-id { identity device-id {
skipping to change at line 2733 skipping to change at line 2724
} }
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 YANG module for exposing "This YANG module defines a YANG module for exposing
'Attachment Circuits'-as-a-Service (ACaaS). Attachment Circuits as a Service (ACaaS).
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 9834; see the This version of this YANG module is part of RFC 9834; see the
RFC itself for full legal notices."; RFC itself for full legal notices.";
revision 2025-08-11 { revision 2025-08-11 {
description description
"Initial revision."; "Initial revision.";
reference reference
"RFC 9834: YANG Data Models for Bearers and 'Attachment "RFC 9834: YANG Data Models for Bearers and Attachment
Circuits'-as-a-Service (ACaaS)"; Circuits as a Service (ACaaS)";
} }
/* A set of typedefs to ease referencing cross-modules */ /* A set of typedefs to ease referencing cross-modules */
typedef attachment-circuit-reference { typedef attachment-circuit-reference {
type leafref { type leafref {
path "/ac-svc:attachment-circuits/ac-svc:ac/ac-svc:name"; path "/ac-svc:attachment-circuits/ac-svc:ac/ac-svc:name";
} }
description description
"Defines a reference to an attachment circuit that can be used "Defines a reference to an AC that can be used by other
by other modules."; modules.";
} }
typedef ac-group-reference { typedef ac-group-reference {
type leafref { type leafref {
path "/ac-svc:attachment-circuits/ac-svc:ac-group-profile" path "/ac-svc:attachment-circuits/ac-svc:ac-group-profile"
+ "/ac-svc:name"; + "/ac-svc:name";
} }
description description
"Defines a reference to an attachment circuit profile."; "Defines a reference to an AC profile.";
} }
typedef encryption-profile-reference { typedef encryption-profile-reference {
type leafref { type leafref {
path "/ac-svc:specific-provisioning-profiles" path "/ac-svc:specific-provisioning-profiles"
+ "/ac-svc:valid-provider-identifiers" + "/ac-svc:valid-provider-identifiers"
+ "/ac-svc:encryption-profile-identifier/ac-svc:id"; + "/ac-svc:encryption-profile-identifier/ac-svc:id";
} }
description description
"Defines a reference to an encryption profile."; "Defines a reference to an encryption profile.";
skipping to change at line 3606 skipping to change at line 3597
bandwidth of the AC or upload bandwidth from bandwidth of the AC or upload bandwidth from
the CE to the PE."; the CE to the PE.";
uses ac-common:bandwidth-per-type; uses ac-common:bandwidth-per-type;
} }
} }
// Basic AC parameters // Basic AC parameters
grouping ac-basic { grouping ac-basic {
description description
"Grouping for basic parameters for an attachment circuit."; "Grouping for basic parameters for an AC.";
leaf name { leaf name {
type string; type string;
description description
"A name that uniquely identifies the AC."; "A name that uniquely identifies the AC.";
} }
container l2-connection { container l2-connection {
if-feature "ac-common:layer2-ac"; if-feature "ac-common:layer2-ac";
description description
"Defines Layer 2 protocols and parameters that are required "Defines Layer 2 protocols and parameters that are required
to enable AC connectivity."; to enable AC connectivity.";
skipping to change at line 3663 skipping to change at line 3654
"Layer 2 MTU."; "Layer 2 MTU.";
} }
uses bandwidth; uses bandwidth;
} }
} }
// Full AC parameters // Full AC parameters
grouping ac { grouping ac {
description description
"Grouping for an attachment circuit."; "Grouping for an AC.";
leaf name { leaf name {
type string; type string;
description description
"A name of the AC. Data models that need to reference "A name of the AC. Data models that need to reference
an AC should use 'attachment-circuit-reference'."; an AC should use 'attachment-circuit-reference'.";
} }
leaf-list service-profile { leaf-list service-profile {
type service-profile-reference; type service-profile-reference;
description description
"A reference to a service profile."; "A reference to a service profile.";
skipping to change at line 3795 skipping to change at line 3786
} }
} }
} }
} }
} }
// Parent and Child ACs // Parent and Child ACs
grouping ac-hierarchy { grouping ac-hierarchy {
description description
"Container for parent and child AC references."; "Container for parent and Child AC references.";
leaf-list parent-ref { leaf-list parent-ref {
type ac-svc:attachment-circuit-reference; type ac-svc:attachment-circuit-reference;
description description
"Specifies a parent AC that is inherited by an AC. "Specifies a Parent AC that is inherited by an AC.
In contexts where dynamic termination points are In contexts where dynamic termination points are
bound to the same AC, a parent AC with stable bound to the same AC, a Parent AC with stable
information is created with a set of child ACs information is created with a set of Child ACs
to track dynamic AC information."; to track dynamic AC information.";
} }
leaf-list child-ref { leaf-list child-ref {
type ac-svc:attachment-circuit-reference; type ac-svc:attachment-circuit-reference;
config false; config false;
description description
"Specifies a child AC that relies upon a parent AC."; "Specifies a Child AC that relies upon a Parent AC.";
} }
} }
/******************** Main AC containers ********************/ /******************** Main AC containers ********************/
container specific-provisioning-profiles { container specific-provisioning-profiles {
description description
"Contains a set of valid profiles to reference for an AC."; "Contains a set of valid profiles to reference for an AC.";
uses ac-common:ac-profile-cfg; uses ac-common:ac-profile-cfg;
} }
skipping to change at line 3839 skipping to change at line 3830
description description
"Identification of the service profile to be used. "Identification of the service profile to be used.
The profile only has significance within the service The profile only has significance within the service
provider's administrative domain."; provider's administrative domain.";
} }
} }
nacm:default-deny-write; nacm:default-deny-write;
} }
container attachment-circuits { container attachment-circuits {
description description
"Main container for the attachment circuits. "Main container for the ACs.
The timing constraints indicated at the 'ac' level take The timing constraints indicated at the 'ac' level take
precedence over the values indicated at the precedence over the values indicated at the
'attachment-circuits' level."; 'attachment-circuits' level.";
list ac-group-profile { list ac-group-profile {
key "name"; key "name";
description description
"Maintains a list of profiles that are shared among "Maintains a list of profiles that are shared among
a set of ACs."; a set of ACs.";
uses ac; uses ac;
} }
skipping to change at line 3865 skipping to change at line 3856
leaf customer-name { leaf customer-name {
type string; type string;
description description
"Indicates the name of the customer that requested these "Indicates the name of the customer that requested these
ACs."; ACs.";
} }
uses ac-common:op-instructions; uses ac-common:op-instructions;
list ac { list ac {
key "name"; key "name";
description description
"Provisioning of an attachment circuit."; "Provisioning of an AC.";
leaf customer-name { leaf customer-name {
type string; type string;
description description
"Indicates the name of the customer that requested this "Indicates the name of the customer that requested this
AC."; AC.";
} }
leaf description { leaf description {
type string; type string;
description description
"Associates a description with an AC."; "Associates a description with an AC.";
skipping to change at line 3914 skipping to change at line 3905
list service-ref { list service-ref {
key "service-type service-id"; key "service-type service-id";
config false; config false;
description description
"Reports the set of services that are bound to the AC."; "Reports the set of services that are bound to the AC.";
leaf service-type { leaf service-type {
type identityref { type identityref {
base vpn-common:service-type; base vpn-common:service-type;
} }
description description
"Indicates the service type (e.g., L3VPN or Network Slice "Indicates the service type (e.g., L3VPN or RFC 9543
Service)."; Network Slice Service).";
reference reference
"RFC 9408: A YANG Network Data Model for Service "RFC 9408: A YANG Network Data Model for Service
Attachment Points (SAPs), Section 5"; Attachment Points (SAPs), Section 5";
} }
leaf service-id { leaf service-id {
type string; type string;
description description
"Indicates an identifier of a service instance "Indicates an identifier of a service instance
of a given type that uses the AC."; of a given type that uses the AC.";
} }
skipping to change at line 3943 skipping to change at line 3934
to identify the AC."; to identify the AC.";
} }
uses ac; uses ac;
} }
} }
} }
<CODE ENDS> <CODE ENDS>
7. Security Considerations 7. Security Considerations
This section is modeled after the template described in Section 3.7 This section is modeled after the template described in Section 3.7.1
of [YANG-GUIDELINES]. of [YANG-GUIDELINES].
The "ietf-bearer-svc" and "ietf-ac-svc" YANG modules define data The "ietf-bearer-svc" and "ietf-ac-svc" YANG modules define data
models that are designed to be accessed via YANG-based management models that are designed to be accessed via YANG-based management
protocols, such as NETCONF [RFC6241] and RESTCONF [RFC8040]. These protocols, such as NETCONF [RFC6241] and RESTCONF [RFC8040]. These
protocols have to use a secure transport layer (e.g., SSH [RFC4252], protocols have to use a secure transport layer (e.g., SSH [RFC4252],
TLS [RFC8446], and QUIC [RFC9000]) and have to use mutual TLS [RFC8446], and QUIC [RFC9000]) and have to use mutual
authentication. authentication.
Servers MUST verify that requesting clients are entitled to access Servers MUST verify that requesting clients are entitled to access
skipping to change at line 4032 skipping to change at line 4023
'customer-name', 'l2-connection', and 'ip-connection': An attacker 'customer-name', 'l2-connection', and 'ip-connection': An attacker
can retrieve privacy-related information, which can be used to can retrieve privacy-related information, which can be used to
track a customer. Disclosing such information may be considered a track a customer. Disclosing such information may be considered a
violation of the customer-provider trust relationship. violation of the customer-provider trust relationship.
'keying-material': An attacker can retrieve the cryptographic keys 'keying-material': An attacker can retrieve the cryptographic keys
protecting the underlying connectivity services (routing, in protecting the underlying connectivity services (routing, in
particular). These keys could be used to inject spoofed routing particular). These keys could be used to inject spoofed routing
advertisements. advertisements.
There are no particularly sensitive RPC or action operations.
Several data nodes ('bgp', 'ospf', 'isis', 'rip', and 'customer-key- Several data nodes ('bgp', 'ospf', 'isis', 'rip', and 'customer-key-
chain') rely upon [RFC8177] for authentication purposes. As such, chain') rely upon the key chains described in [RFC8177] for
the AC service module inherits the security considerations discussed authentication purposes. As such, the AC service module inherits the
in Section 5 of [RFC8177]. Also, these data nodes support supplying security considerations discussed in Section 5 of [RFC8177]. Also,
explicit keys as strings in ASCII format. The use of keys in these data nodes support supplying explicit keys as strings in ASCII
hexadecimal string format would afford greater key entropy with the format. The use of keys in hexadecimal string format would afford
same number of key-string octets. However, such a format is not greater key entropy with the same number of key-string octets.
included in this version of the AC service model because it is not However, such a format is not included in this version of the AC
supported by the underlying device modules (e.g., [RFC8695]). service model because it is not supported by the underlying device
modules (e.g., [RFC8695]).
Section 5.2.5.5 specifies a set of encryption-related parameters that Section 5.2.5.5 specifies a set of encryption-related parameters that
can be applied to traffic for a given AC. can be applied to traffic for a given AC.
8. IANA Considerations 8. IANA Considerations
IANA has registered the following URIs in the "ns" subregistry within IANA has registered the following URIs in the "ns" subregistry within
the "IETF XML Registry" [RFC3688]: the "IETF XML Registry" [RFC3688]:
URI: urn:ietf:params:xml:ns:yang:ietf-bearer-svc URI: urn:ietf:params:xml:ns:yang:ietf-bearer-svc
skipping to change at line 4087 skipping to change at line 4081
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
DOI 10.17487/RFC3688, January 2004, DOI 10.17487/RFC3688, January 2004,
<https://www.rfc-editor.org/info/rfc3688>. <https://www.rfc-editor.org/info/rfc3688>.
[RFC4252] Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH) [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Authentication Protocol", RFC 4252, DOI 10.17487/RFC4252, Border Gateway Protocol 4 (BGP-4)", RFC 4271,
January 2006, <https://www.rfc-editor.org/info/rfc4252>. DOI 10.17487/RFC4271, January 2006,
<https://www.rfc-editor.org/info/rfc4271>.
[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/info/rfc4364>. 2006, <https://www.rfc-editor.org/info/rfc4364>.
[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/info/rfc4577>. June 2006, <https://www.rfc-editor.org/info/rfc4577>.
skipping to change at line 4114 skipping to change at line 4109
[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/info/rfc5880>. <https://www.rfc-editor.org/info/rfc5880>.
[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/info/rfc6020>. <https://www.rfc-editor.org/info/rfc6020>.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
<https://www.rfc-editor.org/info/rfc6241>.
[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/info/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/info/rfc6991>. <https://www.rfc-editor.org/info/rfc6991>.
[RFC7166] Bhatia, M., Manral, V., and A. Lindem, "Supporting [RFC7166] Bhatia, M., Manral, V., and A. Lindem, "Supporting
Authentication Trailer for OSPFv3", RFC 7166, Authentication Trailer for OSPFv3", RFC 7166,
DOI 10.17487/RFC7166, March 2014, DOI 10.17487/RFC7166, March 2014,
<https://www.rfc-editor.org/info/rfc7166>. <https://www.rfc-editor.org/info/rfc7166>.
[RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed., [RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed.,
"Security Extension for OSPFv2 When Using Manual Key "Security Extension for OSPFv2 When Using Manual Key
Management", RFC 7474, DOI 10.17487/RFC7474, April 2015, Management", RFC 7474, DOI 10.17487/RFC7474, April 2015,
<https://www.rfc-editor.org/info/rfc7474>. <https://www.rfc-editor.org/info/rfc7474>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<https://www.rfc-editor.org/info/rfc8040>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[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/info/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/info/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/info/rfc8342>. <https://www.rfc-editor.org/info/rfc8342>.
[RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol
Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
<https://www.rfc-editor.org/info/rfc8446>.
[RFC8792] Watsen, K., Auerswald, E., Farrel, A., and Q. Wu, [RFC8792] Watsen, K., Auerswald, E., Farrel, A., and Q. Wu,
"Handling Long Lines in Content of Internet-Drafts and "Handling Long Lines in Content of Internet-Drafts and
RFCs", RFC 8792, DOI 10.17487/RFC8792, June 2020, RFCs", RFC 8792, DOI 10.17487/RFC8792, June 2020,
<https://www.rfc-editor.org/info/rfc8792>. <https://www.rfc-editor.org/info/rfc8792>.
[RFC9000] Iyengar, J., Ed. and M. Thomson, Ed., "QUIC: A UDP-Based
Multiplexed and Secure Transport", RFC 9000,
DOI 10.17487/RFC9000, May 2021,
<https://www.rfc-editor.org/info/rfc9000>.
[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/info/rfc9181>. 2022, <https://www.rfc-editor.org/info/rfc9181>.
[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/info/rfc9182>. February 2022, <https://www.rfc-editor.org/info/rfc9182>.
skipping to change at line 4201 skipping to change at line 4178
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/info/rfc9408>. June 2023, <https://www.rfc-editor.org/info/rfc9408>.
[RFC9568] Lindem, A. and A. Dogra, "Virtual Router Redundancy [RFC9568] Lindem, A. and A. Dogra, "Virtual Router Redundancy
Protocol (VRRP) Version 3 for IPv4 and IPv6", RFC 9568, Protocol (VRRP) Version 3 for IPv4 and IPv6", RFC 9568,
DOI 10.17487/RFC9568, April 2024, DOI 10.17487/RFC9568, April 2024,
<https://www.rfc-editor.org/info/rfc9568>. <https://www.rfc-editor.org/info/rfc9568>.
[RFC9833] Boucadair, M., Ed., Roberts, R., Ed., Gonzalez de Dios, [RFC9833] Boucadair, M., Ed., Roberts, R., Ed., Gonzalez de Dios,
O., Barguil Giraldo, S., and B. Wu, "A Common YANG Data O., Barguil, S., and B. Wu, "A Common YANG Data Model for
Model for Attachment Circuits", RFC 9833, Attachment Circuits", RFC 9833, DOI 10.17487/RFC9833,
DOI 10.17487/RFC9833, August 2025, September 2025, <https://www.rfc-editor.org/info/rfc9833>.
<https://www.rfc-editor.org/info/rfc9833>.
9.2. Informative References 9.2. Informative References
[BGP4-YANG] [BGP4-YANG]
Jethanandani, M., Patel, K., Hares, S., and J. Haas, "YANG Jethanandani, M., Patel, K., Hares, S., and J. Haas, "YANG
Model for Border Gateway Protocol (BGP-4)", Work in Model for Border Gateway Protocol (BGP-4)", Work in
Progress, Internet-Draft, draft-ietf-idr-bgp-model-18, 21 Progress, Internet-Draft, draft-ietf-idr-bgp-model-18, 21
October 2024, <https://datatracker.ietf.org/doc/html/ October 2024, <https://datatracker.ietf.org/doc/html/
draft-ietf-idr-bgp-model-18>. draft-ietf-idr-bgp-model-18>.
skipping to change at line 4277 skipping to change at line 4253
[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/info/rfc3644>. <https://www.rfc-editor.org/info/rfc3644>.
[RFC4026] Andersson, L. and T. Madsen, "Provider Provisioned Virtual [RFC4026] Andersson, L. and T. Madsen, "Provider Provisioned Virtual
Private Network (VPN) Terminology", RFC 4026, Private Network (VPN) Terminology", RFC 4026,
DOI 10.17487/RFC4026, March 2005, DOI 10.17487/RFC4026, March 2005,
<https://www.rfc-editor.org/info/rfc4026>. <https://www.rfc-editor.org/info/rfc4026>.
[RFC4252] Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH)
Authentication Protocol", RFC 4252, DOI 10.17487/RFC4252,
January 2006, <https://www.rfc-editor.org/info/rfc4252>.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
DOI 10.17487/RFC4861, September 2007, DOI 10.17487/RFC4861, September 2007,
<https://www.rfc-editor.org/info/rfc4861>. <https://www.rfc-editor.org/info/rfc4861>.
[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/info/rfc5925>. June 2010, <https://www.rfc-editor.org/info/rfc5925>.
[RFC6151] Turner, S. and L. Chen, "Updated Security Considerations [RFC6151] Turner, S. and L. Chen, "Updated Security Considerations
for the MD5 Message-Digest and the HMAC-MD5 Algorithms", for the MD5 Message-Digest and the HMAC-MD5 Algorithms",
RFC 6151, DOI 10.17487/RFC6151, March 2011, RFC 6151, DOI 10.17487/RFC6151, March 2011,
<https://www.rfc-editor.org/info/rfc6151>. <https://www.rfc-editor.org/info/rfc6151>.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
<https://www.rfc-editor.org/info/rfc6241>.
[RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of [RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of
BGP, LDP, PCEP, and MSDP Issues According to the Keying BGP, LDP, PCEP, and MSDP Issues According to the Keying
and Authentication for Routing Protocols (KARP) Design and Authentication for Routing Protocols (KARP) Design
Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013, Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013,
<https://www.rfc-editor.org/info/rfc6952>. <https://www.rfc-editor.org/info/rfc6952>.
[RFC7607] Kumari, W., Bush, R., Schiller, H., and K. Patel, [RFC7607] Kumari, W., Bush, R., Schiller, H., and K. Patel,
"Codification of AS 0 Processing", RFC 7607, "Codification of AS 0 Processing", RFC 7607,
DOI 10.17487/RFC7607, August 2015, DOI 10.17487/RFC7607, August 2015,
<https://www.rfc-editor.org/info/rfc7607>. <https://www.rfc-editor.org/info/rfc7607>.
[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/info/rfc7665>. <https://www.rfc-editor.org/info/rfc7665>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<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/info/rfc8299>. <https://www.rfc-editor.org/info/rfc8299>.
[RFC8309] Wu, Q., Liu, W., and A. Farrel, "Service Models [RFC8309] Wu, Q., Liu, W., and A. Farrel, "Service Models
Explained", RFC 8309, DOI 10.17487/RFC8309, January 2018, Explained", RFC 8309, DOI 10.17487/RFC8309, January 2018,
<https://www.rfc-editor.org/info/rfc8309>. <https://www.rfc-editor.org/info/rfc8309>.
[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/info/rfc8340>. <https://www.rfc-editor.org/info/rfc8340>.
[RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for
Routing Management (NMDA Version)", RFC 8349, Routing Management (NMDA Version)", RFC 8349,
DOI 10.17487/RFC8349, March 2018, DOI 10.17487/RFC8349, March 2018,
<https://www.rfc-editor.org/info/rfc8349>. <https://www.rfc-editor.org/info/rfc8349>.
[RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol
Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
<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/info/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/info/rfc8695>. <https://www.rfc-editor.org/info/rfc8695>.
skipping to change at line 4346 skipping to change at line 4339
Georgatsos, "Dynamic Service Negotiation: The Connectivity Georgatsos, "Dynamic Service Negotiation: The Connectivity
Provisioning Negotiation Protocol (CPNP)", RFC 8921, Provisioning Negotiation Protocol (CPNP)", RFC 8921,
DOI 10.17487/RFC8921, October 2020, DOI 10.17487/RFC8921, October 2020,
<https://www.rfc-editor.org/info/rfc8921>. <https://www.rfc-editor.org/info/rfc8921>.
[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/info/rfc8969>. January 2021, <https://www.rfc-editor.org/info/rfc8969>.
[RFC9000] Iyengar, J., Ed. and M. Thomson, Ed., "QUIC: A UDP-Based
Multiplexed and Secure Transport", RFC 9000,
DOI 10.17487/RFC9000, May 2021,
<https://www.rfc-editor.org/info/rfc9000>.
[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/info/rfc9234>. <https://www.rfc-editor.org/info/rfc9234>.
[RFC9543] Farrel, A., Ed., Drake, J., Ed., Rokui, R., Homma, S., [RFC9543] Farrel, A., Ed., Drake, J., Ed., Rokui, R., Homma, S.,
Makhijani, K., Contreras, L., and J. Tantsura, "A Makhijani, K., Contreras, L., and J. Tantsura, "A
Framework for Network Slices in Networks Built from IETF Framework for Network Slices in Networks Built from IETF
Technologies", RFC 9543, DOI 10.17487/RFC9543, March 2024, Technologies", RFC 9543, DOI 10.17487/RFC9543, March 2024,
<https://www.rfc-editor.org/info/rfc9543>. <https://www.rfc-editor.org/info/rfc9543>.
[RFC9835] Boucadair, M., Ed., Roberts, R., Gonzalez de Dios, O., [RFC9835] Boucadair, M., Ed., Roberts, R., Gonzalez de Dios, O.,
Barguil Giraldo, S., and B. Wu, "A Network YANG Data Model Barguil, S., and B. Wu, "A Network YANG Data Model for
for Attachment Circuits", RFC 9835, DOI 10.17487/RFC9835, Attachment Circuits", RFC 9835, DOI 10.17487/RFC9835,
August 2025, <https://www.rfc-editor.org/info/rfc9835>. September 2025, <https://www.rfc-editor.org/info/rfc9835>.
[RFC9836] Boucadair, M., Ed., Roberts, R., Barguil Giraldo, S., and [RFC9836] Boucadair, M., Ed., Roberts, R., Barguil, S., and O.
O. Gonzalez de Dios, "A YANG Data Model for Augmenting VPN Gonzalez de Dios, "A YANG Data Model for Augmenting VPN
Service and Network Models with Attachment Circuits", Service and Network Models with Attachment Circuits",
RFC 9836, DOI 10.17487/RFC9836, August 2025, RFC 9836, DOI 10.17487/RFC9836, September 2025,
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg- <https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-
ac-lxsm-lxnm-glue-14>. ac-lxsm-lxnm-glue-14>.
[YANG-GUIDELINES] [YANG-GUIDELINES]
Bierman, A., Boucadair, M., Ed., and Q. Wu, "Guidelines Bierman, A., Boucadair, M., Ed., and Q. Wu, "Guidelines
for Authors and Reviewers of Documents Containing YANG for Authors and Reviewers of Documents Containing YANG
Data Models", Work in Progress, Internet-Draft, draft- Data Models", Work in Progress, Internet-Draft, draft-
ietf-netmod-rfc8407bis-28, 5 June 2025, ietf-netmod-rfc8407bis-28, 5 June 2025,
<https://datatracker.ietf.org/doc/html/draft-ietf-netmod- <https://datatracker.ietf.org/doc/html/draft-ietf-netmod-
rfc8407bis-28>. rfc8407bis-28>.
skipping to change at line 4498 skipping to change at line 4496
} }
}, },
"bearer-reference": "line-156" "bearer-reference": "line-156"
} }
} }
] ]
} }
} }
Figure 27: Example of a Message Body of a Response to Assign a Figure 27: Example of a Message Body of a Response to Assign a
Customer VLAN (CVLAN) ID Customer VLAN (C-VLAN) ID
A.3. Create an AC for a Known Peer SAP A.3. Create an AC for a Known Peer SAP
An example of a request to create a simple AC, when the peer SAP is An example of a request to create a simple AC, when the peer SAP is
known, is shown in Figure 28. In this example, the peer SAP known, is shown in Figure 28. In this example, the peer SAP
identifier points to an identifier of an SF. The (topological) identifier points to an identifier of an SF. The (topological)
location of that SF is assumed to be known to the network controller. location of that SF is assumed to be known to the network controller.
For example, this can be determined as part of an on-demand procedure For example, this can be determined as part of an on-demand procedure
to instantiate an SF in a cloud. That instantiated SF can be granted to instantiate an SF in a cloud. That instantiated SF can be granted
a connectivity service via the provider network. a connectivity service via the provider network.
skipping to change at line 5013 skipping to change at line 5011
} }
} }
Figure 38: Example of a Message Body of a Request to Create Figure 38: Example of a Message Body of a Request to Create
Multiple ACs Bound to Multiple CEs Multiple ACs Bound to Multiple CEs
A.7. Binding Attachment Circuits to an IETF Network Slice A.7. Binding Attachment Circuits to an IETF Network Slice
This example shows how the AC service model complements the model This example shows how the AC service model complements the model
defined in "A YANG Data Model for the RFC 9543 Network Slice Service" defined in "A YANG Data Model for the RFC 9543 Network Slice Service"
[NSSM] to connect a site to a Slice Service. [NSSM] to connect a site to an RFC 9543 Network Slice Service.
First, Figure 39 describes the end-to-end network topology as well as First, Figure 39 describes the end-to-end network topology as well as
the orchestration scopes: the orchestration scopes:
* The topology is made up of two sites ("site1" and "site2"), * The topology is made up of two sites ("site1" and "site2"),
interconnected via a Transport Network (e.g., IP/MPLS network). interconnected via a Transport Network (e.g., IP/MPLS network).
An SF is deployed within each site in a dedicated IP subnet. An SF is deployed within each site in a dedicated IP subnet.
* A 5G Service Management and Orchestration (SMO) is responsible for * A 5G Service Management and Orchestration (SMO) is responsible for
the deployment of SFs and the indirect management of a local the deployment of SFs and the indirect management of a local
skipping to change at line 5284 skipping to change at line 5282
] ]
} }
} }
] ]
} }
} }
Figure 42: Example of a Message Body of a Response Indicating the Figure 42: Example of a Message Body of a Response Indicating the
Creation of the ACs Creation of the ACs
Figure 43 shows the message body of the request to create a Slice Figure 43 shows the message body of the request to create an RFC 9543
Service bound to the ACs created using Figure 41. Only references to Netowrk Slice Service bound to the ACs created using Figure 41. Only
these ACs are included in the Slice Service request. references to these ACs are included in the RFC 9543 Network Slice
Service request.
{ {
"ietf-network-slice-service:network-slice-services": { "ietf-network-slice-service:network-slice-services": {
"slo-sle-templates": { "slo-sle-templates": {
"slo-sle-template": [ "slo-sle-template": [
{ {
"id": "low-latency-template", "id": "low-latency-template",
"description": "Lowest latency forwarding behavior" "description": "Lowest latency forwarding behavior"
} }
] ]
skipping to change at line 5325 skipping to change at line 5324
"ac2" "ac2"
] ]
} }
] ]
} }
} }
] ]
} }
} }
Figure 43: Message Body of a Request to Create a Slice Service Figure 43: Message Body of a Request to Create an RFC 9543
Referring to the ACs Network Slice Service Referring to the ACs
A.8. Connecting a Virtualized Environment Running in a Cloud Provider A.8. Connecting a Virtualized Environment Running in a Cloud Provider
This example (Figure 44) shows how the AC service model can be used This example (Figure 44) shows how the AC service model can be used
to connect a Cloud Infrastructure to a service provider network. to connect a Cloud Infrastructure to a service provider network.
This example makes the following assumptions: This example makes the following assumptions:
1. A customer (e.g., Mobile Network Team or partner) has a 1. A customer (e.g., Mobile Network Team or partner) has a
virtualized infrastructure running in a Cloud Provider. A virtualized infrastructure running in a Cloud Provider. A
simplistic deployment is represented here with a set of Virtual simplistic deployment is represented here with a set of Virtual
skipping to change at line 5413 skipping to change at line 5412
Physical Connection 1234-56789 is delivered and Physical Connection 1234-56789 is delivered and
connected to PE1 connected to PE1
Network Inventory Updated with: Network Inventory Updated with:
bearer-reference: 1234-56789 for PE1/Interface "If-A" bearer-reference: 1234-56789 for PE1/Interface "If-A"
Figure 45: Illustration of Pre-Provisioning Figure 45: Illustration of Pre-Provisioning
Next, API workflows can be initiated by: Next, API workflows can be initiated by:
* The Cloud Provider for the configuration per Step (3) above. * The Cloud Provider for the configuration per item 3 above.
* The service provider network via the ACaaS model. This request * The service provider network via the ACaaS model. This request
can be used in conjunction with additional requests based on the can be used in conjunction with additional requests based on the
L3SM (VPN provisioning) or Network Slice Service model (5G hybrid L3SM (VPN provisioning) or RFC 9543 Network Slice Service model
cloud deployment). (5G hybrid cloud deployment).
Figure 46 shows the message body of the request to create the Figure 46 shows the message body of the request to create the
required ACs to connect the virtualized Cloud Provider (VM) using the required ACs to connect the virtualized Cloud Provider (VM) using the
ACaaS module. ACaaS module.
=============== NOTE: '\' line wrapping per RFC 8792 ================ =============== NOTE: '\' line wrapping per RFC 8792 ================
{ {
"ietf-ac-svc:attachment-circuits": { "ietf-ac-svc:attachment-circuits": {
"ac": [ "ac": [
skipping to change at line 5475 skipping to change at line 5474
} }
Figure 46: Message Body of a Request to Create the ACs for Figure 46: Message Body of a Request to Create the ACs for
Connecting to the Cloud Provider Connecting to the Cloud Provider
Figure 47 shows the message body of the response received from the Figure 47 shows the message body of the response received from the
provider as a response to a query message. Note that this Cloud provider as a response to a query message. Note that this Cloud
Provider mandates the use of MD5 authentication for establishing BGP Provider mandates the use of MD5 authentication for establishing BGP
connections. connections.
The module supports MD5 to basically accommodate the installed BGP | The module supports MD5 to basically accommodate the installed
base (including by some Cloud Providers). Note that MD5 suffers | BGP base (including by some Cloud Providers). Note that MD5
from the security weaknesses discussed in Section 2 of [RFC6151] | suffers from the security weaknesses discussed in Section 2 of
and Section 2.1 of [RFC6952]. | [RFC6151] and Section 2.1 of [RFC6952].
=============== NOTE: '\' line wrapping per RFC 8792 ================ =============== NOTE: '\' line wrapping per RFC 8792 ================
{ {
"ietf-ac-svc:attachment-circuits": { "ietf-ac-svc:attachment-circuits": {
"ac": [ "ac": [
{ {
"name": "ac--BXT-DC-customer-VPC-foo", "name": "ac--BXT-DC-customer-VPC-foo",
"description": "Connection to Cloud Provider BXT on \ "description": "Connection to Cloud Provider BXT on \
connection 1234-56789", connection 1234-56789",
skipping to change at line 5577 skipping to change at line 5576
| . | | . |
| . | | . |
| . | | . |
| .------------. | | .------------. |
| | PEm(VRFmn) | | | | PEm(VRFmn) | |
| '------------' | | '------------' |
'------------------------' '------------------------'
Figure 48: Illustration of Provider Network Scenario Figure 48: Illustration of Provider Network Scenario
The attachment circuit in this case uses a SAP identifier to refer to The AC in this case uses a SAP identifier to refer to the physical
the physical interface used for the connection between the PE and the interface used for the connection between the PE and the CE. The AC
CE. The attachment circuit includes all the additional logical includes all the additional logical attributes to describe the
attributes to describe the connection between the two ends, including connection between the two ends, including VLAN information and IP
VLAN information and IP addressing. Also, the configuration details addressing. Also, the configuration details of the BGP session make
of the BGP session make use of peer group details instead of defining use of peer group details instead of defining the entire
the entire configuration inside the 'neighbor' data node. configuration inside the 'neighbor' data node.
{ {
"ietf-ac-svc:attachment-circuits": { "ietf-ac-svc:attachment-circuits": {
"ac": [ "ac": [
{ {
"name": "CE-PE-AC", "name": "CE-PE-AC",
"customer-name": "Customer-4875", "customer-name": "Customer-4875",
"description": "An AC between a CP and a PE", "description": "An AC between a CP and a PE",
"peer-sap-id": [ "peer-sap-id": [
"sap#113" "sap#113"
skipping to change at line 5711 skipping to change at line 5710
between two networks without involving an IXP. between two networks without involving an IXP.
A.10.1. Retrieve Interconnection Locations A.10.1. Retrieve Interconnection Locations
Figure 51 shows an example message body of a request to retrieve a Figure 51 shows an example message body of a request to retrieve a
list of interconnection locations. The request includes a customer list of interconnection locations. The request includes a customer
name and an ASN to filter out the locations. name and an ASN to filter out the locations.
{ {
"ietf-bearer-svc:locations": { "ietf-bearer-svc:locations": {
"filtered-by": "ietf-bearer-svc:customer-name",
"customer": [ "customer": [
{ {
"name": "a future peer", "name": "a future peer",
"peer-as": 65536 "peer-as": 65536
} }
] ]
} }
} }
Figure 51: Message Body of a Request to Retrieve Interconnection Figure 51: Message Body of a Request to Retrieve Interconnection
Locations Locations
Figure 52 provides an example of a response to a query received from Figure 52 provides an example of a response to a query received from
the server with a list of available interconnection locations. the server with a list of available interconnection locations.
{ {
"ietf-bearer-svc:locations": { "ietf-bearer-svc:locations": {
"filtered-by": "ietf-bearer-svc:customer-name",
"customer": [ "customer": [
{ {
"name": "a future peer", "name": "a future peer",
"peer-as": 65536, "peer-as": 65536,
"location": [ "location": [
{ {
"name": "Location-X", "name": "Location-X",
"_comment": "other location attributes" "_comment": "other location attributes"
}, },
{ {
skipping to change at line 6101 skipping to change at line 6098
Figure 60: Message Body of a Response to Report All Active BGP Figure 60: Message Body of a Response to Report All Active BGP
Sessions over an AC Sessions over an AC
A.11. Connectivity of Cloud Network Functions A.11. Connectivity of Cloud Network Functions
A.11.1. Scope A.11.1. Scope
This section demonstrates how the AC service model permits managing This section demonstrates how the AC service model permits managing
connectivity requirements for complex Network Functions (NFs) -- connectivity requirements for complex Network Functions (NFs) --
containerized or virtualized -- that are typically deployed in telco containerized or virtualized -- that are typically deployed in telco
networks. This integration leverages the concept of "parent AC" to networks. This integration leverages the concept of "Parent AC" to
decouple physical and logical connectivity so that several ACs can decouple physical and logical connectivity so that several ACs can
share Layer 2 and Layer 3 resources. This approach provides share Layer 2 and Layer 3 resources. This approach provides
flexibility, scalability, and API stability. flexibility, scalability, and API stability.
The NFs have the following characteristics: The NFs have the following characteristics:
* The NF is distributed on a set of compute nodes with scaled-out * The NF is distributed on a set of compute nodes with scaled-out
and redundant instances. and redundant instances.
* The NF has two distinct type of instances: user plane ("nf-up") * The NF has two distinct type of instances: user plane ("nf-up")
skipping to change at line 6134 skipping to change at line 6131
separate ACs. From a realization standpoint, the NF interface separate ACs. From a realization standpoint, the NF interface
connectivity is generally provided thanks to MacVLAN or Single connectivity is generally provided thanks to MacVLAN or Single
Root I/O Virtualization (SR-IOV). For the sake of simplicity, Root I/O Virtualization (SR-IOV). For the sake of simplicity,
only two VLANs are presented in this example; additional VLANs are only two VLANs are presented in this example; additional VLANs are
configured following a similar logic. configured following a similar logic.
A.11.2. Physical Infrastructure A.11.2. Physical Infrastructure
Figure 61 describes the physical infrastructure. The compute nodes Figure 61 describes the physical infrastructure. The compute nodes
(customer) are attached to the provider infrastructure thanks to a (customer) are attached to the provider infrastructure thanks to a
set of physical links on which attachment circuits are provisioned set of physical links on which ACs are provisioned (i.e., "compute-
(i.e., "compute-XX-nicY"). The provider infrastructure can be XX-nicY"). The provider infrastructure can be realized in multiple
realized in multiple ways, such as IP Fabric and Layer 2/3 Edge ways, such as IP Fabric and Layer 2/3 Edge Routers. This document
Routers. This document does not intend to detail these aspects. does not intend to detail these aspects.
.---------------------------. .---------------------------.
.------------. bearer = | .--------. | .------------. bearer = | .--------. |
| | compute-01-nic1 | | | | | | compute-01-nic1 | | | |
| compute-01 |------------------------| '--------' | | compute-01 |------------------------| '--------' |
| | | | | | | |
'------------' | .--------. .--------. | '------------' | .--------. .--------. |
| | | | | | | | | | | |
| '--------' '--------' | | '--------' '--------' |
.------------. bearer = | | .------------. bearer = | |
skipping to change at line 6168 skipping to change at line 6165
| | | Infrastructure | | | | Infrastructure |
'------------' |(IP Fabric, Gateways, etc.)| '------------' |(IP Fabric, Gateways, etc.)|
'---------------------------' '---------------------------'
Figure 61: Example Physical Topology for Cloud Deployment Figure 61: Example Physical Topology for Cloud Deployment
A.11.3. NFs Deployment A.11.3. NFs Deployment
The NFs are deployed on this infrastructure in the following way: The NFs are deployed on this infrastructure in the following way:
* Configuration of a parent AC as a centralized attachment for "vlan * Configuration of a Parent AC as a centralized attachment for "vlan
100". The parent AC captures Layer 2 and Layer 3 properties for 100". The Parent AC captures Layer 2 and Layer 3 properties for
this VLAN: vlan-id, IP default gateway and subnet, IP address pool this VLAN: vlan-id, IP default gateway and subnet, IP address pool
for NFs endpoints, static routes with BFD to user plane, and BGP for NFs endpoints, static routes with BFD to user plane, and BGP
configuration to control plane NFs. In addition, the IP addresses configuration to control plane NFs. In addition, the IP addresses
of the user plane ("nf-up") instances are protected using BFD. of the user plane ("nf-up") instances are protected using BFD.
* Configuration of a parent AC as a centralized attachment for "vlan * Configuration of a Parent AC as a centralized attachment for "vlan
200". This VLAN is for Layer 2 connectivity between NFs (no IP 200". This VLAN is for Layer 2 connectivity between NFs (no IP
configuration in the provider network). configuration in the provider network).
* "Child ACs" binding bearers to parent ACs for "vlan 100" and "vlan * "Child ACs" binding bearers to Parent ACs for "vlan 100" and "vlan
200". 200".
* The deployment of the network service to all compute nodes * The deployment of the network service to all compute nodes
("compute-01" to "compute-10"), even though the NF is not ("compute-01" to "compute-10"), even though the NF is not
instantiated on "compute-07"/"compute-08". This approach permits instantiated on "compute-07"/"compute-08". This approach permits
handling compute failures and scale-out scenarios in a reactive handling compute failures and scale-out scenarios in a reactive
and flexible fashion thanks to a pre-provisioned networking logic. and flexible fashion thanks to a pre-provisioned networking logic.
.-------------------------------------. .-------------------------------------.
|VLAN 100: | |VLAN 100: |
skipping to change at line 6594 skipping to change at line 6591
| .----. |.7 < - BFD - > | compute-08 | | .----. |.7 < - BFD - > | compute-08 |
| |nf-up7| |---------vlan-100-------------| created for | | |nf-up7| |---------vlan-100-------------| created for |
| | | |---------vlan-200-------------| scale-out | | | | |---------vlan-200-------------| scale-out |
| '----' | | | | '----' | | |
compute-08 '-----------------------' compute-08 '-----------------------'
Figure 64: Example of Compute Failure and Scale-Out Figure 64: Example of Compute Failure and Scale-Out
Finally, the addition or deletion of compute nodes in the deployment Finally, the addition or deletion of compute nodes in the deployment
("compute-11", "compute-12", etc.) involves merely changes on Child ("compute-11", "compute-12", etc.) involves merely changes on Child
ACs and possible routing on the parent AC. In any case, the parent ACs and possible routing on the Parent AC. In any case, the Parent
AC is a stable identifier, which can be consumed as a reference by AC is a stable identifier, which can be consumed as a reference by
end-to-end service models for VPN configuration such as AC Glue end-to-end service models for VPN configuration such as AC Glue
[RFC9836], Slice Service [NSSM], etc. This decoupling to a stable [RFC9836], RFC 9543 Network Slice Service [NSSM], etc. This
identifier provides great benefits in terms of scalability and decoupling to a stable identifier provides great benefits in terms of
flexibility since once the reference with the parent AC is scalability and flexibility since once the reference with the Parent
implemented, no API call involving the VPN model is needed for any AC is implemented, no API call involving the VPN model is needed for
modification in the cloud. any modification in the cloud.
A.12. BFD and Static Addressing A.12. BFD and Static Addressing
Figure 65 shows a topology example of a set of CEs connected to a Figure 65 shows a topology example of a set of CEs connected to a
provider network via dedicated bearers. Each of these CEs maintains provider network via dedicated bearers. Each of these CEs maintains
two BFD sessions with the provider network. two BFD sessions with the provider network.
+----------------------------+ +----------------------------+
.-------. .1 | | .-------. .1 | |
| CE1 |------------|------+ | | CE1 |------------|------+ |
skipping to change at line 6636 skipping to change at line 6633
Each CE has a BFD session to each gateway for redundancy: Each CE has a BFD session to each gateway for redundancy:
.-------. .-------.
| CEx | .x <---BFD---> .252 | CEx | .x <---BFD---> .252
'-------' <---BFD---> .253 '-------' <---BFD---> .253
Figure 65: Example of Static Addressing with BFD Figure 65: Example of Static Addressing with BFD
Figure 66 shows the message body of the ACaaS configuration to enable Figure 66 shows the message body of the ACaaS configuration to enable
the target architecture shown in Figure 65. This example uses an AC the target architecture shown in Figure 65. This example uses an AC
group profile to factorize common data between all involved ACs. It group profile to factorize common data between all involved ACs. It
also uses child ACs that inherit the properties of two parent ACs, also uses Child ACs that inherit the properties of two Parent ACs,
each terminating in a separate gateway in the provider network. each terminating in a separate gateway in the provider network.
=============== NOTE: '\' line wrapping per RFC 8792 ================ =============== NOTE: '\' line wrapping per RFC 8792 ================
{ {
"ietf-ac-svc:specific-provisioning-profiles": { "ietf-ac-svc:specific-provisioning-profiles": {
"valid-provider-identifiers": { "valid-provider-identifiers": {
"failure-detection-profile-identifier": [ "failure-detection-profile-identifier": [
{ {
"id": "single-hop-bfd" "id": "single-hop-bfd"
skipping to change at line 7641 skipping to change at line 7638
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. 107 change blocks. 
261 lines changed or deleted 258 lines changed or added

This html diff was produced by rfcdiff 1.48.