| Internet-Draft | BGP for CP Threshold Constraints | October 2026 |
| Liu, et al. | Expires 1 May 2027 | [Page] |
This document defines the extension of BGP to distribute the threshold constraint parameters of candidate paths for SR Policy to achieve flexible path selection.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 1 May 2027.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
Segment Routing (SR) [RFC8402] is a source routing paradigm that explicitly indicates the forwarding path for packets at the ingress node. The ingress node steers packets into a specific path according to the Segment Routing Policy (SR Policy) as defined in [RFC9256]. An SR Policy may have multiple candidate paths that are provisioned or signaled [RFC9830] [RFC8664] from one or more sources.¶
[I-D.ietf-spring-sr-policy-flexible-cp-selection] proposes a flexible SR policy candidate path selection method. Based on the real-time resource usage and forwarding quality of candidate paths, the head node can perform dynamic path switching among multiple candidate paths in the SR policy.¶
Multiple threshold parameters for SR Policy candidate path selection are listed in Section 4.1 of [I-D.ietf-spring-sr-policy-flexible-cp-selection]. This document defines extensions to BGP to distribute threshold constraint parameters of candidate path (CP) for an SR Policy.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
The definitions of the basic terms are identical to those found in Segment Routing Policy Architecture [RFC9256].¶
As defined in [RFC9830], the SR Policy SAFI with codepoint 73 is used to advertise an SR Policy Candidate Path in the NLRI. According to [RFC9830], the content of the SR Policy Candidate Path is encoded in the Tunnel Encapsulation Attribute defined in [RFC9012] using the Tunnel-Type called the "SR Policy" type with codepoint 15. The use of the SR Policy Tunnel Type is applicable only for the AFI/SAFI pairs of (1/73, 2/73), and the use of any other Tunnel Type with the SR Policy SAFI MUST be considered malformed and handled by the "treat-as-withdraw" strategy [RFC7606].¶
This document defines the following Sub-TLV to carry the threshold constraint parameters for candidate paths.¶
The new SR Policy encoding structure with the Sub-TLV of CP threshold constraint parameters is expressed as below:¶
SR Policy SAFI NLRI: <Distinguisher, Color, Endpoint>
Attributes:
Tunnel Encaps Attribute (23)
Tunnel Type: SR Policy (15)
Binding SID
SRv6 Binding SID
Preference
Priority
SR Policy Name
SR Policy Candidate Path Name
Explicit NULL Label Policy (ENLP)
SR Metric Constraint Sub-TLV
Segment List
Weight
Segment
Segment
...
...
¶
The SR Metric Constraint sub-TLV is used to carry the threshold constraint of a candidate path.¶
The SR Metric Constraint sub-TLV is optional. Multiple instances of this sub-TLV may be used to carry different metric types.¶
The format of the SR Metric Constraint Sub-TLV is defined as follows:¶
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Metric Type | Flags | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Metric Margin | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Metric Bound | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
where:¶
Flags: 1-octet field that indicates the semantics of the Metric Margin and Metric Bound. The following bit positions are defined and the other bits MUST be cleared by the originator and MUST be ignored by a receiver:¶
0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+ |M|A|B|F| | +-+-+-+-+-+-+-+-+¶
where:¶
Metric Type: 1-octet field which identifies the type of the metric being used. The metric type code points are as follows:¶
The document does not bring new operation beyond the description of operations defined in Section 4 of [RFC9830]. The existing operations defined in [RFC9830] can apply to this document directly.¶
Typically, but not limited to, the SR policies carrying the threshold constraint parameters of CP are configured by a controller.¶
After configuration, the SR policies carrying the threshold constraint parameters of CP will be advertised by BGP update messages. The operation of advertisement is the same as defined in [RFC9830], as well as the reception.¶
This document defines a new sub-TLV in the registry "BGP Tunnel Encapsulation Attribute sub-TLVs" to be assigned by IANA:¶
+=======+==================================+=================+ | Value | Description | Reference | +=======+==================================+=================+ | TBA1 | SR Metric Constraint sub-TLV | This document | +-------+----------------------------------+-----------------+¶
This document also requests that IANA create a new registry named "SR Metric Constraint Metric Types" for the Metric Type field of the SR Metric Constraint sub-TLV. The registration procedure for this registry is Specification Required [RFC8126]. The initial values of this registry are as follows:¶
+=======+===============================+===============+ | Value | Description | Reference | +=======+===============================+===============+ | 0 | Available bandwidth threshold | This document | | 1 | Actual bandwidth threshold | This document | | 2 | Round trip delay threshold | This document | | 3 | Round trip loss threshold | This document | | 4 | Jitter threshold | This document | +-------+-------------------------------+---------------+¶
[RFC9830] has discussed the security considerations for distributing SR Policy through BGP. This document does not introduce any new security issues.¶
This section describes cross‑working group information for use during the IETF review process. This section, including the reference to [I-D.liu-pce-sr-policy-cp-threshold] which is cited only within this appendix, will be removed by the RFC Editor prior to publication.¶
This document builds directly on the work of the SPRING Working Group. The threshold constraint parameters for SR Policy candidate path selection defined in Section 4.1 of [I-D.ietf-spring-sr-policy-flexible-cp-selection] are carried by the BGP extensions specified here. The SPRING WG should be aware that this BGP extension is intended to be consistent with the flexible candidate path selection framework and that no changes to the semantics of the parameters are introduced. The definitions of the metric types and their usage remain as described in the SPRING document.¶
The PCE Working Group has a companion document [I-D.liu-pce-sr-policy-cp-threshold] that defines PCEP extensions for carrying the same set of threshold constraint parameters. Both the BGP mechanism (this document) and the PCEP mechanism serve the same architectural goal: allowing a controller to communicate candidate path threshold constraints to a headend. Implementations or deployments that use both BGP and PCEP for SR Policy distribution should ensure semantic alignment between the two protocols. The PCE WG may wish to note that the format and flag definitions in this document have been aligned with those in the PCEP extension to ease interworking.¶
TBD¶