<?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.23 (Ruby 3.2.3) -->
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-spring-cs-sr-policy-04" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="CS-SR Policies">Circuit Style Segment Routing Policies</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-spring-cs-sr-policy-04"/>
    <author initials="C." surname="Schmutzer" fullname="Christian Schmutzer" role="editor">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <email>cschmutz@cisco.com</email>
      </address>
    </author>
    <author initials="Z." surname="Ali" fullname="Zafar Ali" role="editor">
      <organization>Cisco Systems, Inc.</organization>
      <address>
        <email>zali@cisco.com</email>
      </address>
    </author>
    <author initials="P." surname="Maheshwari" fullname="Praveen Maheshwari">
      <organization>Airtel India</organization>
      <address>
        <email>Praveen.Maheshwari@airtel.com</email>
      </address>
    </author>
    <author initials="R." surname="Rokui" fullname="Reza Rokui">
      <organization>Ciena</organization>
      <address>
        <email>rrokui@ciena.com</email>
      </address>
    </author>
    <author initials="A." surname="Stone" fullname="Andrew Stone">
      <organization>Nokia</organization>
      <address>
        <email>andrew.stone@nokia.com</email>
      </address>
    </author>
    <date year="2025" month="February" day="14"/>
    <abstract>
      <?line 180?>

