rfc9884xml2.original.xml   rfc9884.xml 
<?xml version="1.0" encoding="iso-8859-1" ?> <?xml version='1.0' encoding='UTF-8'?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes" ?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>
<rfc category="std" ipr="trust200902" docName="draft-ietf-mpls-spring-lsp-ping-p
ath-sid-13" consensus="true" submissionType="IETF">
<front>
<title abbrev="LSP Ping for SR PSID"> Label Switched Path Ping for Segme
nt Routing Path Segment Identifier with MPLS Data Plane </title>
<author fullname="Xiao Min" initials="X" surname="Min">
<organization>ZTE Corp.</organization>
<address>
<postal>
<street/>
<!-- Reorder these if your country does things differently -->
<city>Nanjing</city> <!DOCTYPE rfc [
<!ENTITY nbsp "&#160;">
<!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;">
]>
<region/> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" ipr="trust200902" docName="draft-ietf-mpls-spring-lsp-ping-path-sid-13" number="9884" updates="" obsoletes="" consensus="true" submissionType="IETF" tocInclude="true" symRefs="t rue" sortRefs="true" version="3" xml:lang="en">
<code/> <!--[rfced] Please note that we have updated the title as follows (to
include articles).
<country>China</country> Original Document Title:
</postal> Label Switched Path Ping for Segment Routing Path Segment Identifier
with MPLS Data Plane
<phone>+86 18061680168</phone> Current:
A Label Switched Path Ping for the Segment Routing Path Segment Identifier
with an MPLS Data Plane
<email>xiao.min2@zte.com.cn</email> -->
<!-- uri and facsimile elements may also be added --> <front>
<title abbrev="LSP Ping for SR PSID">A Label Switched Path Ping for the Segm
ent Routing Path Segment Identifier with an MPLS Data Plane</title>
<seriesInfo name="RFC" value="9884"/>
<author fullname="Xiao Min" initials="X" surname="Min">
<organization>ZTE Corp.</organization>
<address>
<postal>
<city>Nanjing</city>
<country>China</country>
</postal>
<phone>+86 18061680168</phone>
<email>xiao.min2@zte.com.cn</email>
</address> </address>
</author> </author>
<author fullname="Shaofu Peng" initials="S" surname="Peng">
<author fullname="Shaofu Peng" initials="S" surname="Peng">
<organization>ZTE Corp.</organization> <organization>ZTE Corp.</organization>
<address> <address>
<postal> <postal>
<street/> <city>Nanjing</city>
<country>China</country>
<!-- Reorder these if your country does things differently --> </postal>
<email>peng.shaofu@zte.com.cn</email>
<city>Nanjing</city>
<region/>
<code/>
<country>China</country>
</postal>
<phone/>
<email>peng.shaofu@zte.com.cn</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Liyan Gong" initials="L" surname="Gong">
<author fullname="Liyan Gong" initials="L" surname="Gong">
<organization>China Mobile</organization> <organization>China Mobile</organization>
<address> <address>
<postal> <postal>
<street/> <city>Beijing</city>
<country>China</country>
<!-- Reorder these if your country does things differently --> </postal>
<email>gongliyan@chinamobile.com</email>
<city>Beijing</city>
<region/>
<code/>
<country>China</country>
</postal>
<phone/>
<email>gongliyan@chinamobile.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Rakesh Gandhi" initials="R" surname="Gandhi">
<author fullname="Rakesh Gandhi" initials="R" surname="Gandhi">
<organization>Cisco Systems, Inc.</organization> <organization>Cisco Systems, Inc.</organization>
<address> <address>
<postal> <postal>
<street/> <country>Canada</country>
</postal>
<!-- Reorder these if your country does things differently --> <email>rgandhi@cisco.com</email>
<city></city>
<region/>
<code/>
<country>Canada</country>
</postal>
<phone/>
<email>rgandhi@cisco.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<author fullname="Carlos Pignataro" initials="C" surname="Pignataro">
<author fullname="Carlos Pignataro" initials="C" surname="Pignataro">
<organization>Blue Fern Consulting</organization> <organization>Blue Fern Consulting</organization>
<address> <address>
<postal> <postal>
<street/> <country>United States of America</country>
</postal>
<!-- Reorder these if your country does things differently --> <email>carlos@bluefern.consulting</email>
<email>cpignata@gmail.com</email>
<city></city>
<region/>
<code/>
<country>United States of America</country>
</postal>
<phone/>
<email>carlos@bluefern.consulting</email>
<email>cpignata@gmail.com</email>
<!-- uri and facsimile elements may also be added -->
</address> </address>
</author> </author>
<date year="2025" month="October"/>
<area>RTG</area>
<workgroup>mpls</workgroup>
<date year="2025"/> <!-- [rfced] Please insert any keywords (beyond those that appear in
the title) for use on https://www.rfc-editor.org/search. -->
<area>Routing</area>
<workgroup>MPLS Working Group</workgroup>
<keyword>Request for Comments</keyword> <keyword>example</keyword>
<keyword>RFC</keyword>
<keyword>Internet Draft</keyword>
<keyword>I-D</keyword>
<abstract> <abstract>
<t> Segment Routing (SR) leverages source routing to steer packets through an ordered list of instructions, called segments. SR can <t> Segment Routing (SR) leverages source routing to steer packets through an ordered list of instructions called "segments". SR can
be instantiated over the MPLS data plane. Path Segment Identifiers (PSIDs) are used to identify and correlate bidirectional or be instantiated over the MPLS data plane. Path Segment Identifiers (PSIDs) are used to identify and correlate bidirectional or
end-to-end paths in Segment Routing networks. This document defines procedures (i.e. six new Target forwarding Equivalence Class end-to-end paths in Segment Routing networks. This document defines procedures (i.e., six new Target Forwarding Equivalence Class
(FEC) Stack sub-TLVs) for the use of LSP Ping to support connectivity verifica tion and fault isolation for SR paths that include (FEC) Stack sub-TLVs) for the use of LSP Ping to support connectivity verifica tion and fault isolation for SR paths that include
Path Segment Identifiers. The mechanisms described enable the validation and t racing of SR paths with Path SIDs in MPLS networks, Path Segment Identifiers. The mechanisms described enable the validation and t racing of SR paths with Path SIDs in MPLS networks,
complementing existing SR-MPLS OAM capabilities. </t> complementing existing SR-MPLS Operations, Administration, and Maintenance (OA M) capabilities. </t>
</abstract> </abstract>
</front>
<middle>
<section>
<name>Introduction</name>
<t> A Path Segment is a local segment <xref target="RFC9545"/> that unique
ly identifies an SR path on the egress node. A Path Segment
Identifier (PSID) is a single label that is assigned from the Segment Routing
Local Block (SRLB) <xref target="RFC8402"/> of the egress
node of an SR path. </t>
<t> As specified in <xref target="RFC9545"/>, PSID is a single label inser
ted by the ingress node of the SR path and then processed
by the egress node of the SR path. The PSID is placed within the MPLS label st
ack as a label immediately following the last label of
the SR path. The egress node pops the PSID. </t>
</front> <!--[rfced] Please review the use of the two citations in the sentence
below. RFC 8029 is "Detecting Multiprotocol Label Switched
<middle> (MPLS) Data-Plane Failures" while RFC 8287 is "Label Switched
Path (LSP) Ping/Traceroute for Segment Routing (SR) IGP-Prefix
and IGP-Adjacency Segment Identifiers (SIDs) with MPLS Data
Planes".
<section title="Introduction"> Original:
Procedure for LSP Ping [RFC8029] as defined in Section 7.4 of
[RFC8287] is also applicable to PSID, and this document appends
existing step 4a with a new step 4b specific to PSID.
-->
<t> A Path Segment is a local segment <xref target="RFC9545"/> that uniquely i <!--[rfced] *ADs - Please confirm that no "Updates" relationship to
dentifies an SR path on the egress node. A Path Segment RFC 8287 should be indicated in the header/Abstract/metadata of the
Identifier (PSID) is a single label that is assigned from the Segment Routing document with the following text (and all of Section 4.1) in
Local Block (SRLB) <xref target="RFC8402"/> of the egress mind:
node of an SR path. </t>
<t> As specified in <xref target="RFC9545"/>, PSID is a single label inserted Original:
by the ingress node of the SR path, and then processed Procedure for LSP Ping [RFC8029] as defined in Section 7.4 of
by the egress node of the SR path. The PSID is placed within the MPLS label st [RFC8287] is also applicable to PSID, and this document appends
ack as a label immediately following the last label of existing step 4a with a new step 4b specific to PSID.
the SR path. The egress node pops the PSID. </t> -->
<t> Procedure for LSP Ping <xref target="RFC8029"/> as defined in Section 7.4 <t>The procedure for LSP Ping <xref target="RFC8029"/> as defined in <xref
of <xref target="RFC8287"/> is also applicable to PSID, target="RFC8287" section="7.4"/> is also applicable to PSID; this document appe
and this document appends existing step 4a with a new step 4b specific to PSID nds the existing step 4a with a new step 4b specific to PSID. Concretely, LSP Pi
. Concretely, LSP Ping can be used to check the correct ng can be used to check the correct
operation of a PSID and verify the PSID against the control plane. Checking co rrect operation means that an initiator can use LSP Ping operation of a PSID and verify the PSID against the control plane. Checking co rrect operation means that an initiator can use LSP Ping
to check whether a PSID reached the intended node and got processed by that no de correctly. Moreover, verifying a PSID against the control to check whether a PSID reached the intended node and got processed by that no de correctly. Moreover, verifying a PSID against the control
plane means that the initiator can use LSP Ping to verify the SR Path context (segment-list, candidate path, or SR policy) associated plane means that the initiator can use LSP Ping to verify the SR Path context (segment-list, candidate path, or SR policy) associated
with the PSID as signaled or provisioned at the egress node. To that end, this document specifies six new Target Forwarding Equivalence with the PSID as signaled or provisioned at the egress node. To that end, this document specifies six new Target Forwarding Equivalence
Class (FEC) Stack sub-TLVs for such PSID checks. </t> Class (FEC) Stack sub-TLVs for such PSID checks. </t>
<t> LSP Traceroute <xref target="RFC8287"/> is left out of this document b
ecause transit nodes are not involved in PSID processing. </t>
</section>
<section>
<name>Conventions</name>
<section>
<name>Requirements Language</name>
<t>
The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU
IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>
RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
be interpreted as
described in BCP&nbsp;14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.
</t>
</section>
<section anchor="sect-2.2">
<name>Terminology</name>
<t> This document uses the terminology defined in <xref target="RFC3031"
/>, <xref target="RFC8402"/>, <xref target="RFC8029"/>, and
<xref target="RFC9545"/>; readers are expected to be familiar with the te
rms in those documents. </t>
<t> LSP Traceroute <xref target="RFC8287"/> is left out of this document becau <t>This document introduces the following additional term:</t>
se transit nodes are not involved in PSID processing. </t> <dl spacing="normal" newline="true">
<dt>Segment-List-ID</dt>
</section> <dd>The Segment-List-ID field is a 4-octet identifier that uniquely
identifies a segment list within the context of the candidate path
<section title="Conventions"> of an SR Policy. Although not defined in <xref target="RFC9256"/>,
the Segment-List-ID is the same identifier as the one that can be
<section title="Requirements Language"> signaled through control plane protocols including Border Gateway Prot
<t> The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", ocol (BGP) (<xref section="2.1" target="I-D.ietf-idr-sr-policy-seglist-id"/>, Pa
"SHOULD", "SHOULD NOT", "RECOMMENDED", th Computation Element Communication Protocol (PCEP) (<xref section="5.2" target
"NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be int ="I-D.ietf-pce-multipath"/>), and Border Gateway Protocol - Link State (BGP-LS)
erpreted as described in BCP 14 (<xref section="5.7.4" target="RFC9857"/>).</dd>
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, th </dl>
ey appear in all capitals, as shown here.</t> </section>
</section> </section>
<section>
<section title="Terminology"> <name>Path Segment ID Sub-TLVs</name>
<t> This document uses the terminology defined in <xref target="RFC3031"/>, <t> Analogous to what's defined in <xref target="RFC8287" section="5"/> an
<xref target="RFC8402"/>, <xref target="RFC8029"/>, and d <xref target="RFC9703" section="4"/>, six new sub-TLVs
<xref target="RFC9545"/>, readers are expected to be familiar with those are defined for the Target FEC Stack TLV (Type 1), the Reverse-Path Target FEC
terms. </t> Stack TLV (Type 16), and the Reply Path TLV (Type 21).
Note that the structures of the six new sub-TLVs follow the TLV's structure de
<t>Segment-List-ID fined in <xref target="RFC8029" section="3"/>. </t>
<list> <table>
<t> The Segment-List-ID field is a 4-octet identifier that u <name>Sub-TLVs for PSID Checks</name>
niquely identifies a segment list within the context of the <thead>
candidate path of an SR Policy. Although <tr>
not defined in <xref target="RFC9256"/>, the Segment-List-ID is the same identif <th align="left">Sub-Type</th>
ier <th align="left">Sub-TLV Name</th>
as the one that can be signalled through </tr>
control plane procotols including BGP (Section 2.1 of <xref target="I-D.ietf-idr </thead>
-sr-policy-seglist-id"/>, <tbody>
PCEP (Section 5.2 of <xref target="I-D.ie <tr>
tf-pce-multipath"/>), and BGP-LS (Section 5.7.4 of <xref target="I-D.ietf-idr-bg <td align="left">49</td>
p-ls-sr-policy"/>). <td align="left">SR Policy Associated PSID - IPv4</td>
</t> </tr>
</list> <tr>
</t> <td align="left">50</td>
<td align="left">SR Candidate Path Associated PSID - IPv4</td>
</section> </tr>
<tr>
</section> <td align="left">51</td>
<td align="left">SR Segment List Associated PSID - IPv4</td>
</tr>
<tr>
<td align="left">52</td>
<td align="left">SR Policy Associated PSID - IPv6</td>
</tr>
<tr>
<td align="left">53</td>
<td align="left">SR Candidate Path Associated PSID - IPv6</td>
</tr>
<tr>
<td align="left">54</td>
<td align="left">SR Segment List Associated PSID - IPv6</td>
</tr>
</tbody>
</table>
<section title="Path Segment ID Sub-TLVs"> <!--[rfced] Please review our following update and let us know any
objections.
<t> Analogous to what's defined in Section 5 of <xref target="RFC8287"/> and S Original:
ection 4 of <xref target="RFC9703"/>, six new sub-TLVs As specified in Section 2 of [RFC9545], a PSID is used to identify a
are defined for the Target FEC Stack TLV (Type 1), the Reverse-Path Target FEC segment list, some or all segment lists in a Candidate path or an SR
Stack TLV (Type 16), and the Reply Path TLV (Type 21). policy, so six different Target FEC Stack sub-TLVs need to be defined
Note that the structures of the six new sub-TLVs follow the TLV's structure de for PSID.
fined in Section 3 of <xref target="RFC8029"/>. </t>
<texttable title="Sub-TLVs for PSID Checks"> Current:
<ttcol align='left'>Sub-Type</ttcol> As specified in Section 2 of [RFC9545], a PSID is used to identify a
<ttcol align='left'>Sub-TLV Name</ttcol> segment list and/or some or all segment lists in a Candidate path or an SR
<c>TBD1</c><c>SR Policy Associated PSID - IPv4</c> policy, so six different Target FEC Stack sub-TLVs need to be defined
<c>TBD2</c><c>SR Candidate Path Associated PSID - IPv4</c> for PSID.
<c>TBD3</c><c>SR Segment List Associated PSID - IPv4</c> -->
<c>TBD4</c><c>SR Policy Associated PSID - IPv6</c>
<c>TBD5</c><c>SR Candidate Path Associated PSID - IPv6</c>
<c>TBD6</c><c>SR Segment List Associated PSID - IPv6</c>
</texttable>
<t> As specified in Section 2 of <xref target="RFC9545"/>, a PSID is used to i dentify a segment list, some or all segment lists in a <t> As specified in <xref target="RFC9545" section="2"/>, a PSID is used t o identify a segment list and/or some or all segment lists in a
Candidate path or an SR policy, so six different Target FEC Stack sub-TLVs nee d to be defined for PSID. The ordered list of selection Candidate path or an SR policy, so six different Target FEC Stack sub-TLVs nee d to be defined for PSID. The ordered list of selection
rules for the six Target FEC Stack sub-TLVs are defined as follows: rules for the six Target FEC Stack sub-TLVs are defined as follows:
<list style="symbols"> </t>
<t> When a PSID is used to identify all segment lists in an SR Policy, <ul spacing="normal">
the Target FEC Stack sub-TLV of the type "SR Policy Associated <li>
PSID" (for IPv4 or IPv6) MUST be used for PSID checks. </t> <t> When a PSID is used to identify all segment lists in an SR Policy,
<t> When a PSID is used to identify all segment lists in an SR Candidat the Target FEC Stack sub-TLV of the type "SR Policy Associated
e Path, the Target FEC Stack sub-TLV of the type "SR Candidate PSID" (for IPv4 or IPv6) <bcp14>MUST</bcp14> be used for PSID checks. <
Path Associated PSID" (for IPv4 or IPv6) MUST be used for PSID checks. /t>
</t> </li>
<t> When a PSID is used to identify a Segment List, the Target FEC Stac <li>
k sub-TLV of the type "SR Segment List Associated PSID" (for IPv4 <t> When a PSID is used to identify all segment lists in an SR Candida
or IPv6) MUST be used for PSID checks. </t> te Path, the Target FEC Stack sub-TLV of the type "SR Candidate
<t> When a PSID is used to identify some segment lists in a Candidate p Path Associated PSID" (for IPv4 or IPv6) <bcp14>MUST</bcp14> be used fo
ath or an SR policy, the Target FEC Stack sub-TLV of the type r PSID checks. </t>
"SR Segment List Associated PSID" (for IPv4 or IPv6) MUST be used for P </li>
SID checks. In this case, multiple LSP Ping messages MUST be sent, <li>
and one Target FEC Stack sub-TLV of the type "SR Segment List Associate <t> When a PSID is used to identify a Segment List, the Target FEC Sta
d PSID" (for IPv4 or IPv6) MUST be carried in each LSP Ping message. </t> ck sub-TLV of the type "SR Segment List Associated PSID" (for IPv4
</list> or IPv6) <bcp14>MUST</bcp14> be used for PSID checks. </t>
</t> </li>
<li>
<t> These six new Target FEC Stack sub-TLVs are not expected to be present in <t> When a PSID is used to identify some segment lists in a Candidate
the same message. If more than one of these sub-TLVs are path or an SR policy, the Target FEC Stack sub-TLV of the type
present in a message, only the first sub-TLV will be processed per the validat "SR Segment List Associated PSID" (for IPv4 or IPv6) <bcp14>MUST</bcp14
ion rules in Section 4.</t> > be used for PSID checks. In this case, multiple LSP Ping messages <bcp14>MUST<
/bcp14> be sent,
<section title="SR Policy Associated PSID - IPv4 Sub-TLV"> and one Target FEC Stack sub-TLV of the type "SR Segment List Associate
d PSID" (for IPv4 or IPv6) <bcp14>MUST</bcp14> be carried in each LSP Ping messa
<t> The SR Policy Associated PSID - IPv4 sub-TLV is defined as follows: </t> ge. </t>
</li>
<figure anchor="Figure_1" title="SR Policy Associated PSID - IPv4 sub-TLV Form </ul>
at"> <t> These six new Target FEC Stack sub-TLVs are not expected to be present
<artwork align="left"> <![CDATA[ in the same message. If more than one of these sub-TLVs are
present in a message, only the first sub-TLV will be processed, per the valida
tion rules in <xref target="sect-4"/>.</t>
<section anchor="sect-3.1">
<name>SR Policy Associated PSID - IPv4 Sub-TLV</name>
<t> The SR Policy Associated PSID - IPv4 sub-TLV is defined as follows:
</t>
<figure anchor="Figure_1">
<name>SR Policy Associated PSID - IPv4 Sub-TLV Format</name>
<artwork align="left"><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD1 | Length | | Type = 49 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Headend (4 octets) | | Headend (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Endpoint (4 octets) | | Endpoint (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure>
<t>Type (length: 2 octets)
<list>
<t> The Type field identifies the sub-TLV as an SR Policy
Associated PSID - IPv4 Sub-TLV. The value is set to (TBD1) and is to be assigned
by IANA.
</t>
</list>
</t>
<t>Length (length: 2 octets)
<list>
<t> The Length field indicates the length of the sub-TLV i
n octets, excluding the first 4 octets (Type and Length fields). The value MUST
be set to 12. </t>
</list>
</t>
<t>Headend (length: 4 octets)
<list>
<t> The Headend field encodes the headend IPv4 address of
the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/>.
</t>
</list>
</t>
<t>Color (length: 4 octets)
<list>
<t> The Color field identifies the color (i.e., policy ide
ntifier) of the SR Policy and is encoded as defined in Section 2.1 of <xref targ
et="RFC9256"/>. </t>
</list>
</t>
<t>Endpoint (length: 4 octets)
<list>
<t> The Endpoint field encodes the endpoint IPv4 address o
f the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/
>. </t>
</list>
</t>
</section>
<section title="SR Candidate Path Associated PSID - IPv4 Sub-TLV">
<t> The SR Candidate Path Associated PSID - IPv4 sub-TLV is defined as follows
: </t>
<figure anchor="Figure_2" title="SR Candidate Path Associated PSID - IPv4 sub- <dl spacing="normal" newline="true">
TLV Format"> <dt>Type (length: 2 octets)</dt>
<artwork align="left"> <![CDATA[ <dd> The Type field identifies the sub-TLV as an SR Policy Associated PSID - I
Pv4 sub-TLV. The value is set to 49.</dd>
<dt>Length (length: 2 octets)</dt>
<dd> The Length field indicates the length of the sub-TLV in octets, excluding
the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
et to 12. </dd>
<dt>Headend (length: 4 octets)</dt>
<dd> The Headend field encodes the headend IPv4 address of the SR Policy. This
field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<dt>Color (length: 4 octets)</dt>
<dd> The Color field identifies the color (i.e., policy identifier) of the SR
Policy and is encoded as defined in <xref target="RFC9256" section="2.1"/>. </dd
>
<dt>Endpoint (length: 4 octets)</dt>
<dd> The Endpoint field encodes the endpoint IPv4 address of the SR Policy. Th
is field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
</dl>
</section>
<section anchor="sect-3.2">
<name>SR Candidate Path Associated PSID - IPv4 Sub-TLV</name>
<t> The SR Candidate Path Associated PSID - IPv4 sub-TLV is defined as f
ollows: </t>
<figure anchor="Figure_2">
<name>SR Candidate Path Associated PSID - IPv4 Sub-TLV Format</name>
<artwork align="left"><![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD2 | Length | | Type = 50 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Headend (4 octets) | | Headend (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Endpoint (4 octets) | | Endpoint (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Protocol-Origin| Reserved | |Protocol-Origin| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| | | |
| Originator (20 octets) | | Originator (20 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Discriminator (4 octets) | | Discriminator (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure> <dl spacing="normal" newline="true">
<dt>Type (length: 2 octets)</dt>
<t>Type (length: 2 octets) <dd> The Type field identifies the sub-TLV as an SR Candidate Path Associated
<list> PSID - IPv4 sub-TLV. The value is set to 50.</dd>
<t> The Type field identifies the sub-TLV as an SR Candida <dt>Length (length: 2 octets)</dt>
te Path Associated PSID - IPv4 sub-TLV. The value is set to (TBD2) and is to be <dd> The Length field indicates the length of the sub-TLV in octets, excluding
assigned by IANA. the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
</t> et to 40. </dd>
</list> <dt>Headend (length: 4 octets)</dt>
</t> <dd> The Headend field encodes the headend IPv4 address of the SR Candidate Pa
th. This field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<t>Length (length: 2 octets) <dt>Color (length: 4 octets)</dt>
<list> <dd> The Color field identifies the policy color and is defined in <xref targe
<t> The Length field indicates the length of the sub-TLV i t="RFC9256" section="2.1"/>. </dd>
n octets, excluding the first 4 octets (Type and Length fields). The value MUST <dt>Endpoint (length: 4 octets)</dt>
be set to 40. </t> <dd> The Endpoint field encodes the endpoint IPv4 address of the SR Candidate
</list> Path. This field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
</t> <dt>Protocol-Origin (length: 1 octet)</dt>
<dd> The Protocol-Origin field indicates the protocol that originated the SR
<t>Headend (length: 4 octets) Candidate Path. It is defined in <xref target="RFC9256" section="2.3"/> and
<list> takes values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an
<t> The Headend field encodes the headend IPv4 address of unsupported value is used, validation at the responder <bcp14>MUST</bcp14>
the SR Candidate Path. This field is defined in Section 2.1 of <xref target="RFC fail.</dd>
9256"/>. </t> <dt>Reserved (length: 3 octets)</dt>
</list> <dd> The Reserved field is reserved for future use. It <bcp14>MUST</bcp14> be
</t> set to zero when sent and <bcp14>MUST</bcp14> be ignored upon receipt. </dd>
<dt>Originator (length: 20 octets)</dt>
<t>Color (length: 4 octets) <dd> The Originator field identifies the originator of the SR Candidate Path a
<list> nd is encoded as defined in <xref target="RFC9256" section="2.4"/>. </dd>
<t> The Color field identifies the policy color and is def <dt>Discriminator (length: 4 octets)</dt>
ined in Section 2.1 of <xref target="RFC9256"/>. </t> <dd> The Discriminator field uniquely identifies the SR Candidate Path within
</list> the context of the Headend, Color, and Endpoint fields.
</t> This field is defined in <xref target=
"RFC9256" section="2.5"/>. </dd>
<t>Endpoint (length: 4 octets) </dl>
<list> </section>
<t> The Endpoint field encodes the endpoint IPv4 address <section anchor="sect-3.3">
of the SR Candidate Path. This field is defined in Section 2.1 of <xref target=" <name>SR Segment List Associated PSID - IPv4 Sub-TLV</name>
RFC9256"/>. </t> <t> The SR Segment List Associated PSID - IPv4 sub-TLV is used to identi
</list> fy a specific segment list within the context of a candidate path of an SR Polic
</t> y.
The format of this sub-TLV is shown in <xref target="Figure_3"/>. </t>
<t>Protocol-Origin (length: 1 octet) <figure anchor="Figure_3">
<list> <name>SR Segment List Associated PSID - IPv4 Sub-TLV Format</name>
<t> The Protocol-Origin field indicates the protocol that <artwork align="left"><![CDATA[
originated the SR Candidate Path. It is defined in Section 2.3
of <xref target="RFC9256"/> and takes
values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an unsupporte
d
value is used, validation at the respo
nder MUST fail.
</t>
</list>
</t>
<t>Reserved (length: 3 octets)
<list>
<t> The Reserved field is reserved for future use. It MUS
T be set to zero when sent and MUST be ignored upon receipt. </t>
</list>
</t>
<t>Originator (length: 20 octets)
<list>
<t> The Originator field identifies the originator of the
SR Candidate Path and is encoded as defined in Section 2.4 of <xref target="RFC
9256"/>. </t>
</list>
</t>
<t>Discriminator (length: 4 octets)
<list>
<t> The Discriminator field uniquely identifies the SR Ca
ndidate Path within the context of the Headend, Color, and Endpoint.
This field is defined in Section 2.5 o
f <xref target="RFC9256"/>. </t>
</list>
</t>
</section>
<section title="SR Segment List Associated PSID - IPv4 Sub-TLV">
<t> The SR Segment List Associated PSID - IPv4 sub-TLV is used to identify a s
pecific segment list within the context of a candidate path of an SR Policy.
The format of this sub-TLV is shown in Figure 3. </t>
<figure anchor="Figure_3" title="SR Segment List Associated PSID - IPv4 sub-TL
V Format">
<artwork align="left"> <![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD3 | Length | | Type = 51 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Headend (4 octets) | | Headend (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Endpoint (4 octets) | | Endpoint (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Protocol-Origin| Reserved | |Protocol-Origin| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| | | |
| Originator (20 octets) | | Originator (20 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Discriminator (4 octets) | | Discriminator (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Segment-List-ID (4 octets) | | Segment-List-ID (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure> <dl spacing="normal" newline="true">
<dt>Type (length: 2 octets)</dt>
<t>Type (length: 2 octets) <dd> The Type field identifies the sub-TLV as an SR Segment List Associated PS
<list> ID - IPv4 sub-TLV. The value is set to 51.</dd>
<t> The Type field identifies the sub-TLV as an SR Segment <dt>Length (length: 2 octets)</dt>
List Associated PSID - IPv4 sub-TLV. The value is set to (TBD3) and is to be as <dd> The Length field indicates the length of the sub-TLV in octets, excluding
signed by IANA. the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
</t> et to 44. </dd>
</list> <dt>Headend (length: 4 octets)</dt>
</t> <dd> The Headend field encodes the headend IPv4 address of the SR Policy. This
field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<t>Length (length: 2 octets) <dt>Color (length: 4 octets)</dt>
<list> <dd> The Color field identifies the color of the SR Policy and is encoded as s
<t> The Length field indicates the length of the sub-TLV i pecified in <xref target="RFC9256" section="2.1"/>. </dd>
n octets, excluding the first 4 octets (Type and Length fields). The value MUST <dt>Endpoint (length: 4 octets)</dt>
be set to 44. </t> <dd> The Endpoint field specifies the endpoint IPv4 address of the SR Policy,
</list> as defined in <xref target="RFC9256" section="2.1"/>. </dd>
</t> <dt>Protocol-Origin (length: 1 octet)</dt>
<dd> The Protocol-Origin field indicates the protocol that originated the SR
<t>Headend (length: 4 octets) Candidate Path. It is defined in <xref target="RFC9256" section="2.3"/> and
<list> takes values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an
<t> The Headend field encodes the headend IPv4 address of unsupported value is used, validation at the responder <bcp14>MUST</bcp14>
the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/>. fail.</dd>
</t> <dt>Reserved (length: 3 octets)</dt>
</list> <dd> The Reserved field is reserved for future use. It <bcp14>MUST</bcp14> be
</t> set to zero when transmitted and <bcp14>MUST</bcp14> be ignored upon receipt. </
dd>
<t>Color (length: 4 octets) <dt>Originator (length: 20 octets)</dt>
<list> <dd> The Originator field identifies the originator of the SR Candidate Path a
<t> The Color field identifies the color of the SR Policy nd is defined in <xref target="RFC9256" section="2.4"/>. </dd>
and is encoded as specified in Section 2.1 of <xref target="RFC9256"/>. </t> <dt>Discriminator (length: 4 octets)</dt>
</list> <dd> The Discriminator field uniquely identifies the SR Candidate Path
</t> within the context of the Headend, Color, and Endpoint fields. This field is
defined in <xref target="RFC9256" section="2.5"/>. </dd>
<t>Endpoint (length: 4 octets) <dt>Segment-List-ID (length: 4 octets)</dt>
<list> <dd> The Segment-List-ID field is a 4-octet identifier that uniquely
<t> The Endpoint field specifies the endpoint IPv4 addres identifies a segment list within the context of the candidate path of an SR
s of the SR Policy, as defined in Section 2.1 of <xref target="RFC9256"/>. </t> Policy. This field is defined in <xref target="sect-2.2"/>.</dd>
</list> </dl>
</t> </section>
<section anchor="sect-3.4">
<t>Protocol-Origin (length: 1 octet) <name>SR Policy Associated PSID - IPv6 Sub-TLV</name>
<list> <t> The SR Policy Associated PSID - IPv6 sub-TLV is defined as follows:
<t> The Protocol-Origin field indicates the protocol that </t>
originated the SR Candidate Path. It is defined in Section 2.3 <figure anchor="Figure_4">
of <xref target="RFC9256"/> and takes <name>SR Policy Associated PSID - IPv6 Sub-TLV Format</name>
values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an unsupporte <artwork align="left"><![CDATA[
d
value is used, validation at the respo
nder MUST fail.
</t>
</list>
</t>
<t>Reserved (length: 3 octets)
<list>
<t> The Reserved field is reserved for future use. It MUS
T be set to zero when transmitted and MUST be ignored upon receipt. </t>
</list>
</t>
<t>Originator (length: 20 octets)
<list>
<t> The Originator field identifies the originator of the
SR Candidate Path and is defined in Section 2.4 of <xref target="RFC9256"/>. </
t>
</list>
</t>
<t>Discriminator (length: 4 octets)
<list>
<t> The Discriminator field uniquely identifies the SR Ca
ndidate Path within the context of the Headend, Color, and Endpoint.
This field is defined in Section 2.5 o
f <xref target="RFC9256"/>. </t>
</list>
</t>
<t>Segment-List-ID (length: 4 octets)
<list>
<t> The Segment-List-ID field is a 4-octet identifier that
uniquely identifies a segment list within the context of the candidate path of
an SR Policy.
This field is defined in terminology of
Section 2.2.
</t>
</list>
</t>
</section>
<section title="SR Policy Associated PSID - IPv6 Sub-TLV">
<t> The SR Policy Associated PSID - IPv6 sub-TLV is defined as follows: </t>
<figure anchor="Figure_4" title="SR Policy Associated PSID - IPv6 sub-TLV Form
at">
<artwork align="left"> <![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD4 | Length | | Type = 52 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Headend (16 octets) | | Headend (16 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Endpoint (16 octets) | | Endpoint (16 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure> <dl spacing="normal" newline="true">
<dt>Type (length: 2 octets)</dt>
<t>Type (length: 2 octets) <dd> The Type field identifies the sub-TLV as an SR Policy Associated PSID - I
<list> Pv6 Sub-TLV. The value is set to 52.</dd>
<t> The Type field identifies the sub-TLV as an SR Policy <dt>Length (length: 2 octets)</dt>
Associated PSID - IPv6 Sub-TLV. The value is set to (TBD4) and is to be assigned <dd> The Length field indicates the length of the sub-TLV in octets, excluding
by IANA. the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
</t> et to 36. </dd>
</list> <dt>Headend (length: 16 octets)</dt>
</t> <dd> The Headend field encodes the headend IPv6 address of the SR Policy. This
field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<t>Length (length: 2 octets) <dt>Color (length: 4 octets)</dt>
<list> <dd> The Color field identifies the color (i.e., policy identifier) of the SR
<t> The Length field indicates the length of the sub-TLV i Policy and is encoded as defined in <xref target="RFC9256" section="2.1"/>. </dd
n octets, excluding the first 4 octets (Type and Length fields). The value MUST >
be set to 36. </t> <dt>Endpoint (length: 16 octets)</dt>
</list> <dd> The Endpoint field encodes the endpoint IPv6 address of the SR Policy. Th
</t> is field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
</dl>
<t>Headend (length: 16 octets) </section>
<list> <section anchor="sect-3.5">
<t> The Headend field encodes the headend IPv6 address of <name>SR Candidate Path Associated PSID - IPv6 Sub-TLV</name>
the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/>. <t> The SR Candidate Path Associated PSID - IPv6 sub-TLV is defined as f
</t> ollows: </t>
</list> <figure anchor="Figure_5">
</t> <name>SR Candidate Path Associated PSID - IPv6 Sub-TLV Format</name>
<artwork align="left"><![CDATA[
<t>Color (length: 4 octets)
<list>
<t> The Color field identifies the color (i.e., policy ide
ntifier) of the SR Policy and is encoded as defined in Section 2.1 of <xref targ
et="RFC9256"/>. </t>
</list>
</t>
<t>Endpoint (length: 16 octets)
<list>
<t> The Endpoint field encodes the endpoint IPv6 address o
f the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/
>. </t>
</list>
</t>
</section>
<section title="SR Candidate Path Associated PSID - IPv6 Sub-TLV">
<t> The SR Candidate Path Associated PSID - IPv6 sub-TLV is defined as follows
: </t>
<figure anchor="Figure_5" title="SR Candidate Path Associated PSID - IPv6 sub-
TLV Format">
<artwork align="left"> <![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD5 | Length | | Type = 53 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Headend (16 octets) | | Headend (16 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Endpoint (16 octets) | | Endpoint (16 octets) |
skipping to change at line 583 skipping to change at line 465
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Protocol-Origin| Reserved | |Protocol-Origin| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| | | |
| Originator (20 octets) | | Originator (20 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Discriminator (4 octets) | | Discriminator (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure> <dl spacing="normal" newline="true">
<dt>Type (length: 2 octets)</dt>
<t>Type (length: 2 octets) <dd> The Type field identifies the sub-TLV as an SR Candidate Path Associated
<list> PSID - IPv6 sub-TLV. The value is set to 53.</dd>
<t> The Type field identifies the sub-TLV as an SR Candida <dt>Length (length: 2 octets)</dt>
te Path Associated PSID - IPv6 sub-TLV. The value is set to (TBD5) and is to be <dd> The Length field indicates the length of the sub-TLV in octets, excluding
assigned by IANA. the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
</t> et to 64. </dd>
</list> <dt>Headend (length: 16 octets)</dt>
</t> <dd> The Headend field encodes the headend IPv6 address of the SR Candidate Pa
th. This field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<t>Length (length: 2 octets) <dt>Color (length: 4 octets)</dt>
<list> <dd> The Color field identifies the policy color and is defined in <xref targe
<t> The Length field indicates the length of the sub-TLV i t="RFC9256" section="2.1"/>. </dd>
n octets, excluding the first 4 octets (Type and Length fields). The value MUST <dt>Endpoint (length: 16 octets)</dt>
be set to 64. </t> <dd> The Endpoint field encodes the endpoint IPv6 address of the SR Candidate
</list> Path. This field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
</t> <dt>Protocol-Origin (length: 1 octet)</dt>
<dd> The Protocol-Origin field indicates the protocol that originated the SR
<t>Headend (length: 16 octets) Candidate Path. It is defined in <xref target="RFC9256" section="2.3"/> and
<list> takes values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an
<t> The Headend field encodes the headend IPv6 address of unsupported value is used, validation at the responder <bcp14>MUST</bcp14>
the SR Candidate Path. This field is defined in Section 2.1 of <xref target="RFC fail.</dd>
9256"/>. </t> <dt>Reserved (length: 3 octets)</dt>
</list> <dd> The Reserved field is reserved for future use. It <bcp14>MUST</bcp14> be
</t> set to zero when sent and <bcp14>MUST</bcp14> be ignored upon receipt. </dd>
<dt>Originator (length: 20 octets)</dt>
<t>Color (length: 4 octets) <dd> The Originator field identifies the originator of the SR Candidate Path a
<list> nd is encoded as defined in <xref target="RFC9256" section="2.4"/>. </dd>
<t> The Color field identifies the policy color and is def <dt>Discriminator (length: 4 octets)</dt>
ined in Section 2.1 of <xref target="RFC9256"/>. </t> <dd> The Discriminator field uniquely identifies the SR Candidate Path
</list> within the context of the Headend, Color, and Endpoint fields. This field is
</t> defined in <xref target="RFC9256" section="2.5"/>. </dd>
</dl>
<t>Endpoint (length: 16 octets) </section>
<list> <section anchor="sect-3.6">
<t> The Endpoint field encodes the endpoint IPv6 address <name>SR Segment List Associated PSID - IPv6 Sub-TLV</name>
of the SR Candidate Path. This field is defined in Section 2.1 of <xref target=" <t> The SR Segment List Associated PSID - IPv6 sub-TLV is used to identi
RFC9256"/>. </t> fy a specific segment list within the context of a candidate path of an SR Polic
</list> y.
</t> The format of this sub-TLV is shown in <xref target="Figure_6"/>. </t>
<figure anchor="Figure_6">
<t>Protocol-Origin (length: 1 octet) <name>SR Segment List Associated PSID - IPv6 Sub-TLV Format</name>
<list> <artwork align="left"><![CDATA[
<t> The Protocol-Origin field indicates the protocol that
originated the SR Candidate Path. It is defined in Section 2.3
of <xref target="RFC9256"/> and takes
values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an unsupporte
d
value is used, validation at the respo
nder MUST fail.
</t>
</list>
</t>
<t>Reserved (length: 3 octets)
<list>
<t> The Reserved field is reserved for future use. It MUS
T be set to zero when sent and MUST be ignored upon receipt. </t>
</list>
</t>
<t>Originator (length: 20 octets)
<list>
<t> The Originator field identifies the originator of the
SR Candidate Path and is encoded as defined in Section 2.4 of <xref target="RFC
9256"/>. </t>
</list>
</t>
<t>Discriminator (length: 4 octets)
<list>
<t> The Discriminator field uniquely identifies the SR Ca
ndidate Path within the context of the Headend, Color, and Endpoint.
This field is defined in Section 2.5 o
f <xref target="RFC9256"/>. </t>
</list>
</t>
</section>
<section title="SR Segment List Associated PSID - IPv6 Sub-TLV">
<t> The SR Segment List Associated PSID - IPv6 sub-TLV is used to identify a s
pecific segment list within the context of a candidate path of an SR Policy.
The format of this sub-TLV is shown in Figure 6. </t>
<figure anchor="Figure_6" title="SR Segment List Associated PSID - IPv6 sub-TL
V Format">
<artwork align="left"> <![CDATA[
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = TBD6 | Length | | Type = 54 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Headend (16 octets) | | Headend (16 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color (4 octets) | | Color (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Endpoint (16 octets) | | Endpoint (16 octets) |
skipping to change at line 683 skipping to change at line 529
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| | | |
| Originator (20 octets) | | Originator (20 octets) |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Discriminator (4 octets) | | Discriminator (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Segment-List-ID (4 octets) | | Segment-List-ID (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
]]> </artwork> </figure>
</figure> <dl spacing="normal" newline="true">
<dt>Type (length: 2 octets)</dt>
<dd> The Type field identifies the sub-TLV as an SR Segment List Associated PS
ID - IPv6 sub-TLV. The value is set to 54.</dd>
<dt>Length (length: 2 octets)</dt>
<dd> The Length field indicates the length of the sub-TLV in octets, excluding
the first 4 octets (Type and Length fields). The value <bcp14>MUST</bcp14> be s
et to 68. </dd>
<dt>Headend (length: 16 octets)</dt>
<dd> The Headend field encodes the headend IPv6 address of the SR Policy. This
field is defined in <xref target="RFC9256" section="2.1"/>. </dd>
<dt>Color (length: 4 octets)</dt>
<dd> The Color field identifies the color of the SR Policy and is encoded as s
pecified in <xref target="RFC9256" section="2.1"/>. </dd>
<dt>Endpoint (length: 16 octets)</dt>
<dd> The Endpoint field specifies the endpoint IPv6 address of the SR Policy,
as defined in <xref target="RFC9256" section="2.1"/>. </dd>
<dt>Protocol-Origin (length: 1 octet)</dt>
<dd> The Protocol-Origin field indicates the protocol that originated the SR
Candidate Path. It is defined in <xref target="RFC9256" section="2.3"/> and
takes values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an
unsupported value is used, validation at the responder <bcp14>MUST</bcp14>
fail.</dd>
<dt>Reserved (length: 3 octets)</dt>
<dd> The Reserved field is reserved for future use. It <bcp14>MUST</bcp14> be
set to zero when transmitted and <bcp14>MUST</bcp14> be ignored upon receipt. </
dd>
<dt>Originator (length: 20 octets)</dt>
<dd> The Originator field identifies the originator of the SR Candidate Path a
nd is defined in <xref target="RFC9256" section="2.4"/>. </dd>
<dt>Discriminator (length: 4 octets)</dt>
<dd> The Discriminator field uniquely identifies the SR Candidate Path
within the context of the Headend, Color, and Endpoint fields. This field is
defined in <xref target="RFC9256" section="2.5"/>. </dd>
<dt>Segment-List-ID (length: 4 octets)</dt>
<dd> The Segment-List-ID field is a 4-octet identifier that uniquely
identifies a segment list within the context of the candidate path of an SR
Policy. This field is defined in <xref target="sect-2.2"/>.</dd>
</dl>
</section>
</section>
<section anchor="sect-4">
<name>PSID FEC Validation</name>
<t>Type (length: 2 octets) <t> The MPLS LSP Ping procedures may be initiated by the headend of the Se
<list> gment Routing path or a
<t> The Type field identifies the sub-TLV as an SR Segment centralized topology-aware data plane monitoring system as described in <xref
List Associated PSID - IPv6 sub-TLV. The value is set to (TBD6) and is to be as target="RFC8403"/>. For the
signed by IANA. PSID, the responder nodes that receive an echo request and sends an echo reply
</t> <bcp14>MUST</bcp14> be the endpoint of the
</list> SR path. </t>
</t>
<t>Length (length: 2 octets) <!--[rfced] Please review the following uses of "PSID FEC Stack
<list> sub-TLV" and "malformed FEC Stack sub-TLV". Other uses of "FEC
<t> The Length field indicates the length of the sub-TLV i Stack sub-TLV" begin with "Target".
n octets, excluding the first 4 octets (Type and Length fields). The value MUST
be set to 68. </t>
</list>
</t>
<t>Headend (length: 16 octets) Original:
<list> ...validity checks on the content of the PSID FEC Stack sub-TLV.
<t> The Headend field encodes the headend IPv6 address of
the SR Policy. This field is defined in Section 2.1 of <xref target="RFC9256"/>.
</t>
</list>
</t>
<t>Color (length: 4 octets) and
<list>
<t> The Color field identifies the color of the SR Policy
and is encoded as specified in Section 2.1 of <xref target="RFC9256"/>. </t>
</list>
</t>
<t>Endpoint (length: 16 octets) If a malformed FEC Stack sub-TLV is received...
<list>
<t> The Endpoint field specifies the endpoint IPv6 addres
s of the SR Policy, as defined in Section 2.1 of <xref target="RFC9256"/>. </t>
</list>
</t>
<t>Protocol-Origin (length: 1 octet) Perhaps:
<list> ...validity checks on the content of the PSID Target FEC Stack sub-TLV.
<t> The Protocol-Origin field indicates the protocol that
originated the SR Candidate Path. It is defined in Section 2.3
of <xref target="RFC9256"/> and takes
values from the IANA registry <xref target="PROTOCOL-ORIGIN"/>. If an unsupporte
d
value is used, validation at the respo
nder MUST fail.
</t>
</list>
</t>
<t>Reserved (length: 3 octets) and
<list>
<t> The Reserved field is reserved for future use. It MUS
T be set to zero when transmitted and MUST be ignored upon receipt. </t>
</list>
</t>
<t>Originator (length: 20 octets) If a malformed Target FEC Stack sub-TLV is received...
<list>
<t> The Originator field identifies the originator of the
SR Candidate Path and is defined in Section 2.4 of <xref target="RFC9256"/>. </
t>
</list>
</t>
<t>Discriminator (length: 4 octets) -->
<list>
<t> The Discriminator field uniquely identifies the SR Ca
ndidate Path within the context of the Headend, Color, and Endpoint.
This field is defined in Section 2.5 o
f <xref target="RFC9256"/>. </t>
</list>
</t>
<t>Segment-List-ID (length: 4 octets) <t> When an endpoint receives the LSP echo request packet with the top FEC
<list> being the PSID, it <bcp14>MUST</bcp14> perform
<t> The Segment-List-ID field is a 4-octet identifier that validity checks on the content of the PSID FEC Stack sub-TLV.</t>
uniquely identifies a segment list within the context of the candidate path of <t> If a malformed FEC Stack sub-TLV is received, then a return code of 1,
an SR Policy. "Malformed echo request received" as defined
This field is defined in terminology of in <xref target="RFC8029"/> <bcp14>MUST</bcp14> be sent. The section below is
Section 2.2. appended to step 4a of <xref target="RFC8287" section="7.4"/>. </t>
</t> <section>
</list> <name>PSID FEC Validation Rules</name>
</t>
</section> <!--[rfced] Please confirm that the following are the general concepts
and not field names (note that these are examples, more instances
occur):
</section> Original:
* Validate that the signaled or provisioned headend, color,
and endpoint, for the PSID, matches with the corresponding
fields in the received SR Policy Associated PSID - IPv4 sub-
TLV.
<section title="PSID FEC Validation"> Perhaps:
* Validate that the signaled or provisioned Headend, Color,
and Endpoint fields for the PSID match with the corresponding
fields in the received SR Policy Associated PSID - IPv4 sub-TLV.
<t> The MPLS LSP Ping procedures may be initiated by the headend of the Segmen Original:
t Routing path or a * Validate that the signaled or provisioned headend, color,
centralized topology-aware data plane monitoring system as described in <xref endpoint, originator, and discriminator, for the PSID,
target="RFC8403"/>. For the matches with the corresponding fields in the received SR
PSID, the responder nodes that receive echo request and send echo reply MUST b Candidate Path Associated PSID - IPv4 sub-TLV.
e the endpoint of the
SR path. </t>
<t> When an endpoint receives the LSP echo request packet with top FEC being t Perhaps:
he PSID, it MUST perform * Validate that the signaled or provisioned Headend, Color,
validity checks on the content of the PSID FEC Stack sub-TLV.</t> Endpoint, Originator, and Discriminator fields for the PSID
match with the corresponding fields in the received SR
Candidate Path Associated PSID - IPv4 sub-TLV.
<t> If a malformed FEC Stack sub-TLV is received, then a return code of 1, "Ma -->
lformed echo request received" as defined
in <xref target="RFC8029"/> MUST be sent. The section below is appended to ste
p 4a of Section 7.4 of <xref target="RFC8287"/>. </t>
<section title="PSID FEC Validation Rules"> <sourcecode type="pseudocode"><![CDATA[
4b. Segment Routing PSID Validation:
<t>4b. Segment Routing PSID Validation: </t> If the Label-stack-depth is 1 and the Target FEC Stack sub-TLV at
FEC-stack-depth is 49 (SR Policy Associated PSID - IPv4 sub-TLV), {
<t>If the Label-stack-depth is 1 and the Target FEC Stack sub-TLV Set the Best-return-code to 10 "Mapping for this FEC is not the
at FEC-stack-depth is TBD1 (SR Policy Associated PSID - IPv4 su given label at stack-depth <RSC>" if any below conditions fail
b-TLV), { (the notation <RSC> refers to the Return Subcode):
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail (the notation &lt;RSC&gt; refers to the Return Subco
de):
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Policy
{
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, and endpo - Validate that the PSID is signaled or provisioned for the SR
int, for the PSID, matches with the Policy {
corresponding fields in the received SR Policy Associated PSID
- IPv4 sub-TLV. </t>
</list> * Validate that the signaled or provisioned headend, color,
} </t> and endpoint for the PSID match with the corresponding
fields in the received SR Policy Associated PSID - IPv4
sub-TLV.
</list> }
} </t>
<t>If all the above validations have passed, set the return code to 3 }
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt;
". </t>
<t>Set FEC-Status to 1 and return. </t> If all the above validations have passed, set the return code to 3
"Replying router is an egress for the FEC at stack-depth <RSC>".
</list> Set the FEC-Status to 1 and return.
} </t>
<t>Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TL }
V
at FEC-stack-depth is TBD2 (SR Candidate Path Associated PSID -
IPv4 sub-TLV), {
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail:
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Candid
ate Path {
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, endpoint, Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TLV
originator, and discriminator, at FEC-stack-depth is 50 (SR Candidate Path Associated PSID - IPv4
for the PSID, matches with the corresponding fields in the rece sub-TLV), {
ived SR Candidate Path Associated PSID - IPv4 sub-TLV. </t>
</list> Set the Best-return-code to 10 "Mapping for this FEC is not the
} </t> given label at stack-depth <RSC>" if any below conditions fail:
</list> - Validate that the PSID is signaled or provisioned for the SR
} </t> Candidate Path {
<t>If all the above validations have passed, set the return code to 3 * Validate that the signaled or provisioned headend, color,
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt; endpoint, originator, and discriminator for the PSID
". </t> match with the corresponding fields in the received SR
Candidate Path Associated PSID - IPv4 sub-TLV.
<t>Set FEC-Status to 1 and return. </t> }
</list> }
} </t>
<t>Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TL If all the above validations have passed, set the return code to 3
V "Replying router is an egress for the FEC at stack-depth <RSC>".
at FEC-stack-depth is TBD3 (SR Segment List Associated PSID - IPv4 sub-
TLV), {
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail:
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Segmen
t List {
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, endpoint, Set the FEC-Status to 1 and return.
originator, discriminator, and segment-list-id,
for the PSID, matches with the corresponding fields in the rece
ived SR Segment List Associated PSID - IPv4 sub-TLV. </t>
</list> }
} </t>
</list> Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TLV
} </t> at FEC-stack-depth is 51 (SR Segment List Associated PSID - IPv4
sub-TLV), {
<t>If all the above validations have passed, set the return code to 3 Set the Best-return-code to 10 "Mapping for this FEC is not the
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt; given label at stack-depth <RSC>" if any below conditions fail:
". </t>
<t>Set FEC-Status to 1 and return. </t> - Validate that the PSID is signaled or provisioned for the SR
Segment List {
</list> * Validate that the signaled or provisioned headend, color,
} </t> endpoint, originator, discriminator, and segment-list-id,
for the PSID match with the corresponding fields in the
received SR Segment List Associated PSID - IPv4 sub-TLV.
<t>Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TL }
V
at FEC-stack-depth is TBD4 (SR Policy Associated PSID - IPv6 su
b-TLV), {
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail (the notation &lt;RSC&gt; refers to the Return Subco
de):
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Policy
{
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, and endpo }
int, for the PSID, matches with the
corresponding fields in the received SR Policy Associated PSID
- IPv6 sub-TLV. </t>
</list> If all the above validations have passed, set the return code to 3,
} </t> "Replying router is an egress for the FEC at stack-depth <RSC>".
</list> Set the FEC-Status to 1 and return.
} </t>
<t>If all the above validations have passed, set the return code to 3 }
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt;
". </t>
<t>Set FEC-Status to 1 and return. </t> Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TLV
at FEC-stack-depth is 52 (SR Policy Associated PSID - IPv6
sub-TLV), {
</list> Set the Best-return-code to 10 "Mapping for this FEC is not the
} </t> given label at stack-depth <RSC>" if any below conditions fail
(the notation <RSC> refers to the Return Subcode):
<t>Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TL - Validate that the PSID is signaled or provisioned for the SR
V Policy {
at FEC-stack-depth is TBD5 (SR Candidate Path Associated PSID -
IPv6 sub-TLV), {
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail:
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Candid
ate Path {
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, endpoint, * Validate that the signaled or provisioned headend, color,
originator, and discriminator, and endpoint for the PSID match with the corresponding
for the PSID, matches with the corresponding fields in the rece fields in the received SR Policy Associated PSID - IPv6 sub-
ived SR Candidate Path Associated PSID - IPv6 sub-TLV. </t> TLV.
</list> }
} </t>
</list> }
} </t>
<t>If all the above validations have passed, set the return code to 3 If all the above validations have passed, set the return code to 3
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt; "Replying router is an egress for the FEC at stack-depth <RSC>".
". </t>
<t>Set FEC-Status to 1 and return. </t> Set the FEC-Status to 1 and return.
</list> }
} </t>
<t>Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TL Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TLV
V at FEC-stack-depth is 53 (SR Candidate Path Associated PSID - IPv6
at FEC-stack-depth is TBD6 (SR Segment List Associated PSID - IPv6 sub- sub-TLV), {
TLV), {
<list>
<t>Set the Best-return-code to 10, "Mapping for this FEC is not
the given label at stack-depth &lt;RSC&gt;" if any below
conditions fail:
<list style="symbols">
<t>Validate that the PSID is signaled or provisioned for the SR Segmen
t List {
<list style="symbols">
<t>Validate that the signaled or provisioned headend, color, endpoint, Set the Best-return-code to 10 "Mapping for this FEC is not the
originator, discriminator, and segment-list-id, given label at stack-depth <RSC>" if any below conditions fail:
for the PSID, matches with the corresponding fields in the rece
ived SR Segment List Associated PSID - IPv6 sub-TLV. </t>
</list> - Validate that the PSID is signaled or provisioned for the SR
} </t> Candidate Path {
</list> * Validate that the signaled or provisioned headend, color,
} </t> endpoint, originator, and discriminator for the PSID
match with the corresponding fields in the received SR
Candidate Path Associated PSID - IPv6 sub-TLV.
<t>If all the above validations have passed, set the return code to 3 }
"Replying router is an egress for the FEC at stack-depth &lt;RSC&gt;
". </t>
<t>Set FEC-Status to 1 and return. </t> }
</list> If all the above validations have passed, set the return code to 3
} </t> "Replying router is an egress for the FEC at stack-depth <RSC>".
<t> When an SR Policy Associated PSID - IPv4 sub-TLV, or an SR Candidate Pat Set the FEC-Status to 1 and return.
h Associated PSID - IPv4 sub-TLV, or an SR Segment List
Associated PSID - IPv4 sub-TLV, or an SR Policy Associated PSID - IPv6 su
b-TLV, or an SR Candidate Path Associated PSID - IPv6 sub-TLV,
or an SR Segment List Associated PSID - IPv6 sub-TLV is carried in Revers
e-Path Target FEC Stack TLV (Type 16) or Reply Path TLV (Type 21),
it MUST be sent by an endpoint in an echo reply. The headend MUST perform
validity checks as described above without setting the return
code. If any of the validations fail, then the headend MUST drop the echo
reply and SHOULD log and/or report an error.</t>
</section> }
</section>
<section title="Security Considerations"> Else, if the Label-stack-depth is 1 and the Target FEC Stack sub-TLV
at FEC-stack-depth is 54 (SR Segment List Associated PSID - IPv6
sub-TLV), {
<t> This document defines additional MPLS LSP Ping sub-TLVs and follows the me Set the Best-return-code to 10 "Mapping for this FEC is not the
chanisms defined in <xref target="RFC8029"/>. given label at stack-depth <RSC>" if any below conditions fail:
All the security considerations defined in Section 5 of <xref target="RFC8029"
/> apply to this document. The MPLS LSP Ping
sub-TLVs defined in this document do not impose any additional security challe
nges to be considered.</t>
</section> - Validate that the PSID is signaled or provisioned for the SR
Segment List {
<section title="IANA Considerations"> * Validate that the signaled or provisioned headend, color,
endpoint, originator, discriminator, and segment-list-id
for the PSID match with the corresponding fields in the
received SR Segment List Associated PSID - IPv6 sub-TLV.
<t> IANA is requested to assign six new Target FEC Stack sub-TLVs from the "Su }
b-TLVs for TLV Types 1, 16, and 21" registry
}
If all the above validations have passed, set the return code to 3
"Replying router is an egress for the FEC at stack-depth <RSC>".
Set the FEC-Status to 1 and return.
}]]></sourcecode>
<t> When any of the following is carried in a Reverse-Path Target FEC St
ack TLV (Type 16) or Reply Path TLV (Type 21), it
<bcp14>MUST</bcp14> be sent by an endpoint in an echo reply.</t>
<ul>
<li>SR Policy Associated PSID - IPv4 sub-TLV,</li>
<li>SR Candidate Path Associated PSID - IPv4 sub-TLV,</li>
<li>SR Segment List Associated PSID - IPv4 sub-TLV,</li>
<li>SR Policy Associated PSID - IPv6 sub-TLV,</li>
<li>SR Candidate Path Associated PSID - IPv6 sub-TLV, or</li>
<li>SR Segment List Associated PSID - IPv6 sub-TLV</li></ul>
<t>The headend <bcp14>MUST</bcp14> perform validity checks as described
above without setting the return
code. If any of the validations fail, then the headend <bcp14>MUST</bcp14
> drop the echo reply and <bcp14>SHOULD</bcp14> log and/or report an error.</t>
</section>
</section>
<section>
<name>Security Considerations</name>
<t> This document defines additional MPLS LSP Ping sub-TLVs and follows th
e mechanisms defined in <xref target="RFC8029"/>.
All the security considerations defined in <xref target="RFC8029" section="5"/
> apply to this document. The MPLS LSP Ping
sub-TLVs defined in this document do not impose any additional security challe
nges to be considered.</t>
</section>
<section>
<name>IANA Considerations</name>
<t> IANA has assigned six Target FEC Stack sub-TLVs from the "Sub-TLVs for
TLV Types 1, 16, and 21" registry
<xref target="MPLS-LSP-PING"/> within the "TLVs" registry of the "Multiprotoco l Label Switching (MPLS) Label Switched Paths (LSPs) <xref target="MPLS-LSP-PING"/> within the "TLVs" registry of the "Multiprotoco l Label Switching (MPLS) Label Switched Paths (LSPs)
Ping Parameters" registry group. The Standards Action range that requires an e rror message to be returned if the sub-TLV is not Ping Parameters" registry group. The Standards Action <xref target="RFC8126"/> range that requires an error message to be returned if the sub-TLV is not
recognized (range 0-16383) should be used.</t> recognized (range 0-16383) should be used.</t>
<table>
<name>Sub-TLVs for TLV Types 1, 16, and 21 Registry</name>
<thead>
<tr>
<th align="left">Sub-Type</th>
<th align="left">Sub-TLV Name</th>
<th align="left">Reference</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">49</td>
<td align="left">SR Policy Associated PSID - IPv4</td>
<td align="left"><xref target="sect-3.1"/> of RFC 9884</td>
</tr>
<tr>
<td align="left">50</td>
<td align="left">SR Candidate Path Associated PSID - IPv4</td>
<td align="left"><xref target="sect-3.2"/> of RFC 9884</td>
</tr>
<tr>
<td align="left">51</td>
<td align="left">SR Segment List Associated PSID - IPv4</td>
<td align="left"><xref target="sect-3.3"/> of RFC 9884</td>
</tr>
<tr>
<td align="left">52</td>
<td align="left">SR Policy Associated PSID - IPv6</td>
<td align="left"><xref target="sect-3.4"/> of RFC 9884</td>
</tr>
<tr>
<td align="left">53</td>
<td align="left">SR Candidate Path Associated PSID - IPv6</td>
<td align="left"><xref target="sect-3.5"/> of RFC 9884</td>
</tr>
<tr>
<td align="left">54</td>
<td align="left">SR Segment List Associated PSID - IPv6</td>
<td align="left"><xref target="sect-3.6"/> of RFC 9884</td>
</tr>
</tbody>
</table>
</section>
</middle>
<back>
<texttable title="Sub-TLVs for TLV Types 1, 16, and 21 Registry"> <displayreference target="I-D.ietf-idr-sr-policy-seglist-id" to="SR-SEGLIST-
<ttcol align='left'>Sub-Type</ttcol> ID"/>
<ttcol align='left'>Sub-TLV Name</ttcol> <displayreference target="I-D.ietf-pce-multipath" to="PCE-MULTIPATH"/>
<ttcol align='left'>Reference</ttcol> <references>
<c>TBD1</c><c>SR Policy Associated PSID - IPv4</c><c>Section 3.1 of THIS_DOCU <name>References</name>
MENT</c> <references>
<c>TBD2</c><c>SR Candidate Path Associated PSID - IPv4</c><c>Section 3.2 of T <name>Normative References</name>
HIS_DOCUMENT</c> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
<c>TBD3</c><c>SR Segment List Associated PSID - IPv4</c><c>Section 3.3 of THI 545.xml"/>
S_DOCUMENT</c> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
<c>TBD4</c><c>SR Policy Associated PSID - IPv6</c><c>Section 3.4 of THIS_DOCU 287.xml"/>
MENT</c> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
<c>TBD5</c><c>SR Candidate Path Associated PSID - IPv6</c><c>Section 3.5 of T 119.xml"/>
HIS_DOCUMENT</c> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
<c>TBD6</c><c>SR Segment List Associated PSID - IPv6</c><c>Section 3.6 of THI 174.xml"/>
S_DOCUMENT</c> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
</texttable> 029.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
256.xml"/>
<reference anchor="PROTOCOL-ORIGIN" target="https://www.iana.org/assignm
ents/segment-routing">
<front>
<title>SR Policy Protocol Origin</title>
<author>
<organization>IANA</organization>
</author>
</front>
</reference>
<reference anchor="MPLS-LSP-PING" target="http://www.iana.org/assignment
s/mpls-lsp-ping-parameters">
<front>
<title>Multiprotocol Label Switching (MPLS) Label Switched Paths (LS
Ps) Ping Parameters</title>
<author>
<organization>IANA</organization>
</author>
</front>
</reference>
</references>
<references>
<name>Informative References</name>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3
031.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.
8126.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
402.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
403.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
703.xml"/>
</section> <!-- [I-D.ietf-idr-sr-policy-seglist-id]
draft-ietf-idr-sr-policy-seglist-id-04
IESG State: I-D Exists as of 10/20/25
-->
<xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-idr
-sr-policy-seglist-id.xml"/>
<section title="Acknowledgements"> <!-- [I-D.ietf-pce-multipath]
<t> The authors would like to acknowledge Loa Andersson, Detao Zhao, Ben Niven draft-ietf-pce-multipath-13
-Jenkins, Greg Mirsky, Ketan Talaulikar, James IESG State: I-D Exists as of 10/20/25
Guichard, Jon Geater, Gorry Fairhurst, Bing Liu, Mohamed Boucadair, Eric Vynck -->
e, Gunter Van de Velde, Mahesh Jethanandani, <xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-pce
and Andy Smith for their thorough review and very helpful comments. </t> -multipath.xml"/>
<t> The authors would like to acknowledge Yao Liu and Quan Xiong for the very
helpful face to face discussion.</t>
</section>
</middle> <!-- [I-D.ietf-idr-bgp-ls-sr-policy]
draft-ietf-idr-bgp-ls-sr-policy-17
In RFC Ed Queue (AUTH48) as RFC 9857 as of 10/20/25
-->
<back> <!--[rfced] Please note that we have updated the reference to
<references title="Normative References"> draft-ietf-idr-bgp-ls-sr-policy-17 to point to the RFC-to-be: as
<?rfc include="reference.RFC.9545"?> this I-D is currently in AUTH48 (with nearly all approvals
<?rfc include="reference.RFC.8287"?> complete), we assume it will move to publication prior to the
<?rfc include="reference.RFC.2119"?> publication of this document.
<?rfc include="reference.RFC.8174"?>
<?rfc include="reference.RFC.8029"?>
<?rfc include="reference.RFC.9256"?>
<reference anchor="PROTOCOL-ORIGIN"
target="https://www.iana.org/assignments/segment-routing/segmen
t-routing.xhtml#sr-policy-protocol-origin">
<front>
<title>SR Policy Protocol Origin</title>
<author></author>
</front>
</reference>
<reference anchor="MPLS-LSP-PING"
target="http://www.iana.org/assignments/mpls-lsp-ping-parameter
s">
<front>
<title>Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSP
s) Ping Parameters</title>
<author></author>
</front>
</reference>
</references>
<references title="Informative References"> Please let us know how you would like to proceed if RFC-to-be 9857 is
<?rfc include="reference.RFC.3031"?> not published before this document (i.e., return to the I-D form of
<?rfc include="reference.RFC.8402"?> the reference or wait for the publication of 9857). -->
<?rfc include="reference.RFC.8403"?>
<?rfc include="reference.RFC.9703"?> <reference anchor="RFC9857" target="https://www.rfc-editor.org/info/rfc9857">
<?rfc include="reference.I-D.ietf-idr-sr-policy-seglist-id"?>
<?rfc include="reference.I-D.ietf-pce-multipath"?> <front>
<?rfc include="reference.I-D.ietf-idr-bgp-ls-sr-policy"?> <title>Advertisement of Segment Routing Policies Using BGP Link State</tit
le>
<author initials="S." surname="Previdi" fullname="Stefano Previdi">
<organization>Individual</organization>
</author>
<author initials="K." surname="Talaulikar" fullname="Ketan Talaulikar" rol
e="editor">
<organization>Cisco Systems</organization>
</author>
<author initials="J." surname="Dong" fullname="Jie Dong">
<organization>Huawei Technologies</organization>
</author>
<author initials="H." surname="Gredler" fullname="Hannes Gredler">
<organization>RtBrick Inc.</organization>
</author>
<author initials="J." surname="Tantsura" fullname="Jeff Tantsura">
<organization>Nvidia</organization>
</author>
<date month="October" year="2025" />
</front>
<seriesInfo name="RFC" value="9857"/>
<seriesInfo name="DOI" value="10.17487/RFC9857"/>
</reference>
</references>
</references> </references>
</back> <section numbered="false">
<name>Acknowledgements</name>
<t> The authors would like to acknowledge <contact fullname="Loa
Andersson"/>, <contact fullname="Detao Zhao"/>, <contact fullname="Ben
Niven-Jenkins"/>, <contact fullname="Greg Mirsky"/>, <contact
fullname="Ketan Talaulikar"/>, <contact fullname="James Guichard"/>,
<contact fullname="Jon Geater"/>, <contact fullname="Gorry Fairhurst"/>,
<contact fullname="Bing Liu"/>, <contact fullname="Mohamed Boucadair"/>,
<contact fullname="Éric Vyncke"/>, <contact fullname="Gunter Van de
Velde"/>, <contact fullname="Mahesh Jethanandani"/>, and <contact
fullname="Andy Smith"/> for their thorough review and very helpful
comments. </t>
<t> The authors would like to acknowledge <contact fullname="Yao Liu"/>
and <contact fullname="Quan Xiong"/> for the very helpful face to face
discussion.</t>
</section>
<!--[rfced] We had the following questions/comments related to
abbreviation use throughout the document:
a) Please note that abbreviations have been expanded upon first use. Please rev
iew and confirm all expansions inserted appear as desired.
b) Please note that we will update to use the following abbreviations, instead o
f their expanded forms, after the first use in accordance with https://www.rfc-e
ditor.org/styleguide/part2/#exp_abbrev:
SR
PSID
-->
<!--[rfced] We had the following questions related to terminology used throughou
t the document:
a) We see mixed use of the following forms. Please let us know if/how these sho
uld be made consistent.
SR path vs. SR Path
segment-list vs. Segment List vs. segment list
candidate path vs. Candidate Path vs. Candidate path
b) Is Return Subcode <RSC> the same as "return code"? Please review
and advise if these should be made uniform.
-->
<!-- [rfced] Please review the "Inclusive Language" portion of the
online Style Guide
<https://www.rfc-editor.org/styleguide/part2/#inclusive_language>
and let us know if any changes are needed. Updates of this
nature typically result in more precise language, which is
helpful for readers.
Note that our script did not flag any words in particular, but this
should still be reviewed as a best practice.
-->
</back>
</rfc> </rfc>
 End of changes. 124 change blocks. 
981 lines changed or deleted 892 lines changed or added

This html diff was produced by rfcdiff 1.48.