<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.38 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-pce-multipath-25" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="PCEP Extensions for Multipath">Path Computation Element Communication Protocol (PCEP) Extensions for Signaling Multipath Information</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-pce-multipath-25"/>
    <author initials="M." surname="Koldychev" fullname="Mike Koldychev" role="editor">
      <organization>Ciena Corporation</organization>
      <address>
        <email>mkoldych@ciena.com</email>
      </address>
    </author>
    <author initials="S." surname="Sidor" fullname="Samuel Sidor" role="editor">
      <organization>Cisco Systems.</organization>
      <address>
        <email>ssidor@cisco.com</email>
      </address>
    </author>
    <date year="2026" month="May" day="13"/>
    <area>Routing</area>
    <workgroup>PCE Working Group</workgroup>
    <abstract>
      <?line 33?>

<t>A Segment Routing (SR) Policy Candidate Path can contain multiple Segment Lists,
allowing for load-balancing and redundancy across diverse paths.
However, current PCEP extensions for SR Policy only allow signaling of a single 
Segment List per Candidate Path.
This document defines PCEP extensions to encode multiple Segment Lists within an 
SR Policy Candidate Path, enabling multipath capabilities such as weighted or 
equal-cost load-balancing across Segment Lists.
These extensions are designed to be generic and reusable for future path types 
beyond SR Policy, and are applicable to both stateless and stateful PCEP.</t>
    </abstract>
  </front>
  <middle>
    <?line 45?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Segment Routing Policy for Traffic Engineering
<xref target="RFC9256"/> details the concepts of Segment Routing (SR)
Policy and approaches to steering traffic into an SR Policy.  In
particular, it describes the SR Candidate Path as a collection of one
or more Segment Lists.  The current PCEP specifications only allow for
signaling of one Segment List per Candidate Path.  The PCEP extension to
support Segment Routing Policy Candidate Paths
<xref target="RFC9862"/> specifically kept the
signaling of multiple Segment Lists outside its scope.</t>
      <t>This document defines the required extensions that allow the signaling
of multipath information via PCEP. Although these extensions are
motivated by the SR Policy use case, they are also applicable
to other technologies. For SR Policy, support for <xref target="RFC9862"/> is a
prerequisite for using the multipath extensions defined in this document
with SR Policy Candidate Paths.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>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 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, 
they appear in all capitals, as shown here.</t>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The following terms are used in this document:</t>
        <t>ECMP:</t>
        <ul empty="true">
          <li>
            <t>Equal Cost Multi Path, equally distributing traffic among multiple paths/links, where each path/link gets the same share of traffic as others.</t>
          </li>
        </ul>
        <t>W-ECMP:</t>
        <ul empty="true">
          <li>
            <t>Weighted ECMP, unequally distributing traffic among multiple paths/links, where some paths/links get more traffic than others.</t>
          </li>
        </ul>
        <t>PLSP:</t>
        <ul empty="true">
          <li>
            <t>PCE Label Switched Path, a path or set of paths computed or controlled by the PCE. In the context of SR Policy, a PLSP corresponds to a Candidate Path.</t>
          </li>
        </ul>
        <t>Path:</t>
        <ul empty="true">
          <li>
            <t>In the context of this document, a path refers to a single forwarding path encoded in an ERO or RRO. For SR Policy, a path corresponds to a Segment List. The mechanisms defined in this document use the generic term "path" to allow applicability beyond SR Policy.</t>
          </li>
        </ul>
        <t>LSP:</t>
        <ul empty="true">
          <li>
            <t>Label Switched Path. The base PCEP specification <xref target="RFC4655"/> originally defined the use of the PCE architecture for MPLS and GMPLS networks with LSPs instantiated using the RSVP-TE signaling protocol. Over time, support for additional path setup types such as SRv6 has been introduced <xref target="RFC9603"/>. The term "LSP" is used extensively in PCEP specifications and, while the multipath extensions defined in this document are applicable beyond SR Policy, in the context of PCEP for SR Policy <xref target="RFC9862"/>, an LSP object represents an SR Policy Candidate Path, which may be an SRv6 path (still represented using the LSP object as specified in <xref target="RFC8231"/>). A single LSP may contain multiple paths (Segment Lists).</t>
          </li>
        </ul>
        <t>Segment List:</t>
        <ul empty="true">
          <li>
            <t>An ordered list of segments that defines a forwarding path in Segment Routing, as defined in <xref target="RFC9256"/>. In PCEP for SR Policy, each Segment List is encoded as an ERO or RRO.</t>
          </li>
        </ul>
        <t>ERO:</t>
        <ul empty="true">
          <li>
            <t>Explicit Route Object, defined in <xref target="RFC5440"/>, encodes an explicit path. In the context of SR Policy, an ERO encodes a Segment List.</t>
          </li>
        </ul>
        <t>RRO:</t>
        <ul empty="true">
          <li>
            <t>Record Route Object, defined in <xref target="RFC5440"/>, encodes the actual signaled path. In the context of SR Policy, an RRO reports a Segment List.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="motivation">
      <name>Motivation</name>
      <t>This extension is motivated by the use-cases described below.</t>
      <section anchor="signaling-multiple-segment-lists-of-an-sr-candidate-path">
        <name>Signaling Multiple Segment Lists of an SR Candidate Path</name>
        <t>The Candidate Path of an SR Policy is the unit of signaling in PCEP 
<xref target="RFC9862"/>. A single Candidate Path can consist of multiple Segment Lists. 
Each Segment List is represented by an Explicit Route Object (ERO). In 
existing PCEP specifications, a PCEP Label Switched Path (LSP) object is associated 
with exactly one ERO. This restriction prevents the encoding of multiple 
Segment Lists (i.e., multiple EROs) within the single LSP.</t>
      </section>
      <section anchor="splitting-of-requested-bandwidth">
        <name>Splitting of Requested Bandwidth</name>
        <t>A Path Computation Client (PCC) may request a path with 80 Gbps of 
bandwidth, but all links in the network have only 60 Gbps capacity.  The 
Path Computation Element (PCE) can return two paths, that can together carry 
80 Gbps. The PCC can then equally or unequally split the incoming 80 Gbps of 
traffic among the two paths. <xref target="WEIGHT-TLV"/> introduces a new TLV that carries 
the path weight that facilitates control of load-balancing of traffic among 
the multiple paths.</t>
      </section>
      <section anchor="reverse-path-information">
        <name>Reverse Path Information</name>
        <t>Path Computation Element Communication Protocol (PCEP) Extensions for 
Associated Bidirectional LSPs <xref target="RFC9059"/> defines a mechanism in PCEP to 
associate two opposite direction SR Policy Candidate Paths. However, within 
each Candidate Path there can be multiple Segment Lists, and <xref target="RFC9059"/> does 
not define a mechanism to specify mapping between Segment Lists of the forward 
and reverse Candidate Paths.</t>
        <t>Certain applications such as Circuit Style SR Policy 
<xref target="I-D.ietf-spring-cs-sr-policy"/>, require the knowledge of reverse paths per 
Segment List, not just per Candidate Path. For example, when the headend knows 
the reverse Segment List for each forward Segment List, then Performance 
Measurement (PM)/Bidirectional Forwarding Detection (BFD) can run a separate 
session on every Segment List, by imposing a double stack (forward stack 
followed by reverse stack) onto the packet. If the reverse Segment List is 
co-routed with the forward Segment List, then the PM/BFD session would traverse 
the same links in the forward and reverse directions, thus allowing detection 
of link/node failures in both directions.</t>
      </section>
    </section>
    <section anchor="protocol-extensions">
      <name>Protocol Extensions</name>
      <section anchor="path-attrib-object">
        <name>PATH-ATTRIB Object</name>
        <t>This document defines the PATH-ATTRIB object that is used to carry per-path
information and to act as a separator between EROs/RROs in the &lt;intended-path&gt;/&lt;actual-path&gt; Routing
Backus-Naur Form (RBNF) <xref target="RFC5511"/> element.
The PATH-ATTRIB object always precedes the ERO or RRO that it applies to.  If
multiple EROs or RROs are present, then each ERO or RRO MUST be
preceded by an PATH-ATTRIB object that describes it.</t>
        <t>The PATH-ATTRIB Object-Class value is 45.</t>
        <t>The PATH-ATTRIB Object-Type value is 1.</t>
        <t>The format of the PATH-ATTRIB object is shown in <xref target="fig-path-attrib"/>.</t>
        <figure anchor="fig-path-attrib">
          <name>PATH-ATTRIB object format</name>
          <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                         Flags                         |R|  O  |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                        Path ID                                |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  ~                     Optional TLVs                             ~
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>Flags (32 bits):</t>
        <ul spacing="normal">
          <li>
            <t>O (Operational - 3 bits): operational state of the path, same 
