Skip to content

RFC 9252 - BGP Overlay Services Based on SRv6

Field Value
Title BGP Overlay Services Based on Segment Routing over IPv6 (SRv6)
Authors G. Dawra, et al.
Date July 2022
Status Proposed Standard
Link datatracker.ietf.org/doc/rfc9252

Summary

Defines how BGP carries SRv6 SID information for L3VPN (VPNv4/VPNv6) and L2VPN (EVPN) overlay services, using the SRv6 Services TLVs in BGP updates.

Key Concepts

  • SRv6 L3 Service TLV in BGP prefix-SID attribute
  • Transposition of SID function into the IPv6 prefix
  • Works with existing BGP VPN address families
  • Enables MPLS-free VPN services

Key Sections

Section Topic Description
3 SRv6 Services TLVs Defines the SRv6 L3 Service TLV and SRv6 L2 Service TLV carried in the BGP Prefix-SID attribute
3.1 SRv6 SID Information Sub-TLV Carries the SRv6 SID value, SID behavior, and SID structure
3.2 SRv6 SID Structure Sub-Sub-TLV Describes Locator Block, Locator Node, Function, and Argument bit lengths within the SID
4 Encoding for L3VPN How VPNv4 and VPNv6 NLRI are encoded with SRv6 SIDs using the SRv6 L3 Service TLV
4.1 Transposition Mechanism to embed the SRv6 Function value into the IPv6 prefix NLRI to save BGP update space
5 Encoding for EVPN How EVPN routes carry SRv6 SIDs for L2VPN and L3VPN-over-EVPN services
6 Color Extended Community Used in conjunction with SR Policy (RFC 9256) to steer VPN traffic into specific SRv6 TE paths
7 Security Considerations Trust model for SRv6 VPN SID advertisements

SRv6 Service TLVs Detail

The BGP Prefix-SID attribute carries service-specific TLVs:

TLV Type Value Used By Content
SRv6 L3 Service TLV 5 VPNv4, VPNv6 Contains one or more SRv6 SID Information sub-TLVs for L3VPN
SRv6 L2 Service TLV 6 EVPN Contains SRv6 SID Information sub-TLVs for L2VPN/EVPN
SRv6 SID Information Sub-TLV 1 Both Carries: SRv6 SID (16 bytes), SID Flags, Endpoint Behavior
SRv6 SID Structure Sub-Sub-TLV 1 Both Locator Block Length, Locator Node Length, Function Length, Argument Length, Transposition Length, Transposition Offset

Transposition Mechanism

Transposition is an optimization that avoids carrying the full 128-bit SID in the BGP update by embedding the Function portion into the advertised IPv6 prefix:

Without Transposition:
  NLRI = IPv6 VPN prefix
  SRv6 SID = Full 128-bit SID in TLV

With Transposition:
  NLRI = IPv6 VPN prefix with Function bits embedded
  SRv6 SID = SID with Function bits zeroed (receiver reconstructs)

Reconstruction: Take Transposition Length bits starting at
  Transposition Offset from the NLRI, insert them into the SID

The receiver extracts the transposed bits from the NLRI and inserts them into the SID at the specified offset to reconstruct the full SID.

Common Pitfalls

Transposition bit handling. The Transposition Length and Transposition Offset fields must be set consistently between the SRv6 SID Structure sub-sub-TLV and the NLRI encoding. If the Function Length, Transposition Length, and Transposition Offset do not align, the receiving PE will reconstruct an incorrect SID. This is one of the most common interoperability issues in multi-vendor SRv6 VPN deployments.

SID Structure signaling is mandatory. The SRv6 SID Structure sub-sub-TLV must be present when transposition is used. Without it, the receiving PE cannot determine how to reconstruct the SID from the NLRI. Some early implementations omitted this, leading to black-holed VPN traffic.

Endpoint Behavior must match the VPN type. The Endpoint Behavior field in the SID Information sub-TLV (e.g., End.DT4, End.DT6, End.DX2) must correspond to the actual programmed behavior on the egress PE. A mismatch causes the egress PE to reject the SID or misprocess the packet.

Color Extended Community is separate from the SRv6 SID. The Color Extended Community is used to steer traffic into SR Policies (RFC 9256). It does not replace or modify the SRv6 VPN SID -- it works alongside it for traffic engineering.

Document Relationship Description
RFC 9819 Updates RFC 9252 Specifies argument signaling for End.DT2M ESI filtering (replaces the bitwise-OR of Section 6.3); transposition rules unchanged
RFC 9723 Builds on Colored Prefix Routing: intent-aware inter-AS steering of RFC 9252 service SIDs
RFC 9800 Extension Compressed SID (C-SID) support changes how SID Structure is signaled
RFC 8986 Defines behaviors End.DT4, End.DT6, End.DX4, etc. behaviors referenced by this RFC
draft-ietf-bess-srv6-services-ext Extension Additional SRv6 service extensions for BGP