rfc-9819

Argument Signaling for BGP Services in Segment Routing over IPv6 (SRv6)

K. Talaulikar, K. Raza, J. Rabadan, W. Lin
date2025-07 streamIETF areartg wgbess statusPROPOSED STANDARD pages13 canonicalhttps://www.rfc-editor.org/rfc/rfc9819 doi10.17487/RFC9819
RFC 9252 defines procedures and messages for BGP overlay services for Segment Routing over IPv6 (SRv6), including Layer 3 Virtual Private Network (L3VPN), Ethernet VPN (EVPN), and global Internet routing. This document updates RFC 9252 and provides more detailed specifications for the signaling and processing of SRv6 Segment Identifier advertisements for BGP overlay service routes associated with SRv6 Endpoint Behaviors that support arguments.

updates

Extracted elements (23)

design-rationale §3.1

The LBL, LNL, and FL values in Ethernet A-D per ES route advertisements are required to be set consistently with the End.DT2M SID structure rather than set to zero, to maintain backward compatibility with RFC 9252 implementations. Setting these to zero would be incompatible even though it might appear simpler for ARG-only advertisements.

routing, bgp

design-rationale §1

The RFC 9252 bitwise logical-OR approach for combining LOC:FUNC and ARG assumes a uniform SID structure across both route types, which is not universally valid. This document removes that restriction by specifying explicit offset-based ARG encoding using the SID Structure Sub-Sub-TLV fields, enabling deployments where bridge domains use different function lengths (e.g., FL:16 vs FL:32 as shown in Figure 7).

routing, bgp

design-rationale §1

The Transposition Scheme (TPOS-O and TPOS-L) is intentionally excluded from all examples in this document for clarity, with TPOS values set to zero. The specification notes that the same procedures apply equally when the Transposition Scheme is employed, and this document introduces no changes to its use.

routing, bgp

interoperability-note §4

Backward compatibility with RFC 9252 implementations using the bitwise logical-OR operation is maintained only when the Inclusive Multicast Ethernet Tag route and the Ethernet A-D per ES route advertise SIDs with identical SID structures. When structures differ, the bitwise OR cannot be applied; the explicit offset-based ARG encoding procedure in Section 3.3 MUST be used instead.

routing, bgp

normative-requirement §2 MUST

All bits beyond LBL + LNL + FL + AL in an SRv6 SID MUST be set to zero. An advertisement of the ARG value MUST specify the size of the argument, its value, the associated SRv6 Endpoint Behavior, and the association with the SID(s) for which it applies (REQUIRED).

routing, bgp

normative-requirement §2 MUST

For SRv6 SIDs associated with Endpoint Behaviors that do not support arguments, all bits following the FUNC portion MUST be set to zero, and the Argument Length (AL) MUST be zero.

routing, bgp

normative-requirement §3.3 MUST

If the AL values in the Ethernet A-D per ES route and the Inclusive Multicast Ethernet Tag route are both non-zero but unequal, no usable ARG is available; BUM traffic MUST NOT be forwarded from that Ethernet Segment, and implementations SHOULD log an error. This prevents potential forwarding loops caused by the configuration error.

routing, bgp, security

normative-requirement §3.3 SHOULD

If the ingress PE expects ESI Filtering but does not receive a usable ARG value during processing, it SHOULD log a message to facilitate troubleshooting.

routing, bgp

normative-requirement §3.2 MUST

The Inclusive Multicast Ethernet Tag route MUST include the BGP Prefix-SID attribute with an SRv6 L2 Service TLV. The SRv6 Service SID MUST include only the LOC:FUNC portion with Endpoint Behavior End.DT2M, and an SRv6 SID Structure Sub-Sub-TLV MUST be included with LBL, LNL, and FL fields reflecting the SID structure.

routing, bgp

normative-requirement §3.1 REQUIRED

The LBL, LNL, and FL values in the SRv6 SID Structure Sub-Sub-TLV for Ethernet A-D per ES routes REQUIRED to be set in accordance with the SID structure for End.DT2M SRv6 Service SIDs to ensure compliance with RFC 9252.

routing, bgp

normative-requirement §2 MUST

The SRv6 SID Structure Sub-Sub-TLV MUST be included when signaling an SRv6 SID corresponding to an Endpoint Behavior that supports arguments. This allows the receiver to verify argument consistency and correctly encode the ARG value within the SID.

routing, bgp

normative-requirement §3.3 MUST