values as the identically named field in the LSP object <xref target="RFC8231"/>.</t>
          </li>
          <li>
            <t>R (Reverse - 1 bit): Indicates this path is reverse, i.e., it
originates on the LSP destination and terminates on the
LSP source (usually the PCC headend itself).
Paths with this flag set serve only informational
purpose to the PCC.</t>
          </li>
          <li>
            <t>Unassigned bits MUST be set to 0 on transmission and MUST be
ignored on receipt.</t>
          </li>
        </ul>
        <t>Path ID (32 bits): 4-octet identifier that identifies a path (encoded
in the ERO/RRO) within the set of multiple paths under the PCEP LSP.
See <xref target="PATH-ID"/> for details.</t>
        <t>Optional TLVs: Variable length field that can contain one or more TLVs
that carry additional per-path information.  The specific TLVs that can
be included are defined in subsequent sections of this document.</t>
      </section>
      <section anchor="METRIC">
        <name>METRIC Object</name>
        <t>The PCEP METRIC object can continue to be used at the LSP level to 
describe properties of the overall LSP. 
Mechanisms for encoding per-path metrics (e.g., a separate METRIC 
for each path) are outside the scope of this document and would 
require further extensions.</t>
      </section>
      <section anchor="WEIGHT-TLV">
        <name>MULTIPATH-WEIGHT TLV</name>
        <t>New MULTIPATH-WEIGHT TLV is optional in the PATH-ATTRIB object.</t>
        <figure anchor="fig-multipath-weight">
          <name>MULTIPATH-WEIGHT TLV format</name>
          <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |             Type              |             Length            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                             Weight                            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>Type (16 bits): 61 for "MULTIPATH-WEIGHT" TLV.</t>
        <t>Length (16 bits): 4 bytes.</t>
        <t>Weight (32 bits): unsigned integer weight of this path within the 
multipath, if W-ECMP is desired. The fraction of flows that a specific 
ERO/RRO carries is derived from the ratio of its weight to the sum of the 
weights of all other paths: see <xref target="LOADBALANCING"/> for details.</t>
        <t>When the MULTIPATH-WEIGHT TLV is absent from the PATH-ATTRIB object,
or the PATH-ATTRIB object is absent from the
&lt;intended-path&gt;/&lt;actual-path&gt;, then the Weight of the corresponding
path is taken to be 1.</t>
      </section>
      <section anchor="OPPDIR-PATH-TLV">
        <name>MULTIPATH-OPPDIR-PATH TLV</name>
        <t>New MULTIPATH-OPPDIR-PATH TLV is optional in the PATH-ATTRIB object.
Multiple instances of the TLV are allowed in the same PATH-ATTRIB object.
Each TLV instance identifies one opposite-direction path for the path 
described by this PATH-ATTRIB object. This provides per-path level 
opposite-direction mapping within an LSP. In the context of SR Policy, 
this corresponds to per-Segment List mapping within a Candidate Path, 
complementing the Candidate Path level bidirectional association defined 
in <xref target="I-D.ietf-pce-sr-bidir-path"/>, which also describes the usage of 
this TLV in the context of associated bidirectional SR Paths.
See <xref target="OPPDIR"/> for operational details.</t>
        <figure anchor="fig-multipath-oppdir">
          <name>MULTIPATH-OPPDIR-PATH TLV format</name>
          <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |             Type              |             Length            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |           Reserved            |             Flags         |L|N|
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                 Opposite Direction Path ID                    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

]]></artwork>
        </figure>
        <t>Type (16 bits): 63 for "MULTIPATH-OPPDIR-PATH" TLV</t>
        <t>Length (16 bits): 8 bytes.</t>
        <t>Reserved: This field MUST be set to zero on transmission and MUST be
ignored on receipt.</t>
        <t>Flags (16 bits):</t>
        <ul spacing="normal">
          <li>
            <t>N (Node co-routed): If set, indicates this path is
node co-routed with its opposite direction path, specified in this TLV.
Two opposite direction paths are node co-routed if they
traverse the same nodes, but MAY traverse different links.
If not set, the paths are not guaranteed to be node co-routed
(they may or may not traverse the same set of nodes).</t>
          </li>
          <li>
            <t>L (Link co-routed): If set, indicates this path is
link co-routed with its opposite direction path, specified in this TLV.
Two opposite direction paths are link co-routed if they
traverse the same links (but in opposite directions).
Link co-routing implies node co-routing; therefore, it is not
necessary to set the N flag when the L flag is set.</t>
          </li>
          <li>
            <t>Unassigned bits MUST be set to 0 on transmission and MUST be
ignored on receipt.</t>
          </li>
        </ul>
        <t>Opposite Direction Path ID (32 bits): References the Path ID field 
(see <xref target="PATH-ID"/>) of a PATH-ATTRIB object that identifies a path going 
in the opposite direction to this path. If no opposite-direction path 
exists, then this field MUST be set to 0, a value reserved to indicate 
the absence of a Path ID.</t>
      </section>
      <section anchor="CCP">
        <name>Composite Candidate Path</name>
        <t>SR Policy Architecture <xref target="RFC9256"/> defines the concept of a
Composite Candidate Path. 
A regular SR Policy Candidate Path outputs traffic to a set of Segment Lists, 
while an SR Policy Composite Candidate Path outputs traffic recursively to 
a set of SR Policies on the same headend.
In PCEP, the Composite Candidate Path still consists of PATH-ATTRIB objects,
but ERO is replaced by Color of the recursively used SR Policy.</t>
        <t>To signal the Composite Candidate Path, we make use of the COLOR TLV, defined in
<xref target="RFC9863"/>. For a Composite Candidate Path, the COLOR TLV
is included in the PATH-ATTRIB Object, thus allowing each Composite Candidate Path
to do ECMP/W-ECMP among SR Policies identified by its constituent Colors.
To achieve W-ECMP, the MULTIPATH-WEIGHT TLV (<xref target="WEIGHT-TLV"/>) is included 
alongside the COLOR TLV in each PATH-ATTRIB object.
If multiple COLOR TLVs are contained in the PATH-ATTRIB object, the first one 
is processed and the others MUST be ignored.</t>
        <t>An ERO MUST be included as per the existing RBNF, 
this ERO MUST contain no sub-objects. This empty ERO serves as a placeholder
to maintain compatibility with existing implementations based on the RBNF defined in <xref target="RFC8231"/>.
If the head-end receives a non-empty ERO for a Composite Candidate Path,
it MUST send a PCError message with Error-Type = 19 ("Invalid Operation")
and Error-Value = 21 ("Non-empty path").</t>
        <t>See <xref target="CCPEX"/> for an example of the encoding.</t>
        <section anchor="PFP">
          <name>Per-Flow Candidate Path</name>
          <t>Per-Flow Candidate Path builds on top of the concept of the Composite Candidate Path.
Each Path in a Per-Flow Candidate Path is assigned a 3-bit forwarding class value, 
which allows Quality of Service (QoS) classified traffic to be steered depending on the forwarding class.</t>
          <t>New MULTIPATH-FORWARD-CLASS TLV is optional in the PATH-ATTRIB object.</t>
          <figure anchor="fig-multipath-forward-class">
            <name>MULTIPATH-FORWARD-CLASS TLV format</name>
            <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |             Type              |             Length            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                        Reserved                       |T| FC  |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>Type (16 bits): TBD1 for "MULTIPATH-FORWARD-CLASS" TLV.</t>
          <t>Length (16 bits): 4 bytes.</t>
          <t>Reserved: This field MUST be set to zero on transmission and MUST be
ignored on receipt.</t>
          <t>T (1 bit): MPLS TC type. When set, indicates that the FC value is 
derived from the MPLS Traffic Class (TC) bits as described in 
Section 8.6 of <xref target="RFC9256"/>. When not set, the interpretation of the 
FC value is reserved for future use.</t>
          <t>FC (3 bits): Forwarding class value. When the T flag is set, this 
carries the MPLS TC-based forwarding class value as defined in 
Section 8.6 of <xref target="RFC9256"/>. 
This value is given by the QoS classifier to traffic entering the given 
Candidate Path. Different classes of traffic that enter the given Candidate 
Path can be differentially steered into different Colors. The FC field allows 
up to 8 different forwarding classes (values 0-7). The semantics of specific FC 
values are significant at the headend node (PCC) that implements the SR Policy 
and are determined by that node's local QoS policy or configuration. 
Coordination of FC value meanings between PCEP peers (e.g., through out-of-band 
configuration management or operational procedures) is outside the scope of 
this document.</t>
        </section>
      </section>
    </section>
    <section anchor="OP">
      <name>Operation</name>
      <section anchor="capability-negotiation">
        <name>Capability Negotiation</name>
        <section anchor="multipath-capability-tlv">
          <name>Multipath Capability TLV</name>
          <t>New MULTIPATH-CAP TLV is defined. 