<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. SR Policies satisfying these requirements are called "circuit-style" SR Policies (CS-SR Policies).</t>
    </abstract>
  </front>
  <middle>
    <?line 184?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Segment Routing (SR) does allow for a single network to carry both typical IP (connection-less) services and connection-oriented transport services. IP services typically leverage ECMP and TI-LFA. However transport services (commonly referred to as "private lines") are delivered via pseudowires (defined by the PWE3 and PALS workgroups) and require:</t>
      <ul spacing="normal">
        <li>
          <t>Persistent end-to-end bidirectional traffic engineered paths that provide predictable and identical latency in both directions</t>
        </li>
        <li>
          <t>A requested amount of bandwidth per path that is assured irrespective of changing network utilization other services</t>
        </li>
        <li>
          <t>Fast end-to-end protection and restoration mechanisms</t>
        </li>
        <li>
          <t>Monitoring and maintenance of path integrity</t>
        </li>
        <li>
          <t>Data plane remaining up while control plane is down</t>
        </li>
      </ul>
      <t>Such a "transport centric" behavior is referred to as "circuit-style" in this document.</t>
      <t>This document describes how SR Policies <xref target="RFC9256"/> and adjacency-SIDs defined in the SR architecture <xref target="RFC8402"/> together with a centralised controller such as a stateful Path Computation Element (PCE) <xref target="RFC8231"/> can be used to satisfy those requirements. It includes how end-to-end recovery and path integrity monitoring can be implemented.</t>
      <t>SR Policies that satisfy those requirements are called "Circuit-Style" SR Policies (CS-SR Policies).</t>
    </section>
    <section anchor="requirements-notation">
      <name>Requirements Notation</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>
      <ul spacing="normal">
        <li>
          <t>BSID : Binding Segment Identifier</t>
        </li>
        <li>
          <t>CS-SR : Circuit-Style Segment Routing</t>
        </li>
        <li>
          <t>ID : Identifier</t>
        </li>
        <li>
          <t>LSP : Label Switched Path</t>
        </li>
        <li>
          <t>LSPA : LSP attributes</t>
        </li>
        <li>
          <t>NRP : Network Resource Partition</t>
        </li>
        <li>
          <t>OAM : Operations, Administration and Maintenance</t>
        </li>
        <li>
          <t>OF : Objective Function</t>
        </li>
        <li>
          <t>PCE : Path Computation Element</t>
        </li>
        <li>
          <t>PCEP : Path Computation Element Communication Protocol</t>
        </li>
        <li>
          <t>PT : Protection Type</t>
        </li>
        <li>
          <t>SID : Segment Identifier</t>
        </li>
        <li>
          <t>SLA : Service Level Agreement</t>
        </li>
        <li>
          <t>SR : Segment Routing</t>
        </li>
        <li>
          <t>STAMP : Simple Two-Way Active Measurement Protocol</t>
        </li>
        <li>
          <t>TI-LFA : Topology Independent Loop Free Alternate</t>
        </li>
        <li>
          <t>TLV : Type Length Value</t>
        </li>
      </ul>
    </section>
    <section anchor="reference-model">
      <name>Reference Model</name>
      <t>The reference model for CS-SR Policies follows the SR architecture <xref target="RFC8402"/> and SR Policy architecture <xref target="RFC9256"/> and is depicted in <xref target="architecture-diagram"/>.</t>
      <figure anchor="architecture-diagram">
        <name>Circuit-style SR Policy Reference Model</name>
        <artwork><![CDATA[
                      +----------------+                   
      +-------------->|   controller   |<------------+   
      |               +----------------+             |   
PCEP/BGP/config                               PCEP/BGP/config
      |                                              |   
      v   <<<<<<<<<<<<<< CS-SR Policy >>>>>>>>>>>>>  v   
+-------+                                          +-------+
|       |=========================================>|       |
|   A   | SR Policy from A to Z                    |   Z   |
|       |<=========================================|       |
+-------+                    SR Policy from Z to A +-------+
]]></artwork>
      </figure>
      <t>Given the nature of CS-SR Policies, paths are computed and maintained by a centralized entity providing a consistent simple mechanism for initializing the co-routed bidirectional end-to-end paths, performing bandwidth allocation control, as well as monitoring facilities to ensure SLA compliance for the live of the CS-SR Policy.</t>
      <t>CS-SR Policies can be instantiated in the endpoints using configuration, PCEP or BGP.</t>
      <t>When using PCEP as the communication protocol on the endpoints, the centralized entity is a stateful PCE defined in <xref target="RFC8231"/>. When using a MPLS data plane <xref target="RFC8660"/>, PCEP extensions defined in <xref target="RFC8664"/> will be used. When using a SRv6 data plane <xref target="RFC8754"/>, <xref target="RFC8986"/>, PCEP extensions defined in <xref target="RFC9603"/> are used.</t>
      <t>When using BGP as the communication protocol on the endpoints, the BGP extensions defined in <xref target="I-D.ietf-idr-sr-policy-safi"/> are used.</t>
      <t>When using configuration, the YANG model defined in <xref target="I-D.ietf-spring-sr-policy-yang"/> does apply.</t>
      <t>In order to satisfy the requirements of CS-SR Policies, each link in the topology MUST have:</t>
      <ul spacing="normal">
        <li>
          <t>An adjacency-SID which is:
          </t>
          <ul spacing="normal">
            <li>
              <t>Manually allocated or persistent: to ensure that its value does not change after a node reload</t>
            </li>
            <li>
              <t>Non-protected: to avoid any local TI-LFA protection to happen upon interface/link failures</t>
            </li>
          </ul>
        </li>
        <li>
          <t>The bandwidth available for CS-SR Policies specified</t>
        </li>
        <li>
          <t>A per-hop behavior (<xref target="RFC3246"/> or <xref target="RFC2597"/>) that ensures that the specified bandwidth is available to CS-SR Policies at all times independent of any other traffic</t>
        </li>
      </ul>
      <t>In a network with link bundles an adjacency-SID SHOULD be assigned to each member-link (<xref target="RFC8668"/>, <xref target="RFC9356"/>) to ensure deterministic traffic placement onto physical links. Similarly, the use of adjacency-SIDs representing parallel adjacencies <xref section="4.3" sectionFormat="of" target="RFC8402"/> SHOULD also be avoided.</t>
      <t>When using a MPLS data plane <xref target="RFC8660"/> existing IGP extensions defined in <xref target="RFC8667"/> and <xref target="RFC8665"/> and BGP-LS defined in <xref target="RFC9085"/> can be used to distribute the topology information including those persistent and unprotected adjacency-SIDs.</t>
      <t>When using a SRv6 data plane <xref target="RFC8754"/>, <xref target="RFC8986"/> the IGP extensions defined in <xref target="RFC9352"/>, <xref target="RFC9513"/> and BGP-LS extensions in <xref target="RFC9514"/> apply.</t>
      <section anchor="bandwidth">
        <name>Managing Bandwidth</name>
        <t>In a network, resources are represented by links of certain bandwidth. In a circuit switched network such as SONET/SDH, OTN or DWDM resources (timeslots or a wavelength) are allocated for a provisioned connection at the time of reservation even if no communication is present. In a packet switched network resources are only allocated when communication is present, i.e. packets are to be sent. This allows for the total reservations to exceed the link bandwidth as well in general for link congestion.</t>
        <t>To satisfy the bandwidth requirement for CS-SR Policies it must be ensured that packets carried by CS-SR Policies can be at all times sent up to the reserved bandwidth on each hop along the path.</t>
        <t>This is done by:</t>
        <ul spacing="normal">
          <li>
            <t>Firstly, CS-SR Policy bandwidth reservations per link must be limited to equal or less than the physical link bandwidth.</t>
          </li>
          <li>
            <t>Secondly, ensuring traffic for each CS-SR Policy is limited to the bandwidth reserved for that CS-SR Policy by traffic policing or shaping and admission control on the ingress of the pseudowire.</t>
          </li>
          <li>
            <t>Thirdly, ensuring that during times of link congestion only non-CS-SR Policy traffic is being buffered or dropped.</t>
          </li>
        </ul>
        <t>For the third step several approaches can be considered:</t>
        <ul spacing="normal">
          <li>
            <t>Allocate a dedicated physical link of bandwidth P to CS-SR Policies and allow CS-SR reservations up to bandwidth C. Consider bandwidth N allocated for network control, ensure that P - N &gt;= C</t>
          </li>
          <li>
            <t>Allocate a dedicate logical link (i.e. 801.q VLAN on ethernet) to CS-SR Policies on a physical link of bandwidth P. Limit the total utilization across all other logical links to bandwidth O by traffic policing or shaping and ensure that P - N - O &gt;= C</t>
          </li>
          <li>
            <t>Allocate a dedicated Diffserv codepoint to map traffic of CS-SR Policies into a specific queue not used by any other traffic</t>
          </li>
          <li>
            <t>Use of dedicated manual unprotected adjacency-SIDs that are used solely by CS-SR traffic. Features like TI-LFA <xref target="I-D.draft-ietf-rtgwg-segment-routing-ti-lfa"/> and microloop avoidance <xref target="I-D.draft-bashandy-rtgwg-segment-routing-uloop"/> can use dynamic unprotected adjancency-SIDs.</t>
          </li>
        </ul>
        <t>The approach of allocating a Diffserv codepoint can leverage any of the following Per Hop Behavior (PHB) strategies:</t>
        <ul spacing="normal">
          <li>
            <t>Use a Assured Forwarding (AF) class queue for CS-SR Policies and limit the total utilization across all other queues to bandwidth O by traffic policing or shaping and ensure that P - N - O &gt;= C</t>
          </li>
          <li>
            <t>Use a Expedited Forwarding (EF) class queue for CS-SR Policies and limit the total utilization across all other EF queues of higher or equal priority to bandwidth O by traffic policing or shaping and ensure that P - N - O &gt;= C</t>
          </li>
          <li>
            <t>Use a Expedited Forwarding (EF) class queue for CS-SR Policies with a priority higher than all other EF queues and limit the utilization of the CS-SR Policy EF queue by traffic policing to C &lt;= P - N</t>
          </li>
        </ul>
        <t>The use of a dedicated Diffserv codepoint for CS-SR traffic requires the marking of all traffic steered into CS-SR Policies on the ingress with that specific codepoint consistently across the domain.</t>
        <t>In addition, CS-SR Policy telemetry collection can be used to raise alarms when bandwidth utilization thresholds are passed or to request the reserved bandwidth to be adjusted.</t>
      </section>
    </section>
    <section anchor="characteristics">
      <name>CS-SR Policy Characteristics</name>
      <t>A CS-SR Policy has the following characteristics:</t>
      <ul spacing="normal">
        <li>
          <t>Requested bandwidth: bandwidth to be reserved for the CS-SR Policy</t>
        </li>
        <li>
          <t>Bidirectional co-routed: a CS-SR Policy between A and Z is an association of an SR Policy from A to Z and an SR Policy from Z to A following the same path(s)</t>
        </li>
        <li>
          <t>Deterministic and persistent paths: segment lists with strict hops using unprotected adjacency-SIDs</t>
        </li>
        <li>
          <t>Not automatically recomputed or reoptimized: the SID list of a candidate path must not change automatically to a SID list representing a different path (for example upon topology change)</t>
        </li>
        <li>
          <t>Multiple candidate paths in case of protection/restoration:
          </t>
          <ul spacing="normal">
            <li>
              <t>Following the SR Policy architecture, the highest preference valid path is carrying traffic</t>
            </li>
            <li>
              <t>Depending on the protection/restoration scheme (<xref target="recovery"/>), lower priority candidate paths
              </t>
              <ul spacing="normal">
                <li>
                  <t>may be pre-computed</t>
                </li>
                <li>
                  <t>may be pre-programmed</t>
                </li>
                <li>
                  <t>may have to be disjoint</t>
                </li>
              </ul>
            </li>
          </ul>
        </li>
        <li>
          <t>Connectivity verification and performance measurement is activated on each candidate path (<xref target="OAM"/>)</t>
        </li>
      </ul>
    </section>
    <section anchor="creation">
      <name>CS-SR Policy Creation</name>
      <section anchor="pcep">
        <name>Policy Creation when using PCEP</name>
        <t>Considering the scenario illustrated in <xref target="architecture-diagram"/> a CS-SR Policy between A and Z is configured both on A (with Z as endpoint) and Z (with A as endpoint).</t>
        <t>Both nodes A and Z act as PCC and delegate path computation to the PCE using PCEP with the extensions defined in <xref target="RFC8664"/> and the procedure described in <xref section="5.7.1" sectionFormat="of" target="RFC8231"/>. The PCRpt message sent from the headends to the PCE contains the following parameters:</t>
        <ul spacing="normal">
          <li>
            <t>BANDWIDTH object (Section 7.7 of <xref target="RFC5440"/>) : to indicate the requested bandwidth</t>
          </li>
          <li>
            <t>LSPA object (section 7.11 of <xref target="RFC5440"/>) : to indicate that no local protection requirements
            </t>
            <ul spacing="normal">
              <li>
                <t>L flag set to 0 : no local protection</t>
              </li>
              <li>
                <t>E flag set to 1 : protection enforcement (section 5 of <xref target="RFC9488"/>)</t>
              </li>
            </ul>
          </li>
          <li>
            <t>ASSOCIATION object (<xref target="RFC8697"/>) :
            </t>
            <ul spacing="normal">
              <li>
                <t>Type : Double-sided Bidirectional with Reverse LSP Association (<xref target="I-D.ietf-pce-sr-bidir-path"/>)</t>
              </li>
              <li>
                <t>Bidirectional Association Group TLV (<xref target="RFC9059"/>) :
                </t>
                <ul spacing="normal">
                  <li>
                    <t>R flag is always set to 0 (forward path)</t>
                  </li>
                  <li>
                    <t>C flag is always set to 1 (co-routed)</t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
        </ul>
        <t>If the SR Policies are configured with more than one candidate path, a PCEP request is sent per candidate path. Each PCEP request does include the "SR Policy Association" object (type 6) as defined in <xref target="I-D.ietf-pce-segment-routing-policy-cp"/> to make the PCE aware of the candidate path belonging to the same policy.</t>
        <t>The signaling extensions described in <xref target="I-D.ietf-pce-circuit-style-pcep-extensions"/> are used to ensure that</t>
        <ul spacing="normal">
          <li>
            <t>Path determinism is achieved by the PCE only using segment lists representing a strict hop by hop path using unprotected adjacency-SIDs.</t>
          </li>
          <li>
            <t>Path persistency across node reloads in the network is achieved by the PCE only including manually configured adjacency-SIDs in its path computation response.</t>
          </li>
          <li>
            <t>Persistency across network changes is achieved by the PCE not performing periodic nor network event triggered re-optimization.</t>
          </li>
        </ul>
        <t>Bandwidth adjustment can be requested after initial creation by signaling both requested and operational bandwidth in the BANDWIDTH object but the PCE is not allowed to respond with a changed path.</t>
        <t>As discussed in section 3.2 of <xref target="I-D.ietf-pce-multipath"/> it may be necessary to use load-balancing across multiple paths to satisfy the bandwidth requirement of a candidate path. In such a case the PCE will notify the PCC to install multiple segment lists using the signaling procedures described in section 5.3 of <xref target="I-D.ietf-pce-multipath"/>.</t>
        <t>In addition to the above described PCC-initiated mode of operation, The SR Policies can be instantiated in the network by a PCE using PCE-initiated procedures.</t>
      </section>
      <section anchor="policy-creation-when-using-bgp">
        <name>Policy Creation when using BGP</name>
        <t>Again considering the scenario illustrated in <xref target="architecture-diagram"/>, there is no CS-SR Policy configuration required on A nor Z to create the CS-SR Policy between A and Z.</t>
        <t>The centralized controller is instructed (i.e. by an application via an API call) to create the CS-SR Policy, for which the controller does perform path computation and is requesting A via BGP to instantiate a SR Policy (with Z as endpoint) and requesting Z via BGP to instantiate a SR Policy (with Z as endpoint).</t>
        <t>To instantiate the SR Policies in A and Z the BGP extensions defined in <xref target="I-D.ietf-idr-sr-policy-safi"/> are used.</t>
        <t>No signaling extensions are required for the following:</t>
        <ul spacing="normal">
          <li>
            <t>Path determinism is achieved by the controller only using segment lists representing a strict hop by hop path using unprotected adjacency-SIDs.</t>
          </li>
          <li>
            <t>Path persistency across node reloads in the network is achieved by the controller only including manually configured adjacency-SIDs in its path computation response.</t>
          </li>
          <li>
            <t>Persistency across network changes is achieved by the controller not performing periodic nor network event triggered re-optimization.</t>
          </li>
        </ul>
        <t>If there are more than one candidate paths per SR Policy required, multiple NLRIs with different distinguisher values (see section 2.1 of <xref target="I-D.ietf-idr-sr-policy-safi"/>) have to be included in the BGP UPDATE message.</t>
        <t>To achieve load-balancing across multiple paths to satisfy the bandwidth requirement of a candidate path, multiple Segment List Sub-TLVs have to be included in the SR Policy Sub-TLV. See section 2.1 of <xref target="I-D.ietf-idr-sr-policy-safi"/></t>
        <t>The endpoints A and Z report the SR Policy states back to the centralized controller via BGP-LS using the extension defined in <xref target="I-D.ietf-idr-bgp-ls-sr-policy"/>.</t>
      </section>
      <section anchor="maximum-segment-depth">
        <name>Maximum Segment Depth</name>
        <t>A Segment Routed path defined by a segment list is constrained by maximum segment depth (MSD), which is the maximum number of segments a router can impose onto a packet. <xref target="RFC8491"/>, <xref target="RFC8476"/>, <xref target="RFC8814"/> and <xref target="RFC8664"/> provide the necessary capabilities for a PCE to determine the MSD capability of a router. The MSD constraint is typically resolved by leveraging a label stack reduction technique, such as using Node SIDs and/or BSIDs (SR architecture <xref target="RFC8402"/>) in a segment list, which represents one or many hops in a given path.</t>
        <t>As described in <xref target="characteristics"/>, adjacency-SIDs without local protection are to be used for CS-SR Policies to ensure no ECMP, no rerouting due to topological changes nor localized  protection is being invoked on the traffic, as the alternate path may not be providing the desired SLA.</t>
        <t>If a CS-SR Policy path requires SID List reduction, a Node SID cannot be utilized as it is eligible for traffic rerouting following IGP re-convergence. However, a BSID can be programmed to a transit node, if the following requirements are met:</t>
        <ul spacing="normal">
          <li>
            <t>The BSID is unprotected, hence only has one candidate path</t>
          </li>
          <li>
            <t>The BSID follows the rerouting and optimization characteristics defined in <xref target="characteristics"/> which implies the SID list of the candidate path MUST only use unprotected adjacency-SIDs.</t>
          </li>
        </ul>
        <t>This ensures that any CS-SR Policies in which the BSID provides transit for do not get rerouted due to topological changes or protected due to failures. A BSID may be pre-programmed in the network or automatically injected in the network by a PCE.</t>
      </section>
    </section>
    <section anchor="recovery">
      <name>Recovery Schemes</name>
      <t>Various protection and restoration schemes can be implemented. The terms "protection" and "restoration" are used with the same subtle distinctions outlined in section 1 of <xref target="RFC4872"/>, <xref target="RFC4427"/> and <xref target="RFC3386"/> respectively.</t>
      <ul spacing="normal">
        <li>
          <t>Protection: another candidate path is computed and fully established in the data plane and ready to carry traffic</t>
        </li>
        <li>
          <t>Restoration: a candidate path may be computed and may be partially established but is not ready to carry traffic</t>
        </li>
      </ul>
      <t>The term "failure" is used to represent both "hard failures" such complete loss of connectivity detected by connectivity verification described in <xref target="verification"/> or degradation, a packet loss ratio, beyond a configured acceptable threshold.</t>
      <section anchor="unprotected">
        <name>Unprotected</name>
        <t>In the most basic scenario, no protection nor restoration is required. The CS-SR Policy has only one candidate path configured. This candidate path is established, activated and is carrying traffic.</t>
        <t>When using PCEP, a PCRpt message is sent from the PCC to the PCE with the O field in the LSP object set to 2.</t>
        <t>When using BGP, a BGP-LS update with a SR Policy Candidate Path NLRI is sent from the endpoint to the centralized controller having</t>
        <ul spacing="normal">
          <li>
            <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
          </li>
          <li>
            <t>A flag set to 1 to indicate the candidate path is active and carrying traffic</t>
          </li>
        </ul>
        <t>In case of a failure along the path the CS-SR Policy will go down and traffic will not be recovered.</t>
        <t>Typically, two CS-SR Policies are deployed either within the same network with disjoint paths or in two separate networks and the overlay service is responsible for traffic recovery.</t>
      </section>
      <section anchor="onetoone">
        <name>1:1 Protection</name>
        <t>For fast recovery against failures the CS-SR Policy has two candidate paths. Both paths are established but only the candidate with higher preference is activated and is carrying traffic. The second candidate path is programmed as backup in the forwarding plane as described in <xref section="9.3" sectionFormat="of" target="RFC9256"/>.</t>
        <t>When using PCEP, the PCRpt message for the candidate path with higher preference will have the O field in the LSP object set to 2. For the candidate path with the lower preference the O field in the LSP object is set to 1.</t>
        <t>Appropriate routing of the protect path diverse from the working path can be requested from the PCE by using the "Disjointness Association" object (type 2) defined in <xref target="RFC8800"/> in the PCRpt messages. The disjoint requirements are communicated in the "DISJOINTNESS-CONFIGURATION TLV"</t>
        <ul spacing="normal">
          <li>
            <t>L bit set to 1 for link diversity</t>
          </li>
          <li>
            <t>N bit set to 1 for node diversity</t>
          </li>
          <li>
            <t>S bit set to 1 for SRLG diversity</t>
          </li>
          <li>
            <t>T bit set to enforce strict diversity</t>
          </li>
        </ul>
        <t>The P bit may be set for first candidate path to allow for finding the best working path that does satisfy all constraints without considering diversity to the protect path.</t>
        <t>The "Objective Function (OF) TLV" as defined in section 5.3 of <xref target="RFC8800"/> may also be added to minimize the common shared resources.</t>
        <t>When using BGP, the controller is already aware of the disjoint requirements and does consider them while computing both paths. Two NLRIs with different distinguisher values and different preference values are included in the BGP UPDATE sent to the headend routers.</t>
        <t>A BGP-LS update is sent to the controller with a SR Policy Candidate Path NLRI for the candidate path with higher preference with</t>
        <ul spacing="normal">
          <li>
            <t>C flag set to 1 to indicate that candidate path was provisioned by the controller</t>
          </li>
          <li>
            <t>A flag set to 1 to indicate the candidate path is active and carrying traffic</t>
          </li>
        </ul>
        <t>and another SR Policy Candidate Path NLRI for the candidate path with lower preference with</t>
        <ul spacing="normal">
          <li>
            <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
          </li>
          <li>
            <t>B flag set to 1 to indicate the role of backup path</t>
          </li>
        </ul>
        <t>Upon a failure impacting the candidate path with higher preference carrying traffic, the candidate path with lower preference is activated immediately and traffic is now sent across it.</t>
        <t>When using PCEP a PCRpt message for the higher preference candidate path is sent to the PCE with the O field changed from 2 to 0 and a PCRpt message for the lower preference candidate path with the O field change from 1 to 2.</t>
        <t>When using BGP a BGP-LS update is sent to the controller with a SR Policy Candidate Path NLRI for the candidate path with higher preference with the A flag cleared and for another BGP-LS update for the candidate path with lower preference with the B flag cleared and A flag set to 1.</t>
        <t>Protection switching is bidirectional. As described in <xref target="verification"/>, both headends will generate and receive their own loopback mode test packets, hence even a unidirectional failure will always be detected by both headends without protection switch coordination required.</t>
        <section anchor="reversion">
          <name>Reversion</name>
          <t>Two cases are to be considered when the failure(s) impacting a candidate path with higher preference are cleared:</t>
          <ul spacing="normal">
            <li>
              <t>Revertive switching: re-activate the higher preference candidate path and start sending traffic over it</t>
            </li>
            <li>
              <t>Non-revertive switching: do not activate the higher preference candidate path and keep sending traffic via the lower preference candidate path</t>
            </li>
          </ul>
          <t>When using PCEP, for revertive switching a PCRpt message for the recovered higher preference candidate path is sent to the PCE with the O field changed from 0 to 2 and send a PCRpt message for the lower preference candidate path with the O field changed from 2 to 1. For non-revertive switching only a PCRpt message for the recovered higher preference candidate path with the O field set to 1 is sent.</t>
          <t>When using BGP and revertive switching a BGP-LS update is sent to the controller with a SR Policy Candidate Path NLRI for the recovered higher preference candidate path with the A flag set to 1 and another BGP-LS update for the lower preference candidate path with the A flag cleared and B flag set to 1. For non-revertive switching only a BGP-LS update for the higher preference candidate path with the B flag set to 1 is sent.</t>
        </section>
      </section>
      <section anchor="restoration">
        <name>Restoration</name>
        <section anchor="oneplusr">
          <name>1+R Restoration</name>
          <t>Compared to 1:1 protection described in <xref target="onetoone"/>, this restoration scheme avoids pre-allocating protection bandwidth in steady state, while still being able to recover traffic flow in case of a network failure in a deterministic way (maintain required bandwidth commitment)</t>
          <t>When using PCEP, the CS-SR Policy is configured with two candidate paths. The candidate path with higher preference is established, activated (O field in LSP object is set to 2) and is carrying traffic.</t>
          <t>The second candidate path with lower preference is only established and activated (PCRpt message to the PCE with O field in LSP object is set to 2) upon a failure impacting the first candidate path in order to send traffic over an alternate path through the network around the failure with potentially relaxed constraints but still satisfying the bandwidth commitment.</t>
          <t>The second candidate path is generally only requested from the PCE and activated after a failure, but may also be requested and pre-established during CS-SR Policy creation with the downside of bandwidth being set aside ahead of time.</t>
          <t>As soon as failure(s) that brought the first candidate path down are cleared, the second candidate path is getting deactivated (PCRpt message to the PCE with O field in LSP object is set to 1) or torn down. The first candidate path is activated (PCRpt message to the PCE with O field in LSP object is set to 2) and traffic sent across it.</t>
          <t>When using BGP, the controller does compute one path and does include one NLRI in the BGP UPDATE message sent to the headend routers to instantiate the CS-SR Policy with one candidate path active and carrying traffic.</t>
          <t>A BGP-LS update with a SR Policy Candidate Path NLRI is sent to the controller with</t>
          <ul spacing="normal">
            <li>
              <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
            </li>
            <li>
              <t>A flag set to 1 to indicate the candidate path is active and carrying traffic</t>
            </li>
          </ul>
          <t>Upon the controller detecting the failure of the CS-SR Policy's candidate path, another path is computed and added as second candidate path to the CS-SR Policy by sending a BGP UPDATE message to the headend routers with a NLRI distinguisher value being different and preference being lower compared to the first candidate path.</t>
          <t>A BGP-LS update with a SR Policy Candidate Path NLRI for the candidate path with higher preference is sent to the controller with</t>
          <ul spacing="normal">
            <li>
              <t>A flag is cleared to indicate the candidate path is no longer active and not carrying traffic anymore</t>
            </li>
          </ul>
          <t>and another SR Policy Candidate Path NLRI for the candidate path with lower preference with</t>
          <ul spacing="normal">
            <li>
              <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
            </li>
            <li>
              <t>A flag set to 1 to indicate the candidate path is active and carrying traffic</t>
            </li>
          </ul>
          <t>The second candidate path is generally only instantiated by the controller and activated after a failure, but may also be instantiated and pre-established during CS-SR Policy creation with the downside of bandwidth being set aside ahead of time. If so, a BGP-LS update with a SR Policy Candidate Path NLRI is sent to the controller with</t>
          <ul spacing="normal">
            <li>
              <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
            </li>
            <li>
              <t>B flag set to 1 to indicate the role of backup path</t>
            </li>
          </ul>
          <t>Once the controller has detected the failure(s) that brought the first candidate path down are cleared, a BGP-LS update with a SR Policy Candidate Path NLRI for the first candidate path is sent to the controller with</t>
          <ul spacing="normal">
            <li>
              <t>A flag set to 1 to indicate the candidate path became active and is carrying traffic again</t>
            </li>
          </ul>
          <t>The second candidate path is getting removed by a BGP UPDATE message withdrawing the NLRI of the second candidate path.</t>
          <t>Restoration and reversion behavior is bidirectional. As described in <xref target="verification"/>, both headends use connectivity verification in loopback mode and therefore even in case of unidirectional failures both headends will detect the failure or clearance of the failure and switch traffic away from the failed or to the recovered candidate path.</t>
        </section>
        <section anchor="onetooneplusr">
          <name>1:1+R Restoration</name>
          <t>For further resiliency in case of multiple concurrent failures that could affect both candidate paths of 1:1 protection described in <xref target="onetoone"/>, a third candidate path with a preference lower than the other two candidate paths is added to the CS-SR Policy to enable restoration.</t>
          <t>When using PCEP, the third candidate path will generally only be established, activated (PCRpt message to the PCE with O field in LSP object is set to 2) and carry traffic after failure(s) have impacted both the candidate path with highest and second highest preference.</t>
          <t>The third candidate path may also be requested and pre-computed already whenever either the first or second candidate path went down due to a failure with the downside of bandwidth being set aside ahead of time.</t>
          <t>As soon as failure(s) that brought either the first or second candidate path down are cleared, the affected candidate path is activated again (PCRpt message to the PCE with O field in LSP object is set to 2). The third candidate path is to be deactivated (PCRpt message to the PCE with O field in LSP object is set to 1).</t>
          <t>When using BGP, the third candidate path will generally only be instantiated by the controller and activated after failure(s) have impacted both the candidate path with highest and second highest preference, but may also be instantiated and pre-established during CS-SR Policy creation with the downside of bandwidth being set aside ahead of time.</t>
          <t>Assuming the case where both candidate paths are down, a BGP-LS update is sent with SR Policy Candidate Path NLRIs for the first and second candidate path with</t>
          <ul spacing="normal">
            <li>
              <t>A flag cleared</t>
            </li>
          </ul>
          <t>and a SR Policy Candidate Path NLRI for the third candidate path with</t>
          <ul spacing="normal">
            <li>
              <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
            </li>
            <li>
              <t>A flag set to 1 to indicate the candidate path is active and carrying traffic</t>
            </li>
          </ul>
          <t>Assuming the case where only one candidate path is down, a BGP-LS update is sent with a SR Policy Candidate Path NLRI for the failed candidate path with</t>
          <ul spacing="normal">
            <li>
              <t>A flag cleared</t>
            </li>
          </ul>
          <t>a SR Policy Candidate Path NLRI for the second candidate path with</t>
          <ul spacing="normal">
            <li>
              <t>A flag set to 1 to indicate it is active and carrying traffic network</t>
            </li>
          </ul>
          <t>and another SR Policy Candidate Path NLRI for the newly installed third candidate path with</t>
          <ul spacing="normal">
            <li>
              <t>C flag set to 1 to indicate the candidate path was provisioned by the controller</t>
            </li>
            <li>
              <t>B flag set to 1 to indicate the role of backup path</t>
            </li>
          </ul>
          <t>Once the controller has detected the failure(s) that brought either the first or the second candidate path down are cleared, a BGP-LS update with a SR Policy Candidate Path NLRI for the affected candidate path is sent to the controller with</t>
          <ul spacing="normal">
            <li>
              <t>A flag set to 1 to indicate the candidate path became active again</t>
            </li>
          </ul>
          <t>The third candidate path is getting removed by a BGP UPDATE message withdrawing the NLRI of the third candidate path.</t>
          <t>Again, restoration and reversion behavior is bidirectional. As described in <xref target="verification"/>, both headends use connectivity verification in loopback mode and therefore even in case of unidirectional failures both headends will detect the failure or clearance of the failure and switch traffic away from the failed or to the recovered candidate path.</t>
        </section>
      </section>
    </section>
    <section anchor="OAM">
      <name>Operations, Administration, and Maintenance (OAM)</name>
      <section anchor="verification">
        <name>Connectivity Verification</name>
        <t>The proper operation of each segment list is validated by both headends using STAMP in loopback measurement mode as described in section 4.2.3 of <xref target="I-D.ietf-spring-stamp-srpm"/>.</t>
        <t>As the STAMP test packets are including both the segment list of the forward and reverse path, standard segment routing data plane operations will make those packets get switched along the forward path to the tailend and along the reverse path back to the headend.</t>
        <t>When using PCEP, the headend forms the bidirectional SR Policy association using the procedure described in <xref target="I-D.ietf-pce-sr-bidir-path"/> and receives the information about the reverse segment list from the PCE as described in section 4.5 of <xref target="I-D.ietf-pce-multipath"/></t>
        <t>When using BGP, the controller does inform the headend routers about the reverse segment list using the Reverse Segment List Sub-TLV defined in section 4.1 of <xref target="I-D.ietf-idr-sr-policy-path-segment"/>.</t>
        <t>For cases where multiple segment lists are used by a candidate path, the headends will declare a candidate path down after connectivity verification has failed for one or more segment lists because the bandwidth requirement of the candidate path can no longer be met.</t>
      </section>
      <section anchor="performance-measurement">
        <name>Performance Measurement</name>
        <t>The same STAMP session is used to estimate round-trip loss as described in section 5 of <xref target="I-D.ietf-spring-stamp-srpm"/>.</t>
        <t>The same STAMP session used for connectivity verification can be used to measure delay. As loopback mode is used only round-trip delay is measured and one-way has to be derived by dividing the round-trip delay by two.</t>
      </section>
      <section anchor="candidate-path-validity-verification">
        <name>Candidate Path Validity Verification</name>
        <t>A stateful PCE/controller is in sync with the network topology and the CS-SR Policies provisioned on the headend routers. As described in <xref target="characteristics"/> a path must not be automatically recomputed after or optimized for topology changes. However, there may be a requirement for the stateful PCE/controller to tear down a path if the path no longer satisfies the original requirements, detected by stateful PCE/controller, such as insufficient bandwidth, diversity constraint no longer met or latency constraint exceeded.</t>
        <t>The headend may measure the actual bandwidth utilization of a CS-SR Policy to take local action and/or report it as requested bandwidth via PCEP or BGP-LS to the stateful PCE/controller. Typical actions are raising alarms or adjusting the reserved bandwidth.</t>
        <t>For a CS-SR Policy configured with multiple candidate paths, a headend may switch to another candidate path if the stateful PCE/controller decided to tear down the active candidate path.</t>
      </section>
    </section>
    <section anchor="external-commands">
      <name>External Commands</name>
      <section anchor="candidate-path-switchover">
        <name>Candidate Path Switchover</name>
        <t>It is very common to allow operators to trigger a switch between candidate paths even if no failure is present. I.e. to proactively drain a resource for maintenance purposes. Operator triggered switching between candidate paths is unidirectional and has to be requested on both headends.</t>
      </section>
      <section anchor="candidate-path-re-computation">
        <name>Candidate Path Re-computation</name>
        <t>While no automatic re-optimization or pre-computation of CS-SR Policy candidate paths is allowed as specified in <xref target="characteristics"/>, network operators trying to optimize network utilization may explicitly request a candidate path to be re-computed at a certain point in time.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document does not define any new protocol extensions and therefore does not introduce any new security considerations.</t>
      <t><xref section="10" sectionFormat="of" target="RFC9256"/> does outline considerations for SR Policies including SR-MPLS and SRv6.</t>
      <t>When using PCEP, the considerations in <xref section="7" sectionFormat="of" target="RFC8664"/> and <xref section="6" sectionFormat="of" target="RFC9603"/> to apply.</t>
      <t>Section 7 of <xref target="I-D.ietf-idr-sr-policy-safi"/> does define security consideration for SR Policy instantiation via BGP.</t>
      <t>When instantiating the Policies via configuration, requirements defined the Section 8 of <xref target="I-D.ietf-spring-sr-policy-yang"/> do apply.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The author's want to thank Samuel Sidor, Mike Koldychev, Rakesh Gandhi, Alexander Vainshtein and Tarek Saad for providing their review comments and all contributors for their inputs and support.</t>
    </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="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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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="RFC8402">
          <front>
            <title>Segment Routing Architecture</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source routing paradigm. A node steers a packet through an ordered list of instructions, called "segments". A segment can represent any instruction, topological or service based. A segment can have a semantic local to an SR node or global within an SR domain. SR provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SR domain.</t>
              <t>SR can be directly applied to the MPLS architecture with no change to the forwarding plane. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. Upon completion of a segment, the related label is popped from the stack.</t>
              <t>SR can be applied to the IPv6 architecture, with a new type of routing header. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address (DA) of the packet. The next active segment is indicated by a pointer in the new routing header.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8402"/>
          <seriesInfo name="DOI" value="10.17487/RFC8402"/>
        </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="RFC8660">
          <front>
            <title>Segment Routing with the MPLS Data Plane</title>
            <author fullname="A. Bashandy" initials="A." role="editor" surname="Bashandy"/>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source-routing paradigm. A node steers a packet through a controlled set of instructions, called segments, by prepending the packet with an SR header. In the MPLS data plane, the SR header is instantiated through a label stack. This document specifies the forwarding behavior to allow instantiating SR over the MPLS data plane (SR-MPLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8660"/>
          <seriesInfo name="DOI" value="10.17487/RFC8660"/>
        </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="RFC8754">
          <front>
            <title>IPv6 Segment Routing Header (SRH)</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="D. Dukes" initials="D." role="editor" surname="Dukes"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>Segment Routing can be applied to the IPv6 data plane using a new type of Routing Extension Header called the Segment Routing Header (SRH). This document describes the SRH and how it is used by nodes that are Segment Routing (SR) capable.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8754"/>
          <seriesInfo name="DOI" value="10.17487/RFC8754"/>
        </reference>
        <reference anchor="RFC8986">
          <front>
            <title>Segment Routing over IPv6 (SRv6) Network Programming</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="P. Camarillo" initials="P." role="editor" surname="Camarillo"/>
            <author fullname="J. Leddy" initials="J." surname="Leddy"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="S. Matsushima" initials="S." surname="Matsushima"/>
            <author fullname="Z. Li" initials="Z." surname="Li"/>
            <date month="February" year="2021"/>
            <abstract>
              <t>The Segment Routing over IPv6 (SRv6) Network Programming framework enables a network operator or an application to specify a packet processing program by encoding a sequence of instructions in the IPv6 packet header.</t>
              <t>Each instruction is implemented on one or several nodes in the network and identified by an SRv6 Segment Identifier in the packet.</t>
              <t>This document defines the SRv6 Network Programming concept and specifies the base set of SRv6 behaviors that enables the creation of interoperable overlays with underlay optimization.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8986"/>
          <seriesInfo name="DOI" value="10.17487/RFC8986"/>
        </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="I-D.ietf-idr-sr-policy-safi">
          <front>
            <title>Advertising Segment Routing Policies in BGP</title>
            <author fullname="Stefano Previdi" initials="S." surname="Previdi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Paul Mattes" initials="P." surname="Mattes">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Dhanendra Jain" initials="D." surname="Jain">
              <organization>Google</organization>
            </author>
            <date day="6" month="February" year="2025"/>
            <abstract>
              <t>   A Segment Routing (SR) Policy is an ordered list of segments (also
   referred to as instructions) that define a source-routed policy.  An
   SR Policy consists of one or more candidate paths, each comprising
   one or more segment lists.  A headend can be provisioned with these
   candidate paths using various mechanisms, such as CLI, NETCONF, PCEP,
   or BGP.

   This document specifies how BGP can be used to distribute SR Policy
   candidate paths.  It introduces a BGP SAFI for advertising a
   candidate path of an SR Policy and defines sub-TLVs for the Tunnel
   Encapsulation Attribute to signal information related to these
   candidate paths.

   Furthermore, this document updates RFC9012 by extending the Color
   Extended Community to support additional steering modes over SR
   Policy.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-sr-policy-safi-13"/>
        </reference>
        <reference anchor="I-D.ietf-spring-sr-policy-yang">
          <front>
            <title>YANG Data Model for Segment Routing Policy</title>
            <author fullname="Syed Kamran Raza" initials="S. K." surname="Raza">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Tarik Saleh" initials="T." surname="Saleh">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Zhuang Shunwan" initials="Z." surname="Shunwan">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Daniel Voyer" initials="D." surname="Voyer">
              <organization>Bell Canada</organization>
            </author>
            <author fullname="Muhammad Durrani" initials="M." surname="Durrani">
              <organization>Equinix</organization>
            </author>
            <author fullname="Satoru Matsushima" initials="S." surname="Matsushima">
              <organization>SoftBank</organization>
            </author>
            <author fullname="Vishnu Pavan Beeram" initials="V. P." surname="Beeram">
              <organization>Juniper Networks</organization>
            </author>
            <date day="22" month="November" year="2024"/>
            <abstract>
              <t>   This document defines a YANG data model for Segment Routing (SR)
   Policy that can be used for configuring, instantiating, and managing
   SR policies.  The model is generic and applies equally to the MPLS
   and SRv6 instantiations of SR policies.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-sr-policy-yang-04"/>
        </reference>
        <reference anchor="RFC3246">
          <front>
            <title>An Expedited Forwarding PHB (Per-Hop Behavior)</title>
            <author fullname="B. Davie" initials="B." surname="Davie"/>
            <author fullname="A. Charny" initials="A." surname="Charny"/>
            <author fullname="J.C.R. Bennet" initials="J.C.R." surname="Bennet"/>
            <author fullname="K. Benson" initials="K." surname="Benson"/>
            <author fullname="J.Y. Le Boudec" initials="J.Y." surname="Le Boudec"/>
            <author fullname="W. Courtney" initials="W." surname="Courtney"/>
            <author fullname="S. Davari" initials="S." surname="Davari"/>
            <author fullname="V. Firoiu" initials="V." surname="Firoiu"/>
            <author fullname="D. Stiliadis" initials="D." surname="Stiliadis"/>
            <date month="March" year="2002"/>
            <abstract>
              <t>This document defines a PHB (per-hop behavior) called Expedited Forwarding (EF). The PHB is a basic building block in the Differentiated Services architecture. EF is intended to provide a building block for low delay, low jitter and low loss services by ensuring that the EF aggregate is served at a certain configured rate. This document obsoletes RFC 2598. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3246"/>
          <seriesInfo name="DOI" value="10.17487/RFC3246"/>
        </reference>
        <reference anchor="RFC2597">
          <front>
            <title>Assured Forwarding PHB Group</title>
            <author fullname="J. Heinanen" initials="J." surname="Heinanen"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <author fullname="J. Wroclawski" initials="J." surname="Wroclawski"/>
            <date month="June" year="1999"/>
            <abstract>
              <t>This document defines a general use Differentiated Services (DS) Per-Hop-Behavior (PHB) Group called Assured Forwarding (AF). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2597"/>
          <seriesInfo name="DOI" value="10.17487/RFC2597"/>
        </reference>
        <reference anchor="RFC8668">
          <front>
            <title>Advertising Layer 2 Bundle Member Link Attributes in IS-IS</title>
            <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
            <author fullname="A. Bashandy" initials="A." surname="Bashandy"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="M. Nanduri" initials="M." surname="Nanduri"/>
            <author fullname="E. Aries" initials="E." surname="Aries"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>There are deployments where the Layer 3 interface on which IS-IS operates is a Layer 2 interface bundle. Existing IS-IS advertisements only support advertising link attributes of the Layer 3 interface. If entities external to IS-IS wish to control traffic flows on the individual physical links that comprise the Layer 2 interface bundle, link attribute information about the bundle members is required.</t>
              <t>This document introduces the ability for IS-IS to advertise the link attributes of Layer 2 (L2) Bundle Members.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8668"/>
          <seriesInfo name="DOI" value="10.17487/RFC8668"/>
        </reference>
        <reference anchor="RFC9356">
          <front>
            <title>Advertising Layer 2 Bundle Member Link Attributes in OSPF</title>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="P. Psenak" initials="P." surname="Psenak"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>There are deployments where the Layer 3 (L3) interface on which OSPF operates is a Layer 2 (L2) interface bundle. Existing OSPF advertisements only support advertising link attributes of the L3 interface. If entities external to OSPF wish to control traffic flows on the individual physical links that comprise the L2 interface bundle, link attribute information for the bundle members is required.</t>
              <t>This document defines the protocol extensions for OSPF to advertise the link attributes of L2 bundle members. The document also specifies the advertisement of these OSPF extensions via the Border Gateway Protocol - Link State (BGP-LS) and thereby updates RFC 9085.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9356"/>
          <seriesInfo name="DOI" value="10.17487/RFC9356"/>
        </reference>
        <reference anchor="RFC8667">
          <front>
            <title>IS-IS Extensions for Segment Routing</title>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." role="editor" surname="Ginsberg"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="A. Bashandy" initials="A." surname="Bashandy"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) allows for a flexible definition of end-to-end paths within IGP topologies by encoding paths as sequences of topological sub-paths, called "segments". These segments are advertised by the link-state routing protocols (IS-IS and OSPF).</t>
              <t>This document describes the IS-IS extensions that need to be introduced for Segment Routing operating on an MPLS data plane.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8667"/>
          <seriesInfo name="DOI" value="10.17487/RFC8667"/>
        </reference>
        <reference anchor="RFC8665">
          <front>
            <title>OSPF Extensions for Segment Routing</title>
            <author fullname="P. Psenak" initials="P." role="editor" surname="Psenak"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="December" year="2019"/>
            <abstract>
              <t>Segment Routing (SR) allows a flexible definition of end-to-end paths within IGP topologies by encoding paths as sequences of topological subpaths called "segments". These segments are advertised by the link-state routing protocols (IS-IS and OSPF).</t>
              <t>This document describes the OSPFv2 extensions required for Segment Routing.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8665"/>
          <seriesInfo name="DOI" value="10.17487/RFC8665"/>
        </reference>
        <reference anchor="RFC9085">
          <front>
            <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing</title>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <date month="August" year="2021"/>
            <abstract>
              <t>Segment Routing (SR) allows for a flexible definition of end-to-end paths by encoding paths as sequences of topological subpaths, called "segments". These segments are advertised by routing protocols, e.g., by the link-state routing protocols (IS-IS, OSPFv2, and OSPFv3) within IGP topologies.</t>
              <t>This document defines extensions to the Border Gateway Protocol - Link State (BGP-LS) address family in order to carry SR information via BGP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9085"/>
          <seriesInfo name="DOI" value="10.17487/RFC9085"/>
        </reference>
        <reference anchor="RFC9352">
          <front>
            <title>IS-IS Extensions to Support Segment Routing over the IPv6 Data Plane</title>
            <author fullname="P. Psenak" initials="P." role="editor" surname="Psenak"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="A. Bashandy" initials="A." surname="Bashandy"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="Z. Hu" initials="Z." surname="Hu"/>
            <date month="February" year="2023"/>
            <abstract>
              <t>The Segment Routing (SR) architecture allows a flexible definition of the end-to-end path by encoding it as a sequence of topological elements called "segments". It can be implemented over the MPLS or the IPv6 data plane. This document describes the IS-IS extensions required to support SR over the IPv6 data plane.</t>
              <t>This document updates RFC 7370 by modifying an existing registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9352"/>
          <seriesInfo name="DOI" value="10.17487/RFC9352"/>
        </reference>
        <reference anchor="RFC9513">
          <front>
            <title>OSPFv3 Extensions for Segment Routing over IPv6 (SRv6)</title>
            <author fullname="Z. Li" initials="Z." surname="Li"/>
            <author fullname="Z. Hu" initials="Z." surname="Hu"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="P. Psenak" initials="P." surname="Psenak"/>
            <date month="December" year="2023"/>
            <abstract>
              <t>The Segment Routing (SR) architecture allows a flexible definition of the end-to-end path by encoding it as a sequence of topological elements called segments. It can be implemented over an MPLS or IPv6 data plane. This document describes the OSPFv3 extensions required to support SR over the IPv6 data plane.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9513"/>
          <seriesInfo name="DOI" value="10.17487/RFC9513"/>
        </reference>
        <reference anchor="RFC9514">
          <front>
            <title>Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing over IPv6 (SRv6)</title>
            <author fullname="G. Dawra" initials="G." surname="Dawra"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="M. Chen" initials="M." surname="Chen"/>
            <author fullname="D. Bernier" initials="D." surname="Bernier"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <date month="December" year="2023"/>
            <abstract>
              <t>Segment Routing over IPv6 (SRv6) allows for a flexible definition of end-to-end paths within various topologies by encoding paths as sequences of topological or functional sub-paths called "segments". These segments are advertised by various protocols such as BGP, IS-IS, and OSPFv3.</t>
              <t>This document defines extensions to BGP - Link State (BGP-LS) to advertise SRv6 segments along with their behaviors and other attributes via BGP. The BGP-LS address-family solution for SRv6 described in this document is similar to BGP-LS for SR for the MPLS data plane, which is defined in RFC 9085.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9514"/>
          <seriesInfo name="DOI" value="10.17487/RFC9514"/>
        </reference>
        <reference anchor="I-D.draft-ietf-rtgwg-segment-routing-ti-lfa">
          <front>
            <title>Topology Independent Fast Reroute using Segment Routing</title>
            <author fullname="Ahmed Bashandy" initials="A." surname="Bashandy">
              <organization>Individual</organization>
            </author>
            <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Pierre Francois" initials="P." surname="Francois">
              <organization>INSA Lyon</organization>
            </author>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Daniel Voyer" initials="D." surname="Voyer">
              <organization>Bell Canada</organization>
            </author>
            <date day="12" month="February" year="2025"/>
            <abstract>
              <t>   This document presents Topology Independent Loop-free Alternate Fast
   Reroute (TI-LFA), aimed at providing protection of node and adjacency
   segments within the Segment Routing (SR) framework.  This Fast
   Reroute (FRR) behavior builds on proven IP Fast Reroute concepts
   being LFAs, remote LFAs (RLFA), and remote LFAs with directed
   forwarding (DLFA).  It extends these concepts to provide guaranteed
   coverage in any two-connected networks using a link-state IGP.  An
   important aspect of TI-LFA is the FRR path selection approach
   establishing protection over the expected post-convergence paths from
   the point of local repair, reducing the operational need to control
   the tie-breaks among various FRR options.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-rtgwg-segment-routing-ti-lfa-21"/>
        </reference>
        <reference anchor="I-D.draft-bashandy-rtgwg-segment-routing-uloop">
          <front>
            <title>Loop avoidance using Segment Routing</title>
            <author fullname="Ahmed Bashandy" initials="A." surname="Bashandy">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Stephane Litkowski" initials="S." surname="Litkowski">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Bruno Decraene" initials="B." surname="Decraene">
              <organization>Orange</organization>
            </author>
            <author fullname="Pierre Francois" initials="P." surname="Francois">
              <organization>INSA Lyon</organization>
            </author>
            <author fullname="Peter Psenak" initials="P." surname="Psenak">
              <organization>Cisco Systems</organization>
            </author>
            <date day="29" month="June" year="2024"/>
            <abstract>
              <t>This document presents a mechanism aimed at providing loop avoidance
in the case of IGP network convergence event.  The solution relies on
the temporary use of SR policies ensuring loop-freeness over the
post-convergence paths from the converging node to the destination.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-bashandy-rtgwg-segment-routing-uloop-17"/>
        </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="RFC9488">
          <front>
            <title>Local Protection Enforcement in the Path Computation Element Communication Protocol (PCEP)</title>
            <author fullname="A. Stone" initials="A." surname="Stone"/>
            <author fullname="M. Aissaoui" initials="M." surname="Aissaoui"/>
            <author fullname="S. Sidor" initials="S." surname="Sidor"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <date month="October" year="2023"/>
            <abstract>
              <t>This document updates RFC 5440 to clarify usage of the Local Protection Desired bit signaled in the Path Computation Element Communication Protocol (PCEP). This document also introduces a new flag for signaling protection enforcement in PCEP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9488"/>
          <seriesInfo name="DOI" value="10.17487/RFC9488"/>
        </reference>
        <reference anchor="RFC8697">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Establishing Relationships between Sets of Label Switched Paths (LSPs)</title>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="H. Ananthakrishnan" initials="H." surname="Ananthakrishnan"/>
            <author fullname="D. Dhody" initials="D." surname="Dhody"/>
            <author fullname="Y. Tanaka" initials="Y." surname="Tanaka"/>
            <date month="January" year="2020"/>
            <abstract>
              <t>This document introduces a generic mechanism to create a grouping of Label Switched Paths (LSPs) in the context of a Path Computation Element (PCE). This grouping can then be used to define associations between sets of LSPs or between a set of LSPs and a set of attributes (such as configuration parameters or behaviors), and it is equally applicable to the stateful PCE (active and passive modes) and the stateless PCE.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8697"/>
          <seriesInfo name="DOI" value="10.17487/RFC8697"/>
        </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) Paths</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="13" month="February" year="2025"/>
            <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 Clients (PCCs) requests.
   Segment routing (SR) leverages the source routing and tunneling
   paradigms.  The Stateful PCEP extensions allow stateful control of
   Segment Routing Traffic Engineering (TE) Paths.  Furthermore, PCEP
   can be used for computing SR TE paths in the network.

   This document defines PCEP extensions for grouping two unidirectional
   SR Paths (one in each direction in the network) into a single
   associated bidirectional SR Path.  The mechanisms defined in this
   document can also be applied using a stateful PCE for both PCE-
   initiated and PCC-initiated LSPs or when using a stateless PCE.


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-sr-bidir-path-15"/>
        </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-pce-segment-routing-policy-cp">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing (SR) Policy Candidate Paths</title>
            <author fullname="Mike Koldychev" initials="M." surname="Koldychev">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Samuel Sidor" initials="S." surname="Sidor">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Colby Barth" initials="C." surname="Barth">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Shuping Peng" initials="S." surname="Peng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Hooman Bidgoli" initials="H." surname="Bidgoli">
              <organization>Nokia</organization>
            </author>
            <date day="12" month="February" year="2025"/>
            <abstract>
              <t>   Segment Routing (SR) allows a node to steer a packet flow along any
   path.  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.  An SR Policy is made of one or more candidate paths.

   This document specifies the Path Computation Element Communication
   Protocol (PCEP) extension to signal candidate paths of the SR Policy.
   Additionally, this document updates RFC 8231 to allow stateful bring
   up 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="Internet-Draft" value="draft-ietf-pce-segment-routing-policy-cp-21"/>
        </reference>
        <reference anchor="I-D.ietf-pce-circuit-style-pcep-extensions">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) extensions for Circuit Style Policies</title>
            <author fullname="Samuel Sidor" initials="S." surname="Sidor">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Praveen Maheshwari" initials="P." surname="Maheshwari">
              <organization>Airtel India</organization>
            </author>
            <author fullname="Andrew Stone" initials="A." surname="Stone">
              <organization>Nokia</organization>
            </author>
            <author fullname="Luay Jalil" initials="L." surname="Jalil">
              <organization>Verizon</organization>
            </author>
            <author fullname="Shuping Peng" initials="S." surname="Peng">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="5" month="November" year="2024"/>
            <abstract>
              <t>   Segment Routing (SR) enables a node to steer packet flows along a
   specified path without the need for intermediate per-path states, due
   to the utilization of source routing.  An SR Policy comprises a
   sequence of segments, which are essentially instructions that define
   a source-routed policy

   This document proposes a set of extensions to the Path Computation
   Element Communication Protocol (PCEP) for Segment Routing Policies
   that are designed to satisfy requirements for connection-oriented
   transport services (Circuit-Style SR policies).  They include the
   ability to control path recomputation and the option to request path
   with strict hops only and are also applicable for generic SR policy
   use cases where controlling path recomputation or distinct hop
   requirements are applicable.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-circuit-style-pcep-extensions-07"/>
        </reference>
        <reference anchor="I-D.ietf-pce-multipath">
          <front>
            <title>PCEP Extensions for Signaling Multipath Information</title>
            <author fullname="Mike Koldychev" initials="M." surname="Koldychev">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Siva Sivabalan" initials="S." surname="Sivabalan">
              <organization>Ciena Corporation</organization>
            </author>
            <author fullname="Tarek Saad" initials="T." surname="Saad">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Vishnu Pavan Beeram" initials="V. P." surname="Beeram">
              <organization>Juniper Networks, Inc.</organization>
            </author>
            <author fullname="Hooman Bidgoli" initials="H." surname="Bidgoli">
              <organization>Nokia</organization>
            </author>
            <author fullname="Bhupendra Yadav" initials="B." surname="Yadav">
              <organization>Ciena</organization>
            </author>
            <author fullname="Shuping Peng" initials="S." surname="Peng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Gyan Mishra" initials="G. S." surname="Mishra">
              <organization>Verizon Inc.</organization>
            </author>
            <date day="8" month="October" year="2024"/>
            <abstract>
              <t>   Certain traffic engineering path computation problems require
   solutions that consist of multiple traffic paths, that together form
   a solution.  Returning just one single traffic path does not provide
   a valid solution.  This document defines mechanisms to encode
   multiple paths for a single set of objectives and constraints.  This
   allows encoding of multiple Segment Lists per Candidate Path within a
   Segment Routing Policy.  The new PCEP mechanisms are meant to be
   generic, where possible, to allow for future re-use outside of SR
   Policy.  The new PCEP mechanisms are applicable to both stateless and
   stateful PCEP.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-multipath-12"/>
        </reference>
        <reference anchor="I-D.ietf-idr-bgp-ls-sr-policy">
          <front>
            <title>Advertisement of Segment Routing Policies using BGP Link-State</title>
            <author fullname="Stefano Previdi" initials="S." surname="Previdi">
              <organization>Individual</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Jie Dong" initials="J." surname="Dong">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Hannes Gredler" initials="H." surname="Gredler">
              <organization>RtBrick Inc.</organization>
            </author>
            <author fullname="Jeff Tantsura" initials="J." surname="Tantsura">
              <organization>Nvidia</organization>
            </author>
            <date day="11" month="February" year="2025"/>
            <abstract>
              <t>   This document describes a mechanism to collect the Segment Routing
   Policy information that is locally available in a node and advertise
   it into BGP Link-State (BGP-LS) updates.  Such information can be
   used by external components for path computation, re-optimization,
   service placement, network visualization, etc.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-bgp-ls-sr-policy-12"/>
        </reference>
        <reference anchor="RFC8491">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using IS-IS</title>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="U. Chunduri" initials="U." surname="Chunduri"/>
            <author fullname="S. Aldrin" initials="S." surname="Aldrin"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <date month="November" year="2018"/>
            <abstract>
              <t>This document defines a way for an Intermediate System to Intermediate System (IS-IS) router to advertise multiple types of supported Maximum SID Depths (MSDs) at node and/or link granularity. Such advertisements allow entities (e.g., centralized controllers) to determine whether a particular Segment ID (SID) stack can be supported in a given network. This document only defines one type of MSD: Base MPLS Imposition. However, it defines an encoding that can support other MSD types. This document focuses on MSD use in a network that is Segment Routing (SR) enabled, but MSD may also be useful when SR is not enabled.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8491"/>
          <seriesInfo name="DOI" value="10.17487/RFC8491"/>
        </reference>
        <reference anchor="RFC8476">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using OSPF</title>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="U. Chunduri" initials="U." surname="Chunduri"/>
            <author fullname="S. Aldrin" initials="S." surname="Aldrin"/>
            <author fullname="P. Psenak" initials="P." surname="Psenak"/>
            <date month="December" year="2018"/>
            <abstract>
              <t>This document defines a way for an Open Shortest Path First (OSPF) router to advertise multiple types of supported Maximum SID Depths (MSDs) at node and/or link granularity. Such advertisements allow entities (e.g., centralized controllers) to determine whether a particular Segment Identifier (SID) stack can be supported in a given network. This document only refers to the Signaling MSD as defined in RFC 8491, but it defines an encoding that can support other MSD types. Here, the term "OSPF" means both OSPFv2 and OSPFv3.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8476"/>
          <seriesInfo name="DOI" value="10.17487/RFC8476"/>
        </reference>
        <reference anchor="RFC8814">
          <front>
            <title>Signaling Maximum SID Depth (MSD) Using the Border Gateway Protocol - Link State</title>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <author fullname="U. Chunduri" initials="U." surname="Chunduri"/>
            <author fullname="K. Talaulikar" initials="K." surname="Talaulikar"/>
            <author fullname="G. Mirsky" initials="G." surname="Mirsky"/>
            <author fullname="N. Triantafillis" initials="N." surname="Triantafillis"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document defines a way for a Border Gateway Protocol - Link
