IS-IS Traffic Engineering (TE) Metric Extensions
obsoletes
- rfc-7810 — IS-IS Traffic Engineering (TE) Metric Extensions
Extracted elements (29)
Link Loss is capped at approximately 50.331642% (2^24 − 2 units of 0.000003%) because precision is considered more important on high-speed links than the ability to advertise loss rates above this threshold, and links with over 50% loss are effectively unusable.
Residual bandwidth (type 37) is defined differently from existing unreserved bandwidth (RFC 5305): residual subtracts RSVP-TE tunnel reservations from maximum link capacity and aggregates across all priorities, whereas unreserved bandwidth subtracts from maximum reservable bandwidth and provides per-priority remainders. Both can coexist; residual bandwidth is suited for Weighted ECMP and unreserved bandwidth for call admission control.
The A bit was intentionally omitted from the Delay Variation sub-TLV (type 35) to help mitigate oscillations. Sub-TLVs lacking the A bit cannot be used for failover purposes, which is a deliberate trade-off to reduce routing instability.
Errata ID 5293 identified that RFC 7810 specified Length 4 for sub-TLVs 37, 38, and 39 but the figures showed an additional RESERVED byte (implying Length 5). This caused interoperability failures between implementations that omitted the RESERVED field and those that included it. RFC 8570 resolves this by omitting the RESERVED field and using Length 4, consistent with the OSPF TE (RFC 7471) and BGP-LS (RFC 8571) equivalents.
Errata ID 5486 identified a circular definition in RFC 7810 Section 4.6: available bandwidth on bundled links was incorrectly defined as the sum of component link available bandwidths rather than the sum of component link residual bandwidths. RFC 8570 corrects and clarifies this definition.
As per RFC 5305, unrecognized sub-TLVs should be silently ignored, ensuring backward compatibility with implementations that do not support the new TE metric extensions.
All values except residual bandwidth MUST be calculated as rolling averages, where the averaging period MUST be a configurable period of time.
Announcements MUST be throttleable using configurable inter-update throttle timers; the minimum announcement periodicity is one announcement per second and the default SHOULD be 120 seconds. Implementations SHOULD NOT permit the inter-update timer to be lower than the measurement interval.
Bandwidth advertisements MUST be encoded as IEEE 754 floating-point values. Delay and delay-variation advertisements MUST be encoded as integer values. Delay MUST be in microseconds, packet loss MUST be a percentage of packets sent, and bandwidth MUST be in bytes per second.
Implementations SHOULD permit static configuration or manual override of dynamic measurements for each sub-TLV, to simplify migration and to handle scenarios where dynamic measurements are not possible.
Implementations SHOULD provide configurable accelerated advertisement thresholds per sub-TLV so that an update is issued immediately when a measured value crosses a configured bound or changes by more than a configured delta. Only the high threshold or the low threshold (not both) may trigger a given sub-TLV.
Interface Address and Neighbor Address sub-TLVs (IPv4 per RFC 5305 or IPv6 per RFC 6119) MUST be present when IS-IS TE Metric Extensions sub-TLVs are used, even outside a full TE context.
Link Loss values that exceed the 24-bit field maximum SHOULD be encoded as the maximum value (50.331642%).
RESERVED fields in all sub-TLVs MUST be set to 0 on transmission and MUST be ignored on reception.
The default measurement interval for all sub-TLVs SHOULD be 30 seconds.
The delay advertised by the Unidirectional Link Delay, Min/Max Delay, and Delay Variation sub-TLVs MUST be the forward-path latency from the local neighbor to the remote neighbor.
The measurement interval, filter coefficients, and advertisement intervals MUST each be configurable per sub-TLV. Implementations MUST allow each sub-TLV to be individually enabled or disabled via configuration.
The measurement of delay SHOULD NOT vary significantly based on offered traffic load; therefore queuing delays SHOULD NOT be included in the delay measurement.
The Anomalous (A) bit, included in sub-TLVs for delay (types 33, 34), loss (type 36), and not in variation or bandwidth sub-TLVs. The A bit is set when a measured value exceeds a configured maximum threshold, and cleared when the value falls below a configured reuse threshold, enabling receivers to trigger failover or failback actions.
IANA maintains the 'Sub-TLVs for TLVs 22, 23, 141, 222, and 223' registry. This document registers seven new sub-TLVs: types 33 (Unidirectional Link Delay), 34 (Min/Max Unidirectional Link Delay), 35 (Unidirectional Delay Variation), 36 (Unidirectional Link Loss), 37 (Unidirectional Residual Bandwidth), 38 (Unidirectional Available Bandwidth), and 39 (Unidirectional Utilized Bandwidth).
Sending IS-IS TE sub-TLVs over insecure links creates a man-in-the-middle risk: an attacker could delay real-time data to a site or destination, degrading the value of latency-sensitive traffic. The IS-IS cryptographic authentication mechanism (RFC 5304) SHOULD be used to mitigate this risk.
The sub-TLVs introduced in this document allow advertisement of sensitive link-state information (bandwidth, delay) that operators may not wish to disclose. Implementations should follow the stability guidelines in Section 7 to mitigate instability risk from advertising these sub-TLVs.
Min/Max Unidirectional Link Delay sub-TLV (Type 34, Length 8): a 1-bit A flag, 7-bit RESERVED, 24-bit Min Delay, 8-bit RESERVED, and 24-bit Max Delay, all in microseconds as integers. Implementations MAY add a configurable offset to the measured values.
Unidirectional Available Bandwidth sub-TLV (Type 38, Length 4): a 32-bit IEEE 754 floating-point field in bytes per second. Available bandwidth is residual bandwidth minus measured bandwidth used for actual forwarding of non-RSVP-TE packets; for bundled links it is the sum of component link available bandwidths.
Unidirectional Delay Variation sub-TLV (Type 35, Length 4): an 8-bit RESERVED field and a 24-bit integer Delay Variation field in microseconds. There is no A bit; a value of 0 indicates the metric has not been measured.
Unidirectional Link Delay sub-TLV (Type 33, Length 4): a 1-bit Anomalous (A) flag, 7-bit RESERVED, and a 24-bit integer Delay field in microseconds representing average forward-path latency. Maximum encodable value is 16,777,215 (≈16.8 s), meaning 'at least that value'.
Unidirectional Link Loss sub-TLV (Type 36, Length 4): a 1-bit A flag, 7-bit RESERVED, and a 24-bit Link Loss field representing packet loss as a percentage of total traffic sent. The basic unit is 0.000003%; the maximum expressible value (2^24 − 2) equals 50.331642%.
Unidirectional Residual Bandwidth sub-TLV (Type 37, Length 4): a single 32-bit IEEE 754 floating-point field carrying residual bandwidth in bytes per second. Residual bandwidth is maximum bandwidth minus bandwidth currently allocated to RSVP-TE LSPs, aggregated across all priorities.
Unidirectional Utilized Bandwidth sub-TLV (Type 39, Length 4): a 32-bit IEEE 754 floating-point field in bytes per second representing the actual measured utilization of the link. For bundled links it is the sum of component link bandwidth utilizations.