| Internet-Draft | PCEP for Path Delay Difference | June 2026 |
| Liu | Expires 14 December 2026 | [Page] |
In certain scenarios, such as load balancing, P2MP and DetNet, it is required that the delay difference among a set of paths to be controled within an expected range. This document describes extensions to PCEP to use the delay difference as a constraint for end-to-end path computation.¶
This Internet-Draft is submitted in full conformance with the 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 and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 14 December 2026.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
PCEP [RFC5440] is a communication protocol between a Path Computation Client (PCC) and a Path Computation Element (PCE) that allows a PCC to request path computation. PCEP supports the PCC to include various constraints in the request, such as bandwidth, hop count, affinity, and link/node/SRLG disjointness, enabling the PCE to compute paths that satisfy service requirements. Furthermore, RFC 8233 [RFC8233] extends the METRIC object to support path delay, delay variation, packet loss, and other performance constraints.¶
A single PCEP LSP can contain multiple forwarding paths. Typical cases include:¶
In some cases, it is required that the end-to-end delay difference among the different paths (or branches) be controlled within a certain range. For many data center networks whose link transmission distances are short and relatively uniform, the delay difference among multiple paths is typically stable and can be well controlled, however, for wide area networks (WANs), links may traverse long distances with varying latencies (e.g., fiber length differences, different propagation media, or diverse geographical routes). As a result, the delay difference among multiple paths can be significant and dynamic, posing challenges to load-balancing and synchronization. Some cases are list below:¶
Therefore, a mechanism is needed that allows a PCC to request that, when computing multiple forwarding paths of an LSP, the delay difference among paths/branches does not exceed a specified threshold. This document defines a new METRIC type, Multipath Delay Difference (MDD), to address this requirement in PCEP.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
This document uses the following terms:¶
The METRIC object is defined in Section 7.8 of [RFC5440], comprising metric-value and metric-type (T field), and a flags field, comprising a number of bit flags (B "Bound" bit and C "Computed Metric" bit). This document defines a new type for the METRIC object to represent the maximum delay difference among multiple paths within an LSP:¶
* T = TBD1: Multipath Delay Difference (MDD)¶
* An LSP may contain M constituent paths {Pj, (j=1...M)}.¶
* The Path Delay of a constituent path P is denoted D(P), as defined in [RFC8233] (Section 3.1.1).¶
* The Multipath Delay Difference (MDD) metric for the LSP = max{D(Pj)} - min{D(Pj)}.¶
The MDD metric represents the difference between the maximum Path Delay and the minimum Path Delay among all constituent paths of the same LSP.¶
The encoding for the MDD metric value is quantified in units of microseconds and encoded in IEEE floating point format. The conversion from 24-bit integer (as used in IGP TE metric extensions [RFC7471] [RFC7810]) to 32-bit IEEE floating point may introduce some loss of precision, which is considered acceptable for typical deployments.¶
A PCC MAY use the MDD metric in a Path Computation Request (PCReq) message to request a set of paths within an LSP meeting the end-to-end delay difference requirement. In this case, the B bit MUST be set to indicate a bound (a maximum) for the delay difference among the constituent paths that MUST NOT be exceeded for the PCC to consider the computed set of paths as acceptable. The MDD metric MUST be less than or equal to the value specified in the metric-value field.¶
A PCC can also use this metric to request the PCE to return the computed MDD value for the set of paths. In this case, the C bit MUST be set.¶
A PCE MAY use the MDD metric in a Path Computation Reply (PCRep) message along with a NO-PATH object when the PCE cannot compute a set of paths meeting this constraint. A PCE MAY also use this metric to send the computed MDD value to the PCC when the C bit was set in the corresponding request.¶
Note that [RFC5440] allows two METRIC object instances for optimization (B flag cleared) and thus the MDD metric may be used alongside other metric types (e.g., Path Delay) to simultaneously request both absolute delay constraints and relative delay difference constraints.¶
The error handling and processing of the METRIC object is as specified in [RFC5440]. If a PCE does not recognize the MDD metric type and the P flag is set, it MUST send a PCErr message with Error-Type = 3 ("Unknown Object") or Error-Type = 4 ("Not supported object") as appropriate. If the P flag is cleared, the PCE MAY ignore the MDD metric.¶
The usage of MDD Metric itself is not limited to the cases introduced in this document, but it is only meaningful when an LSP has multiple constituent paths. Therefore, if a PCC or PCE receives a PCEP message containing an MDD metric for an LSP that does not have (or is not requested to have) multiple paths, the MDD metric SHOULD be ignored.¶
Specifically:¶
An implementation MAY choose not to support the use of this metric type for a particular Path Setup Type (PST) as a local policy. In such case, when receiving a request with the MDD metric and the P flag set, the implementation MUST respond with a PCErr message with Error-Type = 5 ("Policy Violation") and Error-value = TBD2 ("Metric Type not supported with this PST") as in [I-D.ietf-pce-pcep-pmtu].¶
This document defines a new METRIC type that does not add any new security concerns beyond those discussed in [RFC5440] in itself. Some deployments may find the MDD information to be extra sensitive, as it could reveal network performance characteristics that could be used to influence path computation and setup with adverse effect. Additionally, snooping of PCEP messages with such data or using PCEP messages for network reconnaissance may give an attacker sensitive information about the operations of the network. Thus, such deployments should employ suitable PCEP security mechanisms like TCP Authentication Option (TCP-AO) [RFC5925] or PCEPS [RFC8253]. The procedure based on Transport Layer Security (TLS) in [RFC8253] is considered a security enhancement and thus is much better suited for sensitive service-aware information.¶
This document defines a new metric type for the PCEP. IANA is requested to allocate the following codepoint in the PCEP "METRIC Object T Field" registry:¶
| Value | Description | Reference |
|---|---|---|
| TBD1 | Multipath Delay Difference (MDD) | This document |