<?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.29 (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-07" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="CS-SR Policy">Circuit Style Segment Routing Policy</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-spring-cs-sr-policy-07"/>
    <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="May" day="15"/>
    <abstract>
      <?line 187?>

<t>This document describes how Segment Routing (SR) policies can be used to satisfy the requirements for bandwidth, end-to-end recovery and persistent paths within a SR network. The association of two co-routed unidirectional SR Policies satisfying these requirements is called "circuit-style" SR Policy (CS-SR Policy).</t>
    </abstract>
  </front>
  <middle>
    <?line 191?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>IP services typically leverage ECMP and local protection. However transport services (commonly referred to as "private lines") that are delivered via pseudowires such as <xref target="RFC4448"/>, <xref target="RFC4553"/>, <xref target="I-D.ietf-pals-ple"/>, <xref target="RFC5086"/> and <xref target="RFC4842"/> for example, 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 Segment Routing (SR) Policies <xref target="RFC9256"/> and adjacency segment identifiers (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>A "Circuit-Style" SR Policy (CS-SR Policy) is an association of two co-routed unidirectional SR Policies satisfying the above requirements and allowing for a single SR network to carry both typical IP (connection-less) services and connection-oriented transport services.</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>DWDM : Dense Wavelength Division Multiplexing</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>SDH : Synchronous Digital Hierarchy</t>
        </li>
        <li>
          <t>SONET : Synchronous Optical Network</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 headend routers using PCEP, BGP or configuration.</t>
      <ul spacing="normal">
        <li>
          <t>When using PCEP as the communication protocol on the headend routers, the centralized entity is a stateful PCE defined in <xref target="RFC8231"/>. When using SR-MPLS <xref target="RFC8660"/>, PCEP extensions defined in <xref target="RFC8664"/> are used. When using SRv6 <xref target="RFC8754"/> <xref target="RFC8986"/>, PCEP extensions defined in <xref target="RFC9603"/> are used.</t>
        </li>
        <li>
          <t>When using BGP as the communication protocol on the headend routers, the BGP extensions defined in <xref target="I-D.ietf-idr-sr-policy-safi"/> are used.</t>
        </li>
        <li>
          <t>When using configuration, the YANG model defined in <xref target="I-D.ietf-spring-sr-policy-yang"/> does apply.</t>
        </li>
      </ul>
      <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 assigned or auto-generated, but 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 always available to CS-SR Policies independent of any other traffic</t>
        </li>
      </ul>
      <t>When using link bundles (i.e. <xref target="IEEE802.1AX"/>), parallel physical links are only represented via a single adjacency. To ensure deterministic traffic placement onto physical links, an adjacency-SID SHOULD be assigned to each physical link (aka member-link) (<xref target="RFC8668"/>, <xref target="RFC9356"/>). Similarly, the use of adjacency-SIDs representing parallel adjacencies <xref section="3.4.1" sectionFormat="of" target="RFC8402"/> SHOULD also be avoided.</t>
      <t>When using SR-MPLS <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 SRv6 <xref target="RFC8754"/>, the IGP extensions defined in <xref target="RFC9352"/> and <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 always be 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 persistent unprotected adjacency-SIDs that are solely used  by CS-SR traffic. Auto-generated non-persistent adjacency-SIDs (protected or unprotected) should be used by features such as TI-LFA <xref target="I-D.draft-ietf-rtgwg-segment-routing-ti-lfa"/> for defining the repair path and microloop avoidance <xref target="I-D.draft-bashandy-rtgwg-segment-routing-uloop"/> for defining the loop-free path.</t>
          </li>
        </ul>
        <t>The approach of allocating a Diffserv codepoint can leverage any of the following Per-Hop Behavior (PHB) strategies below, where P is the bandwidth of a physical link, N is the bandwidth allocated for network control and C is the bandwidth reserved for CS-SR policies:</t>
        <ul spacing="normal">
          <li>
            <t>Use a Assured Forwarding (AF) class queue <xref target="RFC2597"/> 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 <xref target="RFC3246"/> 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, the headends may measure the actual bandwidth utilization of a CS-SR Policy to raise alarms when bandwidth utilization thresholds are passed or to request the reserved bandwidth to be adjusted. Using telemetry collection the alarms or bandwidth adjustments can also be triggered by the controller.</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>More than one 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 are 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>
        <section anchor="pcc-initiated-mode">
          <name>PCC-initiated Mode</name>
          <t>Considering the scenario illustrated in <xref target="architecture-diagram"/> a CS-SR Policy between A and Z is instantiated by configured a SR Policy on both headend A (with Z as endpoint) and headend 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 procedure described in <xref section="5.7.1" sectionFormat="of" target="RFC8231"/>. For SR-MPLS the extensions defined in <xref target="RFC8664"/> are used. And SRv6 specific extensions are defined in <xref target="RFC9603"/>.</t>
          <t>The PCRpt message sent from the headends to the PCE SHOULD contain 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>
        </section>
        <section anchor="pce-initiated-mode">
          <name>PCE-initiated Mode</name>
          <t>The CS-SR Policy can be instantiated in the network between A and Z by a PCE using PCE-initiated procedures. For PCE-initiated procedures no SR Policy configuration is required on the PCC. The PCE requests the PCC to initiate the candiate paths of the CS-SR Policy.</t>
          <t>The PcInit message contains the same Bandwidth, LSPA, and ASSOCIATION objects used in PCC-initiated mode. Following initiation, the candidate paths are reported and updated following PCEP procedures and share the same behavior as the PCC-initiated mode.</t>
        </section>
      </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"/>, instead of configuring SR Policies on both headend A (with Z as endpoint) and headend Z (with A as endpoint), a CS-SR Policy between A and Z is instantiated by a request (e.g. application API call) to the centralized controller.</t>
        <t>The controller does perform path computation and is requesting the headends via BGP to instantiate the corresponding SR Policies on them.</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 headends 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-sid-depth-constraint">
        <name>Maximum SID Depth Constraint</name>
        <t>The segment lists used by CS-SR Policy candidate paths are constrained by the maximum number of segments a router can impose onto a packet.</t>
        <t>When using SR-MPLS this constraint is called "Base MPLS Imposition MSD" and is advertised via IS-IS <xref target="RFC8491"/>, OSPF <xref target="RFC8476"/>, BGP-LS <xref target="RFC8814"/> and PCEP <xref target="RFC8664"/>.</t>
        <t>When using SRv6 this constraint is called "SRH Max H.encaps MSD" and is advertised via IS-IS <xref target="RFC9352"/>, OSPF <xref target="RFC9513"/>, BGP-LS <xref target="RFC9514"/> and PCEP <xref target="RFC9603"/>.</t>
        <t>The MSD constraint is typically resolved by leveraging a segment list 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 recovery (protection and restoration) schemes can be implemented for a CS-SR Policy. As described in <xref section="4.3" sectionFormat="of" target="RFC4427"/>, there is a subtle distinction between the terms "protection" and "restoration" based on the resource allocation done during the recovery path establishment. The same definitions apply for CS-SR Policy recovery schemes, wherein:</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, i.e., when the packet loss ratio increased 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 <xref section="7.3" sectionFormat="of" target="RFC8231"/> set to 2 to indicate the candidate path is active and carrying traffic.</t>
        <t>When using BGP, a BGP-LS update is sent from the headend to the centralized controller with the SR Candidate Path State TLV of the SR Policy Candidate Path NLRI having the</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 to indicate the candidate path is active and carrying traffic. For the candidate path with the lower preference the O field in the LSP object is set to 1 to indicate the candidate path is signaled but not carrying traffic.</t>
        <t>Appropriate diverse routing of the candidate path with lower preference from the candidate path with higher preference 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 the candidate path with higher preference to allow for finding the best  path for it that does satisfy all constraints without considering diversity to the candidate path with the lower preference.</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 where the SR Candidate Path State TLV is having the</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 where the SR Candidate Path State TLV is having the</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 SR Candidate Path State TLV having the A-Flag cleared and another BGP-LS update for the candidate path with lower preference with the SR Candidate Path State TLV having 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 SR Candidate Path State TLV having the A-Flag set to 1 and another BGP-LS update with a SR Policy Candidate Path NLRI for the lower preference candidate path with the SR Candidate Path State TLV having the A-Flag cleared and B-Flag set to 1. For non-revertive switching only a BGP-LS update with a SR Policy Candidate Path NLRI for the higher preference candidate path with the SR Candidate Path State TLV having 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 the SR Candidate Path State TLV having the</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 SR Policy Candidate Path NLRI where the 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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 SR Policy Candidate Path 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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 the SR Candidate Path State TLV having the</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 SR Policy Candidate Path 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 connectivity verification for each segment list on both headends MAY be done using the Simple Two-Way Active Measurement Protocol (STAMP) (in loopback measurement mode as described in section 6 of <xref target="I-D.ietf-spring-stamp-srpm"/>) or Bidirectional Forwarding Detection (BFD) <xref target="RFC5880"/>. The use of STAMP is RECOMMENDED as it leverages a single protocol session to be used for both connectivity verification and performance measurement (see <xref target="pm"/> of this document).</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 forwarded along the forward path to the tailend and along the reverse path back to the headend.</t>
        <t>In order to be able to send STAMP test packets for loopback measurement mode, the STAMP Session-Sender (i.e., the headend) needs to acquire the segment list information of the reverse path:</t>
        <ul spacing="normal">
          <li>
            <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>
          </li>
          <li>
            <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>
          </li>
        </ul>
        <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="pm">
        <name>Performance Measurement</name>
        <t>The same STAMP session used for connectivity verification is used to estimate round-trip loss as described in section 5 of <xref target="I-D.ietf-spring-stamp-srpm"/> and can be used to measure delay as well.</t>
        <t>As loopback mode is used, only round-trip delay can be measured. Considering that candidate paths are co-routed, the delay in the forward and reverse direction can be assumed to be identical. Under this assumption, one-way can 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 headend routers in the network topology and the CS-SR Policies provisioned on them. As described in <xref target="characteristics"/> a path MUST NOT be automatically recomputed after or optimized for topology changes.</t>
        <t>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, as detected by the stateful PCE/controller, such as insufficient bandwidth, diversity constraint no longer met or latency constraint exceeded.</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>
      <t>External commands are typically issued by an operator to control the candidate path state of a CS-SR Policy using the management interface of:</t>
      <ul spacing="normal">
        <li>
          <t>Headends: When the CS-SR Policy was instantiated via configuration or PCEP PCC-initiated mode</t>
        </li>
        <li>
          <t>PCE/controller: When the CS-SR Policy was instantiated via BGP or PCEP PCE-initiated mode</t>
        </li>
      </ul>
      <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, e.g., to proactively drain a resource for maintenance purposes.</t>
        <t>A operator triggered switching request between candidate paths on a headend is unidirectional and SHOULD 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 provide guidance on how to implement a CS-SR Policy leveraging existing mechanisms and protocol extensions. As such, it does not introduce any new security considerations.</t>
      <t>Security considerations for the SR Policy Architecture defined in <xref section="10" sectionFormat="of" target="RFC9256"/> do apply to this document.</t>
      <t>Depending on how a CS-SR Policy is instantiated and reported, the following security considerations do apply</t>
      <ul spacing="normal">
        <li>
          <t>PCEP:
          </t>
          <ul spacing="normal">
            <li>
              <t><xref section="7" sectionFormat="of" target="RFC8664"/></t>
            </li>
            <li>
              <t><xref section="6" sectionFormat="of" target="RFC9603"/></t>
            </li>
            <li>
              <t>Section 8 of <xref target="I-D.ietf-pce-segment-routing-policy-cp"/></t>
            </li>
            <li>
              <t>Section 6 of <xref target="I-D.ietf-pce-sr-bidir-path"/></t>
            </li>
            <li>
              <t>Section 7 of <xref target="I-D.ietf-pce-circuit-style-pcep-extensions"/></t>
            </li>
            <li>
              <t>Section 10 of <xref target="I-D.ietf-pce-multipath"/></t>
            </li>
            <li>
              <t>Section 8 of <xref target="I-D.ietf-idr-sr-policy-path-segment"/></t>
            </li>
          </ul>
        </li>
        <li>
          <t>BGP:
          </t>
          <ul spacing="normal">
            <li>
              <t>Section 7 of <xref target="I-D.ietf-idr-sr-policy-safi"/></t>
            </li>
            <li>
              <t>Section 9 of <xref target="I-D.ietf-idr-bgp-ls-sr-policy"/></t>
            </li>
          </ul>
        </li>
        <li>
          <t>Configuration:
          </t>
          <ul spacing="normal">
            <li>
              <t>Section 8 of <xref target="I-D.ietf-spring-sr-policy-yang"/></t>
            </li>
          </ul>
        </li>
      </ul>
      <t>Depending on the protocol used for OAM, the following security considerations do apply</t>
      <ul spacing="normal">
        <li>
          <t>STAMP: Section 15 of <xref target="I-D.ietf-spring-stamp-srpm"/></t>
        </li>
        <li>
          <t>BFD: Section 9 of <xref target="RFC5880"/></t>
        </li>
      </ul>
    </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, Tarek Saad, Ketan Talaulikar and Yao Liu for providing their review comments, Yao Liu for her very detailed shepherd review 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="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="IEEE802.1AX" target="https://standards.ieee.org/ieee/802.1AX/6778/">
          <front>
            <title>IEEE Standard for Ethernet</title>
            <author>
              <organization>IEEE</organization>
            </author>
            <date year="2020" month="May"/>
          </front>
        </reference>
        <reference anchor="RFC4448">
          <front>
            <title>Encapsulation Methods for Transport of Ethernet over MPLS Networks</title>
            <author fullname="L. Martini" initials="L." role="editor" surname="Martini"/>
            <author fullname="E. Rosen" initials="E." surname="Rosen"/>
            <author fullname="N. El-Aawar" initials="N." surname="El-Aawar"/>
            <author fullname="G. Heron" initials="G." surname="Heron"/>
            <date month="April" year="2006"/>
            <abstract>
              <t>An Ethernet pseudowire (PW) is used to carry Ethernet/802.3 Protocol Data Units (PDUs) over an MPLS network. This enables service providers to offer "emulated" Ethernet services over existing MPLS networks. This document specifies the encapsulation of Ethernet/802.3 PDUs within a pseudowire. It also specifies the procedures for using a PW to provide a "point-to-point Ethernet" service. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4448"/>
          <seriesInfo name="DOI" value="10.17487/RFC4448"/>
        </reference>
        <reference anchor="RFC4553">
          <front>
            <title>Structure-Agnostic Time Division Multiplexing (TDM) over Packet (SAToP)</title>
            <author fullname="A. Vainshtein" initials="A." role="editor" surname="Vainshtein"/>
            <author fullname="YJ. Stein" initials="YJ." role="editor" surname="Stein"/>
            <date month="June" year="2006"/>
            <abstract>
              <t>This document describes a pseudowire encapsulation for Time Division Multiplexing (TDM) bit-streams (T1, E1, T3, E3) that disregards any structure that may be imposed on these streams, in particular the structure imposed by the standard TDM framing. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4553"/>
          <seriesInfo name="DOI" value="10.17487/RFC4553"/>
        </reference>
        <reference anchor="I-D.ietf-pals-ple">
          <front>
            <title>Private Line Emulation over Packet Switched Networks</title>
            <author fullname="Steven Gringeri" initials="S." surname="Gringeri">
              <organization>Verizon</organization>
            </author>
            <author fullname="Jeremy Whittaker" initials="J." surname="Whittaker">
              <organization>Verizon</organization>
            </author>
            <author fullname="Nicolai Leymann" initials="N." surname="Leymann">
              <organization>Deutsche Telekom</organization>
            </author>
            <author fullname="Christian Schmutzer" initials="C." surname="Schmutzer">
              <organization>Cisco Systems, Inc.</organization>
            </author>
            <author fullname="Chris Brown" initials="C." surname="Brown">
              <organization>Ciena Corporation</organization>
            </author>
            <date day="12" month="February" year="2025"/>
            <abstract>
              <t>   This document expands the applicability of virtual private wire
   services (VPWS) bit-stream payloads beyond Time Division Multiplexing
   (TDM) signals and provides pseudowire transport with complete signal
   transparency over packet switched networks (PSN).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pals-ple-15"/>
        </reference>
        <reference anchor="RFC5086">
          <front>
            <title>Structure-Aware Time Division Multiplexed (TDM) Circuit Emulation Service over Packet Switched Network (CESoPSN)</title>
            <author fullname="A. Vainshtein" initials="A." role="editor" surname="Vainshtein"/>
            <author fullname="I. Sasson" initials="I." surname="Sasson"/>
            <author fullname="E. Metz" initials="E." surname="Metz"/>
            <author fullname="T. Frost" initials="T." surname="Frost"/>
            <author fullname="P. Pate" initials="P." surname="Pate"/>
            <date month="December" year="2007"/>
            <abstract>
              <t>This document describes a method for encapsulating structured (NxDS0) Time Division Multiplexed (TDM) signals as pseudowires over packet-switching networks (PSNs). In this regard, it complements similar work for structure-agnostic emulation of TDM bit-streams (see RFC 4553). This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5086"/>
          <seriesInfo name="DOI" value="10.17487/RFC5086"/>
        </reference>
        <reference anchor="RFC4842">
          <front>
            <title>Synchronous Optical Network/Synchronous Digital Hierarchy (SONET/SDH) Circuit Emulation over Packet (CEP)</title>
            <author fullname="A. Malis" initials="A." surname="Malis"/>
            <author fullname="P. Pate" initials="P." surname="Pate"/>
            <author fullname="R. Cohen" initials="R." role="editor" surname="Cohen"/>
            <author fullname="D. Zelig" initials="D." surname="Zelig"/>
            <date month="April" year="2007"/>
            <abstract>
              <t>This document provides encapsulation formats and semantics for emulating Synchronous Optical Network/Synchronous Digital Hierarchy (SONET/SDH) circuits and services over MPLS. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4842"/>
          <seriesInfo name="DOI" value="10.17487/RFC4842"/>
        </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="4" month="April" year="2025"/>
            <abstract>
              <t>   A Segment Routing (SR) Policy is an ordered list of instructions,
   called "segments" that represent a source-routed policy.  Packet
   flows are steered into an SR Policy on a node where it is
   instantiated.  An SR Policy is made of one or more candidate paths.

   This document specifies the Path Computation Element Communication
   Protocol (PCEP) extension to signal candidate paths of an SR Policy.
   Additionally, this document updates RFC 8231 to allow delegation and
   setup of an SR Label Switched Path (LSP), without using the path
   computation request and reply messages.  This document is applicable
   to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over
   IPv6 (SRv6).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-segment-routing-policy-cp-27"/>
        </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="May" year="2025"/>
            <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-08"/>
        </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>Cisco Systems</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="9" month="April" year="2025"/>
            <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-13"/>
        </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="6" month="March" 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-17"/>
        </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="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="Bart Janssens" initials="B." surname="Janssens">
              <organization>Colt</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="9" month="May" year="2025"/>
            <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 the 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-18"/>
        </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>
        <reference anchor="RFC5880">
          <front>
            <title>Bidirectional Forwarding Detection (BFD)</title>
            <author fullname="D. Katz" initials="D." surname="Katz"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>This document describes a protocol intended to detect faults in the bidirectional path between two forwarding engines, including interfaces, data link(s), and to the extent possible the forwarding engines themselves, with potentially very low latency. It operates independently of media, data protocols, and routing protocols. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5880"/>
          <seriesInfo name="DOI" value="10.17487/RFC5880"/>
        </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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
lfQUDczcD8bqyWnd45I6Zdds4u3+/BlvNd1PDyfEuN5jGESHDTch71cLwpU8
yDoHvgIL3GYrjxCrn54P+ox2h63BvHt/pKjGb0dBCxIrSQU5HfyYjnTXhnwV
Pv0li/k8Zm2XvJpbfxbEj979L5cpDbXnUbTyG1b05Jhvqm2O2HrEfq2zm/nx
zp8v/YfsKJtni6r8hDebgN9K1W10qHm8viG4rHeNok7spmteP6Nb/FSPZuBd
sPfGDJKeKWlRclz6YmuB6QTSiaPYpmSXELGreIK2ceo7SI0T0iqlOd0k9u9A
grhTm6Yuo8uXcwChpZlSuvfWCmdYs8BK89ZFp/Pw6tHa0ur4wabnper0UO1u
rYkxrPYnrlSxieh9PycdbgdPyDmbEuAR0C7WGRETrLPTEjd+zT7tKftEGnTV
OEhqqKdgH99MgxBvBI/E7eyUIbToC7wXm0o2SxZ94CiE9aGgT48Js1F7vIt6
1mIckCB1kyjGlC1XueVChJuafgI1Vwf0nSfhNQM8f/7uSbw2zMuyWcmG+2DU
ADWzsKILH0XcuYheRlPJNMZ6PXzRoCpwMytfiyML/pp2oF69pxyncOobH7M1
mKs5NUY/GSnubPHV+DInYPi4dtNf9aQHwDdXG3bqg64tcVRR4JkClVZ9DC5n
4RsSRCsTL9e5lbpSoxvBpnraFSZdHyhsuqoeJUkfUIYeLzr/e8T+yMPS3HOy
0iyHFO7Vcfni35px6b7VyjrTJNjtijX3O4+doLxZIMyYKFEXVa0gqEdttXOO
dbhRhRk5P6owOyO5+DULtNhTbFYxoC+lx8/zgjwp9Qqp4S6KRvswsdGVXbCQ
Sp/sumJUmN+FieVfz/X5mZruf4/z+jnivnk1pkERnyn2g9F+X8mvjicg+NuZ
Hv9PMPQvcoyfm5iyt5wpxcLEwdbwdH2pjvSbjNFVus2Tc6jHbse1jjGNxDtg
HVYMZ288eNJYPSz1rLgzF886xBOuKSmjjqItXYgTEds5K8gP37C2vp2Kcy/d
t61+o1cYU3VX5+ulTZewpNYA28VLQlyS1lnL3V7hqssRzZQbahwlE6L5SJj/
jjx77CC2+4ZmtzVssKE2xahC91QLsey62Ot0XpAfwngwKNVnUZKognWkWWq+
z2ZWbC/8AA7jRUmag5cGhLFGKoEIINO1a0RE89oKDPN49wi6a7HaaJdMjHx5
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

-->

</rfc>