This TLV MAY be present in the OPEN object during PCEP session establishment.
It MAY also be present in the LSP object for each individual LSP from the PCC.</t>
          <figure anchor="fig-multipath-cap">
            <name>MULTIPATH-CAP TLV format</name>
            <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |             Type              |             Length            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |     Number of Multipaths      |            Flags    |C|F|O| |W|
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </figure>
          <t>Type (16 bits): 60 for "MULTIPATH-CAP" TLV.</t>
          <t>Length (16 bits): 4 bytes.</t>
          <t>Number of Multipaths (16 bits): When sent from a PCC, it indicates how many 
forward primary multipaths the PCC can install in forwarding. 
From a PCE, it indicates how many forward primary multipaths the PCE can compute.
This count does not include reverse paths (R-flag=1), which are not 
installed in forwarding for load-balancing purposes. 
Therefore, the total number of PATH-ATTRIB objects in an LSP may exceed 
this value when reverse paths are also signaled.
The value 0 indicates an unlimited number.</t>
          <t>Flags (16 bits):</t>
          <ul spacing="normal">
            <li>
              <t>W-flag: whether MULTIPATH-WEIGHT TLV is supported. This flag 
covers the use of MULTIPATH-WEIGHT for both regular and Composite 
Candidate Paths.</t>
            </li>
            <li>
              <t>O-flag: In the OPEN object, this flag indicates whether the 
MULTIPATH-OPPDIR-PATH TLV is supported. In the LSP object, this flag 
indicates that opposite-direction path information is requested or provided 
for that specific LSP. When set by the PCC (in PCRpt/PCReq), it requests 
the PCE to provide reverse path information. When set by the PCE (in 
PCInit/PCUpd/PCRep), it indicates the PCE is providing or will provide 
reverse path information. In both cases, the PCE SHOULD provide the reverse 
path information, if it is able to.</t>
            </li>
            <li>
              <t>F-flag: whether MULTIPATH-FORWARD-CLASS TLV is supported.</t>
            </li>
            <li>
              <t>C-flag: whether Composite Candidate Path (<xref target="CCP"/>) is supported, 
including the use of the COLOR TLV in the PATH-ATTRIB object.</t>
            </li>
            <li>
              <t>Unassigned bits MUST be set to 0 on transmission and MUST be ignored on receipt.</t>
            </li>
          </ul>
          <t>Note that F-flag and C-flag can be set independently for capability
negotiation purposes. While Per-Flow Candidate Path (<xref target="PFP"/>) builds on
top of Composite Candidate Path, the F-flag reflects whether the
MULTIPATH-FORWARD-CLASS TLV is supported, and the C-flag reflects whether
Composite Candidate Path signaling is supported. A peer that supports
Per-Flow Candidate Path MUST set both C-flag and F-flag. Note that the
F-flag is defined independently of the C-flag to allow for future use
cases that may use the MULTIPATH-FORWARD-CLASS TLV for purposes other
than Per-Flow Candidate Path; in such cases, the F-flag MAY be set
without the C-flag.</t>
          <t>When a PCE computes an LSP path, it MUST NOT return more forward 
multipaths than the minimum of the effective "Number of Multipaths" 
values of both the PCE and PCC. The effective value for a given LSP is 
determined by the per-LSP MULTIPATH-CAP TLV in the LSP object if 
present; otherwise, it defaults to the value from the MULTIPATH-CAP TLV 
in the OPEN object. This ensures the PCE does not exceed either 
its own computation capability or the PCC's installation capability. 
If this TLV is absent from both OPEN and LSP objects, the PCEP speaker 
does not support multipath and the behavior is consistent with existing 
PCEP specifications, where a single path is associated with each LSP.</t>
          <t>If a PCC receives more paths than it advertised support for, it MUST 
send a PCError message with Error-Type = 19 ("Invalid Operation") and 
Error-Value = TBD3 ("Unsupported multipath capability").</t>
          <t>From the PCC, the MULTIPATH-CAP TLV MAY also be present in the LSP object for each individual LSP, to specify per-LSP values.
