Clarification of Segment ID Sub-TLV Length for RFC 8287
updates
- rfc-8287 — Label Switched Path (LSP) Ping/Traceroute for Segment Routing (SR) IGP-Prefix and IGP-Adjacency Segment Identifiers (SIDs) with MPLS Data Planes
Extracted elements (10)
The length clarification was necessitated by an ambiguity in RFC 8287 that led to real interoperability failures observed during European Advanced Network Test Center (EANTC) testing, demonstrating that underspecified length fields in TLV formats cause implementation divergence.
RFC 8287 did not sufficiently clarify how the length of the Segment ID sub-TLVs should be computed, resulting in interoperability issues discovered during EANTC testing. RFC 8690 resolves this ambiguity by specifying explicit length values.
For the IGP-Adjacency Segment ID sub-TLV, the length MUST be calculated by including 2 octets of the Reserved field, with the total length varying by Adjacency Type and Protocol (e.g., OSPF Parallel/IPv4/Unnumbered = 20, OSPF IPv6 = 44, ISIS Parallel/IPv4/Unnumbered = 24, ISIS IPv6 = 48).
The sub-TLV length for the IPv4 IGP-Prefix Segment ID MUST be set to 8.
The sub-TLV length for the IPv6 IGP-Prefix Segment ID MUST be set to 20.
IANA updated the 'Sub-TLVs for TLV Types 1, 16, and 21' registry to add RFC 8690 as an additional reference for Sub-Types 34 (IPv4 IGP-Prefix Segment ID), 35 (IPv6 IGP-Prefix Segment ID), and 36 (IGP-Adjacency Segment ID).
This document updates RFC 8287 and does not introduce any additional security considerations.
IGP-Adjacency Segment ID sub-TLV (Type=36) has a variable length depending on Adjacency Type and Protocol; the example shows Parallel Adjacency with Protocol=0 encoding Local Interface ID (4 octets), Remote Interface ID (4 octets), Advertising Node Identifier (4 octets), and Receiving Node Identifier (4 octets), plus 2 octets Reserved.
IPv4 IGP-Prefix Segment ID sub-TLV (Type=34) has a fixed Length field of 8, containing a 4-octet IPv4 prefix, 1-octet Prefix Length, 1-octet Protocol, and 2 octets Reserved.
IPv6 IGP-Prefix Segment ID sub-TLV (Type=35) has a fixed Length field of 20, containing a 16-octet IPv6 prefix, 1-octet Prefix Length, 1-octet Protocol, and 2 octets Reserved.