State (BGP-LS) speaker to advertise multiple types of supported
Maximum SID Depths (MSDs) at node and/or link granularity.</t>
              <t>Such advertisements allow entities (e.g., centralized controllers) to
determine whether a particular Segment Identifier (SID) stack can be
supported in a given network.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8814"/>
          <seriesInfo name="DOI" value="10.17487/RFC8814"/>
        </reference>
        <reference anchor="RFC4872">
          <front>
            <title>RSVP-TE Extensions in Support of End-to-End Generalized Multi-Protocol Label Switching (GMPLS) Recovery</title>
            <author fullname="J.P. Lang" initials="J.P." role="editor" surname="Lang"/>
            <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
            <author fullname="D. Papadimitriou" initials="D." role="editor" surname="Papadimitriou"/>
            <date month="May" year="2007"/>
            <abstract>
              <t>This document describes protocol-specific procedures and extensions for Generalized Multi-Protocol Label Switching (GMPLS) Resource ReSerVation Protocol - Traffic Engineering (RSVP-TE) signaling to support end-to-end Label Switched Path (LSP) recovery that denotes protection and restoration. A generic functional description of GMPLS recovery can be found in a companion document, RFC 4426. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4872"/>
          <seriesInfo name="DOI" value="10.17487/RFC4872"/>
        </reference>
        <reference anchor="RFC4427">
          <front>
            <title>Recovery (Protection and Restoration) Terminology for Generalized Multi-Protocol Label Switching (GMPLS)</title>
            <author fullname="E. Mannie" initials="E." role="editor" surname="Mannie"/>
            <author fullname="D. Papadimitriou" initials="D." role="editor" surname="Papadimitriou"/>
            <date month="March" year="2006"/>
            <abstract>
              <t>This document defines a common terminology for Generalized Multi-Protocol Label Switching (GMPLS)-based recovery mechanisms (i.e., protection and restoration). The terminology is independent of the underlying transport technologies covered by GMPLS. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4427"/>
          <seriesInfo name="DOI" value="10.17487/RFC4427"/>
        </reference>
        <reference anchor="RFC3386">
          <front>
            <title>Network Hierarchy and Multilayer Survivability</title>
            <author fullname="W. Lai" initials="W." role="editor" surname="Lai"/>
            <author fullname="D. McDysan" initials="D." role="editor" surname="McDysan"/>
            <date month="November" year="2002"/>
          </front>
          <seriesInfo name="RFC" value="3386"/>
          <seriesInfo name="DOI" value="10.17487/RFC3386"/>
        </reference>
        <reference anchor="RFC8800">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extension for Label Switched Path (LSP) Diversity Constraint Signaling</title>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="C. Barth" initials="C." surname="Barth"/>
            <author fullname="M. Negi" initials="M." surname="Negi"/>
            <date month="July" year="2020"/>
            <abstract>
              <t>This document introduces a simple mechanism to associate a group of Label Switched Paths (LSPs) via an extension to the Path Computation Element Communication Protocol (PCEP) with the purpose of computing diverse (disjointed) paths for those LSPs. The proposed extension allows a Path Computation Client (PCC) to advertise to a Path Computation Element (PCE) that a particular LSP belongs to a particular Disjoint Association Group; thus, the PCE knows that the LSPs in the same group need to be disjoint from each other.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8800"/>
          <seriesInfo name="DOI" value="10.17487/RFC8800"/>
        </reference>
        <reference anchor="I-D.ietf-spring-stamp-srpm">
          <front>
            <title>Performance Measurement Using Simple Two-Way Active Measurement Protocol (STAMP) for Segment Routing Networks</title>
            <author fullname="Rakesh Gandhi" initials="R." surname="Gandhi">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Daniel Voyer" initials="D." surname="Voyer">
              <organization>Bell Canada</organization>
            </author>
            <author fullname="Mach Chen" initials="M." surname="Chen">
              <organization>Huawei</organization>
            </author>
            <author fullname="Richard &quot;Footer&quot; Foote" initials="R. F." surname="Foote">
              <organization>Nokia</organization>
            </author>
            <date day="8" month="November" year="2024"/>
            <abstract>
              <t>   Segment Routing (SR) leverages the source routing paradigm and
   applies to both Multiprotocol Label Switching (SR-MPLS) and IPv6
   (SRv6) data planes.  This document describes procedures for
   Performance Measurement in SR networks using Simple Two-Way Active
   Measurement Protocol (STAMP) defined in RFC 8762, along with its
   optional extensions defined in RFC 8972 and further augmented in RFC
   9503.  The described procedure is used for links and SR paths
   (including SR Policies and SR IGP Flexible Algorithm paths), as well
   as Layer-3 and Layer-2 services in SR networks, and is applicable to
   both SR-MPLS and SRv6 data planes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-stamp-srpm-17"/>
        </reference>
        <reference anchor="I-D.ietf-idr-sr-policy-path-segment">
          <front>
            <title>SR Policy Extensions for Path Segment and Bidirectional Path</title>
            <author fullname="Cheng Li" initials="C." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Zhenbin Li" initials="Z." surname="Li">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Yuanyang Yin" initials="Y." surname="Yin">
              <organization>China Telecom</organization>
            </author>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <date day="2" month="October" year="2024"/>
            <abstract>
              <t>   A Segment Routing(SR) policy identifies a set of candidate SR paths
   Each SR path is passed in BGP as the SR Policy SAFI NLRI accompanied
   with the Tunnel Encapsulation attribute (Tunnel-encaps).  Each SR
   Path (tunnel) uses a set of TLVs in the Tunnel-encaps attribute to
   describe the characteristics of the SR Policy tunnel.  One of the
   TLVs that describes the tunnel is the Segment list TLV which provides
   a list of segments contained in the tunnel.

   This document specifies a new Path Segment Sub-TLV to associate a
   Path Segment ID to the SR Segment List.  The Path Segment ID can be
   used for performance measurement, path correlation, and end-2-end
   path protection.  This Path Segment identifier can be also be used to
   correlate two unidirectional SR paths into a bidirectional SR path.
   Bidirection SR path may be required in some scenarios such as mobile
   backhaul transport network.


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-sr-policy-path-segment-13"/>
        </reference>
      </references>
    </references>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="D." surname="Voyer" fullname="Daniel Voyer">
        <organization>Bell Canada</organization>
        <address>
          <email>daniel.voyer@bell.ca</email>
        </address>
      </contact>
      <contact initials="L." surname="Jalil" fullname="Luay Jalil">
        <organization>Verizon</organization>
        <address>
          <email>luay.jalil@verizon.com</email>
        </address>
      </contact>
      <contact initials="S." surname="Peng" fullname="Shuping Peng">
        <organization>Huawei Technologies</organization>
        <address>
          <email>pengshuping@huawei.com</email>
        </address>
      </contact>
      <contact initials="C." surname="Filsfils" fullname="Clarence Filsfils">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>cfilsfil@cisco.com</email>
        </address>
      </contact>
      <contact initials="F." surname="Clad" fullname="Francois Clad">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>fclad@cisco.com</email>
        </address>
      </contact>
      <contact initials="T." surname="Saad" fullname="Tarek Saad">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>tsaad.net@gmail.com</email>
        </address>
      </contact>
      <contact initials="B." surname="Foster" fullname="Brent Foster">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>brfoster@cisco.com</email>
        </address>
      </contact>
      <contact initials="B." surname="Duvivier" fullname="Bertrand Duvivier">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>bduvivie@cisco.com</email>
        </address>
      </contact>
      <contact initials="S." surname="Litkowski" fullname="Stephane Litkowski">
        <organization>Cisco Systems, Inc.</organization>
        <address>
          <email>slitkows@cisco.com</email>
        </address>
      </contact>
      <contact initials="J." surname="Dong" fullname="Jie Dong">
        <organization>Huawei Technologies</organization>
        <address>
          <email>jie.dong@huawei.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
OM6OAAA=

-->

</rfc>
