LSP State Reporting Extensions in Path Computation Element Communication Protocol (PCEP)
Samuel Sidor
Cisco Systems, Inc.
Eurovea Central 3.
Pribinova 10
Bratislava
811 09
Slovakia
ssidor@cisco.com
Zafar Ali
Cisco Systems, Inc.
zali@cisco.com
Cheng Li
Huawei Technologies
Huawei Campus, No. 156 Beiqing Rd.
Beijing
100095
China
c.l@huawei.com
Mike Koldychev
Ciena Corporation
385 Terry Fox Dr.
Kanata
Ontario
K2K 0L1
Canada
mkoldych@proton.me
PCE Working Group
Path Computation Element Communication Protocol (PCEP) is a protocol defined in multiple RFCs for enabling communication between Path Computation Elements (PCEs) and Path Computation Clients (PCCs).
Although PCEP defines various LSP identifiers, attributes, and constraints, there are operational attributes available on the PCC that can enhance path computation and improve the debugging experience, which are not currently supported in PCEP.
This document proposes extensions to PCEP to include:
- Support for explicit or dynamic path types
- Mechanisms to mark LSPs as eligible for use as transit LSPs
- A fallback to Binding label/Segment Identifier (SID) allocation by the PCC when the binding value specified by the PCE is unavailable
These extensions aim to address the existing gaps and enhance the overall functionality and operational efficiency of PCEP.

Requirements Language
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.

Introduction
A Stateful Path Computation Element (PCE) maintains comprehensive information on the current network state, including computed Label Switched Paths (LSPs), reserved network resources, and the pending path computation requests. This information is critical for computing paths for traffic-engineering LSPs and any associated or dependent LSPs.
[RFC9604] outlines the usage of Binding labels/ Segment Identifiers (SID) usage for an RSVP-TE-signaled Label Switched Paths (LSPs) and Segment-routing Traffic Engineering paths. It specifies the possibility of a PCE explicitly requesting the allocation of a specific binding value by a PCC. However, [RFC9604] only considers the option of rejecting entire request if the specified binding value is unavailable, but section 6.2 of [RFC9256] allows also fallback to a dynamically allocated binding value. This document introduces the possibility for a PCC to accept such request and include originally specified binding value for which allocation failed, as well as a binding value allocated from the dynamic range as a fallback.
This document specifies a set of extensions to Path Computation Element Communication Protocol(PCEP) to enhance the accuracy of path computations by considering whether the Binding label/SID of an LSP can be utilized in the path computation for another LSP, based on LSP transit eligibility, for example as described in case of LSP stitching in [I-D.ietf-pce-stateful-interdomain].
Additionally, this document introduces the ability to encode information regarding whether a path included in an Explicit Route Object (ERO) was specified explicitly or it is the result of dynamic path computation executed by a PCE or PCC. Such information can help in debuggability and can be used by other PCEs in the network to avoid triggering unnecessary path computations for LSPs where it is not intended (e.g., PCE-initiated LSPs with explicit path).
The mechanisms described in this document are applicable to all path setup types.

Terminology
The following terminologies are used in this document:
BSID: Binding Segment Identifier.
ERO: Explicit Route Object.
IGP: Interior Gateway Protocol.
NAI: Node or Adjacency Identifier.
P2P: Point-to-Point.
PCE: Path Computation Element.
PCEP: Path Computation Element Protocol.
SID: Segment Identifier.
SR: Segment Routing.
SR-TE: Segment Routing Traffic Engineering.
LSP: Label Switched Path.
LSPA: Label Switched Path Attributes.

Overview of Extensions to PCEP

STATEFUL-PCE-CAPABILITY TLV Flag
A new flag is proposed in the STATEFUL-PCE-CAPABILITY TLV, originally defined in Section 5.4 of [RFC8231].
- F (Fallback): If set, indicates that the PCEP peer supports dynamic fallback to a binding value if the specific binding value requested by the PCE is unavailable, as detailed in Section 4.1 of this document.

LSP-EXTENDED-FLAG TLV Flags
New flags are introduced in the LSP-EXTENDED-FLAG TLV, which was initially defined in Section 3.1 of [RFC9357].
- E (Explicit): If set, indicates that the path encoded in the Explicit Route Object (ERO) is explicitly specified and not dynamically computed by the PCEP peer.
- T (Transit Eligible): If set, indicates that the binding value of the LSP can be used in paths computed for other LSPs.

TE-PATH-BINDING TLV Flag
A new flag proposed in the TE-PATH-BINDING TLV, which was originally defined in Section 4 of [RFC9604].
- A (Allocated): If set, indicates that the binding value encoded in the TLV represents an allocated binding value, as described in Section 4.1 of this document.

Operation
The PCEP protocol extensions defined in Section 3.3 of this draft MUST NOT be used if one or both PCEP speakers have not indicated support for the extensions using the F flag in the STATEFUL-PCE-CAPABILITY TLV in their respective OPEN messages.

