<?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.30 (Ruby 3.2.3) -->
<?rfc compact="yes"?>
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-spring-cs-sr-policy-14" category="info" submissionType="IETF" tocDepth="6" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="CS-SR Policy">Circuit Style Segment Routing Policy</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-spring-cs-sr-policy-14"/>
    <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="2026" month="January" day="28"/>
    <abstract>
      <?line 194?>

<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 198?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>IP services typically leverage ECMP and local protection. However packet transport services (commonly referred to as "private lines") that are delivered via pseudowires such as <xref target="RFC4448"/>, <xref target="RFC4553"/>, <xref target="RFC9801"/>, <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 near-symmetric latency</t>
        </li>
        <li>
          <t>A requested amount of bandwidth per path that is assured irrespective of changing network utilization from 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 centralized 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 life of the CS-SR Policy.</t>
      <t>CS-SR Policies can be instantiated in the headend routers by using PCEP or BGP as a communication protocol between the headend routers and the central controller or by configuration.</t>
      <ul spacing="normal">
        <li>
          <t>When using PCEP as the communication protocol, the controller is a stateful PCE as 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, the BGP extensions defined in <xref target="RFC9830"/> are used.</t>
        </li>
        <li>
          <t>When using configuration, an appropriate YANG model such as <xref target="I-D.ietf-spring-sr-policy-yang"/> can be used.</t>
        </li>
      </ul>
      <t>To satisfy the requirements of CS-SR Policies, each link in the topology used by or intended to support CS-SR Policies MUST have:</t>
      <ul spacing="normal">
        <li>
          <t>An adjacency-SID which is:
          </t>
          <ul spacing="normal">
            <li>
              <t>Persistent, which could be statically configured or auto-generated: to ensure that its value does not change after an event that may cause dynamic states to change (e.g. router reboot).</t>
            </li>
            <li>
              <t>Non-protected: to avoid any local TI-LFA protection <xref target="RFC9855"/> 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 and Operations, Administration, and Maintenance (OAM) per physical link, an adjacency-SID SHOULD be assigned to each physical link (aka member-link) (<xref target="RFC8668"/>, <xref target="RFC9356"/>). This is not needed when the traffic carried by a CS-SR Policy has enough entropy (<xref target="RFC6391"/>, <xref target="RFC6790"/>, <xref target="RFC6437"/>) for traffic load-balancing across multiple member-links to work well.</t>
      <t>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>
      <t>CS-SR Policy state reporting by the headend routers back to the central controller is essential to confirm success or failure of the instantiation and making the controller aware of any state changes throughout the lifetime of the CS-SR Policy in the network.</t>
      <t>The headend routers can report CS-SR Policy state by using</t>
      <ul spacing="normal">
        <li>
          <t>PCEP procedures of <xref target="RFC8231"/>.</t>
        </li>
        <li>
          <t>BGP-LS procedures of <xref target="RFC9857"/>.</t>
        </li>
        <li>
          <t>an appropriate YANG model such as <xref target="I-D.ietf-spring-sr-policy-yang"/>.</t>
        </li>
      </ul>
      <t>While there is no mandate for doing so, using PCEP procedures for both instantiation and state reporting has the benefit of only a single protocol being required. Similarly for the case of instantiation via BGP and state reporting via BGP-LS procedures.</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 Synchronous Optical Network (SONET) / Synchronous Digital Hierarchy (SDH), Optical Transport Network (OTN) or Dense Wave Division Multiplexing (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 and can in general lead to link congestion and packet loss.</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 <xref target="RFC2597"/> 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, managed by network design and policy (which is outside the scope of this document). These dedicated SIDs used by CS-SR Policies MUST NOT be used by features such as TI-LFA <xref target="RFC9855"/> for defining the repair path and microloop avoidance <xref target="I-D.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 headends 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 segment list of a candidate path MUST NOT change automatically to a segment 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>
            <li>
              <t>Protection switching, restoration and reversion behavior is bidirectional</t>
            </li>
          </ul>
        </li>
        <li>
          <t>It is RECOMMENDED that candidate paths only contain one segment list to avoid asymmetrical routing due to independent load balancing across multiple segment lists on each headend.</t>
        </li>
        <li>
          <t>Continuity check and performance measurement are activated on each candidate path (<xref target="OAM"/>) and performed per segment-list.</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_init">
          <name>PCC-initiated Mode</name>
          <t>Considering the scenario illustrated in <xref target="architecture-diagram"/> a CS-SR Policy between headends 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 headend routers 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 PCRpt message MUST be sent per candidate path. Each PCRpt message does include the "SR Policy Association" object (type 6) as defined in <xref target="RFC9862"/> 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 events that may cause dynamic states to change in the network (e.g. router reboot) is achieved by the PCE only including statically configured adjacency-SIDs in its path computation response.</t>
            </li>
            <li>
              <t>Persistency across network changes is achieved by the PCE not performing periodic or 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 MUST NOT 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 headends A and Z to install multiple segment lists using the signaling procedures described in section 5.3 of <xref target="I-D.ietf-pce-multipath"/>.</t>
          <t>The candidate paths of the CS-SR Policy are reported and updated following PCEP procedures of <xref target="RFC8231"/>.</t>
        </section>
        <section anchor="pce_init">
          <name>PCE-initiated Mode</name>
          <t>The CS-SR Policy can be instantiated in the network between headends A and Z by a PCE using PCE-initiated procedures defined in <xref target="RFC8281"/>. For PCE-initiated procedures no SR Policy configuration is required on the headends A and Z acting as PCC. The PCE requests the headends A and Z to initiate the candidate paths of the CS-SR Policy by sending a PCInitiate message.</t>
          <t>The PCInitiate message contains the same Bandwidth, LSPA, and ASSOCIATION objects used in PCC-initiated mode.</t>
          <t>Following initiation, the candidate paths of the CS-SR Policy are reported and updated following PCEP procedures of <xref target="RFC8231"/> and share the same behavior as the PCC-initiated mode.</t>
          <t>Connectivity verification and performance measurement is enabled via local policy configuration on the headends, as there is no standard signaling mechanism available.</t>
        </section>
      </section>
      <section anchor="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 controller.</t>
        <t>The controller performs path computation and advertises the corresponding SR Policies to the headend routers via BGP.</t>
        <t>To instantiate the SR Policies in headends A and Z the BGP extensions defined in <xref target="RFC9830"/> 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 computing strict paths and only including unprotected adjacency-SIDs in segment lists. Loose hops SHOULD NOT be used.</t>
          </li>
          <li>
            <t>Path persistency across events that may cause dynamic states to change in the network (e.g. router reboot) 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 or 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="RFC9830"/>) 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="RFC9830"/>.</t>
        <t>The candidate paths of a CS-SR Policy are updated by the controller sending another BGP UPDATE message to the headends A and Z.</t>
        <t>The headends A and Z can report the CS-SR Policy candidate path state back to the controller via BGP-LS using the extension defined in <xref target="RFC9857"/>.</t>
        <t>Alternatively, CS-SR Policy candidate path state can be gathered using an appropriate YANG model such as <xref target="I-D.ietf-spring-sr-policy-yang"/>.</t>
        <t>Connectivity verification and performance measurement is enabled via local policy configuration on the headends, as there is no standard signaling mechanism available.</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 Binding SIDs (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 used in CS-SR Policies to ensure that there is no per-hop ECMP, no localized rerouting due to topological changes, and no invocation of localized protection mechanisms, as the alternate path may not be providing the desired SLA.</t>
        <t>If a CS-SR Policy path requires segment list reduction, a SR Policy can be programmed in a transit node, and its BSID can be used in the segment list of the CS-SR Policy, if the following requirements are met:</t>
        <ul spacing="normal">
          <li>
            <t>The transit SR Policy is unprotected, hence only has one candidate path.</t>
          </li>
          <li>
            <t>The transit SR Policy follows the rerouting and optimization characteristics defined in <xref target="characteristics"/> which implies the segment list of the candidate path MUST only use unprotected adjacency-SIDs.</t>
          </li>
        </ul>
        <t>This ensures that traffic for CS-SR Policies using a BSID does not get locally rerouted due to topological changes or locally protected due to failures. A transit SR Policy may be pre-programmed in the network or automatically injected in the network by a PCE.</t>
      </section>
    </section>
    <section anchor="cs-sr-policy-deletion">
      <name>CS-SR Policy Deletion</name>
      <section anchor="pcep_delete">
        <name>Policy Deletion when using PCEP</name>
        <t>When using PCC-initiated mode, the headends A and Z send a PCRpt message with the R flag set to 1 to inform the PCE about the deletion of a candidate path.</t>
        <t>When using PCE-initiated mode, the PCE does send a PCInitiate message to the headends A and Z and to instruct them to delete a candidate path.</t>
      </section>
      <section anchor="bgp_delete">
        <name>Policy Deletion when using BGP</name>
        <t>The controller is using the withdraw procedures of <xref target="RFC4271"/> to instruct headends A and Z to delete a candidate path.</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 continuity check described in <xref target="check"/> 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 or restoration is required. The CS-SR Policy has only one candidate path.</t>
        <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>
        <t>As soon as the failure(s) that brought the candidate path down are cleared, the candidate path is activated, traffic is sent across it and state is reported accordingly.</t>
        <section anchor="unprotected_setup">
          <name>Setup</name>
          <t>When using PCEP, the single candidate path is established using the procedures defined in <xref target="pcep"/>, activated and is carrying traffic.</t>
          <t>A PCRpt message is sent from the headends A and Z 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, the single candidate path is established using the procedures defined in <xref target="bgp"/>, activated and is carrying traffic.</t>
          <t>A BGP-LS update is sent from the headends A and Z to the 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, and</t>
            </li>
            <li>
              <t>A-Flag set to 1 to indicate the candidate path is active and is carrying traffic.</t>
            </li>
          </ul>
        </section>
        <section anchor="failure">
          <name>Failure</name>
          <t>When using PCEP, a PCRpt message is sent by the headends A and Z to the PCE with O field in LSP object changed from 2 to 0, to indicate the candidate path is no longer active and not carrying traffic.</t>
          <t>When using BGP, a BGP-LS update is sent by the headends A and Z to the controller with the SR Policy Candidate Path NLRI of the candidate path and the SR Candidate Path State TLV having the A-Flag cleared to indicate the candidate path is no longer active and not carrying traffic.</t>
        </section>
        <section anchor="reversion">
          <name>Reversion</name>
          <t>When using PCEP, a PCRpt message is sent by the headends A and Z to the PCE with O field in LSP object is set to 2, to indicate this candidate path is active again and traffic is sent across it.</t>
          <t>When using BGP, a BGP-LS update is sent by the headends A and Z to the controller with the SR Policy Candidate Path NLRI of the candidate path and the SR Candidate Path State TLV having the A-Flag change to 1 to indicate the candidate path is active again and traffic is sent across it.</t>
        </section>
      </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 MUST be computed disjoint to the first candidate path and programmed as backup in the forwarding plane as described in <xref section="9.3" sectionFormat="of" target="RFC9256"/>.</t>
        <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>Protection switching is bidirectional. As described in <xref target="check"/>, 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>
        <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>
        <section anchor="setup">
          <name>Setup</name>
          <t>When using PCEP, the two candidate paths are established using the procedures defined in <xref target="pcep"/>. The candidate path with higher preference is activated and is carrying traffic.</t>
          <t>When using PCC-initiated mode, appropriate diverse routing of the candidate path with lower preference from the candidate path with higher preference can be requested by the headends A and Z 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 flag set to 1 for link diversity</t>
            </li>
            <li>
              <t>N flag set to 1 for node diversity</t>
            </li>
            <li>
              <t>S flag set to 1 for SRLG diversity</t>
            </li>
            <li>
              <t>T flag set to enforce strict diversity</t>
            </li>
          </ul>
          <t>The P flag 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 PCE-initated mode, the diversity characteristics taken into account during path computation can be communicated by the PCE to the headends via the "DISJOINTNESS-STATUS TLV".</t>
          <t>A PCRpt message for the candidate path with higher preference is sent by the headends A and Z to the PCE with the O field in the LSP object set to 2 to indicate this candidate path is active and carrying traffic.</t>
          <t>Further, a PCRpt message for the candidate path with the lower preference is sent with the O field in the LSP object set to 1 to indicate the candidate path is signaled but not carrying traffic.</t>
          <t>When using BGP, the two candidate paths are established using the procedures defined in <xref target="bgp"/>. The candidate path with higher preference is activated and is carrying traffic.</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 by the controller to the headend routers.</t>
          <t>A BGP-LS update is sent by the headends A and Z 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, and</t>
            </li>
            <li>
              <t>A-Flag set to 1 to indicate the candidate path is active and is carrying traffic.</t>
            </li>
          </ul>
          <t>Further, another SR Policy Candidate Path NLRI for the candidate path with lower preference where the SR Candidate Path State TLV is included having the</t>
          <ul spacing="normal">
            <li>
              <t>C-Flag set to 1 to indicate the candidate path was provisioned by the controller, and</t>
            </li>
            <li>
              <t>B-Flag set to 1 to indicate the role of backup path.</t>
            </li>
          </ul>
        </section>
        <section anchor="failure-1">
          <name>Failure</name>
          <t>When using PCEP, a PCRpt message for the higher preference candidate path is sent by the headends A and Z to the PCE with the O field changed from 2 to 0 to indicate that the candidate path is no longer active and not carrying traffic anymore.</t>
          <t>Further, a PCRpt message for the lower preference candidate path is sent with the O field changed from 1 to 2 to indicate that the candidate path got activated and is carrying traffic.</t>
          <t>When using BGP, a BGP-LS update is sent by the headends A and Z to the controller with the SR Policy Candidate Path NLRI for the higher preference candidate path with the SR Candidate Path State TLV having the A-Flag cleared to indicate that the candidate path is no longer active and not carrying traffic anymore.</t>
          <t>Further, the SR Policy Candidate Path NLRI for the lower preference candidate path with the SR Candidate Path State TLV having the B-Flag cleared and A-Flag set to 1 is included in the BGP-LS update to indicate that the candidate path got activated and is carrying traffic.</t>
        </section>
        <section anchor="reversion-1">
          <name>Reversion</name>
          <t>When using PCEP, for revertive switching a PCRpt message for the recovered higher preference candidate path is sent by the headends A and Z to the PCE with the O field changed from 0 to 2 to indicate the higher preference candidate path got re-activated and is carrying traffic.</t>
          <t>Further, a PCRpt message is sent for the lower preference candidate path with the O field changed from 2 to 1 to indicate that the lower preference candidate path is no longer active but signaled.</t>
          <t>For non-revertive switching only a PCRpt message for the recovered higher preference candidate path with the O field set to 1 is sent to indicate that the higher preference candidate path got signaled but is not active.</t>
          <t>When using BGP, for revertive switching a BGP-LS update is sent by the headends A and Z to the controller with the 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 to indicate the higher preference candidate path got re-activated and is carrying traffic.</t>
          <t>Further, the 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 is included in the BGP-LS update to indicate that the lower preference candidate path is no longer active but signaled.</t>
          <t>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 to indicate that the higher preference candidate path got signaled but is not active.</t>
        </section>
      </section>
      <section anchor="restoration">
        <name>Restoration</name>
        <section anchor="oneplusr">
          <name>1+R Restoration</name>
          <t>Similarly to 1:1 protection described in <xref target="onetoone"/>, in this recovery scheme the CS-SR Policy has two candidate paths.</t>
          <t>To avoid pre-allocating protection bandwidth by the controller ahead of failures, but still being able to recover traffic flow over an alternate path through the network in a deterministic way (maintaining the required bandwidth commitment), the second candidate path with lower preference is established "on demand" and activated upon failure of the first candidate path.</t>
          <t>As soon as failure(s) that brought the first candidate path down are cleared, the second candidate path is getting torn down and traffic is reverted back to the first candidate path.</t>
          <t>Restoration and reversion behavior is bidirectional. As described in <xref target="check"/>, both headends use continuity check 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 anchor="setup-1">
            <name>Setup</name>
            <t>The first candidate path is set up as described in <xref target="unprotected_setup"/>.</t>
          </section>
          <section anchor="failure-2">
            <name>Failure</name>
            <t>When using PCEP, the second candidate path with lower preference is established using the procedures in <xref target="pcep"/>, activated and traffic is sent across it.</t>
            <t>A PCRpt message for the lower preference candidate path is sent by the headends A and Z to the PCE with the O field set to 2 to indicate this candidate path is active and carrying traffic.</t>
            <t>Further, a PCRpt message for the higher preference candidate path is sent to the PCE with the O field changed from 2 to 0 to indicate this candidate path is no longer active.</t>
            <t>When using BGP, the second candidate path with lower preference is established using the procedures defined in <xref target="bgp"/>.</t>
            <t>A BGP-LS update with the SR Policy Candidate Path NLRI for the lower preference candidate path is sent by the headends A and Z 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, and</t>
              </li>
              <li>
                <t>A-Flag set to 1 to indicate the candidate path is active and is carrying traffic.</t>
              </li>
            </ul>
            <t>Further, the SR Policy Candidate Path NLRI for the higher preference candidate path is included with the SR Candidate Path State TLV having the A-Flag cleared, to indicate that the candidate this path is no longer active and not carrying traffic anymore.</t>
          </section>
          <section anchor="reversion-2">
            <name>Reversion</name>
            <t>When using PCEP, the second candidate path with lower preference is torn down using the procedures in <xref target="pcep_delete"/>.</t>
            <t>A PCRpt message for the remaining candidate path is sent by the headends A and Z to the PCE with O field in LSP object is set to 2, to indicate this candidate path is active and traffic is sent across it.</t>
            <t>When using BGP, the second candidate path with lower preference is torn down by using the procedures in <xref target="bgp_delete"/>.</t>
            <t>A BGP-LS update with the SR Policy Candidate Path NLRI for the remaining 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>
          </section>
        </section>
        <section anchor="onetooneplusr">
          <name>1:1+R Restoration</name>
          <t>For further resiliency in case of multiple concurrent failures that could bring down 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 (in this section referred to as first and second candidate path) is added to the CS-SR Policy to enable restoration.</t>
          <t>There are two possible operating models:</t>
          <ul spacing="normal">
            <li>
              <t>R established upon double failure</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>As in <xref target="oneplusr"/>, to avoid pre-allocating additional bandwidth by the controller ahead of failures, the third candidate path may only be requested when both candidate paths are affected by failures.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>As soon as either the first or second candidate path recovers, traffic will be reverted and the third candidate path MUST be torn down.</t>
            </li>
          </ul>
          <ul spacing="normal">
            <li>
              <t>R pre-established after single failure</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>Alternatively, the third candidate path can also be requested and pre-computed already whenever either the first or second candidate path go down with the downside of more bandwidth being set aside ahead of time. When doing so, the third candidate path MUST be computed diverse to the still operational candidate path.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>The third candidate path will get activated and carry traffic when further failures lead to both the first and second candidate path being down.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>As long as either the first or the second candidate path is active, the third candidate path is kept, updated (if needed) to ensure diversity to the active candidate path and is not carrying traffic.</t>
            </li>
          </ul>
          <ul empty="true">
            <li>
              <t>Once both, the first and the second candidate path have recovered, the third candidate path is torn down.</t>
            </li>
          </ul>
          <t>Again, restoration and reversion behavior is bidirectional. As described in <xref target="check"/>, both headends use continuity check 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 anchor="r-established-upon-double-failure">
            <name>R established upon double failure</name>
            <section anchor="setup-2">
              <name>Setup</name>
              <t>The first and second candidate path are set up as described in <xref target="onetoone"/></t>
            </section>
            <section anchor="failure-3">
              <name>Failure</name>
              <t>As failure(s) have brought down both the first and second candidate path, a third candidate path with lowest preference is established, activated and traffic is sent across it immediately to restore traffic.</t>
              <t>When using PCEP, the third candidate path is established using the procedures in <xref target="pcep"/>.</t>
              <t>A PCRpt message for the third candidate path is sent by the headends A and Z to the PCE with the O field set to 2 to indicate this candidate path is active and carrying traffic.</t>
              <t>Further, a PCRpt message for both the first and second candidate path is sent to the PCE with the O field set to 0 to indicate the candidate paths are no longer active and are not carrying traffic.</t>
              <t>When using BGP, the third candidate path is established using the procedures defined in <xref target="bgp"/>.</t>
              <t>A BGP-LS update is sent by the headends A and Z to the controller with 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, and</t>
                </li>
                <li>
                  <t>A-Flag set to 1 to indicate the candidate path is active and is carrying traffic.</t>
                </li>
              </ul>
              <t>Further, the SR Policy Candidate Path NLRIs for the first and second candidate path are also included with the SR Candidate Path State TLV having the A-Flag and B-Flag cleared to indicate that those candidate paths are no longer active or backup and are not carrying traffic.</t>
            </section>
            <section anchor="reversion-3">
              <name>Reversion</name>
              <t>When using PCEP, the third candidate path is torn down using the procedures in <xref target="pcep_delete"/>.</t>
              <t>A PCRpt message for the recovered candidate path is sent by the headends A and Z to the PCE with O field in LSP object is set to 1, to indicate this candidate path is signaled but is not carrying traffic.</t>
              <t>When using BGP, the third candidate path is torn down by using the procedures in <xref target="bgp_delete"/>.</t>
              <t>A BGP-LS update with the SR Policy Candidate Path NLRI for the recovered candidate path is sent by the headends A and Z to the controller with the SR Candidate Path State TLV having the B-Flag set to 1 to indicate the candidate path became backup and is not carrying traffic.</t>
            </section>
          </section>
          <section anchor="r-pre-established-after-single-failure">
            <name>R pre-established after single failure</name>
            <section anchor="setup-3">
              <name>Setup</name>
              <t>The first and second candidate path are set up as described in <xref target="onetoone"/></t>
            </section>
            <section anchor="failure-4">
              <name>Failure</name>
              <t>As a failure brought either the first or the second candidate path down, a third candidate path is established, but is not activated and is not carrying traffic. 
<!--
TODO : add diversity to first or second candidate path signaling 
-->
              </t>
              <t>When using PCEP, a PCRpt message for the third candidate path is sent by the headends A and Z to the PCE with the O field set to 1 to indicate this candidate path is signaled but not carrying traffic.</t>
              <t>Further, a PCRpt message for the failed candidate path is sent to the PCE with the O field set to 0 to indicate this candidate path is no longer active and not carrying traffic.</t>
              <t>When using BGP, a BGP-LS update is sent by the headends A and Z to the controller with 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, and</t>
                </li>
                <li>
                  <t>B-Flag set to 1 to indicate the role of backup path.</t>
                </li>
              </ul>
              <t>Further, the SR Policy Candidate Path NLRIs for the failed candidate path is also included with the SR Candidate Path State TLV having the A-Flag and B-Flag cleared to indicate that the candidate path is no longer active or backup and is not carrying traffic.</t>
              <t>Whenever later a failure happens, that leads to both the first and second candidate path to be down, the third candidate path gets activated and traffic is sent across it.</t>
              <t>When using PCEP, a PCRpt message for the third candidate path is sent by the headends A and Z to the PCE with the O field set to 2 to indicate this candidate path is active and carrying traffic.</t>
              <t>Further, a PCRpt message for both the failed candidate path is sent to the PCE with the O field set to 0 to indicate the candidate path is no longer active and is not carrying traffic.</t>
              <t>When using BGP, a BGP-LS update is sent by the headends A and Z to the controller with 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, and</t>
                </li>
                <li>
                  <t>A-Flag set to 1 to indicate the candidate path is active and is carrying traffic.</t>
                </li>
              </ul>
              <t>Further, the SR Policy Candidate Path NLRI for the failed candidate path is also included with the SR Candidate Path State TLV having the A-Flag cleared to indicate that the candidate path is no longer active and is not carrying traffic.</t>
            </section>
            <section anchor="reversion-4">
              <name>Reversion</name>
              <t>When transitioning from a state where both the first and second candidate path being down to a state where either of them is recovered. The third candidate path MAY be updated to ensure it is diverse to the active candidate path.</t>
              <t>When using PCEP, the third candidate path is updated following PCEP procedures of <xref target="RFC8231"/>.</t>
              <t>When using BGP, the controller is sending a new BGP update with the SR Policy Candidate Path NLRI containing the new path.</t>
              <t>When both the first and second candidate path have recovered, the third candidate MUST be torn down and the reversion procedures of <xref target="onetoone"/> MUST be followed.</t>
              <t>When using PCEP, the third candidate path is torn down using the procedures in <xref target="pcep_delete"/>.</t>
              <t>When using BGP, the third candidate path is torn down by using the procedures in <xref target="bgp_delete"/>.</t>
            </section>
          </section>
        </section>
      </section>
    </section>
    <section anchor="OAM">
      <name>Operations, Administration, and Maintenance (OAM)</name>
      <section anchor="check">
        <name>Continuity Check</name>
        <t>The continuity check for each segment list on both headends MAY be done using</t>
        <ul spacing="normal">
          <li>
            <t>Simple Two-Way Active Measurement Protocol (STAMP) in loopback measurement mode as described in section 6 and the session state described in section 11 of <xref target="I-D.ietf-spring-stamp-srpm-mpls"/> for SR-MPLS and <xref target="I-D.ietf-spring-stamp-srpm-srv6"/> for SRv6.</t>
          </li>
          <li>
            <t>Bidirectional Forwarding Detection (BFD) <xref target="RFC5880"/>.</t>
          </li>
          <li>
            <t>Seamless BFD (S-BFD) <xref target="RFC7880"/>.</t>
          </li>
        </ul>
        <t>The use of STAMP is RECOMMENDED as it leverages a single protocol for both continuity check and performance measurement (see <xref target="pm"/> of this document) and allows for a single session to be used, depending on the desired performance measurement session mode (two-way described in section 4, one-way described in section 5 or loopback described in section 6 of <xref target="I-D.ietf-spring-stamp-srpm-mpls"/> for SR-MPLS and <xref target="I-D.ietf-spring-stamp-srpm-srv6"/> for SRv6).</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>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 continuity check 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>Assuming a single STAMP session in loopback mode is used for continuity check and performance measurement, the round-trip delay can be measured and the round-trip loss can be estimated as described in section 8 of <xref target="I-D.ietf-spring-stamp-srpm-mpls"/> for SR-MPLS and <xref target="I-D.ietf-spring-stamp-srpm-srv6"/> for SRv6.</t>
        <t>Considering that candidate paths are co-routed, the delay in the forward and reverse direction can be assumed to be similar. Under this assumption, one-way delay 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 by the controller after or optimized for topology changes unless it is a restoration path.</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, such as insufficient bandwidth, diversity constraint no longer met or latency constraint exceeded and only the stateful PCE/controller can detect this and not the headend routers themselves.</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="operational-considerations">
      <name>Operational Considerations</name>
      <t>As a Circuit Style SR Policy (CS-SR Policy) is an association of two co-routed unidirectional SR Policies, the manageability considerations outlined in <xref section="11" sectionFormat="of" target="RFC9256"/> do apply.</t>
      <t>Additional operational considerations are:</t>
      <ul spacing="normal">
        <li>
          <t>Configure both sides identical (behavior and flags)</t>
        </li>
        <li>
          <t>When using PCEP, configure Association ID, Association Source, optional Global Association Source TLV, and optional Extended Association ID TLV according to <xref target="RFC8697"/>.</t>
        </li>
        <li>
          <t>LSP ping and traceroute [<xref target="RFC9716"/>] is performed unidirectionally (per SR Policy).</t>
        </li>
        <li>
          <t>Diversity among candidate paths can be verified by using LSP traceroute.</t>
        </li>
        <li>
          <t>CS-SR Policies will lead to more alarms in the fault management system, because a candidate path can stay down until a network topology failure which caused the down event clears.</t>
        </li>
      </ul>
      <t>Configuration and operation can use the YANG model defined in <xref target="I-D.ietf-spring-sr-policy-yang"/>.</t>
      <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 to ensure co-routing of traffic.</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>
    <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>The MPLS or SRv6 network is assumed to be a trusted and secure domain. Attackers who manage to send spoofed packets into the domain could easily disrupt services leveraging CS-SR Policies. The protections against such attacks are described by considerations in <xref section="4.2" sectionFormat="of" target="RFC5920"/> and in <xref section="8" sectionFormat="of" target="RFC8402"/>.</t>
      <t>Security considerations for the SR Policy Architecture defined in <xref section="10" sectionFormat="of" target="RFC9256"/> do apply to this document as well.</t>
      <t>To satisfy the bandwidth requirement of CS-SR Policies, the Differentiated Service architecture <xref target="RFC2475"/> is leveraged and the security considerations in <xref section="6" sectionFormat="of" target="RFC2475"/> do apply. If a dedicated Diffserv codepoint is assigned to CS-SR Policies, the use by any other traffic has to be prevented to ensure QoS is properly enforced.</t>
      <t>Further a misconfiguration of requested bandwidth for CS-SR Policies can lead to blocking out other CS-SR Policies from consuming available bandwidth and bandwidth starvation of non-CS-SR traffic.</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="RFC9862"/></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="RFC9830"/></t>
            </li>
            <li>
              <t>Section 9 of <xref target="RFC9857"/></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-mpls"/> and <xref target="I-D.ietf-spring-stamp-srpm-srv6"/></t>
        </li>
        <li>
          <t>BFD/S-BFD: Section 9 of <xref target="RFC5880"/> and Section 11 of <xref target="RFC7880"/></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="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="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="RFC5920">
          <front>
            <title>Security Framework for MPLS and GMPLS Networks</title>
            <author fullname="L. Fang" initials="L." role="editor" surname="Fang"/>
            <date month="July" year="2010"/>
            <abstract>
              <t>This document provides a security framework for Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) Networks. This document addresses the security aspects that are relevant in the context of MPLS and GMPLS. It describes the security threats, the related defensive techniques, and the mechanisms for detection and reporting. This document emphasizes RSVP-TE and LDP security considerations, as well as inter-AS and inter-provider security considerations for building and maintaining MPLS and GMPLS networks across different domains or different Service Providers. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5920"/>
          <seriesInfo name="DOI" value="10.17487/RFC5920"/>
        </reference>
        <reference anchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <author fullname="M. Carlson" initials="M." surname="Carlson"/>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines an architecture for implementing scalable service differentiation in the Internet. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2475"/>
          <seriesInfo name="DOI" value="10.17487/RFC2475"/>
        </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="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>
        <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="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="RFC9830">
          <front>
            <title>Advertising Segment Routing Policies in BGP</title>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <author fullname="D. Jain" initials="D." surname="Jain"/>
            <date month="September" 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 (CPs), each comprising one or more segment lists. A headend can be provisioned with these CPs using various mechanisms such as Command-Line Interface (CLI), Network Configuration Protocol (NETCONF), Path Computation Element Communication Protocol (PCEP), or BGP.</t>
              <t>This document specifies how BGP can be used to distribute SR Policy CPs. It introduces a BGP SAFI for advertising a CP of an SR Policy and defines sub-TLVs for the Tunnel Encapsulation Attribute to signal information related to these CPs.</t>
              <t>Furthermore, this document updates RFC 9012 by extending the Color Extended Community to support additional steering modes over SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9830"/>
          <seriesInfo name="DOI" value="10.17487/RFC9830"/>
        </reference>
        <reference anchor="I-D.ietf-spring-sr-policy-yang">
          <front>
            <title>YANG Data Model for Segment Routing Policy</title>
            <author fullname="Tarik Saleh" initials="T." surname="Saleh">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Syed Kamran Raza" initials="S. K." surname="Raza">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Shunwan Zhuang" initials="S." surname="Zhuang">
              <organization>Huawei Technologies</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="20" month="October" year="2025"/>
            <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-06"/>
        </reference>
        <reference anchor="RFC6391">
          <front>
            <title>Flow-Aware Transport of Pseudowires over an MPLS Packet Switched Network</title>
            <author fullname="S. Bryant" initials="S." role="editor" surname="Bryant"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="U. Drafz" initials="U." surname="Drafz"/>
            <author fullname="V. Kompella" initials="V." surname="Kompella"/>
            <author fullname="J. Regan" initials="J." surname="Regan"/>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <date month="November" year="2011"/>
            <abstract>
              <t>Where the payload of a pseudowire comprises a number of distinct flows, it can be desirable to carry those flows over the Equal Cost Multiple Paths (ECMPs) that exist in the packet switched network. Most forwarding engines are able to generate a hash of the MPLS label stack and use this mechanism to balance MPLS flows over ECMPs.</t>
              <t>This document describes a method of identifying the flows, or flow groups, within pseudowires such that Label Switching Routers can balance flows at a finer granularity than individual pseudowires. The mechanism uses an additional label in the MPLS label stack. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6391"/>
          <seriesInfo name="DOI" value="10.17487/RFC6391"/>
        </reference>
        <reference anchor="RFC6790">
          <front>
            <title>The Use of Entropy Labels in MPLS Forwarding</title>
            <author fullname="K. Kompella" initials="K." surname="Kompella"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <author fullname="W. Henderickx" initials="W." surname="Henderickx"/>
            <author fullname="L. Yong" initials="L." surname="Yong"/>
            <date month="November" year="2012"/>
            <abstract>
              <t>Load balancing is a powerful tool for engineering traffic across a network. This memo suggests ways of improving load balancing across MPLS networks using the concept of "entropy labels". It defines the concept, describes why entropy labels are useful, enumerates properties of entropy labels that allow maximal benefit, and shows how they can be signaled and used for various applications. This document updates RFCs 3031, 3107, 3209, and 5036. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6790"/>
          <seriesInfo name="DOI" value="10.17487/RFC6790"/>
        </reference>
        <reference anchor="RFC6437">
          <front>
            <title>IPv6 Flow Label Specification</title>
            <author fullname="S. Amante" initials="S." surname="Amante"/>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="S. Jiang" initials="S." surname="Jiang"/>
            <author fullname="J. Rajahalme" initials="J." surname="Rajahalme"/>
            <date month="November" year="2011"/>
            <abstract>
              <t>This document specifies the IPv6 Flow Label field and the minimum requirements for IPv6 nodes labeling flows, IPv6 nodes forwarding labeled packets, and flow state establishment methods. Even when mentioned as examples of possible uses of the flow labeling, more detailed requirements for specific use cases are out of the scope for this document.</t>
              <t>The usage of the Flow Label field enables efficient IPv6 flow classification based only on IPv6 main header fields in fixed positions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6437"/>
          <seriesInfo name="DOI" value="10.17487/RFC6437"/>
        </reference>
        <reference anchor="RFC9857">
          <front>
            <title>Advertisement of Segment Routing Policies Using BGP - Link State</title>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="J. Dong" initials="J." surname="Dong"/>
            <author fullname="H. Gredler" initials="H." surname="Gredler"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>This document describes a mechanism used to collect Segment Routing (SR) 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, reoptimization, service placement, network visualization, etc.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9857"/>
          <seriesInfo name="DOI" value="10.17487/RFC9857"/>
        </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="8" month="January" year="2026"/>
            <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) can be used to steer packets through a network
   employing the source routing paradigm.  Stateful PCEP extensions for
   SR allow a PCE to maintain state and to control and initiate SR
   Traffic Engineering (TE) paths.

   PCEP supports grouping of two unidirectional MPLS-TE Label Switched
   Paths (LSPs), signaled via RSVP-TE, using association.  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 are
   applicable to both stateless and stateful PCEs for PCE-initiated and
   PCC-initiated LSPs.


              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-sr-bidir-path-20"/>
        </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="RFC9862">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for Segment Routing (SR) Policy Candidate Paths</title>
            <author fullname="M. Koldychev" initials="M." surname="Koldychev"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="S. Sidor" initials="S." surname="Sidor"/>
            <author fullname="C. Barth" initials="C." surname="Barth"/>
            <author fullname="S. Peng" initials="S." surname="Peng"/>
            <author fullname="H. Bidgoli" initials="H." surname="Bidgoli"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>A Segment Routing (SR) Policy is an ordered list of instructions called "segments" that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated. An SR Policy is made of one or more Candidate Paths.</t>
              <t>This document specifies the Path Computation Element Communication Protocol (PCEP) extension to signal Candidate Paths of an SR Policy. Additionally, this document updates RFC 8231 to allow delegation and setup of an SR Label Switched Path (LSP) without using the path computation request and reply messages. This document is applicable to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over IPv6 (SRv6).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9862"/>
          <seriesInfo name="DOI" value="10.17487/RFC9862"/>
        </reference>
        <reference anchor="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="15" month="December" 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 can consist of
   one or a set of candidate paths, where each candidate path is
   represented by a segment list or a set of segment lists, which are
   essentially instructions that define a source-routed policy.

   This document specifies 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 modification and the option to request path
   with strict hops only, being also applicable for generic SR policy
   use cases where controlling path modification or deterministic and
   persistent path requirements are applicable.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-circuit-style-pcep-extensions-12"/>
        </reference>
        <reference anchor="I-D.ietf-pce-multipath">
          <front>
            <title>Path Computation Element Communication Protocol (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="Shuping Peng" initials="S." surname="Peng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Samuel Sidor" initials="S." surname="Sidor">
              <organization>Cisco Systems.</organization>
            </author>
            <date day="8" month="January" year="2026"/>
            <abstract>
              <t>   Certain traffic engineering path computation problems require
   solutions that consist of multiple traffic paths that together form a
   solution.  Returning a 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 Path Computation Element Communication Protocol
   (PCEP) mechanisms are designed 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.
   Additionally, this document updates RFC 8231 and RFC 8281 to allow
   encoding of multiple Segment Lists in PCEP.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pce-multipath-18"/>
        </reference>
        <reference anchor="RFC8281">
          <front>
            <title>Path Computation Element Communication Protocol (PCEP) Extensions for PCE-Initiated LSP Setup in a Stateful PCE Model</title>
            <author fullname="E. Crabbe" initials="E." surname="Crabbe"/>
            <author fullname="I. Minei" initials="I." surname="Minei"/>
            <author fullname="S. Sivabalan" initials="S." surname="Sivabalan"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <date month="December" year="2017"/>
            <abstract>
              <t>The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests.</t>
              <t>The extensions for stateful PCE provide active control of Multiprotocol Label Switching (MPLS) Traffic Engineering Label Switched Paths (TE LSPs) via PCEP, for a model where the PCC delegates control over one or more locally configured LSPs to the PCE. This document describes the creation and deletion of PCE-initiated LSPs under the stateful PCE model.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8281"/>
          <seriesInfo name="DOI" value="10.17487/RFC8281"/>
        </reference>
        <reference anchor="RFC4271">
          <front>
            <title>A Border Gateway Protocol 4 (BGP-4)</title>
            <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
            <author fullname="T. Li" initials="T." role="editor" surname="Li"/>
            <author fullname="S. Hares" initials="S." role="editor" surname="Hares"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>This document discusses the Border Gateway Protocol (BGP), which is an inter-Autonomous System routing protocol.</t>
              <t>The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASes) that reachability information traverses. This information is sufficient for constructing a graph of AS connectivity for this reachability from which routing loops may be pruned, and, at the AS level, some policy decisions may be enforced.</t>
              <t>BGP-4 provides a set of mechanisms for supporting Classless Inter-Domain Routing (CIDR). These mechanisms include support for advertising a set of destinations as an IP prefix, and eliminating the concept of network "class" within BGP. BGP-4 also introduces mechanisms that allow aggregation of routes, including aggregation of AS paths.</t>
              <t>This document obsoletes RFC 1771. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4271"/>
          <seriesInfo name="DOI" value="10.17487/RFC4271"/>
        </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-mpls">
          <front>
            <title>Performance Measurement Using Simple Two-Way Active Measurement Protocol (STAMP) for Segment Routing over the MPLS Data Plane</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="2" month="October" year="2025"/>
            <abstract>
              <t>   Segment Routing (SR) leverages the source routing paradigm.  SR is
   applicable to both Multiprotocol Label Switching (SR-MPLS) and IPv6
   (SRv6) data planes.  This document describes the procedures for
   Performance Measurement in SR-MPLS networks using the Simple Two-Way
   Active Measurement Protocol (STAMP), as 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 SR-MPLS
   paths (including SR-MPLS Policies, SR-MPLS IGP best paths, and SR-
   MPLS IGP Flexible Algorithm paths), as well as Layer-3 and Layer-2
   services over the SR-MPLS paths.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-stamp-srpm-mpls-00"/>
        </reference>
        <reference anchor="I-D.ietf-spring-stamp-srpm-srv6">
          <front>
            <title>Performance Measurement Using Simple Two-Way Active Measurement Protocol (STAMP) for Segment Routing over the IPv6 (SRv6) Data Plane</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="2" month="October" year="2025"/>
            <abstract>
              <t>   Segment Routing (SR) leverages the source routing paradigm.  SR is
   applicable to both Multiprotocol Label Switching (SR-MPLS) and IPv6
   (SRv6) data planes.  This document describes the procedures for
   Performance Measurement for SRv6 using the Simple Two-Way Active
   Measurement Protocol (STAMP), as 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 SRv6 paths
   (including SRv6 Policies, SRv6 IGP best paths, and SRv6 IGP Flexible
   Algorithm paths), as well as Layer-3 and Layer-2 services over the
   SRv6 paths.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-spring-stamp-srpm-srv6-00"/>
        </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="11" month="September" year="2025"/>
            <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-14"/>
        </reference>
        <reference anchor="RFC9716">
          <front>
            <title>Mechanisms for MPLS Ping and Traceroute Procedures in Inter-Domain Segment Routing Networks</title>
            <author fullname="S. Hegde" initials="S." surname="Hegde"/>
            <author fullname="K. Arora" initials="K." surname="Arora"/>
            <author fullname="M. Srivastava" initials="M." surname="Srivastava"/>
            <author fullname="S. Ninan" initials="S." surname="Ninan"/>
            <author fullname="N. Kumar" initials="N." surname="Kumar"/>
            <date month="February" year="2025"/>
            <abstract>
              <t>The Segment Routing (SR) architecture leverages source routing and can be directly applied to the use of an MPLS data plane. A Segment Routing over MPLS (SR-MPLS) network may consist of multiple IGP domains or multiple Autonomous Systems (ASes) under the control of the same organization. It is useful to have the Label Switched Path (LSP) ping and traceroute procedures when an SR end-to-end path traverses multiple ASes or IGP domains. This document outlines mechanisms to enable efficient LSP ping and traceroute procedures in inter-AS and inter-domain SR-MPLS networks. This is achieved through a straightforward extension to the Operations, Administration, and Maintenance (OAM) protocol, relying solely on data plane forwarding for handling echo replies on transit nodes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9716"/>
          <seriesInfo name="DOI" value="10.17487/RFC9716"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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://ieeexplore.ieee.org/document/9105034">
          <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="RFC9801">
          <front>
            <title>Private Line Emulation over Packet Switched Networks</title>
            <author fullname="S. Gringeri" initials="S." surname="Gringeri"/>
            <author fullname="J. Whittaker" initials="J." surname="Whittaker"/>
            <author fullname="N. Leymann" initials="N." surname="Leymann"/>
            <author fullname="C. Schmutzer" initials="C." role="editor" surname="Schmutzer"/>
            <author fullname="C. Brown" initials="C." surname="Brown"/>
            <date month="July" year="2025"/>
            <abstract>
              <t>This document expands the applicability of Virtual Private Wire Service (VPWS) bit-stream payloads beyond Time Division Multiplexing (TDM) signals and provides pseudowire transport with complete signal transparency over Packet Switched Networks (PSNs).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9801"/>
          <seriesInfo name="DOI" value="10.17487/RFC9801"/>
        </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="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="RFC9855">
          <front>
            <title>Topology Independent Fast Reroute Using Segment Routing</title>
            <author fullname="A. Bashandy" initials="A." surname="Bashandy"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="P. Francois" initials="P." surname="Francois"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <date month="October" year="2025"/>
            <abstract>
              <t>This document presents Topology Independent Loop-Free Alternate (TI-LFA) Fast Reroute (FRR), which is aimed at providing protection of node and Adjacency segments within the Segment Routing (SR) framework. This FRR behavior builds on proven IP FRR concepts being LFAs, Remote LFAs (RLFAs), and Directed Loop-Free Alternates (DLFAs). 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 (PLR), reducing the operational need to control the tie-breaks among various FRR options.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9855"/>
          <seriesInfo name="DOI" value="10.17487/RFC9855"/>
        </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.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="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="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>
        <reference anchor="RFC7880">
          <front>
            <title>Seamless Bidirectional Forwarding Detection (S-BFD)</title>
            <author fullname="C. Pignataro" initials="C." surname="Pignataro"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <author fullname="N. Akiya" initials="N." surname="Akiya"/>
            <author fullname="M. Bhatia" initials="M." surname="Bhatia"/>
            <author fullname="S. Pallagatti" initials="S." surname="Pallagatti"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document defines Seamless Bidirectional Forwarding Detection (S-BFD), a simplified mechanism for using BFD with a large proportion of negotiation aspects eliminated, thus providing benefits such as quick provisioning, as well as improved control and flexibility for network nodes initiating path monitoring.</t>
              <t>This document updates RFC 5880.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7880"/>
          <seriesInfo name="DOI" value="10.17487/RFC7880"/>
        </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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
xSpMMZ8ha0EUdf4/AwQXqj7OAAA=

-->

</rfc>
