rfc9862v1.txt   rfc9862.txt 
skipping to change at line 23 skipping to change at line 23
September 2025 September 2025
Path Computation Element Communication Protocol (PCEP) Extensions for Path Computation Element Communication Protocol (PCEP) Extensions for
Segment Routing (SR) Policy Candidate Paths Segment Routing (SR) Policy Candidate Paths
Abstract Abstract
A Segment Routing (SR) Policy is an ordered list of instructions A Segment Routing (SR) Policy is an ordered list of instructions
called "segments" that represent a source-routed policy. Packet called "segments" that represent a source-routed policy. Packet
flows are steered into an SR Policy on a node where it is 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. instantiated. An SR Policy is made of one or more Candidate Paths.
This document specifies the Path Computation Element Communication This document specifies the Path Computation Element Communication
Protocol (PCEP) extension to signal candidate paths of an SR Policy. Protocol (PCEP) extension to signal Candidate Paths of an SR Policy.
Additionally, this document updates RFC 8231 to allow delegation and Additionally, this document updates RFC 8231 to allow delegation and
setup of an SR Label Switched Path (LSP) without using the path setup of an SR Label Switched Path (LSP) without using the path
computation request and reply messages. This document is applicable computation request and reply messages. This document is applicable
to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over to both Segment Routing over MPLS (SR-MPLS) and Segment Routing over
IPv6 (SRv6). IPv6 (SRv6).
Status of This Memo Status of This Memo
This is an Internet Standards Track document. This is an Internet Standards Track document.
skipping to change at line 82 skipping to change at line 82
4.4. Association Parameters 4.4. Association Parameters
4.5. Association Information 4.5. Association Information
4.5.1. SRPOLICY-POL-NAME TLV 4.5.1. SRPOLICY-POL-NAME TLV
4.5.2. SRPOLICY-CPATH-ID TLV 4.5.2. SRPOLICY-CPATH-ID TLV
4.5.3. SRPOLICY-CPATH-NAME TLV 4.5.3. SRPOLICY-CPATH-NAME TLV
4.5.4. SRPOLICY-CPATH-PREFERENCE TLV 4.5.4. SRPOLICY-CPATH-PREFERENCE TLV
5. SR Policy Signaling Extensions 5. SR Policy Signaling Extensions
5.1. SRPOLICY-CAPABILITY TLV 5.1. SRPOLICY-CAPABILITY TLV
5.2. LSP Object TLVs 5.2. LSP Object TLVs
5.2.1. COMPUTATION-PRIORITY TLV 5.2.1. COMPUTATION-PRIORITY TLV
5.2.2. Explicit Null Label Policy (ENLP) TLV 5.2.2. Explicit NULL Label Policy (ENLP) TLV
5.2.3. INVALIDATION TLV 5.2.3. INVALIDATION TLV
5.2.3.1. Drop-Upon-Invalid Applies to SR Policy 5.2.3.1. Drop-Upon-Invalid Applies to SR Policy
5.3. Updates to RFC 8231 5.3. Updates to RFC 8231
6. IANA Considerations 6. IANA Considerations
6.1. Association Type 6.1. Association Type
6.2. PCEP TLV Type Indicators 6.2. PCEP TLV Type Indicators
6.3. PCEP Errors 6.3. PCEP Errors
6.4. TE-PATH-BINDING TLV Flag Field 6.4. TE-PATH-BINDING TLV Flag Field
6.5. SR Policy Invalidation Operational State 6.5. SR Policy Invalidation Operational State
6.6. SR Policy Invalidation Configuration State 6.6. SR Policy Invalidation Configuration State
skipping to change at line 138 skipping to change at line 138
* Association of an SR Policy with an intent via color, enabling * Association of an SR Policy with an intent via color, enabling
headend-based steering of BGP service routes over SR Policies headend-based steering of BGP service routes over SR Policies
provisioned via PCEP. provisioned via PCEP.
"Path Computation Element Communication Protocol (PCEP) Extensions "Path Computation Element Communication Protocol (PCEP) Extensions
for Establishing Relationships between Sets of Label Switched Paths for Establishing Relationships between Sets of Label Switched Paths
(LSPs)" [RFC8697] introduces a generic mechanism to create a grouping (LSPs)" [RFC8697] introduces a generic mechanism to create a grouping
of LSPs that is called an "Association". of LSPs that is called an "Association".
An SR Policy is associated with one or more candidate paths. A An SR Policy is associated with one or more Candidate Paths. A
candidate path is the unit for signaling an SR Policy to a headend as Candidate Path is the unit for signaling an SR Policy to a headend as
described in Section 2.2 of [RFC9256]. This document extends described in Section 2.2 of [RFC9256]. This document extends
[RFC8664] to support signaling SR Policy Candidate Paths as LSPs and [RFC8664] to support signaling SR Policy Candidate Paths as LSPs and
to signal Candidate Path membership in an SR Policy by means of the to signal Candidate Path membership in an SR Policy by means of the
Association mechanism. A PCEP Association corresponds to an SR Association mechanism. A PCEP Association corresponds to an SR
Policy and an LSP corresponds to a Candidate Path. The unit of Policy and an LSP corresponds to a Candidate Path. The unit of
signaling in PCEP is the LSP, thus, all the information related to an signaling in PCEP is the LSP, thus, all the information related to an
SR Policy is carried at the Candidate Path level. SR Policy is carried at the Candidate Path level.
Also, this document updates Section 5.8.2 of [RFC8231], making the Also, this document updates Section 5.8.2 of [RFC8231], making the
use of Path Computation Request (PCReq) and Path Computation Reply use of Path Computation Request (PCReq) and Path Computation Reply
skipping to change at line 212 skipping to change at line 212
Association parameters: Refers to the key data that uniquely Association parameters: Refers to the key data that uniquely
identifies an Association, as described in [RFC8697]. identifies an Association, as described in [RFC8697].
Association information: Refers to information related to Association information: Refers to information related to
Association Type, as described in Section 6.1.4 of [RFC8697]. Association Type, as described in Section 6.1.4 of [RFC8697].
SR Policy LSP: An LSP setup using Path Setup Type [RFC8408] 1 (for SR Policy LSP: An LSP setup using Path Setup Type [RFC8408] 1 (for
Segment Routing) or 3 (for SRv6). Segment Routing) or 3 (for SRv6).
SR Policy Association (SRPA): A new Association Type used to group SR Policy Association (SRPA): A new Association Type used to group
candidate paths belonging to the same SR Policy. Depending on the Candidate Paths belonging to the same SR Policy. Depending on the
discussion context, it can refer to the PCEP ASSOCIATION object of discussion context, it can refer to the PCEP ASSOCIATION object of
an SR Policy type or to a group of LSPs that belong to the an SR Policy type or to a group of LSPs that belong to the
association. association.
The base PCEP specification [RFC4655] originally defined the use of The base PCEP specification [RFC4655] originally defined the use of
the PCE architecture for MPLS and GMPLS networks with LSPs the PCE architecture for MPLS and GMPLS networks with LSPs
instantiated using the RSVP-TE signaling protocol. Over time, instantiated using the RSVP-TE signaling protocol. Over time,
support for additional path setup types such as SRv6 has been support for additional path setup types such as SRv6 has been
introduced [RFC9603]. The term "LSP" is used extensively in PCEP introduced [RFC9603]. The term "LSP" is used extensively in PCEP
specifications, and in the context of this document, refers to a specifications, and in the context of this document, refers to a
skipping to change at line 242 skipping to change at line 242
of a single segment list within an SR Policy Candidate Path. of a single segment list within an SR Policy Candidate Path.
Encoding of multiple segment lists is outside the scope of this Encoding of multiple segment lists is outside the scope of this
document and is specified in [PCEP-MULTIPATH]. document and is specified in [PCEP-MULTIPATH].
An SRPA carries three pieces of information: SR Policy Identifier, SR An SRPA carries three pieces of information: SR Policy Identifier, SR
Policy Candidate Path Identifier, and SR Policy Candidate Path Policy Candidate Path Identifier, and SR Policy Candidate Path
Attribute(s). Attribute(s).
This document also specifies some additional information that is not This document also specifies some additional information that is not
encoded as part of an SRPA: computation priority of the LSP, Explicit encoded as part of an SRPA: computation priority of the LSP, Explicit
Null Label Policy for the unlabeled IP packets and Drop-Upon-Invalid NULL Label Policy for the unlabeled IP packets and Drop-Upon-Invalid
behavior for traffic steering when the LSP is operationally down (see behavior for traffic steering when the LSP is operationally down (see
Section 5). Section 5).
4. SR Policy Association (SRPA) 4. SR Policy Association (SRPA)
Per [RFC8697], LSPs are associated with other LSPs with which they Per [RFC8697], LSPs are associated with other LSPs with which they
interact by adding them to a common association group. An interact by adding them to a common association group. An
association group is uniquely identified by the combination of the association group is uniquely identified by the combination of the
following fields in the ASSOCIATION object (Section 6.1 of following fields in the ASSOCIATION object (Section 6.1 of
[RFC8697]): Association Type, Association ID, Association Source, and [RFC8697]): Association Type, Association ID, Association Source, and
skipping to change at line 351 skipping to change at line 351
* Originator ([RFC9256], Section 2.4) * Originator ([RFC9256], Section 2.4)
* Discriminator ([RFC9256], Section 2.5) * Discriminator ([RFC9256], Section 2.5)
4.3. SR Policy Candidate Path Attributes 4.3. SR Policy Candidate Path Attributes
SR Policy Candidate Path Attributes carry optional, non-key SR Policy Candidate Path Attributes carry optional, non-key
information about a Candidate Path and MAY change during the lifetime information about a Candidate Path and MAY change during the lifetime
of an LSP. SR Policy Candidate Path Attributes consist of: of an LSP. SR Policy Candidate Path Attributes consist of:
* Candidate Path preference ([RFC9256], Section 2.7) * Candidate Path Preference ([RFC9256], Section 2.7)
* Candidate Path name ([RFC9256], Section 2.6) * Candidate Path name ([RFC9256], Section 2.6)
* SR Policy name ([RFC9256], Section 2.1) * SR Policy name ([RFC9256], Section 2.1)
4.4. Association Parameters 4.4. Association Parameters
Per Section 2.1 of [RFC9256], an SR Policy is identified through the Per Section 2.1 of [RFC9256], an SR Policy is identified through the
<Headend, Color, Endpoint> tuple. <Headend, Color, Endpoint> tuple.
skipping to change at line 377 skipping to change at line 377
Policy, as defined in [RFC9256], Section 2.1. Policy, as defined in [RFC9256], Section 2.1.
Association ID (16 bit): Always set to the numeric value 1. Association ID (16 bit): Always set to the numeric value 1.
Extended Association ID TLV: Mandatory TLV for an SRPA. Encodes the Extended Association ID TLV: Mandatory TLV for an SRPA. Encodes the
Color and Endpoint of the SR Policy (Figure 1). Color and Endpoint of the SR Policy (Figure 1).
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 = 31 | Length = 8 or 20 | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Color | | Color |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Endpoint ~ ~ Endpoint ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Extended Association ID TLV Format Figure 1: Extended Association ID TLV Format
Type: 31 for the Extended Association ID TLV [RFC8697]. Type: 31 for the Extended Association ID TLV [RFC8697].
Length: 8 octets if IPv4 address or 20 octets if IPv6 address is Length: 8 octets if IPv4 address or 20 octets if IPv6 address is
encoded in the Endpoint field. encoded in the Endpoint field.
Color: Unsigned non-zero 32-bit integer value, SR Policy color Color: Unsigned non-zero 32-bit integer value, SR Policy color
per Section 2.1 of [RFC9256]. per Section 2.1 of [RFC9256].
Endpoint: Can be either IPv4 (4 octets) or IPv6 address (16 Endpoint: Can be either IPv4 (4 octets) or IPv6 address (16
octets). This value MAY be different from the one contained in octets). This value MAY be different from the one contained in
the Destination address field in the END-POINTS object, or in the destination address field in the END-POINTS object, or in
the Tunnel Endpoint Address field in the LSP-IDENTIFIERS TLV the Tunnel Endpoint Address field in the LSP-IDENTIFIERS TLV
(Section 2.1 of [RFC9256]). (Section 2.1 of [RFC9256]).
If a PCEP speaker receives an SRPA object whose association If a PCEP speaker receives an SRPA object whose association
parameters do not follow the above specification, then the PCEP parameters do not follow the above specification, then the PCEP
speaker MUST send a PCErr message with: speaker MUST send a PCErr message with:
* Error-Type = 26 "Association Error" * Error-Type = 26 "Association Error"
* Error-value = 20 "SR Policy Identifier Mismatch" * Error-value = 20 "SR Policy Identifier Mismatch"
skipping to change at line 419 skipping to change at line 419
meant to guarantee that there is no possibility of a race condition meant to guarantee that there is no possibility of a race condition
when multiple PCEP speakers want to associate the same SR Policy at when multiple PCEP speakers want to associate the same SR Policy at
the same time. By adhering to this format, all PCEP speakers come up the same time. By adhering to this format, all PCEP speakers come up
with the same association parameters independently of each other with the same association parameters independently of each other
based on the SR Policy parameters [RFC9256]. based on the SR Policy parameters [RFC9256].
The last hop of a computed SR Policy Candidate Path MAY differ from The last hop of a computed SR Policy Candidate Path MAY differ from
the Endpoint contained in the <Headend, Color, Endpoint> tuple. An the Endpoint contained in the <Headend, Color, Endpoint> tuple. An
example use case is to terminate the SR Policy before reaching the example use case is to terminate the SR Policy before reaching the
Endpoint and have decapsulated traffic be forwarded the rest of the Endpoint and have decapsulated traffic be forwarded the rest of the
path to the Endpoint node using the native Interior Gateway Protocol path to the Endpoint node using the Interior Gateway Protocol (IGP)
(IGP) path(s). In this example, the destination of the SR Policy shortest path(s). In this example, the destination of the SR Policy
Candidate Paths will be some node before the Endpoint, but the Candidate Paths will be some node before the Endpoint, but the
Endpoint value is still used at the headend to steer traffic with Endpoint value is still used at the headend to steer traffic with
that Endpoint IP address into the SR Policy. The Destination of the that Endpoint IP address into the SR Policy. The destination of the
SR Policy Candidate Path is signaled using the END-POINTS object and/ SR Policy Candidate Path is signaled using the END-POINTS object and/
or the LSP-IDENTIFIERS TLV, per the usual PCEP procedure. When or the LSP-IDENTIFIERS TLV, per the usual PCEP procedure. When
neither the END-POINTS object nor the LSP-IDENTIFIERS TLV is present, neither the END-POINTS object nor the LSP-IDENTIFIERS TLV is present,
the PCEP speaker MUST extract the destination from the Endpoint field the PCEP speaker MUST extract the destination from the Endpoint field
in the SRPA Extended Association ID TLV. in the SRPA Extended Association ID TLV.
SR Policy with Color-Only steering is signaled with the Endpoint SR Policy with Color-Only steering is signaled with the Endpoint
value set to unspecified, i.e., 0.0.0.0 for IPv4 or :: for IPv6, per value set to unspecified, i.e., 0.0.0.0 for IPv4 or :: for IPv6, per
Section 8.8 of [RFC9256]. Section 8.8 of [RFC9256].
skipping to change at line 448 skipping to change at line 448
SRPOLICY-POL-NAME TLV (Section 4.5.1): (optional) encodes the SR SRPOLICY-POL-NAME TLV (Section 4.5.1): (optional) encodes the SR
Policy Name string. Policy Name string.
SRPOLICY-CPATH-ID TLV (Section 4.5.2): (mandatory) encodes the SR SRPOLICY-CPATH-ID TLV (Section 4.5.2): (mandatory) encodes the SR
Policy Candidate Path Identifier. Policy Candidate Path Identifier.
SRPOLICY-CPATH-NAME TLV (Section 4.5.3): (optional) encodes the SR SRPOLICY-CPATH-NAME TLV (Section 4.5.3): (optional) encodes the SR
Policy Candidate Path string name. Policy Candidate Path string name.
SRPOLICY-CPATH-PREFERENCE TLV (Section 4.5.4): (optional) encodes SRPOLICY-CPATH-PREFERENCE TLV (Section 4.5.4): (optional) encodes
the SR Policy Candidate Path preference value. the SR Policy Candidate Path Preference value.
When a mandatory TLV is missing from an SRPA object, the PCEP speaker When a mandatory TLV is missing from an SRPA object, the PCEP speaker
MUST send a PCErr message with: MUST send a PCErr message with:
* Error-Type = 6 "Mandatory Object Missing" * Error-Type = 6 "Mandatory Object Missing"
* Error-value = 21 "Missing SR Policy Mandatory TLV" * Error-value = 21 "Missing SR Policy Mandatory TLV"
Only one TLV instance of each TLV type can be carried in an SRPA Only one TLV instance of each TLV type can be carried in an SRPA
object, and only the first occurrence is processed. Any others MUST object, and only the first occurrence is processed. Any others MUST
skipping to change at line 607 skipping to change at line 607
| Preference | | Preference |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: SRPOLICY-CPATH-PREFERENCE TLV Format Figure 5: SRPOLICY-CPATH-PREFERENCE TLV Format
Type: 59 for the SRPOLICY-CPATH-PREFERENCE TLV. Type: 59 for the SRPOLICY-CPATH-PREFERENCE TLV.
Length: 4. Length: 4.
Preference: 32-bit unsigned integer value that encodes the Preference: 32-bit unsigned integer value that encodes the
preference of the Candidate Path as defined in Section 2.7 of Preference of the Candidate Path as defined in Section 2.7 of
[RFC9256]. [RFC9256].
5. SR Policy Signaling Extensions 5. SR Policy Signaling Extensions
This section introduces mechanisms described for SR Policies in This section introduces mechanisms described for SR Policies in
[RFC9256] to PCEP. These extensions do not make use of the SRPA for [RFC9256] to PCEP. These extensions do not make use of the SRPA for
signaling in PCEP, and therefore cannot rely on the Association signaling in PCEP; therefore, they cannot rely on the Association
capability negotiation in the ASSOC-Type-List TLV and separate capability negotiation in the ASSOC-Type-List TLV. Instead, separate
capability negotiation is required. capability negotiation is required.
This document specifies four new TLVs to be carried in the OPEN or This document specifies four new TLVs to be carried in the OPEN or
LSP object. Only one TLV instance of each type can be carried, and LSP object. Only one TLV instance of each type can be carried, and
only the first occurrence is processed. Any others MUST be ignored. only the first occurrence is processed. Any others MUST be ignored.
5.1. SRPOLICY-CAPABILITY TLV 5.1. SRPOLICY-CAPABILITY TLV
The SRPOLICY-CAPABILITY TLV (Figure 6) is a TLV for the OPEN object. The SRPOLICY-CAPABILITY TLV (Figure 6) is a TLV for the OPEN object.
It is used at session establishment to learn the peer's capabilities It is used at session establishment to learn the peer's capabilities
skipping to change at line 663 skipping to change at line 663
P-flag (Computation Priority): If set to 1 by a PCEP speaker, the P-flag (Computation Priority): If set to 1 by a PCEP speaker, the
P-flag indicates that the PCEP speaker supports the handling of P-flag indicates that the PCEP speaker supports the handling of
the COMPUTATION-PRIORITY TLV for the SR Policy (Section 5.2.1). the COMPUTATION-PRIORITY TLV for the SR Policy (Section 5.2.1).
If this flag is set to 0, then the receiving PCEP speaker MUST If this flag is set to 0, then the receiving PCEP speaker MUST
NOT send the COMPUTATION-PRIORITY TLV and MUST ignore it on NOT send the COMPUTATION-PRIORITY TLV and MUST ignore it on
receipt. receipt.
E-flag (Explicit NULL Label Policy): If set to 1 by a PCEP E-flag (Explicit NULL Label Policy): If set to 1 by a PCEP
speaker, the E-flag indicates that the PCEP speaker supports speaker, the E-flag indicates that the PCEP speaker supports
the handling of the Explicit Null Label Policy (ENLP) TLV for the handling of the Explicit NULL Label Policy (ENLP) TLV for
the SR Policy (Section 5.2.2). If this flag is set to 0, then the SR Policy (Section 5.2.2). If this flag is set to 0, then
the receiving PCEP speaker MUST NOT send the ENLP TLV and MUST the receiving PCEP speaker MUST NOT send the ENLP TLV and MUST
ignore it on receipt. ignore it on receipt.
I-flag (Invalidation): If set to 1 by a PCEP speaker, the I-flag I-flag (Invalidation): If set to 1 by a PCEP speaker, the I-flag
indicates that the PCEP speaker supports the handling of the indicates that the PCEP speaker supports the handling of the
INVALIDATION TLV for the SR Policy (Section 5.2.3). If this INVALIDATION TLV for the SR Policy (Section 5.2.3). If this
flag is set to 0, then the receiving PCEP speaker MUST NOT send flag is set to 0, then the receiving PCEP speaker MUST NOT send
the INVALIDATION TLV and MUST ignore it on receipt. the INVALIDATION TLV and MUST ignore it on receipt.
skipping to change at line 718 skipping to change at line 718
Length: 4. Length: 4.
Priority: 8-bit unsigned integer value that encodes numerical Priority: 8-bit unsigned integer value that encodes numerical
priority with which this LSP is to be recomputed by the PCE upon priority with which this LSP is to be recomputed by the PCE upon
topology change. The lowest value is the highest priority. topology change. The lowest value is the highest priority.
Reserved: This field MUST be set to zero on transmission and MUST be Reserved: This field MUST be set to zero on transmission and MUST be
ignored on receipt. ignored on receipt.
5.2.2. Explicit Null Label Policy (ENLP) TLV 5.2.2. Explicit NULL Label Policy (ENLP) TLV
To steer an unlabeled IP packet into an SR Policy for the MPLS data To steer an unlabeled IP packet into an SR Policy for the MPLS data
plane, it is necessary to push a label stack of one or more labels on plane, it is necessary to push a label stack of one or more labels on
that packet. The Explicit NULL Label Policy (ENLP) TLV is an that packet. The Explicit NULL Label Policy (ENLP) TLV is an
optional TLV for the LSP object used to indicate whether an Explicit optional TLV for the LSP object used to indicate whether an Explicit
NULL Label [RFC3032] must be pushed on an unlabeled IP packet before NULL label [RFC3032] must be pushed on an unlabeled IP packet before
any other labels. The contents of this TLV are used by the SR Policy any other labels. The contents of this TLV are used by the SR Policy
manager as described in Section 4.1 of [RFC9256]. If an ENLP TLV is manager as described in Section 4.1 of [RFC9256]. If an ENLP TLV is
not present, the decision of whether to push an Explicit NULL label not present, the decision of whether to push an Explicit NULL label
on a given packet is a matter of local configuration. Note that on a given packet is a matter of local configuration. Note that
Explicit Null is currently only defined for SR-MPLS and not for SRv6. Explicit NULL is currently only defined for SR-MPLS and not for SRv6.
Therefore, the receiving PCEP speaker MUST ignore the presence of Therefore, the receiving PCEP speaker MUST ignore the presence of
this TLV for SRv6 Policies. this TLV for SRv6 Policies.
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 | Length | | Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ENLP | Reserved | | ENLP | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 8: Explicit Null Label Policy (ENLP) TLV Format Figure 8: Explicit NULL Label Policy (ENLP) TLV Format
Type: 69 for the ENLP TLV. Type: 69 for the ENLP TLV.
Length: 4. Length: 4.
ENLP: Explicit NULL Label Policy. 8-bit unsigned integer value that ENLP: Explicit NULL Label Policy. 8-bit unsigned integer value that
indicates whether Explicit NULL labels are to be pushed on indicates whether Explicit NULL labels are to be pushed on
unlabeled IP packets that are being steered into a given SR unlabeled IP packets that are being steered into a given SR
Policy. The values of this field are specified in the IANA Policy. The values of this field are specified in the IANA
registry "SR Policy ENLP Values" under the "Segment Routing" registry "SR Policy ENLP Values" under the "Segment Routing"
registry group, which was introduced in Section 6.10 of [RFC9830]. registry group, which was introduced in Section 6.10 of [RFC9830].
Reserved: This field MUST be set to zero on transmission and MUST be Reserved: This field MUST be set to zero on transmission and MUST be
ignored on receipt. ignored on receipt.
The ENLP unassigned values may be used for future extensions, and The ENLP unassigned values may be used for future extensions, and
implementations MUST ignore the ENLP TLV with unrecognized values. implementations MUST ignore the ENLP TLV with unrecognized values.
The behavior signaled in this TLV MAY be overridden by local The behavior signaled in this TLV MAY be overridden by local
configuration by the network operator based on their deployment configuration by the network operator based on their deployment
requirements. Section 4.1 of [RFC9256] describes the behavior on the requirements. Section 4.1 of [RFC9256] describes the behavior on the
headend for the handling of the explicit null label. headend for the handling of the Explicit NULL label.
5.2.3. INVALIDATION TLV 5.2.3. INVALIDATION TLV
The INVALIDATION TLV (Figure 9) is an optional TLV. This TLV is used The INVALIDATION TLV (Figure 9) is an optional TLV. This TLV is used
to control traffic steering into an LSP when the LSP is operationally to control traffic steering into an LSP when the LSP is operationally
down/invalid. In the context of SR Policy, this TLV facilitates the down/invalid. In the context of SR Policy, this TLV facilitates the
Drop-Upon-Invalid behavior, specified in Section 8.2 of [RFC9256]. Drop-Upon-Invalid behavior, specified in Section 8.2 of [RFC9256].
Normally, if the LSP is down/invalid then it stops attracting Normally, if the LSP is down/invalid then it stops attracting
traffic; traffic that would have been destined for that LSP is traffic; traffic that would have been destined for that LSP is
redirected somewhere else, such as via IGP or another LSP. The Drop- redirected somewhere else, such as via IGP or another LSP. The Drop-
skipping to change at line 855 skipping to change at line 855
Path of that SR Policy, i.e., when any Candidate Path has Drop-Upon- Path of that SR Policy, i.e., when any Candidate Path has Drop-Upon-
Invalid enabled, it means that the whole SR Policy has the feature Invalid enabled, it means that the whole SR Policy has the feature
enabled. As stated in Section 8.1 of [RFC9256], an SR Policy is enabled. As stated in Section 8.1 of [RFC9256], an SR Policy is
invalid when all its Candidate Paths are invalid. invalid when all its Candidate Paths are invalid.
Once all the Candidate Paths of an SR Policy have become invalid, Once all the Candidate Paths of an SR Policy have become invalid,
then the SR Policy checks whether any of the Candidate Paths have then the SR Policy checks whether any of the Candidate Paths have
Drop-Upon-Invalid enabled. If so, the SR Policy enters the drop Drop-Upon-Invalid enabled. If so, the SR Policy enters the drop
state and "activates" the highest preference Candidate Path that has state and "activates" the highest preference Candidate Path that has
the Drop-Upon-Invalid enabled. Note that only one Candidate Path the Drop-Upon-Invalid enabled. Note that only one Candidate Path
needs to be reported to the PCE with the D (dropping) flag set. needs to be reported to the PCE with the Dropping (D) flag set.
5.3. Updates to RFC 8231 5.3. Updates to RFC 8231
Section 5.8.2 of [RFC8231] allows delegation of an LSP in Section 5.8.2 of [RFC8231] allows delegation of an LSP in
operationally down state, but at the same time mandates the use of operationally down state, but at the same time mandates the use of
PCReq before sending PCRpt. This document updates Section 5.8.2 of PCReq before sending PCRpt. This document updates Section 5.8.2 of
[RFC8231], by making that section of [RFC8231] not applicable to SR [RFC8231], by making that section of [RFC8231] not applicable to SR
Policy LSPs. Thus, when a PCC wants to delegate an SR Policy LSP, it Policy LSPs. Thus, when a PCC wants to delegate an SR Policy LSP, it
MAY proceed directly to sending PCRpt, without first sending PCReq MAY proceed directly to sending PCRpt, without first sending PCReq
and waiting for PCRep. This has the advantage of reducing the number and waiting for PCRep. This has the advantage of reducing the number
skipping to change at line 1120 skipping to change at line 1120
8.1. Control of Function and Policy 8.1. Control of Function and Policy
A PCE or PCC implementation MAY allow the capabilities specified in A PCE or PCC implementation MAY allow the capabilities specified in
Section 5.1 and the capability for support of an SRPA advertised in Section 5.1 and the capability for support of an SRPA advertised in
the ASSOC-Type-List TLV to be enabled and disabled. the ASSOC-Type-List TLV to be enabled and disabled.
8.2. Information and Data Models 8.2. Information and Data Models
[PCEP-SRv6-YANG] defines a YANG module with common building blocks [PCEP-SRv6-YANG] defines a YANG module with common building blocks
for PCEP extensions described in Section 4. for PCEP extensions described in Section 4 of this document.
8.3. Liveness Detection and Monitoring 8.3. Liveness Detection and Monitoring
Mechanisms defined in this document do not imply any new liveness Mechanisms defined in this document do not imply any new liveness
detection and monitoring requirements in addition to those already detection and monitoring requirements in addition to those already
listed in [RFC5440], [RFC8664], and [RFC9256]. listed in [RFC5440], [RFC8664], and [RFC9256].
8.4. Verify Correct Operations 8.4. Verify Correct Operations
Operation verification requirements already listed in [RFC5440], Operation verification requirements already listed in [RFC5440],
 End of changes. 22 change blocks. 
25 lines changed or deleted 25 lines changed or added

This html diff was produced by rfcdiff 1.48.