Binding Label/SID Dynamic Fallback
[RFC9604] specifies the possibility for a PCE to explicitly request the allocation of a specific binding value by a PCC. If the specified binding value is unavailable, the entire request MUST be rejected. However, if both PCEP peers advertised support for the F flag in STATEFUL-PCE-CAPABILITY TLV and the specified binding value in the PCInitiate or PCUpdate message is unavailable, the PCC MUST fallback to binding value allocation from the dynamic range, as described in Section 6.2 of [RFC9256]. Since the originally requested binding value and the allocated binding value are different, two instances of the TE-PATH-BINDING TLV MUST be included in the PCRpt message:
- A TLV instance with requested binding value with the A flag cleared
- A TLV instance with allocated binding value with the A flag set

Explicit or Dynamic Path
[RFC9256] describes various types of Segment Routing (SR) Policy Candidate Paths and methods to identify them. Specifically, Sections 5.1 and 5.2 are describing explicit and dynamic candidate paths, but there is currently no way to encode this information in PCEP. A similar limitation applies to LSPs of other path setup types.
For instance, if an operator requests the creation of a PCE-Initiated Candidate Path with an Explicit Path, then such path will be encoded in the ERO object of the PCInitiate message sent to the PCC. If the delegation of such LSP is transferred to another PCE, the new PCE will not know whether the path of the LSP was computed dynamically or explicitly specified by the operator.
Even if similar problem does not exist for LSPs originated on the PCC, information about the type of path may be valuable for other purposes, such as debuggability.
For LSPs initiated by PCC, the E flag value is initially set by the PCC in the PCRpt message and the PCE MUST set the flag value in PCUpdate messages for such LSP based on the last reported state.
For PCE-initiated LSPs, the E flag value is initially set by the PCE in PCInitiate message but MAY be modified in the PCUpdate messages. The PCC MUST set the flag value in PCRpt messages for such LSP based on the value received from the last PCInitiate or PCUpdate message.

Manageability Considerations
All manageability requirements and considerations listed in [RFC5440], [RFC8231] and [RFC8281] apply to PCEP protocol extensions defined in this document. In addition, requirements and considerations listed in this section apply.

Control of Function and Policy
A PCE or PCC implementation MAY allow the capability of supporting PCEP extensions introduced in this document to be enabled/disabled as part of the global configuration.

Information and Data Models
An implementation SHOULD allow the operator to view the capability defined in this document. Sections 4.1 and 4.1.1 of [I-D.ietf-pce-pcep-yang] should be extended to include the capability introduced in Section 3.1 for the PCEP peer.

Verify Correct Operations
Operation verification requirements already listed in [RFC5440], [RFC8231], [RFC8281] and [RFC8664] are applicable to mechanisms defined in this document.

Impact On Network Operations
The mechanisms defined in [RFC5440], [RFC8231], and [RFC8281] also apply to the PCEP extensions defined in this document.

Implementation Status
[Note to the RFC Editor - remove this section before publication, as well as remove the reference to RFC 7942.]
This section records the status of known implementations of the protocol defined by this specification at the time of posting of this Internet-Draft, and is based on a proposal described in [RFC7942]. The description of implementations in this section is intended to assist the IETF in its decision processes in progressing drafts to RFCs. Please note that the listing of any individual implementation here does not imply endorsement by the IETF. Furthermore, no effort has been spent to verify the information presented here that was supplied by IETF contributors. This is not intended as, and must not be construed to be, a catalog of available implementations or their features. Readers are advised to note that other implementations may exist.
According to [RFC7942], "this will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature. It is up to the individual working groups to use this information as they see fit".

Security Considerations
The security considerations described in [RFC5440], [RFC8231], [RFC8253], [RFC8281], [RFC8664].

IANA Considerations

STATEFUL-PCE-CAPABILITY TLV Flag
IANA maintains a registry, named "STATEFUL-PCE-CAPABILITY TLV Flag Field", within the "Path Computation Element Protocol (PCEP) Numbers" registry group to manage the Flags field of the STATEFUL-PCE-CAPABILITY TLV. IANA is requested to make the following assignment:
Bit | Description | Reference
TBA1 | F (Fallback) | This document

TE-PATH-BINDING TLV Flag
IANA maintains a registry, named "TE-PATH-BINDING TLV Flag Field", within the "Path Computation Element Protocol (PCEP) Numbers" registry group to manage the Flags field of the TE-PATH-BINDING TLV. IANA is requested to make the following assignment:
Bit | Description | Reference
TBA2 | A (Allocated) | This document

LSP-EXTENDED-FLAG TLV Flags
IANA maintains a registry, named "LSP-EXTENDED-FLAG TLV Flag Field", within the "Path Computation Element Protocol (PCEP) Numbers" registry group to manage the Flags field of the LSP-EXTENDED-FLAG TLV. IANA is requested to make the following assignment:
Bit | Description | Reference
TBA3 | E (Explicit) | This document
TBA4 | T (Transit Eligible) | This document

Normative References

Informative References
[RFC2119]
[RFC8174]
[RFC9604]
[RFC9256]
[I-D.ietf-pce-stateful-interdomain]
[RFC8231]
[RFC9357]
[RFC5440]
[RFC8281]
[I-D.ietf-pce-pcep-yang]
[RFC8664]
[RFC7942]
[RFC8253]

Contributors

Rajesh Melarcode Venkateswaran
Cisco Systems, Inc.
Email: rmelarco@cisco.com

Andrew Stone
Nokia
Email: andrew.stone@nokia.com