The PCC MUST NOT include this TLV in the LSP object if the TLV was not
present in the OPEN objects of both PCEP peers.
TLV values in the LSP object override the session default values 
in the OPEN object. If a PCEP speaker receives a PATH-ATTRIB object but the multipath
capability was not successfully negotiated during session
establishment, it MUST treat this as an error. The PCEP speaker
MUST send a PCError message with Error-Type = 10 ("Reception of an
invalid object") and Error-Value = TBD2 ("Unexpected PATH-ATTRIB
object").</t>
          <t>For example, the PCC includes this TLV in the OPEN object at session establishment,
setting "Number of Multipaths" to 4 and "O-flag" to 0.
The PCC also includes this TLV in the LSP object for a particular LSP,
setting "Number of Multipaths" to 16 and "O-flag" to 1.
This indicates that the PCC only wants to receive the reverse path information for that
particular LSP and that this LSP can have up to 16 multipaths,
while other LSPs can only have up to 4 multipaths.</t>
          <t>Additionally, if a PCEP speaker receives a TLV within the PATH-ATTRIB object
(such as MULTIPATH-WEIGHT, MULTIPATH-OPPDIR-PATH, or
MULTIPATH-FORWARD-CLASS) but the corresponding capability flag was not set
in the negotiated MULTIPATH-CAP TLV, it MUST treat this as an error.
The PCEP speaker MUST send a PCError message with Error-Type = 19
("Invalid Operation") and Error-Value = TBD3 ("Unsupported multipath capability").</t>
        </section>
      </section>
      <section anchor="PATH-ID">
        <name>Path ID</name>
        <t>The Path ID uniquely identifies a Path within the context of an LSP.
A single Path ID space is shared among all paths within the LSP, 
including forward paths and reverse paths (R-flag=1). Path IDs MUST be 
unique across all these path types within the same LSP.
The meaning of "Path" depends on the type of LSP:</t>
        <ul spacing="normal">
          <li>
            <t>For a regular SR Policy Candidate Path, the Paths within that LSP
are the Segment Lists.</t>
          </li>
          <li>
            <t>For a Composite Candidate Path (<xref target="CCP"/>), the Paths within that LSP
are the constituent SR Policies, each of which is identified by its
Color (carried in the COLOR TLV within the corresponding PATH-ATTRIB
object).</t>
          </li>
        </ul>
        <t>Value 0 indicates an unallocated Path ID.
The value of 0 MAY be used when this Path is not referenced 
and the allocation of a Path ID is not necessary.</t>
        <t>Path IDs are allocated by the PCEP peer that owns the LSP.
If the LSP is delegated to the PCE, then the PCE allocates the Path IDs
and sends them in the PCReply/PCUpd/PCInitiate messages.
If the LSP is locally computed on the PCC, then the PCC allocates the
Path IDs and sends them in the PCReq/PCRpt messages.</t>
        <t>If a PCEP speaker detects that there are two Paths with the same non-zero 
Path ID, then the PCEP speaker MUST send PCError message with
Error-Type = 1 ("Reception of an invalid object") and
Error-Value = 38 ("Conflicting Path ID"). Multiple paths MAY have Path ID 
set to 0, as this value indicates those paths are not referenced and do 
not require unique identification.</t>
      </section>
      <section anchor="LOADBALANCING">
        <name>Signaling Multiple Paths for Load-Balancing</name>
        <t>The PATH-ATTRIB object can be used to signal multiple paths and indicate
(un)equal load-balancing amongst the set of multipaths. In this case, the
PATH-ATTRIB is populated for each ERO as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>The PCE MAY assign a unique Path ID to each ERO path and populate
it inside the PATH-ATTRIB object. The Path ID is unique within the
context of a PLSP (PCE Label Switched Path) (when non-zero).</t>
          </li>
          <li>
            <t>The PCE MAY include the MULTIPATH-WEIGHT TLV inside the PATH-ATTRIB object,
populating a weight value to reflect the relative share of traffic 
to be carried by the path. If the MULTIPATH-WEIGHT is not carried inside a
PATH-ATTRIB object, the PCC MUST assume the default weight of 1 when computing
the traffic share.</t>
          </li>
          <li>
            <t>The PCC derives the fraction of flows carried by a specific primary path
from the ratio of its weight to the sum of all other multipath weights.
For SR Policy, the use of weights for load-balancing between Segment 
Lists of a Candidate Path is described in Section 2.11 of <xref target="RFC9256"/>.</t>
          </li>
        </ol>
      </section>
      <section anchor="OPPDIR">
        <name>Signaling Opposite-Direction Path Information</name>
        <t>The PATH-ATTRIB object can be used to signal opposite-direction path 
associations within a PCEP LSP. This capability is used to establish 
bidirectional path relationships where forward and reverse paths can be 
explicitly mapped to each other. In this case, the
PATH-ATTRIB is populated for each ERO as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>The PCEP peer (PCC or PCE) allocates a unique Path ID to each path 
and populates it inside the PATH-ATTRIB object. The Path ID is unique 
within the context of a PLSP (PCE Label Switched Path).</t>
          </li>
          <li>
            <t>For paths that have opposite-direction counterparts, the 
MULTIPATH-OPPDIR-PATH TLV is added to the PATH-ATTRIB object. The 
Opposite Direction Path ID field is set to reference the Path ID of 
the corresponding opposite-direction path.</t>
          </li>
          <li>
            <t>Multiple instances of the MULTIPATH-OPPDIR-PATH TLV MAY be present 
in the same PATH-ATTRIB object to support many-to-many mappings 
between forward and reverse paths. This allows a single forward path 
to map to multiple reverse paths and vice versa. Many-to-many 
mapping can occur when a Segment List contains Node Segment(s) that 
traverse parallel links at a midpoint. The reverse of this Segment 
List may require multiple Reverse Segment Lists to cover all the 
parallel links at the midpoint.</t>
          </li>
          <li>
            <t>The N-flag and L-flag in the MULTIPATH-OPPDIR-PATH TLV MAY be set 
to indicate node co-routing or link co-routing respectively. These 
flags inform the receiver about the relationship between the forward 
and reverse paths.</t>
          </li>
          <li>
            <t>For paths that have no opposite-direction counterpart, the 
MULTIPATH-OPPDIR-PATH TLV is omitted from the PATH-ATTRIB object.</t>
          </li>
        </ol>
        <t>Forward paths (R-flag=0) and reverse paths (R-flag=1) are included in the 
same PCEP LSP, allowing bidirectional relationships to be established 
atomically. The opposite-direction path associations MUST be symmetric 
within the same LSP. When path A references path B as its opposite-direction 
path, path B MUST also reference path A as its opposite-direction path. 
Additionally, their R-flags in the PATH-ATTRIB object MUST have opposite 
values (one set to 0, the other to 1).</t>
        <t>If a PCEP speaker receives an opposite-direction path mapping that is 
asymmetric or where the R-flags are inconsistent, it MUST send a PCError 
message with Error-Type = 19 ("Invalid Operation") and Error-Value = TBD4 
("Invalid opposite-direction path mapping").</t>
        <t>See <xref target="OPPDIREX"/> for an example of usage.</t>
      </section>
    </section>
    <section anchor="RBNF">
      <name>PCEP Message Extensions</name>
      <t>The RBNF of PCRpt and PCUpd messages, as defined in <xref target="RFC8231"/>, use a 
combination of &lt;intended-path&gt; and/or &lt;actual-path&gt;. PCReq and PCRep 
messages, as defined in <xref target="RFC5440"/> and extended by <xref target="RFC8231"/>, directly 
include ERO and RRO within their respective message structures rather 
than encapsulating them within &lt;intended-path&gt; or &lt;actual-path&gt; constructs.</t>
      <t>As specified in Section 6.1 of <xref target="RFC8231"/>, within the context of messages 
that use these constructs, &lt;intended-path&gt; is represented by the ERO 
and &lt;actual-path&gt; is represented by the RRO:</t>
      <artwork><![CDATA[
   <intended-path> ::= <ERO>

   <actual-path> ::= <RRO>
]]></artwork>
      <t>This document extends <xref target="RFC8231"/> by allowing multiple EROs/RROs to be
present in the &lt;intended-path&gt;/&lt;actual-path&gt;:</t>
      <artwork><![CDATA[
   <intended-path> ::= <ERO> |
                       <PATH-ATTRIB><ERO>[<intended-path-multipath>]

   <intended-path-multipath> ::= <PATH-ATTRIB><ERO>
                                 [<intended-path-multipath>]

   <actual-path> ::= <RRO> |
                     <PATH-ATTRIB><RRO>[<actual-path-multipath>]

   <actual-path-multipath> ::= <PATH-ATTRIB><RRO>
                               [<actual-path-multipath>]
]]></artwork>
      <t>Similarly, this document extends <xref target="RFC8281"/> by allowing multiple paths 
in the PCInitiate message by allowing multiple EROs with their 
associated path attributes. The PCE-initiated LSP instantiation format is 
updated to:</t>
      <artwork><![CDATA[
   <PCE-initiated-lsp-instantiation> ::= <SRP>
                                          <LSP>
                                          [<END-POINTS>]
                                          <intended-path>
                                          [<attribute-list>]
]]></artwork>
      <t>where &lt;intended-path&gt; follows the recursive definition above, allowing 
multiple paths to be signaled in a single PCInitiate message. When multiple 
paths are present, each ERO MUST be preceded by a PATH-ATTRIB object that 
describes it. A single path MAY be sent as a bare ERO without PATH-ATTRIB 
for backward compatibility.</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>Note to the RFC Editor - remove this section before publication, as
well as remove the reference to <xref target="RFC7942"/>.</t>
      <t>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 <xref target="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.</t>
      <t>According to <xref target="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".</t>
      <section anchor="cisco-systems">
        <name>Cisco Systems</name>
        <artwork><![CDATA[
Organization: Cisco Systems
Implementation: IOS-XR PCC and PCE
Description: Circuit-Style SR Policies
Maturity Level: Supported feature
Coverage: Multiple Segment Lists and reverse paths in SR Policy
Contact: mkoldych@cisco.com
]]></artwork>
      </section>
      <section anchor="ciena-corp">
        <name>Ciena Corp</name>
        <artwork><![CDATA[
Organization: Ciena Corp
Implementation: Head-end and controller
Maturity Level: Proof of concept
Coverage: Partial
Contact: byadav@ciena.com
]]></artwork>
      </section>
      <section anchor="huawei-technologies">
        <name>Huawei Technologies</name>
        <artwork><![CDATA[
Organization: Huawei Technologies Co.,Ltd.
Implementation: Huawei's Router and Controller
Maturity Level: Proof of concept
Coverage: Partial
Contact: tanren@huawei.com 
]]></artwork>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>All IANA actions in this section pertain to the "Path Computation 
Element Protocol (PCEP) Numbers" registry group.</t>
      <section anchor="pcep-object">
        <name>PCEP Object</name>
        <t>IANA is requested to confirm the following allocation in the 
   "PCEP Objects" registry:</t>
        <artwork><![CDATA[
 +--------------+-------------+-------------------+-----------------+
 | Object-Class | Name        | Object-Type       | Reference       |
 | Value        |             | Value             |                 |
 +--------------+-------------+-------------------+-----------------+
 | 45           | PATH-ATTRIB | 0: Reserved       |                 |
 |              |             | 1: PATH-ATTRIB    | This document   |
 |              |             | 2-15: Unassigned  |                 |
 +--------------+-------------+-------------------+-----------------+
]]></artwork>
        <t>Object-Type values are managed via the IETF Review policy as per <xref target="RFC8126"/>.</t>
      </section>
      <section anchor="pcep-tlv">
        <name>PCEP TLV</name>
        <t>IANA is requested to confirm the following allocations in the
   "PCEP TLV Type Indicators" registry:</t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | TLV Type   | TLV Name                          | Reference       |
 | Value      |                                   |                 |
 +------------+-----------------------------------+-----------------+
 | 60         | MULTIPATH-CAP                     | This document   |
 +------------+-----------------------------------+-----------------+
 | 61         | MULTIPATH-WEIGHT                  | This document   |
 +------------+-----------------------------------+-----------------+
 | 63         | MULTIPATH-OPPDIR-PATH             | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
        <t>IANA is requested to make new allocations in the
   "PCEP TLV Type Indicators" registry:</t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | TLV Type   | TLV Name                          | Reference       |
 | Value      |                                   |                 |
 +------------+-----------------------------------+-----------------+
 | TBD1       | MULTIPATH-FORWARD-CLASS           | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
      <section anchor="pcep-error-object">
        <name>PCEP-Error Object</name>
        <t>IANA is requested to confirm the following allocations in the
   "PCEP-ERROR Object Error Types and Values" registry:</t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Error-Type | Error-Value                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 10         | 38 - Conflicting Path ID          | This document   |
 +------------+-----------------------------------+-----------------+
 | 19         | 21 - Non-empty path               | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
        <t>IANA is requested to make new allocations in the
   "PCEP-ERROR Object Error Types and Values" registry:</t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Error-Type | Error-Value                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 10         | TBD2 - Unexpected PATH-ATTRIB     | This document   |
 |            |        Object                     |                 |
 +------------+-----------------------------------+-----------------+
 | 19         | TBD3 - Unsupported multipath      | This document   |
 |            |        capability                 |                 |
 +------------+-----------------------------------+-----------------+
 | 19         | TBD4 - Invalid opposite-direction | This document   |
 |            |        path mapping               |                 |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
      <section anchor="flags-in-the-multipath-cap-tlv">
        <name>Flags in the MULTIPATH-CAP TLV</name>
        <t>IANA is requested to create a new registry called "Flags in 
MULTIPATH-CAP TLV" to manage the Flag field of the MULTIPATH-CAP TLV.
New values are to be assigned by "IETF review" <xref target="RFC8126"/></t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Bit        | Description                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 0-10       | Unassigned                        | This document   |
 +------------+-----------------------------------+-----------------+
 | 11         | C-flag: Composite Candidate       | This document   |
 |            |  Path support                     |                 |
 +------------+-----------------------------------+-----------------+
 | 12         | F-flag: MULTIPATH-FORWARD-CLASS   | This document   |
 |            |  TLV support                      |                 |
 +------------+-----------------------------------+-----------------+
 | 13         | O-flag: MULTIPATH-OPPDIR-PATH     | This document   |
 |            |  TLV support                      |                 |
 +------------+-----------------------------------+-----------------+
 | 14         | Unassigned                        | This document   |
 +------------+-----------------------------------+-----------------+
 | 15         | W-flag: MULTIPATH-WEIGHT TLV      | This document   |
 |            |  support                          |                 |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
      <section anchor="flags-in-the-path-attrib-object">
        <name>Flags in the PATH-ATTRIB Object</name>
        <t>IANA is requested to create a new registry called "Flags in 
PATH-ATTRIB Object" to manage the Flag field of the PATH-ATTRIB object.
New values are to be assigned by "IETF review" <xref target="RFC8126"/></t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Bit        | Description                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 0-27       | Unassigned                        | This document   |
 +------------+-----------------------------------+-----------------+
 | 28         | R-flag: Reverse path              | This document   |
 +------------+-----------------------------------+-----------------+
 | 29-31      | O-flag: Operational state         | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
      <section anchor="flags-in-the-multipath-oppdir-path-tlv">
        <name>Flags in the MULTIPATH-OPPDIR-PATH TLV</name>
        <t>IANA is requested to create a new registry called "Flags in 
MULTIPATH-OPPDIR-PATH TLV" to manage the Flag field of the 
MULTIPATH-OPPDIR-PATH TLV.
New values are to be assigned by "IETF review" <xref target="RFC8126"/></t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Bit        | Description                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 0-12       | Unassigned                        | This document   |
 +------------+-----------------------------------+-----------------+
 | 14         | L-flag: Link co-routed            | This document   |
 +------------+-----------------------------------+-----------------+
 | 15         | N-flag: Node co-routed            | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
      <section anchor="flags-in-the-multipath-forward-class-tlv">
        <name>Flags in the MULTIPATH-FORWARD-CLASS TLV</name>
        <t>IANA is requested to create a new registry called "Flags in 
MULTIPATH-FORWARD-CLASS TLV" to manage the Flag field of the 
MULTIPATH-FORWARD-CLASS TLV.
New values are to be assigned by "IETF review" <xref target="RFC8126"/></t>
        <artwork><![CDATA[
 +------------+-----------------------------------+-----------------+
 | Bit        | Description                       | Reference       |
 +------------+-----------------------------------+-----------------+
 | 0-27       | Unassigned                        | This document   |
 +------------+-----------------------------------+-----------------+
 | 28         | T-flag: MPLS TC type              | This document   |
 +------------+-----------------------------------+-----------------+
 | 29-31      | FC: Forwarding class              | This document   |
 +------------+-----------------------------------+-----------------+
]]></artwork>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations described in <xref target="RFC5440"/>, <xref target="RFC8231"/>,
<xref target="RFC8281"/>, <xref target="RFC8664"/>, <xref target="RFC9256"/>,
<xref target="RFC9862"/> and
<xref target="RFC9863"/> are applicable to this specification.</t>
      <t>As per <xref target="RFC8231"/>, it is RECOMMENDED that these PCEP extensions can only
be activated on authenticated and encrypted sessions across PCEs and PCCs
belonging to the same administrative authority, using Transport Layer
Security (TLS) <xref target="RFC8253"/> <xref target="I-D.ietf-pce-pceps-tls13"/> as per the 
recommendations and best current practices in <xref target="RFC9325"/>.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>All manageability requirements and considerations listed in <xref target="RFC5440"/>,
<xref target="RFC8231"/>, <xref target="RFC8664"/>, and <xref target="RFC9256"/> apply to the PCEP protocol
extensions defined in this document. In addition, the requirements and
considerations listed in this section apply.</t>
      <section anchor="control-of-function-and-policy">
        <name>Control of Function and Policy</name>
        <t>A PCEP speaker (PCC or PCE) implementation SHOULD allow an operator to enable
or disable the multipath capabilities advertised in the MULTIPATH-CAP TLV
(see <xref target="OP"/>).</t>
      </section>
      <section anchor="information-and-data-models">
        <name>Information and Data Models</name>
        <t>It is expected that a future version of the PCEP YANG module
<xref target="RFC9826"/> will be extended to include the PCEP extensions
defined in this document.</t>
      </section>
      <section anchor="liveness-detection-and-monitoring">
        <name>Liveness Detection and Monitoring</name>
        <t>The mechanisms defined in this document do not introduce any new liveness
detection or monitoring requirements in addition to those already defined
in <xref target="RFC5440"/> and <xref target="RFC8231"/>.</t>
      </section>
      <section anchor="verify-correct-operations">
        <name>Verify Correct Operations</name>
        <t>In addition to the verification requirements in <xref target="RFC5440"/> and <xref target="RFC8231"/>,
the following considerations apply:</t>
        <ul spacing="normal">
          <li>
            <t>An implementation SHOULD allow an operator to view the capabilities
advertised in the MULTIPATH-CAP TLV by each PCEP peer for a session
and for individual LSPs.</t>
          </li>
          <li>
            <t>An implementation SHOULD allow an operator to view the PATH-ATTRIB
object and all its associated TLVs for each path within an LSP. This
includes the Path ID, weight, and opposite-direction path associations.</t>
          </li>
          <li>
            <t>An implementation SHOULD provide a mechanism to log and display
the new PCEP errors defined in this document</t>
          </li>
        </ul>
      </section>
      <section anchor="requirements-on-other-protocols">
        <name>Requirements On Other Protocols</name>
        <t>The PCEP extensions defined in this document do not impose any new
requirements on other protocols.</t>
      </section>
      <section anchor="impact-on-network-operations">
        <name>Impact On Network Operations</name>
        <t>The mechanisms in this document allow for more complex LSP structures
with multiple paths. Network operators should be aware of the potential
increase in PCEP message sizes and the additional state that must be
maintained by PCEP speakers. The "Number of Multipaths" field in the
MULTIPATH-CAP TLV can be used to control the scale of multipath
computations and state.</t>
      </section>
    </section>
    <section anchor="acknowledgement">
      <name>Acknowledgement</name>
      <t>Thanks to Adrian Farrel for shepherding this document, Ketan 
   Talaulikar for his thorough AD review, Dhruv
   Dhody for ideas and discussion, and Diego Achaval, Quan Xiong, Giuseppe Fioccola, Italo
   Busi, Yuan Yaping, and Cheng Li for their reviews.</t>
    </section>
    <section anchor="contributors">
      <name>Contributors</name>
      <section anchor="original-authors">
        <name>Original Authors</name>
        <t>The following individuals are the original authors who initiated and
developed the core work of this document. Mike Koldychev is also listed
as editor in the Authors' Addresses section. The remaining individuals
appear here rather than in the Authors' Addresses section due to the
IETF guidelines on the maximum number of listed authors, but should be
considered co-authors of this document. Samuel Sidor joined the effort
at a later stage as an additional editor.</t>
        <artwork><![CDATA[
   Mike Koldychev (also listed as editor)
   Ciena Corporation
   Email: mkoldych@ciena.com

   Siva Sivabalan
   Ciena Corporation
   Email: ssivabal@ciena.com

   Tarek Saad
   Cisco Systems
   Email: tsaad@cisco.com

   Vishnu Pavan Beeram
   Juniper Networks, Inc.
   Email: vbeeram@juniper.net

   Hooman Bidgoli
   Nokia
   Email: hooman.bidgoli@nokia.com

   Shuping Peng
   Huawei Technologies
   Email: pengshuping@huawei.com

   Bhupendra Yadav
   Ciena
   Email: byadav@ciena.com

   Gyan Mishra
   Verizon Inc.
   Email: hayabusagsm@gmail.com
]]></artwork>
      </section>
      <section anchor="additional-contributors">
        <name>Additional Contributors</name>
        <t>The following individuals made contributions to this document:</t>
        <artwork><![CDATA[
   Zafar Ali
   Cisco Systems
   Email: zali@cisco.com

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

   Chen Ran
   ZTE
   Email: chen.ran@zte.com.cn
]]></artwork>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC9256">
          <front>
            <title>Segment Routing Policy Architecture</title>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="A. Bogdanov" initials="A." surname="Bogdanov"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>Segment Routing (SR) allows a node to steer a packet flow along any path. Intermediate per-path states are eliminated thanks to source routing. SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated called a headend node. The packets steered into an SR Policy carry an ordered list of segments associated with that SR Policy.</t>
              <t>This document updates RFC 8402 as it details the concepts of SR Policy and steering into an SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9256"/>
          <seriesInfo name="DOI" value="10.17487/RFC9256"/>
        </reference>
        <reference anchor="RFC9862">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing (SR) Policy Candidate Paths</title>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="S. Sidor" initials="S." surname="Sidor"/>
            <author fullname="C. Barth" initials="C." surname="Barth"/>
            <author fullname="S. Peng" initials="S." surname="Peng"/>
            <author fullname="H. Bidgoli" initials="H." surname="Bidgoli"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>A Segment Routing (SR) Policy is an ordered list of instructions called "segments" that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated. An SR Policy is made of one or more Candidate Paths.</t>
              <t>This document specifies the Path Computation Element Communication Protocol (PCEP) extension to signal Candidate Paths of an SR Policy. Additionally, this document updates RFC 8231 to allow delegation and setup of an SR Label Switched Path (LSP) without using the path computation request and reply messages. This document is applicable to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over IPv6 (SRv6).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9862"/>
          <seriesInfo name="DOI" value="10.17487/RFC9862"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC9603">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for IPv6 Segment Routing</title>
            <author fullname="C. Li" initials="C." role="editor" surname="Li"/>
            <author fullname="P. Kaladharan" initials="P." surname="Kaladharan"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="Y. Zhu" initials="Y." surname="Zhu"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>Segment Routing (SR) can be used to steer packets through a network using the IPv6 or MPLS data plane, employing the source routing paradigm.</t>
              <t>An SR Path can be derived from a variety of mechanisms, including an IGP Shortest Path Tree (SPT), explicit configuration, or a Path Computation Element (PCE).</t>
              <t>Since SR can be applied to both MPLS and IPv6 data planes, a PCE should be able to compute an SR Path for both MPLS and IPv6 data planes. The Path Computation Element Communication Protocol (PCEP) extension and mechanisms to support SR-MPLS have been defined. This document outlines the necessary extensions to support SR for the IPv6 data plane within PCEP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9603"/>
          <seriesInfo name="DOI" value="10.17487/RFC9603"/>
        </reference>
        <reference anchor="RFC8231">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.</t>
              <t>Although PCEP explicitly makes no assumptions regarding the information available to the PCE, it also makes no provisions for PCE control of timing and sequence of path computations within and across PCEP sessions. This document describes a set of extensions to PCEP to enable stateful control of MPLS-TE and GMPLS Label Switched Paths (LSPs) via PCEP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8231"/>
          <seriesInfo name="DOI" value="10.17487/RFC8231"/>
        </reference>
        <reference anchor="RFC5440">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol (PCEP)</title>
            <author fullname="JP. Vasseur" initials="JP." role="editor" surname="Vasseur"/>
            <author fullname="JL. Le Roux" initials="JL." role="editor" surname="Le Roux"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>This document specifies the Path Computation Element (PCE) Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs. Such interactions include path computation requests and path computation replies as well as notifications of specific states related to the use of a PCE in the context of Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering. PCEP is designed to be flexible and extensible so as to easily allow for the addition of further messages and objects, should further requirements be expressed in the future. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5440"/>
          <seriesInfo name="DOI" value="10.17487/RFC5440"/>
        </reference>
        <reference anchor="RFC5511">
          <front>
            <title>Routing Backus-Naur Form (RBNF): A Syntax Used to Form Encoding Rules in Various Routing Protocol Specifications</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="April" year="2009"/>
            <abstract>
              <t>Several protocols have been specified in the Routing Area of the IETF using a common variant of the Backus-Naur Form (BNF) of representing message syntax. However, there is no formal definition of this version of BNF.</t>
              <t>There is value in using the same variant of BNF for the set of protocols that are commonly used together. This reduces confusion and simplifies implementation.</t>
              <t>Updating existing documents to use some other variant of BNF that is already formally documented would be a substantial piece of work.</t>
              <t>This document provides a formal definition of the variant of BNF that has been used (that we call Routing BNF) and makes it available for use by new protocols. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5511"/>
          <seriesInfo name="DOI" value="10.17487/RFC5511"/>
        </reference>
        <reference anchor="I-D.ietf-pce-sr-bidir-path">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Associated Bidirectional Segment Routing (SR) LSPs</title>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Mach Chen" initials="M." surname="Chen">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Rakesh Gandhi" initials="R." surname="Gandhi">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Quan Xiong" initials="Q." surname="Xiong">
              <organization>ZTE Corporation</organization>
            </author>
            <date day="6" month="March" year="2026"/>
            <abstract>
              <t>   Segment Routing (SR) steers packets through a network using the IPv6
   or MPLS data planes via source routing.  Stateful Path Computation
   Element Communication Protocol (PCEP) extensions are defined for SR
   Traffic Engineering (TE) LSPs.

   PCEP supports grouping two RSVP-TE signaled, unidirectional MPLS-TE
   Label-Switched Paths (LSPs) with one in each direction in a network
   into an associated bidirectional LSP.  This document extends PCEP
   support to group two unidirectional SR LSPs into an associated
   bidirectional SR LSP.  The mechanisms defined in this document apply
   to both stateless and stateful PCEs for PCE-initiated and PCC-
   initiated LSPs.


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-sr-bidir-path-25"/>
        </reference>
        <reference anchor="RFC9863">
          <front>
            <title>Path Computation Element Protocol (PCEP) Extension for Color</title>
            <author fullname="B. Rajagopalan" initials="B." surname="Rajagopalan"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="S. Peng" initials="S." surname="Peng"/>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="G. Mishra" initials="G." surname="Mishra"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>Color is a 32-bit numerical (unsigned integer) attribute used to associate a Traffic Engineering (TE) tunnel or policy with an intent or objective. For example, a TE Tunnel constructed to deliver low latency services and whose path is optimized for delay can be tagged with a color that represents "low latency." This document specifies extensions to the Path Computation Element Protocol (PCEP) to carry the color attribute.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9863"/>
          <seriesInfo name="DOI" value="10.17487/RFC9863"/>
        </reference>
        <reference anchor="RFC8281">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.</t>
              <t>The extensions for stateful PCE provide active control of Multiprotocol Label Switching (MPLS) Traffic Engineering Label Switched Paths (TE LSPs) via PCEP, for a model where the PCC delegates control over one or more locally configured LSPs to the PCE. This document describes the creation and deletion of PCE-initiated LSPs under the stateful PCE model.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8281"/>
          <seriesInfo name="DOI" value="10.17487/RFC8281"/>
        </reference>
        <reference anchor="RFC8664">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing</title>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="J. Hardwick" initials="J." surname="Hardwick"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) enables any head-end node to select any path without relying on a hop-by-hop signaling technique (e.g., LDP or RSVP-TE). It depends only on "segments" that are advertised by link-state Interior Gateway Protocols (IGPs). An SR path can be derived from a variety of mechanisms, including an IGP Shortest Path Tree (SPT), an explicit configuration, or a Path Computation Element (PCE). This document specifies extensions to the Path Computation Element Communication Protocol (PCEP) that allow a stateful PCE to compute and initiate Traffic-Engineering (TE) paths, as well as a Path Computation Client (PCC) to request a path subject to certain constraints and optimization criteria in SR networks.</t>
              <t>This document updates RFC 8408.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8664"/>
          <seriesInfo name="DOI" value="10.17487/RFC8664"/>
        </reference>
        <reference anchor="RFC8253">
          <front>
            <title>PCEPS: Usage of TLS to Provide a Secure Transport for the Path Computation Element Communication Protocol (PCEP)</title>
            <author fullname="D. Lopez" initials="D." surname="Lopez"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="D. Dhody" initials="D." surname="Dhody"/>
            <date month="October" year="2017"/>
            <abstract>
              <t>The Path Computation Element Communication Protocol (PCEP) defines the mechanisms for the communication between a Path Computation Client (PCC) and a Path Computation Element (PCE), or among PCEs. This document describes PCEPS -- the usage of Transport Layer Security (TLS) to provide a secure transport for PCEP. The additional security mechanisms are provided by the transport protocol supporting PCEP; therefore, they do not affect the flexibility and extensibility of PCEP.</t>
              <t>This document updates RFC 5440 in regards to the PCEP initialization phase procedures.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8253"/>
          <seriesInfo name="DOI" value="10.17487/RFC8253"/>
        </reference>
        <reference anchor="I-D.ietf-pce-pceps-tls13">
          <front>
            <title>Updates for PCEPS: TLS Connection Establishment Restrictions</title>
            <author fullname="Dhruv Dhody" initials="D." surname="Dhody">
              <organization>Huawei</organization>
            </author>
            <author fullname="Sean Turner" initials="S." surname="Turner">
              <organization>sn3rd</organization>
            </author>
            <author fullname="Russ Housley" initials="R." surname="Housley">
              <organization>Vigil Security, LLC</organization>
            </author>
            <date day="9" month="January" year="2024"/>
            <abstract>
              <t>   Section 3.4 of RFC 8253 specifies TLS connection establishment
   restrictions for PCEPS; PCEPS refers to usage of TLS to provide a
   secure transport for PCEP (Path Computation Element Communication
   Protocol).  This document adds restrictions to specify what PCEPS
   implementations do if they support more than one version of the TLS
   protocol and to restrict the use of TLS 1.3's early data.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-pceps-tls13-04"/>
        </reference>
        <reference anchor="RFC9325">
          <front>
            <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="T. Fossati" initials="T." surname="Fossati"/>
            <date month="November" year="2022"/>
            <abstract>
              <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols and can also form the basis for secure transport protocols. Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation. This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.</t>
              <t>RFC 7525, an earlier version of the TLS recommendations, was published when the industry was transitioning to TLS 1.2. Years later, this transition is largely complete, and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, this document updates RFCs 5288 and 6066 in view of recent attacks.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="9325"/>
          <seriesInfo name="DOI" value="10.17487/RFC9325"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC4655">
          <front>
            <title>A Path Computation Element (PCE)-Based Architecture</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="J.-P. Vasseur" initials="J.-P." surname="Vasseur"/>
            <author fullname="J. Ash" initials="J." surname="Ash"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>Constraint-based path computation is a fundamental building block for traffic engineering systems such as Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) networks. Path computation in large, multi-domain, multi-region, or multi-layer networks is complex and may require special computational components and cooperation between the different network domains.</t>
              <t>This document specifies the architecture for a Path Computation Element (PCE)-based model to address this problem space. This document does not attempt to provide a detailed description of all the architectural components, but rather it describes a set of building blocks for the PCE architecture from which solutions may be constructed. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4655"/>
          <seriesInfo name="DOI" value="10.17487/RFC4655"/>
        </reference>
        <reference anchor="RFC9059">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Associated Bidirectional Label Switched Paths (LSPs)</title>
            <author fullname="R. Gandhi" initials="R." role="editor" surname="Gandhi"/>
            <author fullname="C. Barth" initials="C." surname="Barth"/>
            <author fullname="B. Wen" initials="B." surname="Wen"/>
            <date month="June" year="2021"/>
            <abstract>
              <t>This document defines Path Computation Element Communication Protocol (PCEP) extensions for grouping two unidirectional MPLS-TE Label Switched Paths (LSPs), one in each direction in the network, into an associated bidirectional LSP. These PCEP extensions can be applied either using a stateful PCE for both PCE-initiated and PCC-initiated LSPs or using a stateless PCE. The PCEP procedures defined are applicable to the LSPs using RSVP-TE for signaling.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9059"/>
          <seriesInfo name="DOI" value="10.17487/RFC9059"/>
        </reference>
        <reference anchor="I-D.ietf-spring-cs-sr-policy">
          <front>
            <title>Circuit Style Segment Routing Policy</title>
            <author fullname="Christian Schmutzer" initials="C." surname="Schmutzer">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Zafar Ali" initials="Z." surname="Ali">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Praveen Maheshwari" initials="P." surname="Maheshwari">
              <organization>Airtel India</organization>
            </author>
            <author fullname="Reza Rokui" initials="R." surname="Rokui">
              <organization>Ciena</organization>
            </author>
            <author fullname="Andrew Stone" initials="A." surname="Stone">
              <organization>Nokia</organization>
            </author>
            <date day="12" month="March" year="2026"/>
            <abstract>
              <t>   This document describes how Segment Routing (SR) policies can be used
   to satisfy the requirements for bandwidth, end-to-end recovery and
   persistent paths within a SR network.  The association of two co-
   routed unidirectional SR Policies satisfying these requirements is
   called "Circuit Style" SR Policy (CS-SR Policy).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-cs-sr-policy-17"/>
        </reference>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. 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.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC9826">
          <front>
            <title>A YANG Data Model for the Path Computation Element Communication Protocol (PCEP)</title>
            <author fullname="D. Dhody" initials="D." role="editor" surname="Dhody"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="J. Hardwick" initials="J." surname="Hardwick"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="September" year="2025"/>
            <abstract>
              <t>This document defines a YANG data model for the management of the Path Computation Element Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a Path Computation Element (PCE), or between two PCEs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9826"/>
          <seriesInfo name="DOI" value="10.17487/RFC9826"/>
        </reference>
      </references>
    </references>
    <?line 1001?>

