YANG Data Model for Maximum Segment Identifier (SID) Depth (MSD) Types and MPLS MSD
Extracted elements (20)
MSD identities are organized hierarchically by data plane (msd-base-mpls, msd-base-srh) so that when a new data plane is added to the registry, a new base identity is defined rather than placing all types under a single flat base.
The iana-msd-types module is IANA-maintained and will be updated whenever the 'IGP MSD-Types' registry changes, ensuring the YANG model stays in sync with protocol assignments without requiring a new RFC for each addition.
The node-msds and link-msds data nodes are defined as read-only (config false) because they expose hardware capability, not configurable parameters, reflecting the operational state nature of MSD values.
The ietf-mpls-msd module conforms to the Network Management Datastore Architecture (NMDA) as described in RFC 8342, and imports ietf-routing (RFC 8349) and ietf-mpls (RFC 8960) as dependencies.
New values must not be directly added to the 'iana-msd-types' YANG module; they must instead be added to the 'IGP MSD-Types' registry in the 'Interior Gateway Protocol (IGP) Parameters' registry group.
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 module with name derived from the type name (lowercase, spaces replaced with '-'), appropriate base, description, and reference sub-statements.
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 existing revision statements.
When the 'IGP MSD-Types' registry is modified, the YANG module 'iana-msd-types' must be updated as defined in RFC 9702.
Four SRv6 SRH MSD identities are defined under msd-base-srh: srh-max-sl (Maximum Segments Left), srh-max-end-pop (Maximum End Pop), srh-max-h-encaps (Maximum H.Encaps), and srh-max-end-d (Maximum End D), all referencing RFC 9352.
Identity 'base-mpls-imposition-msd' (base: msd-base-mpls) represents the Base MPLS Imposition MSD type as defined in RFCs 8491 and 8476, also referenced by PCEP (RFC 8664) and BGP-LS (RFC 8814).
Identity 'erld-msd' (base: msd-base-mpls) represents the Entropy Readable Label Depth (ERLD) MSD type used to advertise ERLD capability as defined in RFCs 8662 and 9088.
Module iana-msd-types defines YANG identities for Maximum SID Depth (MSD) Types mirroring the IANA 'IGP MSD-Types' registry, with base identity 'msd-base', and sub-bases 'msd-base-mpls' for MPLS data plane and 'msd-base-srh' for SRH/IPv6 data plane.
Module ietf-mpls-msd augments the IETF MPLS YANG data model (RFC 8960) to expose Node MSD and Link MSD as read-only operational state. Node MSD is the smallest MSD across all links; Link MSD is the MSD supported by a specific interface.
The link-msds container (config false) under /rt:routing/mpls:mpls/mpls:interfaces/mpls:interface holds a list of link-msd entries keyed by msd-type, exposing per-interface MSD hardware capabilities.
The msd-type-value grouping defines two leaves: 'msd-type' (identityref based on iana-msd-types:msd-base-mpls) and 'msd-value' (uint8, range 0-255, where 0 indicates inability to support any SID stack depth).
The node-msds container (config false) under /rt:routing/mpls:mpls holds a list of node-msd entries keyed by msd-type, exposing the node's hardware MSD capabilities per type.
IANA has added a 'Data Plane' column to the 'IGP MSD-Types' registry to identify the base identity for each MSD type. Existing assignments include value 1 (Base MPLS Imposition MSD, MPLS), value 2 (ERLD-MSD, MPLS), values 41-42 and 44-45 (SRH types, SRv6), and values 251-254 (Experimental Use).
RFC 9702 registers two YANG module URIs in the IETF XML registry and two module names in the 'YANG Module Names' registry: 'iana-msd-types' (IANA-maintained) and 'ietf-mpls-msd' (not IANA-maintained).
Exposure of node-msds and link-msds data nodes may be exploited to mount Denial-of-Service (DoS) attacks by sending packets that exceed the router's SID stack processing capability; read access to these nodes should be restricted via NACM (RFC 8341).
YANG modules defined here are accessed via NETCONF (mandatory secure transport: SSH per RFC 6242) or RESTCONF (mandatory secure transport: TLS per RFC 8446); NACM (RFC 8341) should be used to restrict access to sensitive MSD data nodes.