Path Computation Element Communication Protocol (PCEP) Extensions for MPLS-TE Label Switched Path (LSP) Auto-Bandwidth Adjustment with Stateful PCE
updated by
- rfc-9756 — Update to the IANA Path Communication Element Protocol (PCEP) Numbers Registration Procedures and the Allowance of Experimental Error Codes
Extracted elements (29)
Both absolute and percentage threshold variants are defined and may be used simultaneously; an adjustment fires when either is crossed. This accommodates LSPs whose reserved bandwidth ranges across several orders of magnitude, where pure percentage thresholds become impractical at very low values.
Separate Up-Adjustment-Interval and Down-Adjustment-Interval (and corresponding thresholds) are provided because operators may need asymmetric behavior: responding quickly to traffic increases (to prevent congestion) while being more conservative about releasing reserved bandwidth on decreases.
The document scopes bandwidth calculation to the PCC (head-end LSR) rather than the PCE. Sending raw traffic measurements to the PCE was considered but deemed out of scope. This keeps computation close to the measurement point and is analogous to the passive stateful PCE's request/reply model, adapted to report/update semantics.
The Minimum-Threshold field in percentage-based sub-TLVs suppresses unnecessary resignaling when LSP bandwidth is very low: a percentage crossing is only acted upon if the absolute deviation also exceeds the Minimum-Threshold, preventing frequent re-signaling due to small absolute changes at low bandwidth values.
Bandwidth adjustment of an LSP MUST NOT disrupt existing traffic flow; the make-before-break signaling method (RFC 3209) is cited as one way to achieve non-disruptive bandwidth adjustment.
Very low Sample-Interval values (e.g., 1 minute or less, versus the 5-minute default) can cause undesirable interactions with transport protocols by not allowing enough time for protocol reactions to a prior bandwidth adjustment to settle before collecting the next bandwidth sample.
A PCEP speaker that becomes overwhelmed by auto-bandwidth adjustments SHOULD notify its peer via a PCNtf message with Notification-type=5 and Notification-value=1 (Entering Auto-Bandwidth Overwhelm State). Upon receipt, the peer SHOULD NOT send any further auto-bandwidth PCEP messages; if one is received while in the overwhelmed state, it MUST be ignored.
For PCE-initiated LSPs with the auto-bandwidth feature enabled, the AUTO-BANDWIDTH-ATTRIBUTES TLV MUST be included in the LSPA object with both the PCInitiate message (at LSP creation) and the PCUpd message (when the PCE directs parameter changes). The RBNF of PCInitiate and PCUpd messages is unchanged.
If a PCEP speaker supports the extensions defined in this document but did not advertise this capability, then upon receipt of AUTO-BANDWIDTH-ATTRIBUTES TLV in the LSPA object, it SHOULD generate a PCErr with Error-Type 19 (Invalid Operation) and Error-value 14 (Auto-Bandwidth capability was not advertised) and ignore the AUTO-BANDWIDTH-ATTRIBUTES TLV.
The PCEP protocol extensions for auto-bandwidth adjustments MUST NOT be used if one or both PCEP speakers have not included the AUTO-BANDWIDTH-CAPABILITY TLV in their respective OPEN message.
When no longer overwhelmed, the PCEP speaker SHOULD notify its peers with PCNtf Notification-type=5, Notification-value=2 (Clearing Auto-Bandwidth Overwhelm State), unless an OVERLOADED-DURATION TLV was previously sent indicating the peer should wait for its expiry. Some dampening procedure to avoid overwhelm-state oscillations is RECOMMENDED.
For PCC-initiated delegated LSPs, the PCC carries the AUTO-BANDWIDTH-ATTRIBUTES TLV in the LSPA object of the PCRpt message to pass adjustment parameters to the PCE at the time of delegation. The TLV is included in all PCEP messages for the LSP while auto-bandwidth is active; its absence disables the feature.
The AUTO-BANDWIDTH-ATTRIBUTES TLV defines 13 sub-TLVs (types 1–13) covering Sample-Interval, Adjustment-Interval, Down-Adjustment-Interval, Adjustment-Threshold (absolute and percentage), Down-Adjustment-Threshold variants, Minimum-Bandwidth, Maximum-Bandwidth, Overflow-Threshold variants, and Underflow-Threshold variants. All sub-TLVs are optional; unrecognized ones MUST be ignored; duplicate types keep only the first occurrence.
The PCC uses the existing BANDWIDTH object (Object-Class 5, Object-Type 1, 'Requested Bandwidth') in PCRpt messages to report the calculated MaxAvgBw to the stateful PCE. The 'Reoptimization Bandwidth' (Object-Type 2) is not required because the stateful PCE already tracks the current LSP bandwidth.
IANA allocated Error-value 14 ('Auto-Bandwidth capability was not advertised') under Error-Type 19 (Invalid Operation) in the 'PCEP-ERROR Object Error Types and Values' subregistry, to be returned when AUTO-BANDWIDTH-ATTRIBUTES is received without prior capability advertisement.
IANA allocated Notification-type 5 ('Auto-Bandwidth Overwhelm State') with two values: 1 (Entering Auto-Bandwidth Overwhelm State) and 2 (Clearing Auto-Bandwidth Overwhelm State), in the 'Notification Object' subregistry of PCEP Numbers.
IANA created a new 'AUTO-BANDWIDTH-CAPABILITY TLV Flag Field' subregistry under PCEP Numbers, initially empty (all bits unassigned). New bits are assigned by Standards Action.
IANA created the 'AUTO-BANDWIDTH-ATTRIBUTES Sub-TLV Types' subregistry (range 0–65535) with initial entries for types 0 (Reserved) through 13 (Underflow-Threshold-Percentage). Range 0–65503 requires IETF Review; range 65504–65535 is for Experimental Use.
IANA registered two new PCEP TLV Type Indicators: value 36 for AUTO-BANDWIDTH-CAPABILITY and value 37 for AUTO-BANDWIDTH-ATTRIBUTES, both in the 'PCEP TLV Type Indicators' subregistry of the 'Path Computation Element Protocol (PCEP) Numbers' registry.
Incorrect auto-bandwidth parameters in the AUTO-BANDWIDTH-ATTRIBUTES sub-TLVs could adversely affect LSP bandwidth reservations and the broader network. It is RECOMMENDED that these PCEP extensions only be activated on authenticated and encrypted sessions using TLS (RFC 8253) per BCP 195 (RFC 7525) for sessions across PCEs and PCCs of the same administrative authority.
Auto-bandwidth overwhelm state: a PCEP speaker transitions from Normal to Overwhelmed upon sending PCNtf Notification-value=1; it returns to Normal by sending PCNtf Notification-value=2 (or after the OVERLOADED-DURATION TLV period expires). While overwhelmed, incoming auto-bandwidth messages are discarded.
The Adjustment-Interval Sub-TLV (Type=2, Length=4) carries a 4-octet integer in seconds (range 1–604800; default 86400). The Down-Adjustment-Interval Sub-TLV (Type=3, Length=4) overrides this value for downward bandwidth trends; both MUST NOT be less than the Sample-Interval.
The Adjustment-Threshold-Percentage Sub-TLV (Type=5, Length=8) encodes a 7-bit Percentage field (1–100; default 5%) and a 4-octet IEEE 754 Minimum-Threshold bandwidth in bytes per second. Both the percentage and the absolute Minimum-Threshold must be crossed before an adjustment is made.
The AUTO-BANDWIDTH-ATTRIBUTES TLV has Type=37 and a variable Length field; its value consists of one or more sub-TLVs. It is carried in the LSPA object within PCInitiate, PCUpd, and PCRpt messages. Absence of this TLV indicates the speaker wishes to disable the auto-bandwidth feature.
The AUTO-BANDWIDTH-CAPABILITY TLV has Type=36, fixed Length=4 octets, and a single 32-bit Flag field. No flags are currently defined; unassigned bits MUST be set to 0 on transmission and MUST be ignored on receipt.
The Minimum-Bandwidth Sub-TLV (Type=8, Length=4) and Maximum-Bandwidth Sub-TLV (Type=9, Length=4) each carry a 4-octet IEEE 754 bandwidth value in bytes per second. Minimum-Bandwidth defaults to 0; Maximum-Bandwidth has no default. The LSP bandwidth cannot be adjusted outside these bounds.
The Overflow-Threshold Sub-TLV (Type=10, Length=8) encodes a 5-bit Count field (consecutive samples; value 0 invalid) and a 4-octet IEEE 754 absolute threshold in bytes per second. The Overflow-Threshold-Percentage Sub-TLV (Type=11, Length=8) instead carries a 7-bit Percentage, the Count, and a Minimum-Threshold. If the threshold is met consecutively for Count samples, the LSP bandwidth is immediately adjusted, bypassing the Adjustment-Interval.
The Sample-Interval Sub-TLV (Type=1, Length=4) carries a 4-octet integer interval in seconds (range 1–604800; default 300). The Sample-Interval MUST NOT exceed the Adjustment-Interval; an invalid value causes the sub-TLV to be ignored and the previous value maintained.
The Underflow-Threshold Sub-TLV (Type=12, Length=8) encodes a 5-bit Count field and a 4-octet IEEE 754 absolute threshold. The Underflow-Threshold-Percentage Sub-TLV (Type=13, Length=8) encodes a 7-bit Percentage, Count, and Minimum-Threshold. When the underflow condition is met consecutively for Count samples, the LSP bandwidth is immediately downsized, bypassing the Down-Adjustment-Interval.