<section anchor="examples">
      <name>Examples</name>
      <section anchor="sr-policy-candidate-path-with-multiple-segment-lists">
        <name>SR Policy Candidate Path with Multiple Segment Lists</name>
        <t>Consider the following sample SR Policy.</t>
        <artwork><![CDATA[
SR policy POL1 <headend, color, endpoint>
    Candidate Path CP1 <protocol-origin = 20, originator-asn = 100,
                        originator-address = 192.0.2.1,
                        discriminator = 1>
        Preference 200
        Weight W1, SID-List1 <SID11...SID1i>
        Weight W2, SID-List2 <SID21...SID2j>
    Candidate Path CP2 <protocol-origin = 20, originator-asn = 100,
                        originator-address = 198.51.100.1,
                        discriminator = 2>
        Preference 100
        Weight W3, SID-List3 <SID31...SID3i>
        Weight W4, SID-List4 <SID41...SID4j>
]]></artwork>
        <t>As specified in <xref target="RFC9862"/>, CP1 and CP2 
are signaled as separate state-report elements and each has 
a unique PLSP-ID, assigned by the PCC. 
For this example, PLSP-ID 100 is assigned to CP1 and PLSP-ID 200 to CP2.</t>
        <t>The state-report (as defined in <xref target="RFC8231"/>) for CP1 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=100>
    <ASSOCIATION>
    <PATH-ATTRIB Path ID=1 <WEIGHT-TLV Weight=W1>>
    <ERO SID-List1>
    <PATH-ATTRIB Path ID=2 <WEIGHT-TLV Weight=W2>>
    <ERO SID-List2>
]]></artwork>
        <t>The state-report for CP2 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=200>
    <ASSOCIATION>
    <PATH-ATTRIB Path ID=1 <WEIGHT-TLV Weight=W3>>
    <ERO SID-List3>
    <PATH-ATTRIB Path ID=2 <WEIGHT-TLV Weight=W4>>
    <ERO SID-List4>
]]></artwork>
        <t>The above sample state-report elements only 
