rfc9835v4.txt   rfc9835.txt 
skipping to change at line 107 skipping to change at line 107
1. Introduction 1. Introduction
Connectivity services are provided by networks to customers via Connectivity services are provided by networks to customers via
dedicated terminating points, such as Service Functions [RFC7665], dedicated terminating points, such as Service Functions [RFC7665],
Customer Edges (CEs), peer Autonomous System Border Routers (ASBRs), Customer Edges (CEs), peer Autonomous System Border Routers (ASBRs),
data center gateways, or Internet Exchange Points. data center gateways, or Internet Exchange Points.
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, including may depend on the practices adopted by a service provider, including
the flow put in place for the provisioning of advanced network the flow put in place for the provisioning of advanced network
services and how they are bound to an AC. For example, the same AC services and how they are bound to an attachment circuit (AC). For
may host multiple services (e.g., Layer 2 VPN (L2VPN), Layer 3 VPN example, the same AC may host multiple services (e.g., Layer 2 VPN
(L3VPN), or RFC 9543 Network Slice Service [RFC9543]). In order to (L2VPN), Layer 3 VPN (L3VPN), or RFC 9543 Network Slice Service
avoid service interference and redundant information in various [RFC9543]). In order to avoid service interference and redundant
locations, a service provider may expose an interface to manage ACs information in various locations, a service provider may expose an
network-wide. Customers can then request a standalone AC to be put interface to manage ACs network-wide. Customers can then request a
in place and refer to that AC when requesting services to be bound to standalone AC to be put in place and refer to that AC when requesting
that AC. [RFC9834] specifies a data model for managing Attachment services to be bound to that AC. [RFC9834] specifies a data model
Circuits as a Service (ACaaS). for managing Attachment Circuits as a Service (ACaaS).
Section 6 specifies a network model for ACs ("ietf-ac-ntw"). The Section 6 specifies a network model for ACs ("ietf-ac-ntw"). The
model can be used for the provisioning of ACs in a provider network model can be used for the provisioning of ACs in a provider network
prior to or during service provisioning. For example, [RFC9836] prior to or during service provisioning. For example, [RFC9836]
specifies augmentations to the L2VPN Network Model (L2NM) [RFC9291] specifies augmentations to the L2VPN Network Model (L2NM) [RFC9291]
and the L3VPN Network Model (L3NM) [RFC9182] to bind LxVPNs to ACs and the L3VPN Network Model (L3NM) [RFC9182] to bind LxVPNs to ACs
that are provisioned using the procedure defined in this document. that are provisioned using the procedure defined in this document.
This document leverages [RFC9182] and [RFC9291] by adopting an AC This document leverages [RFC9182] and [RFC9291] by adopting an AC
provisioning structure that uses data nodes that are defined in those provisioning structure that uses data nodes that are defined in those
RFCs. Some refinements were introduced to cover not only RFCs. Some refinements were introduced to cover not only
conventional service provider networks but also specifics of other conventional service provider networks but also specifics of other
target deployments (e.g., cloud network). target deployments (e.g., cloud network).
The AC network model is designed as augmentations of both the 'ietf- The AC network model is designed as augmentations of both the 'ietf-
network' model [RFC8345] and the Service Attachment Point (SAP) model network' model [RFC8345] and the Service Attachment Point (SAP) model
[RFC9408]. An AC can be bound to a single or multiple SAPs. [RFC9408]. An AC can be bound to a single or multiple SAPs.
Likewise, the model is designed to accommodate deployments where a Likewise, the model is designed to accommodate deployments where a
SAP can be bound to one or multiple ACs (e.g., a parent AC and its SAP can be bound to one or multiple ACs (e.g., a Parent AC and its
child ACs). Child ACs).
.--. .--.
|CE6| |CE6|
'-+' '-+'
ac | .--. .--. ac | .--. .--.
| |CE5+------+------+CE2| | |CE5+------+------+CE2|
.-----+-----. '--' | '--' .-----+-----. '--' | '--'
| | |ac | | |ac
| | | | | |
.+. .+. .+. .+. .+. .+.
.-+sap+-------+sap+-. .-+sap+-------------. .-+sap+-------+sap+-. .-+sap+-------------.
| '-' '-' | | '-' | | '-' '-' | | '-' |
| PE1 | | PE2 | | PE1 | | PE2 |
.--. .+. | | | .--. .+. | | |
|CE1+--+sap| | | | |CE1+--+sap| | | |
'--' ac '+' | | | '--' ac '+' | | |
'-------------------' '-------------------' '-------------------' '-------------------'
.-------------------. .-------------------. .-------------------. .-------------------.
| | | .+. ac .--. | | | .+. ac .--.
| PE3 | | PE4 |sap+--+CE5| | PE3 | | PE4 |sap+--+CE7|
| | | '-' '--' | | | '-' '--'
| | | | | | | |
| .-. | | .-. .-. .-. | | .-. | | .-. .-. .-. |
'-------------+sap+-' '-+sap+-+sap+-+sap+-' '-------------+sap+-' '-+sap+-+sap+-+sap+-'
'+' '+' '+' '+' '+' '+' '+' '+'
|ac | |ac |ac |ac | |ac |ac
.+-. | .+-. | .+-. | .+-. |
|CE3+-----ac-----' |CE4+---' |CE3+-----ac-----' |CE4+---'
'--' '--' '--' '--'
skipping to change at line 570 skipping to change at line 570
ACs, a set of profiles (Section 5.3) can be defined at the network ACs, a set of profiles (Section 5.3) can be defined at the network
level and then called under the node level. The information level and then called under the node level. The information
contained in a profile is thus inherited, unless the corresponding contained in a profile is thus inherited, unless the corresponding
data node is refined at the AC level. In such a case, the value data node is refined at the AC level. In such a case, the value
provided at the AC level takes precedence over the global one. provided at the AC level takes precedence over the global one.
In contexts where the same AC is terminated by multiple peer SAPs In contexts where the same AC is terminated by multiple peer SAPs
(e.g., an AC with multiple CEs) but a subset of them have specific (e.g., an AC with multiple CEs) but a subset of them have specific
information, the module allows operators to: information, the module allows operators to:
* Define a parent AC that may list all these CEs as peer SAPs. * Define a Parent AC that may list all these CEs as peer SAPs.
* Create individual ACs that are bound to the parent AC using * Create individual ACs that are bound to the Parent AC using
'parent-ref'. 'parent-ref'.
* Indicate for each individual AC one or a subset of the CEs as peer * Indicate for each individual AC one or a subset of the CEs as peer
SAPs. All these individual ACs will inherit the properties of the SAPs. All these individual ACs will inherit the properties of the
parent AC. Parent AC.
Whenever a parent AC is deleted, then all child ACs of that AC MUST Whenever a Parent AC is deleted, then all Child ACs of that AC MUST
be deleted. Child ACs are referenced using 'child-ref'. be deleted. Child ACs are referenced using 'child-ref'.
An AC may belong to one or multiple groups [RFC9181]. For example, An AC may belong to one or multiple groups [RFC9181]. For example,
the 'group-id' is used to associate redundancy or protection the 'group-id' is used to associate redundancy or protection
constraints with ACs. constraints with ACs.
The status of an AC can be tracked using 'status'. Both operational The status of an AC can be tracked using 'status'. Both operational
status and administrative status are maintained. A mismatch between status and administrative status are maintained. A mismatch between
the administrative status vs. the operational status can be used as a the administrative status vs. the operational status can be used as a
trigger to detect anomalies. trigger to detect anomalies.
skipping to change at line 4083 skipping to change at line 4083
"Container for BFD."; "Container for BFD.";
uses bfd; uses bfd;
} }
} }
} }
// 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.";
container parent-ref { container parent-ref {
description description
"Specifies the parent AC that is inherited by an AC. "Specifies the Parent AC that is inherited by an AC.
Parent ACs are used, e.g., in contexts where multiple Parent ACs are used, e.g., in contexts where multiple
CEs are terminating the same AC, but some specific CEs are terminating the same AC, but some specific
information is required for each peer SAP."; information is required for each peer SAP.";
uses ac-ntw:attachment-circuit-reference; uses ac-ntw:attachment-circuit-reference;
} }
container child-ref { container child-ref {
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.";
uses ac-ntw:attachment-circuit-references; uses ac-ntw:attachment-circuit-references;
} }
} }
// AC network provisioning // AC network provisioning
grouping ac { grouping ac {
description description
"Grouping for ACs."; "Grouping for ACs.";
leaf description { leaf description {
skipping to change at line 4843 skipping to change at line 4843
} }
Figure 24: Example of AC Network Response to Retrieve the SAP Figure 24: Example of AC Network Response to Retrieve the SAP
(Message Body) (Message Body)
A.2. Parent AC A.2. Parent AC
In reference to the topology depicted in Figure 1, PE2 has a SAP that In reference to the topology depicted in Figure 1, PE2 has a SAP that
terminates an AC with two peer SAPs (CE2 and CE5). In order to terminates an AC with two peer SAPs (CE2 and CE5). In order to
control data that is specific to each of these peer SAPs over the control data that is specific to each of these peer SAPs over the
same AC, child ACs can be instantiated as depicted in Figure 25. same AC, Child ACs can be instantiated as depicted in Figure 25.
{ {
"ietf-ac-ntw:ac":[ "ietf-ac-ntw:ac":[
{ {
"name":"ac-1", "name":"ac-1",
"peer-sap-id":[ "peer-sap-id":[
"CE2", "CE2",
"CE5" "CE5"
], ],
"status":{ "status":{
skipping to change at line 4899 skipping to change at line 4899
}, },
"peer-sap-id":[ "peer-sap-id":[
"CE5" "CE5"
] ]
} }
] ]
} }
Figure 25: Example of Child ACs Figure 25: Example of Child ACs
Figure 26 shows how to bind the parent AC to a SAP. Figure 26 shows how to bind the Parent AC to a SAP.
{ {
"ietf-sap-ntw:service":[ "ietf-sap-ntw:service":[
{ {
"service-type":"ietf-vpn-common:l3vpn", "service-type":"ietf-vpn-common:l3vpn",
"sap":[ "sap":[
{ {
"sap-id":"sap#14587", "sap-id":"sap#14587",
"description":"A SAP", "description":"A SAP",
"parent-termination-point":"GE0/6/4", "parent-termination-point":"GE0/6/4",
 End of changes. 12 change blocks. 
21 lines changed or deleted 21 lines changed or added

This html diff was produced by rfcdiff 1.48.