When AL=0 is signaled in the Inclusive Multicast Ethernet Tag route, the SRv6 Service SID is formed using only LOC:FUNC (all bits after LBL+LNL+FL MUST be zero), and the ingress PE MUST ignore the SID and structure from the corresponding Ethernet A-D per ES route.

routing, bgp

normative-requirement §3.3 MUST

When AL values are both non-zero and equal across the two route types, the ARG from the Ethernet A-D per ES route MUST be encoded within the LOC:FUNC SID at offset LBL+LNL+FL, and all bits beyond LBL+LNL+FL+AL MUST be set to zero to form the complete SRv6 Service SID.

routing, bgp

normative-requirement §3.2 MUST

When ESI Filtering is in use, the advertising router MUST ensure that the AL signaled in the Inclusive Multicast Ethernet Tag route is equal to the AL signaled in the corresponding Ethernet A-D per ES route.

routing, bgp

normative-requirement §3.1 MUST

When ESI Filtering is in use, the Ethernet A-D per ES route MUST include the BGP Prefix-SID attribute with an SRv6 L2 Service TLV carrying the SRv6 Service SID containing the ESI Filtering ARG value. The SRv6 SID Structure Sub-Sub-TLV MUST be included with AL set to the size of the ARG; the AL size SHOULD be a multiple of 8.

routing, bgp

normative-requirement §3.2 MUST

When ESI Filtering is not in use, the AL in the Inclusive Multicast Ethernet Tag route MUST be 0. When ESI Filtering is in use, AL MUST be set to the size of the ARG supported by the advertising router, and the egress PE MUST use the same AL for all local Ethernet Segments in the same broadcast domain.

routing, bgp

protocol-element §2

An SRv6 SID consists of three components: Locator (LOC), Function (FUNC), and Argument (ARG). For SRv6 Endpoint Behaviors that support arguments, the SID may be signaled in two parts: the LOC:FUNC portion via one advertisement and the ARG value via a separate advertisement or mechanism. The source node is responsible for combining them into the complete LOC:FUNC:ARG SID used in the data plane.

routing, bgp, security

protocol-element §3

The End.DT2M SRv6 Endpoint Behavior uses the ESI Filtering ARG (Arg.FE2) to perform split-horizon filtering of BUM traffic in EVPN multihoming and E-Tree scenarios. The LOC:FUNC portion is signaled via the Inclusive Multicast Ethernet Tag route (Route Type 3) and the Arg.FE2 value is signaled via the Ethernet A-D per ES route (Route Type 1).

routing, bgp

security-consideration §6

RFC 9819 provides additional specification for SRv6 SID argument signaling and processing but introduces no new security considerations beyond those already covered by RFC 9252.

security, routing, bgp

state-machine §3.3

Ingress PE SID construction follows a three-branch decision: (1) AL=0 in IMET route → use LOC:FUNC only; (2) non-zero AL in IMET but no matching End.DT2M SID or AL=0 in A-D per ES → use LOC:FUNC only; (3) non-zero equal AL in both routes → combine LOC:FUNC with ARG at offset LBL+LNL+FL. A fourth branch fires when AL values are both non-zero but unequal: suppress BUM forwarding.

routing, bgp

wire-format §3.1

Ethernet A-D per ES route with 16-bit ESI Filtering ARG 'aaaa': BGP Prefix-SID carries SRv6 L2 Service TLV with SID ::aaaa:0:0:0, Behavior End.DT2M, and SRv6 SID Structure Sub-Sub-TLV with LBL:32, LNL:16, FL:16, AL:16, TPOS-L:0, TPOS-O:0.

routing, bgp

wire-format §3.1

Ethernet A-D per ES route without ESI Filtering ARG: BGP Prefix-SID carries SRv6 L2 Service TLV with SID ::, Behavior End.DT2M, and SRv6 SID Structure Sub-Sub-TLV with LBL:32, LNL:16, FL:16, AL:0, TPOS-L:0, TPOS-O:0.

routing, bgp

wire-format §3.2

Inclusive Multicast Ethernet Tag route with ESI Filtering (16-bit ARG): BGP Prefix-SID carries SRv6 L2 Service TLV with SID 2001:db8:1:fbd1::, Behavior End.DT2M, and SRv6 SID Structure Sub-Sub-TLV with LBL:32, LNL:16, FL:16, AL:16, TPOS-L:0, TPOS-O:0. The egress PE then accepts traffic with the ARG embedded at offset LBL+LNL+FL.

routing, bgp