PCEP Extensions for
Associated Bidirectional Segment Routing (SR) PathsHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinachengli13@huawei.comHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095ChinaMach.chen@huawei.comChina MobileChinachengweiqiang@chinamobile.comHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinalizhenbin@huawei.comHuawei TechnologiesHuawei Campus, No. 156 Beiqing Rd.Beijing100095Chinajie.dong@huawei.comCisco Systems, Inc.Canadargandhi@cisco.comZTE CorporationChinaxiong.quan@zte.com.cn
Routing Area
PCE Working GroupThe Path Computation Element Communication Protocol (PCEP) provides
mechanisms for Path Computation Elements (PCEs) to perform path
computations in response to Path Computation Clients (PCCs) requests.
The Stateful PCE extensions allow stateful control of Multiprotocol
Label Switching (MPLS) Traffic Engineering (TE) Label Switched Paths
(LSPs) using PCEP. Furthermore, PCEP can be used for computing paths in
Segment Routing (SR) TE networks.This document defines PCEP extensions for grouping two reverse
unidirectional SR Paths into an Associated Bidirectional SR Path when
using a Stateful PCE for both PCE-Initiated and PCC-Initiated LSPs as
well as when using a Stateless PCE.Segment routing (SR) leverages the source
routing and tunneling paradigms. SR supports to steer packets into an
explicit forwarding path at the ingress node. describes the Path Computation Element (PCE)
Communication Protocol (PCEP). PCEP enables the communication between a
Path Computation Client (PCC) and a PCE, or between PCE and PCE, for the
purpose of computation of Multiprotocol Label Switching (MPLS) as well
as Generalized MPLS (GMPLS) Traffic Engineering Label Switched Path (TE
LSP) characteristics. specifies a set of extensions to PCEP to
enable stateful control of TE LSPs within and across PCEP sessions in
compliance with . It includes mechanisms to
effect LSP State Synchronization between PCCs and PCEs, delegation of
control over LSPs to PCEs, and PCE control of timing and sequence of
path computations within and across PCEP sessions. The model of
operation where LSPs are initiated from the PCE is described in . specifies extensions to
the Path Computation Element Protocol (PCEP)
for SR networks, that allow a stateful PCE to compute and initiate SR-TE
paths, as well as a PCC to request, report or delegate SR Paths. extend PCEP to support SR
for IPv6 data plane. introduces a generic
mechanism to create a grouping of LSPs which can then be used to define
associations between a set of LSPs and/or a set of attributes, for
example primary and secondary LSP associations, and is equally
applicable to the active and passive modes of a Stateful PCE or a stateless PCE .Currently, SR networks only support unidirectional paths. However,
bidirectional SR Paths are required in some networks, for example, in
mobile backhaul transport networks. The requirement of bidirectional SR
Path is specified in . defines PCEP
extensions for grouping two reverse unidirectional MPLS TE LSPs into an
Associated Bidirectional LSP when using a Stateful PCE for both
PCE-Initiated and PCC-Initiated LSPs as well as when using a Stateless
PCE.This document extends the bidirectional association to segment
routing by specifying PCEP extensions for grouping two reverse
unidirectional SR Paths into a bidirectional SR Path. specifies the
Double-sided Bidirectional LSP Association procedure, where the PCE
creates the association and provisions at both endpoints, the RSVP-TE
does the signaling to the egress the status of the forward LSP and the
ingress about the reverse LSP. Thus, the both endpoints learn the
reverse LSPs forming the bidirectional LSP association. In case of SR,
to support the bidirectional path use-case, this is done using the PCEP
protocol. This is done so that both endpoints are aware of the the
unidirectional SR Path, as well as the status and other SR path related
information. defines a procedure for
Path Segment Identifier (PSID) in PCEP for SR using PATH-SEGMENT TLV.
The PSID can be a Path Segment Identifier in SR-MPLS , or a Path Segment
Identifier in SRv6 . The
PSID can be used for an associated bidirectional SR Path for identifying
the SR Path.This document makes use of the terms defined in . The reader is assumed to be
familiar with the terminology defined in , , , and .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 when, and only
when, they appear in all capitals, as shown here.As per , LSPs are
associated by adding them to a common association group. specifies PCEP extensions for
grouping two reverse unidirectional MPLS-TE LSPs into an Associated
Bidirectional LSP for both single-sided and double-sided initiation
cases by defining two new Bidirectional LSP Association Groups.This document extends the procedure for associated bidirectional SR
Paths by defining a new bidirectional association group (Double-sided
Bidirectional SR Path Association Group). The document further describes
the mechanism for associating two unidirectional SR Paths into a
bidirectional SR Path.
defines a procedure for communicating Path Segment in PCEP for SR using
PATH-SEGMENT TLV. The bidirectional SR Path can also use the
PATH-SEGMENT TLV.Note that an association group is defined in this document to define
procedures specific to SR Paths (and the procedures are different than
the RSVP-TE bidirectional association groups defined in ).As defined in , two
LSPs are associated as a bidirectional MPLS-TE LSP by a common
bidirectional LSP association group. For associating two SR paths,
this document defines a new association group called 'Double-sided
Bidirectional SR Path Association Group' as follows: Association Type (TBD1 to be assigned by IANA) = Double-sided
Bidirectional SR Path Association GroupSimilar to other bidirectional associations, this Association Type
is operator-configured in nature and statically created by the
operator on the PCEP peers. The paths belonging to this association is
conveyed via PCEP messages to the PCEP peer. Operator-configured
Association Range TLV
MUST NOT be sent for these Association Types, and MUST be ignored, so
that the entire range of association ID can be used for them. The
handling of the Association ID, Association Source, optional Global
Association Source and optional Extended Association ID in this
association are set in the same way as .A member of the 'Double-sided Bidirectional SR Path Association
Group' can take the role of a forward or reverse SR Path and follow
the similar rules defined in for LSPs.An SR Path (forward or reverse) can not be part of more than
one 'Double-sided Bidirectional SR Path Association Group'.The endpoints of the SR Paths in this associations cannot be
different.For describing the SR Paths in this association group, such as
direction and co-routed information, this association group reuses the
Bidirectional LSP Association Group TLV defined in . All fields and processing
rules are as per .As defined in , the B-flag in RP object MUST
be set when the PCC specifies that the path computation request relates
to a bidirectional TE LSP. In this document, the B-flag also MUST be set
when the PCC specifies that the path computation request relates to a
bidirectional SR Path. When a stateful PCE initiates or updates a
bidirectional SR Paths including LSPs and SR paths, the B-flag in SRP
object MAY be set
as well.Two unidirectional SR Paths can be associated by the association
group object as specified in . A bidirectional LSP
association group object is defined in (for MPLS-TE). This document
extends these association mechanisms for bidirectional SR Paths. Two SR
Paths can be associated together by using the Bidirectional SR Path
Association Group defined in this document for PCEP messages. The
PATH-SEGMENT TLV SHOULD also
be included in the LSP object for these SR Paths to support required
use-cases.For bidirectional SR Paths, there is a need to know the reverse
direction SR paths. The PCE SHOULD inform the reverse SR Paths to the
ingress PCCs and vice versa. To achieve this, a PCInitiate message for
the reverse SR Path is sent to the ingress PCC and a PCInitiate message
for the forward SR Path is sent to the egress PCC (with the same
association group). These PCInitiate message MUST NOT trigger initiation
of SR Paths. The reverse direction SR Path can be used for several
use-cases, such as directed BFD .For a bidirectional LSP computation when using both direction LSPs on
a node, the same LSP would need to be identified using 2 different
PLSP-IDs based on the PCEP session to the ingress or the egress. In
other words, the LSP will have a PLSP-ID A at the ingress node while it
will have the PLSP-ID B at the egress node. The PCE will maintain the
two PLSP-IDs for the same LSP. For instance, an ingress PCC requests a
bidirectional SR Path computation, and the PCE computes a forward LSP1
with PLSP-ID say 100. The reverse LSP2 from the egress to the ingress
with PLSP-ID say 200 is allocated by the egress PCC. Since the PLSP-ID
space is independent at each PCC, the PLSP-ID allocated by the egress
PCC can not be used for the LSP at the ingress PCC (PLSP-ID conflict may
occur). Hence, the PCE needs to allocate a PLSP-ID for LSP2 from the
ingress PCC's PLSP-ID space , say 101. Similarly for LSP1, it has
PLSP-ID 100 at the ingress, and may have say PLSP-ID 201 at the egress
node.As specified in ,
Bidirectional SR Path Association Group can be created by a Stateful
PCE.Stateful PCE can create and update the forward and reverse SR
Paths independently for a 'Double-sided Bidirectional SR Path
Association Group'.Stateful PCE can establish and remove the association
relationship on a per SR Path basis.Stateful PCE can create and update the SR Path and the
association on a PCC via PCInitiate and PCUpd messages,
respectively, using the procedures described in .The PATH-SEGMENT TLV SHOULD be included for each SR Path in the
LSP object.The reverse direction SR Path (LSP2(R) at node S, LSP1(R) at
node D) SHOULD be informed by PCE via PCInitiate message with the
matching association group.As specified in ,
Bidirectional SR Path Association Group can also be created by a
PCC.PCC can create and update the forward and reverse SR Paths
independently for a 'Double-sided Bidirectional SR Path
Association Group'.PCC can establish and remove the association relationship on a
per SR Path basis.PCC MUST report the change in the association group of an SR
Path to PCE(s) via PCRpt message.PCC can report the forward and reverse SR Paths independently
to PCE(s) via PCRpt message.PCC can delegate the forward and reverse SR Paths independently
to a Stateful PCE, where PCE would control the SR Paths.Stateful PCE can update the SR Paths in the 'Double-sided
Bidirectional SR Path Association Group' via PCUpd message, using
the procedures described in .The PATH-SEGMENT TLV MUST be handled as defined in .The reverse direction SR Path (LSP2(R) at node S, LSP1(R) at
node D) SHOULD be informed by PCE via PCInitiate message with the
matching association group.The error handling as described in section 5.5 of continue to apply.The PCEP Path Setup Type (PST) MUST be set to 'TE Path is Setup
using Segment Routing'
for the LSP belonging to the 'Double-sided Bidirectional SR Path
Association Group'. In case a PCEP speaker receives a different PST
value for this association group, it MUST send a PCErr message with
Error-Type = 29 (Early allocation by IANA) (Association Error) and
Error-Value = TBD2 (Bidirectional LSP Association - Path Setup Type
Mismatch).This document defines a new Association Type for the Association
Object defined . IANA
is requested to make the assignment of a value for the sub-registry
"ASSOCIATION Type Field" (to be created in ), as follows:This document defines new Error value for Error Type 29
(Association Error). IANA is requested to allocate new Error value
within the "PCEP-ERROR Object Error Types and Values" sub-registry of
the PCEP Numbers registry, as follows:The security considerations described in ,
, , and apply to the extensions defined
in this document as well.A new Association Type for the Association Object, 'Double-sided
Associated Bidirectional SR Path Association Group' is introduced in
this document. Additional security considerations related to LSP
associations due to a malicious PCEP speaker is described in and apply to this Association
Type. Hence, securing the PCEP session using Transport Layer Security
(TLS) is recommended.The following people have substantially contributed to this
document:Many thanks to Marina Fizgeer for detailed review and comments.