specify the minimum mandatory objects, 
of course other objects like SRP, LSPA, METRIC, etc., are allowed to be 
inserted.</t>
        <t>Note that the syntax</t>
        <artwork><![CDATA[
<PATH-ATTRIB Path ID=1 <WEIGHT-TLV Weight=W1>>
]]></artwork>
        <t>means that this is PATH-ATTRIB object 
with Path ID field set to 1 and 
with a MULTIPATH-WEIGHT TLV carrying weight of "W1".</t>
      </section>
      <section anchor="CCPEX">
        <name>Composite Candidate Path</name>
        <t>Consider the following Composite Candidate Path.</t>
        <artwork><![CDATA[
SR policy POL100 <headend = H1, color = 100, endpoint = E1>
    Candidate Path CP1 <protocol-origin = 20, originator-asn = 100,
                        originator-address = 192.0.2.1,
                        discriminator = 1>
        Preference 200
        Weight W1, SR policy <color = 1>
        Weight W2, SR policy <color = 2>
]]></artwork>
        <t>This is signaled in PCEP as:</t>
        <artwork><![CDATA[
    <LSP PLSP-ID=100>
        <ASSOCIATION>
        <PATH-ATTRIB Path ID=1
            <WEIGHT-TLV Weight=W1>
            <COLOR-TLV Color=1>>
        <ERO (empty)>
        <PATH-ATTRIB Path ID=2
            <WEIGHT-TLV Weight=W2>
            <COLOR-TLV Color=2>>
        <ERO (empty)>
]]></artwork>
      </section>
      <section anchor="OPPDIREX">
        <name>Opposite Direction Tunnels</name>
        <t>Consider the two opposite-direction SR Policies between
