rfc9702.original | rfc9702.txt | |||
---|---|---|---|---|
MPLS Working Group Y. Qu | Internet Engineering Task Force (IETF) Y. Qu | |||
Internet-Draft Futurewei Technologies | Request for Comments: 9702 Futurewei Technologies | |||
Intended status: Standards Track A. Lindem | Category: Standards Track A. Lindem | |||
Expires: 6 January 2025 LabN Consulting, L.L.C. | ISSN: 2070-1721 LabN Consulting, L.L.C. | |||
S. Litkowski | S. Litkowski | |||
Cisco Systems | Cisco Systems | |||
J. Tantsura | J. Tantsura | |||
Nvidia | Nvidia | |||
5 July 2024 | December 2024 | |||
YANG Data Model for Maximum SID Depth Types and MPLS Maximum SID Depth | YANG Data Model for Maximum Segment Identifier (SID) Depth (MSD) Types | |||
draft-ietf-mpls-msd-yang-12 | and MPLS MSD | |||
Abstract | Abstract | |||
This document defines two YANG data modules. The first is the | This document defines two YANG modules. The first module is the | |||
initial version of the IANA-maintained YANG module for Maximum | initial version of the IANA-maintained YANG module for Maximum | |||
Segment Identifier (SID) Depths (MSDs) Types, which includes | Segment Identifier (SID) Depth (MSD) Types, which includes identities | |||
identities for both the MPLS and SRv6 data planes. The second | for both the MPLS data plane and Segment Routing over IPv6 (SRv6) | |||
augments the IETF MPLS YANG model to provide support for MPLS MSDs as | data plane. The second module augments the IETF MPLS YANG data model | |||
defined in RFC 8476 and RFC 8491. | to provide support for MPLS MSDs as defined in RFCs 8476 and 8491. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | ||||
Task Force (IETF). Note that other groups may also distribute | ||||
working documents as Internet-Drafts. The list of current Internet- | ||||
Drafts is at https://datatracker.ietf.org/drafts/current/. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document is a product of the Internet Engineering Task Force | |||
and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
Internet Standards is available in Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on 6 January 2025. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
https://www.rfc-editor.org/info/rfc9702. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2024 IETF Trust and the persons identified as the | Copyright (c) 2024 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents | |||
license-info) in effect on the date of publication of this document. | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | ||||
Please review these documents carefully, as they describe your rights | carefully, as they describe your rights and restrictions with respect | |||
and restrictions with respect to this document. Code Components | to this document. Code Components extracted from this document must | |||
extracted from this document must include Revised BSD License text as | include Revised BSD License text as described in Section 4.e of the | |||
described in Section 4.e of the Trust Legal Provisions and are | Trust Legal Provisions and are provided without warranty as described | |||
provided without warranty as described in the Revised BSD License. | in the Revised BSD License. | |||
Table of Contents | Table of Contents | |||
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Overview | |||
2. Design of the Model . . . . . . . . . . . . . . . . . . . . . 2 | 2. Design of the Model | |||
2.1. IANA MSD Types Module . . . . . . . . . . . . . . . . . . 3 | 2.1. IANA MSD Types Module | |||
2.2. IETF MPLS MSD Module . . . . . . . . . . . . . . . . . . 3 | 2.2. IETF MPLS MSD Module | |||
3. Tree for IETF MPLS MSD Types YANG Module . . . . . . . . . . 3 | 3. Tree for IETF MPLS MSD Types YANG Module | |||
4. YANG Modules . . . . . . . . . . . . . . . . . . . . . . . . 4 | 4. YANG Modules | |||
4.1. IANA-Maintained Module for MSD-Types . . . . . . . . . . 4 | 4.1. IANA-Maintained Module for MSD-Types | |||
4.2. MPLS MSD YANG . . . . . . . . . . . . . . . . . . . . . . 7 | 4.2. MPLS MSD YANG | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 9 | 5. Security Considerations | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 6. IANA Considerations | |||
6.1. Registering YANG Modules . . . . . . . . . . . . . . . . 10 | 6.1. Registering YANG Modules | |||
6.2. IANA MSD-Types Module . . . . . . . . . . . . . . . . . . 11 | 6.2. IANA MSD-Types Module | |||
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12 | 7. References | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7.1. Normative References | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . 13 | 7.2. Informative References | |||
8.2. Informative References . . . . . . . . . . . . . . . . . 14 | Acknowledgements | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 | Authors' Addresses | |||
1. Overview | 1. Overview | |||
There are two YANG modules defined in this document. Module iana- | There are two YANG modules [RFC7950] defined in this document. | |||
msd-types defines the identities for Maximum Segment Identifier (SID) | Module iana-msd-types defines the identities for Maximum SID Depth | |||
Depth (MSD) Types as per the IANA IGP MSD-Types registry | (MSD) Types as per the "IGP MSD-Types" IANA registry | |||
[IANA-IGP-MSD-Types], which include MSD types for both the MPLS data | [IANA-IGP-MSD-Types], which includes MSD types for both the MPLS and | |||
plane and the SRv6 data plane. This document also defines module | SRv6 data planes. This document also defines module ietf-mpls-msd | |||
ietf-mpls-msd augmenting the IETF MPLS YANG model [RFC8960], which | augmenting the IETF MPLS YANG data model [RFC8960], which augments | |||
itself augments the routing RIB data model [RFC8349], to provide | the routing RIB data model [RFC8349] to provide operational state for | |||
operational state for various MSDs[RFC8662] for the MPLS data plane. | various MSDs [RFC8662] for the MPLS data plane. The module augments | |||
The module augments the base MPLS model with a list of various types | the base MPLS model with a list of various types of Node MSDs as well | |||
of node MSDs, as well as various types of MSDs on links. | as various types of MSDs on links. | |||
The YANG modules in this document conform to the Network Management | The YANG modules in this document conform to the Network Management | |||
Datastore Architecture (NMDA) [RFC8342]. | Datastore Architecture (NMDA) [RFC8342]. | |||
2. Design of the Model | 2. Design of the Model | |||
2.1. IANA MSD Types Module | 2.1. IANA MSD Types Module | |||
IANA has created an IANA-managed registry titled "IGP MSD-Types" | IANA has created a registry titled "IGP MSD-Types" under the | |||
under the "Interior Gateway Protocol (IGP) Parameters" registry to | "Interior Gateway Protocol (IGP) Parameters" registry group to | |||
identify MSD-Types. Module iana-msd-types is an IANA-maintained | identify MSD-Types. Module iana-msd-types is an IANA-maintained | |||
module, which defines the identities for the MSD-Types as in the IANA | module, which defines the identities for the MSD-Types as in the IANA | |||
IGP MSD-Types registry. | "IGP MSD-Types" registry. This module references [RFC8476], | |||
[RFC8491], [RFC8662], [RFC8664], [RFC8814], [RFC9088], and [RFC9352]. | ||||
On top of the base identity "msd-base", identity "msd-base-mpls" is | On top of the base identity "msd-base", identity "msd-base-mpls" is | |||
defined to serve as the base for MSD types for MPLS data plane, and | defined to serve as the base for MSD types for the MPLS data plane, | |||
identity "msd-base-srh" is defined to serve as the base for MSD types | and identity "msd-base-srh" is defined to serve as the base for MSD | |||
for Segment Routing Header (SRH) in IPv6 data plane. | types for the Segment Routing Header (SRH) in the IPv6 data plane. | |||
This module will be maintained by IANA and updated if and when there | This module is maintained by IANA and will be updated if and when | |||
is any change to the registry. | there is any change to the registry. | |||
2.2. IETF MPLS MSD Module | 2.2. IETF MPLS MSD Module | |||
Module ietf-mpls-msd augments the base MPLS model [RFC8960], and it | Module ietf-mpls-msd augments the base MPLS model [RFC8960], and it | |||
provides support of different types of MSDs in MPLS data plane. | provides support of different types of MSDs in the MPLS data plane. | |||
As defined in [RFC8491], a Link MSD is the number of SIDs supported | As defined in [RFC8491], a Link MSD is the number of SIDs supported | |||
by a node's link, while a Node MSD is the smallest MSD supported by | by a node's link, while a Node MSD is the smallest MSD supported by | |||
the node across all its interfaces. The module defines lists of MSDs | the node across all its interfaces. The module defines lists of MSDs | |||
with different MSD Types for a node and links. Please note that | with different MSD Types for a node and links. Please note that | |||
these are read-only data as per the node's hardware capability. | these are read-only data as per the node's hardware capability. | |||
3. Tree for IETF MPLS MSD Types YANG Module | 3. Tree for IETF MPLS MSD Types YANG Module | |||
This document uses the graphical representation of data models per | This document uses the graphical representation of data models per | |||
skipping to change at page 4, line 12 ¶ | skipping to change at line 144 ¶ | |||
+--ro msd-type identityref | +--ro msd-type identityref | |||
+--ro msd-value? uint8 | +--ro msd-value? uint8 | |||
4. YANG Modules | 4. YANG Modules | |||
There are two YANG modules defined in this document. | There are two YANG modules defined in this document. | |||
4.1. IANA-Maintained Module for MSD-Types | 4.1. IANA-Maintained Module for MSD-Types | |||
This document defines the initial version of the IANA-maintained YANG | This document defines the initial version of the IANA-maintained YANG | |||
module for MSD Types, which mirrors the IANA IGP MSD-Types registry | module for MSD Types that mirrors the IANA "IGP MSD-Types" registry | |||
[IANA-IGP-MSD-Types]. | [IANA-IGP-MSD-Types]. | |||
<CODE BEGINS> file "iana-msd-types@2024-07-04.yang" | <CODE BEGINS> file "iana-msd-types@2024-07-04.yang" | |||
module iana-msd-types { | module iana-msd-types { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:iana-msd-types"; | namespace "urn:ietf:params:xml:ns:yang:iana-msd-types"; | |||
prefix iana-msd-types; | prefix iana-msd-types; | |||
organization | organization | |||
"Internet Assigned Numbers Authority (IANA)"; | "Internet Assigned Numbers Authority (IANA)"; | |||
skipping to change at page 4, line 52 ¶ | skipping to change at line 184 ¶ | |||
Copyright (c) 2024 IETF Trust and the persons identified as | Copyright (c) 2024 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 to | without modification, is permitted pursuant to, and subject to | |||
the license terms contained in, the Revised BSD License set | the license terms contained in, the Revised BSD License set | |||
forth in Section 4.c of the IETF Trust's Legal Provisions | 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 initial version of this YANG module is part of RFC XXXX | This initial version of this YANG module is part of RFC 9702 | |||
(https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself | (https://www.rfc-editor.org/info/rfc9702); see the RFC itself | |||
for full legal notices. | for full legal notices. | |||
//RFC Ed.: replace XXXX with actual RFC number and remove | ||||
this note | ||||
//RFC Ed.: replace IANA_FOO_URL and remove this note. | ||||
The latest version of this YANG module is available at | The latest version of this YANG module is available at | |||
<IANA_FOO_URL>."; | https://www.iana.org/assignments/yang-parameters."; | |||
revision 2024-07-04 { | revision 2024-07-04 { | |||
description | description | |||
"Initial Version"; | "Initial Version"; | |||
reference | reference | |||
"RFC XXXX: YANG Data Model for Maximum SID Depth Types and | "RFC 9702: YANG Data Model for Maximum Segment Identifier (SID) | |||
MPLS Maximum SID Depth"; | Depth Types and MPLS Maximum SID Depth"; | |||
} | } | |||
identity msd-base { | identity msd-base { | |||
description | description | |||
"Base identity for Maximum SID Depth (MSD) Type. The MSD type | "Base identity for Maximum SID Depth (MSD) Type. The MSD type | |||
definition is defined in IANA IGP MSD-Types registry."; | definition is defined in the IANA 'IGP MSD-Types' registry."; | |||
} | } | |||
identity msd-base-mpls { | identity msd-base-mpls { | |||
base msd-base; | base msd-base; | |||
description | description | |||
"Base identity of MSD types for MPLS data plane."; | "Base identity of MSD types for the MPLS data plane."; | |||
} | } | |||
identity base-mpls-imposition-msd { | identity base-mpls-imposition-msd { | |||
base msd-base-mpls; | base msd-base-mpls; | |||
description | description | |||
"Base MPLS Imposition MSD."; | "Base MPLS Imposition MSD."; | |||
reference | reference | |||
"RFC 8491: Signaling Maximum SID Depth (MSD) using IS-IS | "RFC 8491: Signaling Maximum SID Depth (MSD) Using IS-IS | |||
RFC 8476: Signaling Maximum SID Depth (MSD) using OSPF | RFC 8476: Signaling Maximum SID Depth (MSD) Using OSPF | |||
RFC 8664: Path Computation Element Communication Protocol | RFC 8664: Path Computation Element Communication Protocol | |||
(PCEP) Extensions for Segment Routing | (PCEP) Extensions for Segment Routing | |||
RFC 8814: Signaling Maximum SID Depth (MSD) Using the Border | RFC 8814: Signaling Maximum SID Depth (MSD) Using the Border | |||
Gateway Protocol - Link State"; | Gateway Protocol - Link State"; | |||
} | } | |||
identity erld-msd { | identity erld-msd { | |||
base msd-base-mpls; | base msd-base-mpls; | |||
description | description | |||
"msd-erld is defined to advertise the Entropy Readable | "msd-erld is defined to advertise the Entropy Readable | |||
skipping to change at page 7, line 4 ¶ | skipping to change at line 276 ¶ | |||
over the IPv6 Data Plane"; | over the IPv6 Data Plane"; | |||
} | } | |||
identity srh-max-end-d { | identity srh-max-end-d { | |||
base msd-base-srh; | base msd-base-srh; | |||
description | description | |||
"The Maximum End D MSD Type."; | "The Maximum End D MSD Type."; | |||
reference | reference | |||
"RFC 9352: IS-IS Extensions to Support Segment Routing | "RFC 9352: IS-IS Extensions to Support Segment Routing | |||
over the IPv6 Data Plane"; | over the IPv6 Data Plane"; | |||
} | } | |||
} | } | |||
<CODE ENDS> | <CODE ENDS> | |||
4.2. MPLS MSD YANG | 4.2. MPLS MSD YANG | |||
This document also defines a YANG module for MSD extensions | This document also defines a YANG module for MSD extensions [RFC8476] | |||
[RFC8476][RFC8491] to MPLS base model as defined in [RFC8960]. | [RFC8491] to the MPLS base model as defined in [RFC8960]. | |||
<CODE BEGINS> file "ietf-mpls-msd@2024-07-05.yang" | <CODE BEGINS> file "ietf-mpls-msd@2024-07-05.yang" | |||
module ietf-mpls-msd { | module ietf-mpls-msd { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-msd"; | namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-msd"; | |||
prefix mpls-msd; | prefix mpls-msd; | |||
import ietf-routing { | import ietf-routing { | |||
prefix rt; | prefix rt; | |||
reference | reference | |||
skipping to change at page 7, line 52 ¶ | skipping to change at line 323 ¶ | |||
<mailto:yingzhen.ietf@gmail.com> | <mailto:yingzhen.ietf@gmail.com> | |||
Author: Acee Lindem | Author: Acee Lindem | |||
<mailto:acee.ietf@gmail.com> | <mailto:acee.ietf@gmail.com> | |||
Author: Stephane Litkowski | Author: Stephane Litkowski | |||
<mailto:slitkows.ietf@gmail.com> | <mailto:slitkows.ietf@gmail.com> | |||
Author: Jeff Tantsura | Author: Jeff Tantsura | |||
<mailto:jefftant.ietf@gmail.com> | <mailto:jefftant.ietf@gmail.com> | |||
"; | "; | |||
description | description | |||
"The YANG module augments the base MPLS model, and it is to | "This YANG module augments the base MPLS model, and it is to | |||
provide support for different types of Maximum SID Depth (MSD). | provide support for different types of Maximum SID Depth (MSD). | |||
This YANG model conforms to the Network Management | This YANG module conforms to the Network Management | |||
Datastore Architecture (NMDA) as described in RFC 8342. | Datastore Architecture (NMDA) as described in RFC 8342. | |||
Copyright (c) 2024 IETF Trust and the persons identified as | Copyright (c) 2024 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 to | without modification, is permitted pursuant to, and subject to | |||
the license terms contained in, the Revised BSD License set | the license terms contained in, the Revised BSD License set | |||
forth in Section 4.c of the IETF Trust's Legal Provisions | forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC XXXX; | This version of this YANG module is part of RFC 9702; | |||
see the RFC itself for full legal notices."; | see the RFC itself for full legal notices."; | |||
revision 2024-07-05 { | revision 2024-07-05 { | |||
description | description | |||
"Initial Version"; | "Initial Version"; | |||
reference | reference | |||
"RFC XXXX: YANG Data Model for Maximum SID Depth Types and | "RFC 9702: YANG Data Model for Maximum Segment Identifier (SID) | |||
MPLS Maximum SID Depth"; | Depth Types and MPLS Maximum SID Depth"; | |||
} | } | |||
grouping msd-type-value { | grouping msd-type-value { | |||
description | description | |||
"Grouping for MSD type and value."; | "Grouping for MSD type and value."; | |||
leaf msd-type { | leaf msd-type { | |||
type identityref { | type identityref { | |||
base iana-msd-types:msd-base-mpls; | base iana-msd-types:msd-base-mpls; | |||
} | } | |||
description | description | |||
"MSD types. The MSD type is defined in IANA IGP | "MSD types. The MSD type is defined in IANA 'IGP | |||
MSD-Types registry."; | MSD-Types' registry."; | |||
} | } | |||
leaf msd-value { | leaf msd-value { | |||
type uint8; | type uint8; | |||
description | description | |||
"MSD value, in the range of 0-255. 0 represents the lack | "MSD value, in the range of 0-255. 0 represents the lack | |||
of ability to support a SID stack of any depth."; | of ability to support a SID stack of any depth."; | |||
} | } | |||
} | } | |||
augment "/rt:routing/mpls:mpls" { | augment "/rt:routing/mpls:mpls" { | |||
description | description | |||
"This module augments MPLS data model (RFC 8960) | "This module augments MPLS data model (RFC 8960) | |||
with node MSD."; | with Node MSD."; | |||
container node-msds { | container node-msds { | |||
config false; | config false; | |||
description | description | |||
"Maximum SID Depth (MSD) of a node."; | "Maximum SID Depth (MSD) of a node."; | |||
list node-msd { | list node-msd { | |||
key "msd-type"; | key "msd-type"; | |||
uses msd-type-value; | uses msd-type-value; | |||
description | description | |||
"List of different types of node MSDs. For the same | "List of different types of Node MSDs. For the same | |||
type, the value of node MSD is the smallest among link MSD | type, the value of Node MSD is the smallest among Link MSD | |||
values."; | values."; | |||
} | } | |||
} | } | |||
} | } | |||
augment "/rt:routing/mpls:mpls/mpls:interfaces/mpls:interface" { | augment "/rt:routing/mpls:mpls/mpls:interfaces/mpls:interface" { | |||
description | description | |||
"This module augments MPLS data model (RFC 8960) | "This module augments MPLS data model (RFC 8960) | |||
with link MSD."; | with Link MSD."; | |||
container link-msds { | container link-msds { | |||
config false; | config false; | |||
description | description | |||
"Maximum SID Depth (MSD) of an interface."; | "Maximum SID Depth (MSD) of an interface."; | |||
list link-msd { | list link-msd { | |||
key "msd-type"; | key "msd-type"; | |||
uses msd-type-value; | uses msd-type-value; | |||
description | description | |||
"List of different types of MSDs on the link."; | "List of different types of MSDs on the link."; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
<CODE ENDS> | <CODE ENDS> | |||
5. Security Considerations | 5. Security Considerations | |||
The YANG modules specified in this document define a schema for data | The YANG modules specified in this document define a schema for data | |||
that is designed to be accessed via network management protocols such | that is designed to be accessed via network management protocols such | |||
as NETCONF [RFC6241] or RESTCONF [RFC8040]. These network management | as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer | |||
protocols are required to use a secure transport layer and mutual | is the secure transport layer, and the mandatory-to-implement secure | |||
authentication, e.g., SSH [RFC6242] without the "none" authentication | transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer | |||
option, Transport Layer Security (TLS) [RFC8446] with mutual X.509 | is HTTPS, and the mandatory-to-implement secure transport is TLS | |||
authentication, and HTTPS with HTTP authentication (Section 11 of | [RFC8446]. | |||
[RFC9110]). | ||||
The NETCONF Access Control Model (NACM) [RFC8341] provides the means | The Network Configuration Access Control Model (NACM) [RFC8341] | |||
to restrict access for particular NETCONF or RESTCONF users to a pre- | provides the means to restrict access for particular NETCONF or | |||
configured subset of all available NETCONF or RESTCONF protocol | RESTCONF users to a pre-configured subset of all available NETCONF or | |||
operations and content. | RESTCONF protocol operations and content. | |||
Some of the readable data nodes in the ietf-mpls-msd YANG module may | Some of the readable data nodes in the ietf-mpls-msd YANG module may | |||
be considered sensitive or vulnerable in some network environments. | be considered sensitive or vulnerable in some network environments. | |||
It is thus important to control read access (e.g., via get, get- | It is thus important to control read access (e.g., via get, get- | |||
config, or notification) to these data nodes. These are the subtrees | config, or notification) to these data nodes. These are the subtrees | |||
and data nodes and their sensitivity/vulnerability: | and data nodes and their sensitivity/vulnerability: | |||
/rt:routing/mpls:mpls/msd/node-msds | /rt:routing/mpls:mpls/msd/node-msds | |||
/rt:routing/mpls:mpls/msd/link-msds | /rt:routing/mpls:mpls/msd/link-msds | |||
Exposure of the node's maximum SID depth may be useful in mounting | Exposure of the node's maximum SID depth may be useful in mounting | |||
a Denial-of-Service (DoS) attack by sending packets to the node | a Denial-of-Service (DoS) attack by sending packets to the node | |||
that the router can't process. | that the router can't process. | |||
The iana-msd-types YANG module defines a set of identities, which | The iana-msd-types YANG module defines a set of identities that | |||
mirrors the IANA IGP MSD-Types registry. These identities are | mirror the IANA "IGP MSD-Types" registry. These identities are | |||
intended to be reused by other YANG modules. The module by itself | intended to be reused by other YANG modules. The module by itself | |||
does not expose any data nodes that are writable or readable. As | does not expose any data nodes that are writable or readable. As | |||
such, there are no additional security issues related to this YANG | such, there are no additional security issues related to this YANG | |||
module that need to be considered. | module that need to be considered. | |||
6. IANA Considerations | 6. IANA Considerations | |||
6.1. Registering YANG Modules | 6.1. Registering YANG Modules | |||
This document registers URIs in the IETF XML registry [RFC3688]. | This document registers URIs in the IETF XML registry as defined in | |||
Following the format in [RFC3688], the following registrations are | [RFC3688]. The following registrations have been made: | |||
requested to be made: | ||||
URI: urn:ietf:params:xml:ns:yang:iana-msd-types | URI: urn:ietf:params:xml:ns:yang:iana-msd-types | |||
Registrant Contact: The IESG. | Registrant Contact: The IESG. | |||
XML: N/A, the requested URI is an XML namespace. | XML: N/A; the requested URI is an XML namespace. | |||
URI: urn:ietf:params:xml:ns:yang:ietf-mpls-msd | URI: urn:ietf:params:xml:ns:yang:ietf-mpls-msd | |||
Registrant Contact: The IESG. | Registrant Contact: The IESG. | |||
XML: N/A, the requested URI is an XML namespace. | XML: N/A; the requested URI is an XML namespace. | |||
This document registers the YANG modules in the YANG Module Names | This document registers the YANG modules in the "YANG Module Names" | |||
registry [RFC6020]. | registry as defined in [RFC6020]. | |||
name: iana-msd-types | Name: iana-msd-types | |||
Maintained by IANA? Y | Maintained by IANA? Y | |||
namespace: urn:ietf:params:xml:ns:yang:iana-msd-types | Namespace: urn:ietf:params:xml:ns:yang:iana-msd-types | |||
prefix: iana-msd-types | Prefix: iana-msd-types | |||
reference: RFC XXXX | Reference: RFC 9702 | |||
name: ietf-mpls-msd | Name: ietf-mpls-msd | |||
Maintained by IANA? N | Maintained by IANA? N | |||
namespace: urn:ietf:params:xml:ns:yang:ietf-mpls-msd | Namespace: urn:ietf:params:xml:ns:yang:ietf-mpls-msd | |||
prefix: mpls-msd | Prefix: mpls-msd | |||
reference: RFC XXXX | Reference: RFC 9702 | |||
6.2. IANA MSD-Types Module | 6.2. IANA MSD-Types Module | |||
This document defines the initial version of the IANA-maintained | This document defines the initial version of the IANA-maintained | |||
"iana-msd-types" YANG module Section 4.1. The latest version of the | "iana-msd-types" YANG module (Section 4.1). The latest version of | |||
YANG module is available from the "YANG Parameters" registry | the YANG module is available from the "YANG Parameters" registry | |||
[IANA-YANG-Parameters]. | [IANA-YANG-Parameters]. | |||
IANA is requested to add this note to the "YANG Module Names" | IANA has added this note to the "YANG Module Names" registry: | |||
registry: | ||||
MSD Types must not be added directly to the iana-msd-types YANG | | New values must not be directly added to the "iana-msd-types" YANG | |||
module. They must first be added to [IANA-IGP-MSD-Types], which | | module. They must instead be added to the "IGP MSD-Types" | |||
it mirrors. | | registry in the "Interior Gateway Protocol (IGP) Parameters" | |||
| registry group [IANA-IGP-MSD-Types]. | ||||
The identities defined in the iana-msd-types YANG module are | The identities defined in the iana-msd-types YANG module are | |||
organized hierarchically based on the data plane. In this initial | organized hierarchically based on the data plane. In this initial | |||
version, only MPLS and SRv6 data planes are supported, hence "msd- | version, only MPLS and SRv6 data planes are supported, hence "msd- | |||
base-mpls" and "msd-base-srh" are defined. When a new data plane is | base-mpls" and "msd-base-srh" are defined. When a new data plane is | |||
added to the "IGP MSD-Types" registry, a new "identity" statement | added to the "IGP MSD-Types" registry, a new "identity" statement | |||
should be added to the "iana-msd-types" YANG module. The name of the | should be added to the "iana-msd-types" YANG module. The name of the | |||
"identity" is the prefix "msd-base-" plus a lower-case version of the | "identity" is the prefix "msd-base-" plus a lowercase version of the | |||
data plane name . The identity statement should have the following | data plane name. The identity statement should have the following | |||
sub-statements defined: | sub-statements defined: | |||
"base": Contains 'msd-base'. | "base": Contains 'msd-base'. | |||
"description": Replicates the description from "msd-base-mpls" and | "description": Replicates the description from "msd-base-mpls" and | |||
change the corresponding data plane name. | changes the corresponding data plane name. | |||
"reference": Replicates the reference from the registry with the | "reference": Replicates the reference from the registry with the | |||
title of the document added. | title of the document added. | |||
When an MSD type is added to the "IGP MSD-Types" registry, a new | When an MSD type is added to the "IGP MSD-Types" registry, a new | |||
"identity" statement must be added to the "iana-msd-types" YANG | "identity" statement must be added to the "iana-msd-types" YANG | |||
module. Then name of the "identity" is a lower-case version of the | module. The name of the "identity" is a lowercase version of the | |||
type name provided in the name with the space replaced with "-". The | type name provided in the name with the space replaced with "-". The | |||
"identity" statement should have the following sub-statements | "identity" statement should have the following sub-statements | |||
defined: | defined: | |||
"base": Contains the base name of the corresponding data | "base": Contains the base name of the corresponding data plane. | |||
plane. | ||||
"description": Replicates the name from the registry. | "description": Replicates the name from the registry. | |||
"reference": Replicates the reference from the registry with the | "reference": Replicates the reference from the registry with the | |||
title of the document added. | title of the document added. | |||
Unassigned or reserved values are not present in the module. | Unassigned or reserved values are not present in the module. | |||
When the "iana-msd-types" YANG module is updated, a new "revision" | When the "iana-msd-types" YANG module is updated, a new "revision" | |||
statement with a unique revision date must be added in front of the | statement with a unique revision date must be added in front of the | |||
existing revision statements. | existing revision statements. | |||
IANA is requested to the add a "data-plane" column to the "IGP MSD- | IANA has added a "Data Plane" column to the "IGP MSD-Types" registry. | |||
Types" registry. This will unequivocally identify the base identity | This will unequivocally identify the base identity for MSD-Types. | |||
for MSD-Types. The values for the Data-Plane column for existing | The values for the "Data Plane" column for existing MSD-Types are: | |||
MSD-Types are: | ||||
Value Name Data-Plane Reference | ||||
0 Reserved N/A [RFC8491] | ||||
1 Base MPLS Imposition MSD MPLS [RFC8491] | ||||
2 ERLD-MSD MPLS [RFC9088] | ||||
3-40 Unassigned N/A | ||||
41 SRH Max SL SRv6 [RFC9352] | ||||
42 SRH Max End Pop SRv6 [RFC9352] | ||||
43 Unassigned N/A | ||||
44 SRH Max H.encaps SRv6 [RFC9352] | ||||
45 SRH Max End SRv6 [RFC9352] | ||||
46-250 Unassigned N/A | ||||
251-254 Experimental Use N/A [RFC8491] | ||||
255 Reserved N/A [RFC8491] | ||||
IANA is requested to add this note to [IANA-IGP-MSD-Types]: | ||||
When this registry is modified, the YANG module "iana-msd-types" | ||||
must be updated as defined in RFC XXXX. | ||||
7. Acknowledgements | +=========+==========================+============+===========+ | |||
| Value | Name | Data Plane | Reference | | ||||
+=========+==========================+============+===========+ | ||||
| 0 | Reserved | | [RFC8491] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 1 | Base MPLS Imposition MSD | MPLS | [RFC8491] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 2 | ERLD-MSD | MPLS | [RFC9088] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 3-40 | Unassigned | | | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 41 | SRH Max SL | SRv6 | [RFC9352] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 42 | SRH Max End Pop | SRv6 | [RFC9352] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 43 | Unassigned | | | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 44 | SRH Max H.encaps | SRv6 | [RFC9352] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 45 | SRH Max End | SRv6 | [RFC9352] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 46-250 | Unassigned | | | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 251-254 | Experimental Use | | [RFC8491] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
| 255 | Reserved | | [RFC8491] | | ||||
+---------+--------------------------+------------+-----------+ | ||||
This document was produced using Marshall Rose's xml2rfc tool. | Table 1 | |||
The YANG model was developed using the suite of YANG tools written | IANA has added this note to [IANA-IGP-MSD-Types]: | |||
and maintained by numerous authors. | ||||
We would like to thank Jan Lindblad, Tom Petch, Dhruv Dhody, Mohamed | | When this registry is modified, the YANG module "iana-msd-types" | |||
Boucadair and Susan Hares for their reviews and comments. | | must be updated as defined in RFC 9702. | |||
8. References | 7. References | |||
8.1. Normative References | 7.1. Normative References | |||
[IANA-IGP-MSD-Types] | [IANA-IGP-MSD-Types] | |||
IANA, "IGP MSD-Types", <https://www.iana.org/assignments/ | IANA, "IGP MSD-Types", | |||
igp-parameters/igp-parameters.xhtml#igp-msd-types>. | <https://www.iana.org/assignments/igp-parameters>. | |||
[IANA-YANG-Parameters] | [IANA-YANG-Parameters] | |||
IANA, "YANG Module Names", | IANA, "YANG Module Names", | |||
<https://www.iana.org/assignments/yang-parameters>. | <https://www.iana.org/assignments/yang-parameters>. | |||
[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>. | |||
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
skipping to change at page 14, line 40 ¶ | skipping to change at line 641 ¶ | |||
YANG Data Model for MPLS Base", RFC 8960, | YANG Data Model for MPLS Base", RFC 8960, | |||
DOI 10.17487/RFC8960, December 2020, | DOI 10.17487/RFC8960, December 2020, | |||
<https://www.rfc-editor.org/info/rfc8960>. | <https://www.rfc-editor.org/info/rfc8960>. | |||
[RFC9088] Xu, X., Kini, S., Psenak, P., Filsfils, C., Litkowski, S., | [RFC9088] Xu, X., Kini, S., Psenak, P., Filsfils, C., Litkowski, S., | |||
and M. Bocci, "Signaling Entropy Label Capability and | and M. Bocci, "Signaling Entropy Label Capability and | |||
Entropy Readable Label Depth Using IS-IS", RFC 9088, | Entropy Readable Label Depth Using IS-IS", RFC 9088, | |||
DOI 10.17487/RFC9088, August 2021, | DOI 10.17487/RFC9088, August 2021, | |||
<https://www.rfc-editor.org/info/rfc9088>. | <https://www.rfc-editor.org/info/rfc9088>. | |||
[RFC9110] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, | ||||
Ed., "HTTP Semantics", STD 97, RFC 9110, | ||||
DOI 10.17487/RFC9110, June 2022, | ||||
<https://www.rfc-editor.org/info/rfc9110>. | ||||
[RFC9352] Psenak, P., Ed., Filsfils, C., Bashandy, A., Decraene, B., | [RFC9352] Psenak, P., Ed., Filsfils, C., Bashandy, A., Decraene, B., | |||
and Z. Hu, "IS-IS Extensions to Support Segment Routing | and Z. Hu, "IS-IS Extensions to Support Segment Routing | |||
over the IPv6 Data Plane", RFC 9352, DOI 10.17487/RFC9352, | over the IPv6 Data Plane", RFC 9352, DOI 10.17487/RFC9352, | |||
February 2023, <https://www.rfc-editor.org/info/rfc9352>. | February 2023, <https://www.rfc-editor.org/info/rfc9352>. | |||
8.2. Informative References | 7.2. Informative References | |||
[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>. | |||
[RFC8662] Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., | [RFC8662] Kini, S., Kompella, K., Sivabalan, S., Litkowski, S., | |||
Shakir, R., and J. Tantsura, "Entropy Label for Source | Shakir, R., and J. Tantsura, "Entropy Label for Source | |||
Packet Routing in Networking (SPRING) Tunnels", RFC 8662, | Packet Routing in Networking (SPRING) Tunnels", RFC 8662, | |||
DOI 10.17487/RFC8662, December 2019, | DOI 10.17487/RFC8662, December 2019, | |||
<https://www.rfc-editor.org/info/rfc8662>. | <https://www.rfc-editor.org/info/rfc8662>. | |||
[RFC8664] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., | ||||
and J. Hardwick, "Path Computation Element Communication | ||||
Protocol (PCEP) Extensions for Segment Routing", RFC 8664, | ||||
DOI 10.17487/RFC8664, December 2019, | ||||
<https://www.rfc-editor.org/info/rfc8664>. | ||||
[RFC8814] Tantsura, J., Chunduri, U., Talaulikar, K., Mirsky, G., | ||||
and N. Triantafillis, "Signaling Maximum SID Depth (MSD) | ||||
Using the Border Gateway Protocol - Link State", RFC 8814, | ||||
DOI 10.17487/RFC8814, August 2020, | ||||
<https://www.rfc-editor.org/info/rfc8814>. | ||||
Acknowledgements | ||||
The YANG data model was developed using the suite of YANG tools | ||||
written and maintained by numerous authors. | ||||
We would like to thank Jan Lindblad, Tom Petch, Dhruv Dhody, Mohamed | ||||
Boucadair, and Susan Hares for their reviews and comments. | ||||
Authors' Addresses | Authors' Addresses | |||
Yingzhen Qu | Yingzhen Qu | |||
Futurewei Technologies | Futurewei Technologies | |||
Email: yingzhen.ietf@gmail.com | Email: yingzhen.ietf@gmail.com | |||
Acee Lindem | Acee Lindem | |||
LabN Consulting, L.L.C. | LabN Consulting, L.L.C. | |||
Email: acee.ietf@gmail.com | Email: acee.ietf@gmail.com | |||
End of changes. 65 change blocks. | ||||
189 lines changed or deleted | 198 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |