You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: "IEEE Standard for Local and metropolitan area networks - Station and Media Access Control Connectivity Discovery"
105
95
author:
@@ -479,10 +469,8 @@ The descriptions of the bearer data nodes are as follows:
479
469
480
470
## The Attachment Circuit Service ("ietf-ac-svc") YANG Module
481
471
482
-
The full tree diagram of the module can be generated using, e.g., the
483
-
"pyang"tool {{PYANG}}. That tree is not included here because it is
484
-
too long ({{Section 3.4 of ?I-D.ietf-netmod-rfc8407bis}}). Instead, subtrees are provided
485
-
for the reader's convenience. The full tree of the 'ac-svc' is provided in {{AC-svc-Tree}}.
472
+
The full tree diagram of the "ietf-ac-svc" module is provied in {{AC-svc-Tree}}. Subtrees are provided in the following subsections
473
+
for the reader's convenience.
486
474
487
475
### Overall Structure
488
476
@@ -592,18 +580,18 @@ The description of the data nodes is as follows:
592
580
'peer-sap-id':
593
581
: Includes references to the remote endpoints of an attachment circuit {{!RFC9408}}. 'peer' is drawn here from the perspective of the provider network. That is, a 'peer-sap' will refer to a customer node.
594
582
595
-
'ac-group-profile-ref':
583
+
'group-profile-ref':
596
584
: Indicates references to one or more profiles that are defined in {{sec-acp}}.
597
585
598
-
'ac-parent-ref':
586
+
'parent-ref':
599
587
: Specifies an AC that is inherited by an attachment circuit.
600
588
: In contexts where dynamic terminating points are managed for a given AC,
601
589
a parent AC can be defined with a set of stable and common information, while
602
590
"child"ACs are defined to track dynamic information. These "child" ACs are bound to the parent AC, which is exposed to services (as a stable reference).
603
591
: Whenever a parent AC is deleted, all its "child" ACs MUST be deleted.
604
592
: 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 NOT be overlapping. An example to illustrate the use of multiple parent ACs is provided in {{sec-bfd-static}}.
605
593
606
-
'ac-child-ref':
594
+
'child-ref':
607
595
: Lists one or more references of child ACs that rely upon this attachment circuit as a parent AC.
608
596
609
597
'group':
@@ -1561,8 +1549,11 @@ Finally, the addition or deletion of compute nodes in the deployment ("compute-1
1561
1549
~~~~
1562
1550
{: #ex-json-bfd-static title="Message Body for the Configuration of CEs with Static Addressing and BFD Protection"}
@@ -107,7 +97,7 @@ The document specifies a common Attachment Circuits (ACs) YANG module, which is
107
97
108
98
# Introduction
109
99
110
-
Connectivity services are provided by networks to customers via dedicated terminating points (e.g., Service Functions (SFs), Customer Premises Equipment (CPEs), Autonomous System Border Routers (ASBRs), data centers gateways, or Internet Exchange Points). A connectivity service is basically about ensuring data transfer received from (or destined to) a given terminating point to (or from) other terminating points that belong to the same customer/service, an interconnection node, or an ancillary node. A set of objectives for the connectivity service may eventually be negotiated and agreed upon between a customer a network provider. For that data transfer to take place within the provider network, it is assumed that adequate setup is provisioned over the links that connect customer terminating points and a provider network (a Provider Edge (PE), typically) so that data can be successfully exchanged over these links. The required setup is referred to in this document as Attachment Circuits (ACs), while the underlying link is referred to as "bearer".
100
+
Connectivity services are provided by networks to customers via dedicated terminating points (e.g., Service Functions (SFs), Customer Premises Equipment (CPEs), Autonomous System Border Routers (ASBRs), data centers gateways, or Internet Exchange Points). A connectivity service is basically about ensuring data transfer received from (or destined to) a given terminating point to (or from) other terminating points that belong to the same customer/service, an interconnection node, or an ancillary node. A set of objectives for the connectivity service may eventually be negotiated and agreed upon between a customer and a network provider. For that data transfer to take place within the provider network, it is assumed that adequate setup is provisioned over the links that connect customer terminating points and a provider network (a Provider Edge (PE), typically) so that data can be successfully exchanged over these links. The required setup is referred to in this document as Attachment Circuits (ACs), while the underlying link is referred to as "bearer".
111
101
112
102
This document adheres to the definition of an attachment circuit as provided in {{Section 1.2 of ?RFC4364}}, especially:
113
103
@@ -122,7 +112,7 @@ This document adheres to the definition of an attachment circuit as provided in
122
112
a tunnel of some sort; what matters is that it be possible for two
123
113
devices to be network layer peers over the attachment circuit.
124
114
125
-
When a customer requests a new value-added service, the service can be bound to existing attachment circuits or trigger the instantiation of new attachment circuits. Whether these attachment circuits are specific to a given service or be shared to deliver a variety of services is deployment-specific.
115
+
When a customer requests a new value-added service, the service can be bound to existing attachment circuits or trigger the instantiation of new attachment circuits. Whether these attachment circuits are specific for a given service or are shared to deliver a variety of services is deployment-specific.
126
116
127
117
An example of attachment circuits is depicted in {{uc}}. A Customer Edge (CE) may be a physical node or a logical entity. A CE is seen by the network as a peer Service Attachment Point (SAP) {{?RFC9408}}. CEs may be dedicated to one single service (e.g., Layer 3 Virtual Private Network (VPN) or Layer 2 VPN) or host multiple services (e.g., Service Functions {{?RFC7665}}). A single AC (as seen by a network provider) may be bound to one or multiple peer SAPs (e.g., "CE1" and "CE2"). For example, and as discussed in {{?RFC4364}}, multiple CEs can be attached to a PE over the same attachment circuit. This is typically implemented if the Layer 2 infrastructure between the CE and the network provides a multipoint service. The same CE may terminate multiple ACs. These ACs may be over the same or distinct bearers.
128
118
@@ -211,13 +201,9 @@ To bind Layer 2 VPN or Layer 3 VPN services with ACs, "ietf-ac-glue" augments th
211
201
212
202
# Description of the AC Common YANG Module
213
203
214
-
The full tree diagram of the module can be generated using the
215
-
"pyang"tool {{PYANG}} with "-f tree --tree-print-groupings" command-line parameters. That tree is not included here because it is
216
-
too long ({{Section 3.3 of ?RFC8340}}). Instead, subtrees are provided
204
+
The full tree diagram of the module is provided in {{AC-Common-Tree}}. Subtrees are provided in the following subsections
217
205
for the reader's convenience.
218
206
219
-
> The full tree of the "ietf-ac-common" module is available at {{AC-Common-Tree}}.
220
-
221
207
## Features
222
208
223
209
The module defines the following features:
@@ -248,9 +234,6 @@ The module defines a set of identities, including the following:
248
234
'precedence-type':
249
235
: Used to indicate the redundancy type when requesting ACs. For example, this identity can be used to tag primary and secondary ACs.
250
236
251
-
'bgp-capability':
252
-
: Used to indicate a BGP capability {{!RFC5492}}. Examples of BGP capabilities are Multiprotocol extensions for BGP-4 {{?RFC4760}}, route refresh {{?RFC2918}}, graceful restart {{?RFC4724}}, ADD-PATH {{?RFC7911}}, or BGP Role {{?RFC9234}}}.
253
-
254
237
'role':
255
238
: Used to indicate the type of an AC: User-to-Network Interface (UNI), Network-to-Network Interface (NNI), or public NNI.
: Defines both IPv4 and IPv6 groupings to specify IP address allocation over an AC. Both dynamic and static address schemes are supported.
274
+
: For both IPv4 and IPv6, 'address-allocation-type' is used to indicate the IP address allocation mode to activate. When 'address-allocation-type' is set to 'provider-dhcp', DHCP assignments can be made locally or by an external DHCP server. Such behavior is controlled by setting 'dhcp-service-type'.
275
+
: Note that if 'address-allocation-type' is set to 'slaac', the Prefix Information option of Router Advertisements that will be issued for SLAAC purposes will carry the IPv6 prefix that is determined by 'local-address' and 'prefix-length'.
291
276
292
277
IP connections ({{l3-full-tree}})::
293
278
: Defines IPv4 and IPv6 groupings for managing Layer 3 connectivity over an AC. Both basic and more elaborated IP connection groupings are supported.
@@ -300,7 +285,7 @@ IP connections ({{l3-full-tree}})::
300
285
Routing parameters & OAM ({{rtg-full-tree}}):
301
286
: In addition to static routing, the module supports the following routing protocols: BGP {{!RFC4271}}, OSPF {{!RFC4577}} or {{!RFC6565}}, IS-IS {{ISO10589}}{{!RFC1195}}{{!RFC5308}}, and RIP {{!RFC2453}}. For all supported routing protocols, 'address-family' indicates whether IPv4, IPv6, or both address families are to be activated. For example, this parameter is used to determine whether RIPv2 {{!RFC2453}}, RIP Next Generation (RIPng), or both are to be enabled {{!RFC2080}}. More details about supported routing groupings are provided hereafter:
302
287
303
-
* Authentication: These groupings include the required information to manage the authentication of OSPF, IS-IS, BGP, and RIP. Similar to {{?RFC9182}}, this version of the common AC model assumes that parameters specific to the TCP-AO are preconfigured as part of the key chain that is referenced in the model. No assumption is made about how such a key chain is preconfigured. However, the structure of the key chain should cover data nodes beyond those in {{!RFC8177}}, mainly SendID and RecvID (Section 3.1 of {{!RFC5925}}).
288
+
* Authentication: These groupings include the required information to manage the authentication of OSPF, IS-IS, BGP, and RIP. The groupings support local specification of authentication keys and the associated authentication algorithm to accomodate legacy implementations that do not support key chains {{!RFC8177}}. Similar to {{?RFC9182}}, this version of the common AC model assumes that parameters specific to the TCP-AO are preconfigured as part of the key chain that is referenced in the model. No assumption is made about how such a key chain is preconfigured. However, the structure of the key chain should cover data nodes beyond those in {{!RFC8177}}, mainly SendID and RecvID (Section 3.1 of {{!RFC5925}}).
304
289
305
290
* BGP peer groups: Includes a set of parameters to identify a BGP peer group. Such a group can be defined by providing a local AS Number (ASN), a customer's ASN, and the address families to be activated for this group. BGP peer groups can be identified by a name.
306
291
* Basic parameters: These groupings include the minimal set of routing configuration that is required for the activation of OSPF, IS-IS, BGP, and RIP.
@@ -344,44 +329,43 @@ This module uses types defined in {{!RFC6991}}, {{!RFC8177}}, and {{!RFC9181}}.
344
329
345
330
# Security Considerations
346
331
347
-
This section uses the template described in {{Section 3.7 of ?I-D.ietf-netmod-rfc8407bis}}.
332
+
This section is modeled after the template described in {{Section 3.7 of ?I-D.ietf-netmod-rfc8407bis}}.
348
333
349
-
The YANG module specified in this document defines schema for data
350
-
that is designed to be accessed via network management protocols such
351
-
as NETCONF {{!RFC6241}} or RESTCONF {{!RFC8040}}. The lowest NETCONF layer
352
-
is the secure transport layer, and the mandatory-to-implement secure
353
-
transport is Secure Shell (SSH) {{!RFC6242}}. The lowest RESTCONF layer
354
-
is HTTPS, and the mandatory-to-implement secure transport is TLS
355
-
{{!RFC8446}}.
334
+
The "ietf-ac-common" YANG module defines a data model that is
335
+
designed to be accessed via YANG-based management protocols, such as
336
+
NETCONF {{?RFC6241}} and RESTCONF {{?RFC8040}}. These protocols have to
337
+
use a secure transport layer (e.g., SSH {{?RFC4252}}, TLS {{?RFC8446}}, and
338
+
QUIC {{?RFC9000}}) and have to use mutual authentication.
356
339
357
-
The Network Configuration Access Control Model (NACM) {{!RFC8341}}
358
-
provides the means to restrict access for particular NETCONF or
359
-
RESTCONF users to a preconfigured subset of all available NETCONF or
360
-
RESTCONF protocol operations and content.
340
+
The Network Configuration Access Control Model (NACM) {{!RFC8341}}
341
+
provides the means to restrict access for particular NETCONF or
342
+
RESTCONF users to a preconfigured subset of all available NETCONF or
343
+
RESTCONF protocol operations and content.
361
344
362
-
The "ietf-ac-common" module defines a set of identities, types, and
363
-
groupings. These nodes are intended to be reused by other YANG
364
-
modules. The module by itself does not expose any data nodes that
365
-
are writable, data nodes that contain read-only state, or RPCs.
345
+
The YANG module defines a set of identities, types, and
346
+
groupings. These nodes are intended to be reused by other YANG
347
+
modules. The module by itself does not expose any data nodes that
348
+
are writable, data nodes that contain read-only state, or RPCs.
349
+
As such, there are no additional security issues related to
350
+
the YANG module that need to be considered.
366
351
367
-
YANG modules that use the groupings that are defined in this document
368
-
should identify the corresponding security considerations. For
352
+
Modules that use the groupings that are defined in this document
353
+
should identify the corresponding security considerations. For
369
354
example, reusing some of these groupings will expose privacy-related
370
355
information (e.g., 'ipv6-lan-prefixes' or 'ipv4-lan-prefixes'). Disclosing such information may
371
356
be considered a violation of the customer-provider trust
372
357
relationship.
373
358
374
-
Several groupings ('bgp-authentication', 'ospf-authentication', 'isis-authentication', and 'rip-authentication') rely
359
+
Several groupings ('bgp-authentication', 'ospf-authentication', 'isis-authentication', and 'rip-authentication') rely
375
360
upon {{!RFC8177}} for authentication purposes. As such, modules that will reuse these groupings
376
-
will inherit the security considerations discussed in Section 5 of
377
-
{{!RFC8177}}. Also, these groupings support supplying explicit keys as
361
+
will inherit the security considerations discussed in
362
+
{{Section 5 of !RFC8177}}. Also, these groupings support supplying explicit keys as
378
363
strings in ASCII format. The use of keys in hexadecimal string
379
364
format would afford greater key entropy with the same number of key-
380
365
string octets. However, such a format is not included in this
381
366
version of the common AC model, because it is not supported by the underlying
382
367
device modules (e.g., {{?RFC8695}}).
383
368
384
-
385
369
# IANA Considerations
386
370
387
371
IANA is requested to register the following URI in the "ns" subregistry within
@@ -406,6 +390,12 @@ This section uses the template described in {{Section 3.7 of ?I-D.ietf-netmod-rf
0 commit comments