endpoints H1 and E1.</t>
        <artwork><![CDATA[
SR policy POL1 <headend = H1, color, endpoint = E1>
    Candidate Path CP1
        Preference 200
        Bidirectional Association = A1
        SID-List = <H1,M1,M2,E1>
        SID-List = <H1,M3,M4,E1>
    Candidate Path CP2
        Preference 100
        Bidirectional Association = A2
        SID-List = <H1,M5,M6,E1>
        SID-List = <H1,M7,M8,E1>

SR policy POL2 <headend = E1, color, endpoint = H1>
    Candidate Path CP1
        Preference 200
        Bidirectional Association = A1
        SID-List = <E1,M2,M1,H1>
        SID-List = <E1,M4,M3,H1>
    Candidate Path CP2
        Preference 100
        Bidirectional Association = A2
        SID-List = <E1,M6,M5,H1>
]]></artwork>
        <t>The state-report for POL1, CP1 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=100>
    <BIDIRECTIONAL ASSOCIATION = A1>
    <PATH-ATTRIB Path ID=1 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=3>>
    <ERO <H1,M1,M2,E1>>
    <PATH-ATTRIB Path ID=2 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=4>>
    <ERO <H1,M3,M4,E1>>
    <PATH-ATTRIB Path ID=3 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=1>>
    <ERO <E1,M2,M1,H1>>
    <PATH-ATTRIB Path ID=4 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=2>>
    <ERO <E1,M4,M3,H1>>
]]></artwork>
        <t>The state-report for POL1, CP2 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=200>
    <BIDIRECTIONAL ASSOCIATION = A2>
    <PATH-ATTRIB Path ID=1 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=3>>
    <ERO <H1,M5,M6,E1>>
    <PATH-ATTRIB Path ID=2 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=0>>
    <ERO <H1,M7,M8,E1>>
    <PATH-ATTRIB Path ID=3 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=1>>
    <ERO <E1,M6,M5,H1>>
]]></artwork>
        <t>The state-report for POL2, CP1 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=100>
    <BIDIRECTIONAL ASSOCIATION = A1>
    <PATH-ATTRIB Path ID=1 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=3>>
    <ERO <E1,M2,M1,H1>>
    <PATH-ATTRIB Path ID=2 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=4>>
    <ERO <E1,M4,M3,H1>>
    <PATH-ATTRIB Path ID=3 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=1>>
    <ERO <H1,M1,M2,E1>>
    <PATH-ATTRIB Path ID=4 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=2>>
    <ERO <H1,M3,M4,E1>>
]]></artwork>
        <t>The state-report for POL2, CP2 can be encoded as:</t>
        <artwork><![CDATA[
<state-report> =
    <LSP PLSP-ID=200>
    <BIDIRECTIONAL ASSOCIATION = A2>
    <PATH-ATTRIB Path ID=1 R-flag=0
        <OPPDIR-PATH-TLV OppositePath ID=3>>
    <ERO <E1,M6,M5,H1>>
    <PATH-ATTRIB Path ID=2 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=0>>
    <ERO <H1,M7,M8,E1>>
    <PATH-ATTRIB Path ID=3 R-flag=1
        <OPPDIR-PATH-TLV OppositePath ID=1>>
    <ERO <H1,M5,M6,E1>>
]]></artwork>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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
jsIalAO37IoivBxpqPpjhhJ48NsWX6Nh+YP8UuIX/JnxfhtmRvoTzQMAOLPZ
bQKCC2g0RldNL8WGx+OMaozsIp31I1aFCYmxFB0c31qLidm85H5t09lGoz9k
1myrPwS2ztFcl/k/1Tw3QjXBh3gu8VDKfyokDt4hNA5K26eh7IdgmXpiroOb
EOAKM3vQhXNVQ/qqtT6ZW5i4rh02a85LT+JR0C3jouCjORu8ZWCfyNIjRKww
mt1ghjPGXrz2EiVRqw8O6tPiVTWqf/l6fxue/jZ2cqqtVdmKIv2HnlNZP3+y
pPRBbmvPr+20zMDsJvVbgEPH4dYAr6eMVZnE5gveBpwC0O2YlyxdRjBgWnhX
OL45PpqoqYtGiC8v7GffamUuoQiPaL0zn5YT/InIQrc3yuMuWRqKVTxUmxdU
giIKF08XOOAg8KlKrKGkL+zCmDMyuXeEQUKxddwlpOqRJ0ybQF5jg0c0EjkK
YkAJEyevTiizQZhDIkzzIxAELsNDi7IvIlX6dbDW0hXayBrE4QdiUA23xV96
wGpcwN+hAoBKd6RDFekm+mSzJFFigE4QanyAyRi2vRwxwQNmBz+rPv2WeKkt
8W0EidtbBTFrBSG2io3ccDmsY6Gq8IkItbRC7ZGAWqjPAMdCAbpS0fYk04Hz
qKlCHR8neLx3drxX8NDXFbZEK7LVu7mFmLtMKW8yj1q3Vdx1B7LXnqTcA33V
ZSduOFas5E77yo6ziSxPgjHjOjI4jmzIzXvZUNXZ8NEHvapbJ/x2lYCHuZKV
9PMzm4kktT/yeRGH4GBieZifgHReqwTw83w5AVq5biV2pGwZTA2XogbopHAy
BUaAlq46reSxijflAj4c7PAKr+thm4GdrvScFC/Bdt/ECXNqH0gY4U5PfrkY
ZtzQChANEh7Hha3hyGty2OsSdPB9/JYbZv1RslbuyzXquYwwb24gHBhFae6O
d11v4FKOfr9j+rDx/VQVL6lFWhPBojgEFrakuSgtiULrfAblEkhKT7dCHj6z
+ZpAC5cjNX7XHq1CV2dKfOdSycrYFgC5aT0PSlC6dflrNh0A+Ti1qXjSR4Ky
1Hhcq9YcncorLtmwrFHMXNnC1O8h5OwNiQfdxpmlYpccIl7DzETmit51dZUH
fj8CdERk+ErSYEZQZ0R48PHChREwQBOtXLgGYzfUD0RESVYHgM6KopXXWc8O
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
eSIqpboKXFFbXcVjV+Slov1LV7QDK7rj/PcRK6oceX+qFRH3ogI59E//G+U5
SrXrEqzVMXLbqPNop9zkY80NqRrjrbFwQKeBJsRHJRuskZ4lrwyoC5Hnc/AR
QFnrv9Jr5HZwBG6t4ml8ZKHxOszLrfHiS41tss88odDY7Dux8b7iCXbB8pRK
yTfWbTOItlqbO2CpMwd3FJDUuvYVPRVz4IqG3jy2OUa3wfegFaEFfNeCnnhF
vhNz1lhR3Zn537CiHW+efzUHPPfmedvArldT8HDs3onZp8WudS8Ou3LD7P2p
H6QemgPerx/aMgl/VxBtsGz2h5//u7DH8KW/ZmGPsV+A/QlhedXf3rLzWEF4
1rj38ulhaWWyzrzaj2aK1ca9n+W63/2d9dphAdts6Ob5V2smX0seC7lX70z5
dLD4WvJUYKlekvNpYLmH9Rrdnj4a8zVGfhT7Nd7+nQHbYfm31X2X1jT0unR/
Slh83Xc4aume/YlgsefwF5gEiMGc+ln8JZU3y5eVjJmsntZVppf3qvnXys8v
dd+9eLFT/sWVmL3yApUhJ6lXblThHCLMcJpK08SWtLUB5YbzUaefA87NFscH
o7OTk4PT/YN9l+OVSclKeV+u6xCDuVCYhHATSKeBoMDq/Tzk9gmURR9P09US
/5JePpnt0wGDZrYrWwYj4cUnksTkKlKCGbZ/A3HFFck4fIKoxroAfPYSGyWS
93EcrEyq3D6tXx5fbLglPkfs1K8/hP8ts34eZVuEu/K6EoU5gwugpJlsJAI5
MVhmVqTUQXxJ1cJTzpmTLdgePucj44qR1pa7wWLUhgelhIwTqyQ7xqcizLBr
ISFV3b4q0eAwlQuVkCpWXkuKc5c3pbxt9aohqg27sZzV3mXdk/zLKtSqE+pK
ZgrBIZlUnDxDvcqLeOoSvyQbSe1VC3Iqda+13ELpLMoZblSwg3AkVN9jYkox
wytgw4zZwu/TVQZqqe9N2eOtM9Qo13qdYRcWrLSApfiVz7iE/SAP9AnYCxHs
OGeiuSi5XI0rTR3Rs/AuFqAVf793+o1eJLMCwGY9+Ool6kFO48NasB/L7E6/
N0CNS1XndhLQx9jsEFgSdGBuSvSfJDEm6GICqPTHcTd3d42HbSskZTIFsKeG
UkHR1ohkDjVzc9BV6XaKKhmFJZExqWK/jCAC42W2spOrtkqd6m09uLjvOC90
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
3asCDLfi/wN1NX5H278AAA==

-->

</rfc>
