Unlocking the Power of SRv6 and uSID for Scalable Network Transformation

March 31, 2025 | Pavan Chaudhari

Before delving into the specifics of SRv6 uSID, it’s crucial to first grasp the advantages of SRv6 over MPLS and its fundamental operations.

Advantages of SRv6

Simplified Network Design SRv6 significantly streamlines network architecture by reducing design and operational complexity. This simplification leads to easier management and quicker deployment of network services.

Elimination of Legacy Protocols SRv6 removes the need for legacy protocols such as BGP-LU, RSVP-TE, and LDP. By doing so, it simplifies network operations and reduces the overhead involved in maintaining multiple protocols.

SRv6 uSID pic 1

Figure 1 Network Transition from MPLS to SRv6

Efficient Load Balancing with Flow Labels SRv6 uses flow labels within the IPv6 header to facilitate effective load balancing. This allows for more granular control of traffic distribution across the network, optimizing performance.

Native IPv6 Data Plane SRv6 operates natively on an IPv6 data plane, fully utilizing the expansive address space and advanced features of IPv6. This ensures the network is future-proof as IPv6 adoption continues to rise.

Network Slicing with Flex-Algo SRv6 supports network slicing through Flex-Algo, enabling the creation of isolated, customized virtual networks. Service providers can allocate specific resources and performance characteristics to different services, enhancing service delivery.

Summarization Capability SRv6 has a key advantage in its ability to perform summarization, including support for default routes. This reduces the size of routing tables, improving network efficiency and scalability.

Seamless Operation with IPv6-Only Routers SRv6 can operate seamlessly even in environments where some middle routers or domains only support IPv6. This ensures compatibility and smooth operation across mixed network environments.

Consistency Between RIB and FIB SRv6 ensures consistency between the Routing Information Base (RIB) and the Forwarding Information Base (FIB). This consistency is achieved because SRv6 functions as a native routing protocol, ensuring reliable and accurate forwarding decisions.

Optimized and Simplified Service Chaining SRv6 optimizes and simplifies service chaining, making it easier to implement and manage complex service paths. This enhances the efficiency and flexibility of delivering services across the network.

TI-LFA with Comprehensive Coverage and Post-Convergence Path SRv6 supports Topology Independent Loop-Free Alternate (TI-LFA) with 100% coverage, providing robust protection against failures. The post-convergence path capability ensures efficient traffic rerouting even after a failure, maintaining high availability and reliability in the network.

Basic Operation of SRv6

Each SRv6 segment is identified by an SRv6 SID, which is a 128-bit IPv6 address and usually consists of three parts: Locator, Function, and Arguments.

SRv6 uSID pic 2

Figure 2 SRv6 SID Architecture

  1. Locator ID
  • The Locator ID identifies the node within the SRv6 domain, functioning similarly to a loopback address.
  • This Locator ID is advertised by the Interior Gateway Protocol (IGP) and provides IPv6 routing capabilities. It guides address lookups for packet forwarding.
  • Routes corresponding to locators can also be summarized, reducing the size of routing tables and improving network efficiency.
  1. Function
  • The Function defines the forwarding behaviors of SRv6. It specifies the action or behavior to be performed on the packet when it reaches the corresponding segment.
  • The Function field determines how the packet should be processed or forwarded. It represents a specific action associated with the segment and provides instructions for SRv6-enabled network nodes on handling the packet.
  • The Function is local to the SRv6 router, meaning it is executed by the router upon receiving a packet destined for that specific SID.
  • Examples: Forwarding over a particular link using an Adjacency SID. Implementing eVPN services, similar to how a VPN or service label functions in MPLS. Executing L3VPN services, akin to MPLS VPN/service labels. Applying QoS policing or shaping.
  1. Argument
  • The Argument field is optional and serves as a supplemental component to the Function. It is used to define specific parameters for the execution of instructions.
  • The Argument can contain various information related to flow, service, or other relevant data that influences how the Function is executed.
  • Examples: Setting a policing rate for a QoS policer. Specifying a source Ethernet Segment for EVPN services that require multi-homing or ETree procedures.

Each SRv6 segment is 128 bits and can be flexibly divided into multiple parts, with the function and length of each part being customizable.

Forwarding of SRv6 with SID

Locator IDs:

  • R1: 2001:abcd:1::/48
  • R2: 2001:abcd:2::/48
  • R3: Non-SRv6 Router
  • R4: 2001:abcd:4::/48
  • R5: 2001:abcd:5::/48

Function: The function eoo3 is assigned by the R5 router for its IPv4 lookup service.

SRv6 uSID pic 3

Figure 3 SRv6 data path

At R1, the source address for the packet is set to R1’s Locator ID, and the Next Header is specified as the Routing Header (43). Within the Segment Routing Header (SRH), the Segment Left (SL) field is initialized to 2, indicating the number of segments remaining. The Segment IDs (SIDs) are then pushed into the Segment List. As the packet traverses the network, each router will examine the Segment Left field and decrement it by one, and the current Active SID—the SID corresponding to the Segment Left value—will be copied into the Destination Address field of the IPv6 header. This process ensures that the packet is forwarded along the intended SRv6 path. Legacy or non-SRv6 routers that do not understand SRv6 headers will treat the SRv6 SID as part of the payload and forward the packet based on the outer IPv6 header by inspecting the destination IPv6 address in the outer header and forwarding the packet towards the next hop accordingly.

SRv6 uSID pic 4

Figure 4 IPv6 SRH Structure and Active SID Processing

In routers where SRv6 is not enabled, routing decisions will be made based on a standard IPv6 address lookup. The penultimate router in the SRv6 path will copy the last Segment Identifier (SID) into the Destination Address of the IPv6 header and will remove the Segment Routing Header (SRH), similar to the Penultimate Hop Popping (PHP) operation in MPLS. The last router in the path will then execute the action specified by the function associated with that SID. For instance, in the provided diagram, the function e003 assigned by R5 for its IPv4 service lookup will be executed.

SRv6 uSID

Segment Routing header (SRH) is a key extension for SRv6 implementation. In encapsulation mode, an SRv6 ingress encapsulates an outer IPv6 header and an SRH into a packet before forwarding the packet. This increases header overhead. If there are many SRv6 SIDs, the SRH length increases further, which may cause the following issues:

  1. Payload efficiency reduction: The header added in SRv6 acts as a transmission overhead. When there are many SIDs in the SRH, the header length increases and the payload proportion decreases, resulting in low payload efficiency.
  2. Hardware forwarding performance deterioration: As the number of SIDs increases, the SID stack depth in SRv6 packets may exceed the depth read by hardware each time. Consequently, the hardware may need to read multiple times, leading to lower forwarding performance.
  3. Packet forwarding restricted by the MTU: The increase in the SRv6 header length may cause the SRv6 packet size to exceed the MTU, potentially resulting in packet fragmentation or loss.

In SRv6 SRH compression, redundant information in the segment list is removed from the SRH based on the regularity of the SRv6 SID format and allocation. This allows the SRH to carry only distinct parts of SRv6 SIDs, reducing the header overhead.

Compatibility with SRv6 is achieved by adding a flavor to indicate the format of the next SID, enabling devices to process SIDs of different lengths and support hybrid programming and processing of different types of SIDs.

ArcOS uSIDs consist of 16 bits. An IPv6 address encoding one or more uSIDs is, like a 128-bit SID, fully routable as a regular IPv6 address. Nodes in a uSID domain advertise unique locators, consisting of a locator block (LB) and locator node (LN), resulting in an IPv6 prefix. When a uSID-encoded packet matching the local locator is received by a node, the LN bits are replaced by bit-shifting the remainder of the IPv6 destination address to the left, resulting in a new IPv6 destination address matching the locator prefix for the next hop in the uSID domain. If the LN bits in the new destination address are a special value known as "end-of-container," then no more uSIDs are encoded in the address, and the node should

apply an End function and apply the local behavior represented, such as replacing the destination address with the next 128-bit SID in the SRH.

SRv6 uSID pic 5-1

SRv6 uSID pic 5-2

Figure 5 Micro-SID and Its forwarding

If you see the locator ID, the first few bits are common for all the routers in the same domain e.g. 2001:abcd, it becomes SRv6 uSID block ( it can be any size) and the variable portion becomes the uSID.

A maximum 6 uSID can be pushed, and if uSIDs are more than 6, then a segment routing header ( SRH) will be added to accommodate the extra uSIDs.

In an SRv6 deployment, the Locator ID for routers within the same domain shares the same initial bits across all routers, such as 2001:abcd. This common prefix is referred to as the SRv6 uSID block. The remaining portion of the address is the uSID (Micro Segment Identifier), which uniquely identifies specific instructions or functions within that block.

A maximum of six uSIDs can be embedded within a single SRv6 packet. If the number of uSIDs exceeds six, an additional Segment Routing Header (SRH) will be added to the packet to accommodate the extra uSIDs, ensuring all necessary instructions are included for proper packet processing along the network path.

Each router that receives the packet identifies its own uSID, shifts it 16 bits to the left (or 32 bits if it includes a function, such as for adjacency SIDs), and then routes the packet based on the available routing information. This method is more efficient than the traditional SRv6 process of decrementing the Segment Left (SL), copying the active SID into the IPv6 destination address, and then forwarding the packet.

SRv6 uSID pic 6

Figure 6 Srv6 and Srv6 MicroSID forwarding difference

Conclusion

The introduction of uSID within the SRv6 framework brings several operational, technical, and strategic advantages that enhance the overall functionality, scalability, and efficiency of modern networks. These benefits make uSID a compelling option for organizations looking to leverage the full potential of Segment Routing over IPv6.

tag

NETWORKING

tag

SRV6

tag

uSID

Categories
copy icon

5G

copy icon

ACE

copy icon

AI

copy icon

ArcEdge

copy icon

ArcIQ

copy icon

ARCOS

copy icon

ARRCUS

copy icon

CLOUD

copy icon

datacenters

copy icon

edge

copy icon

FlexAlgo

copy icon

hybrid

copy icon

Internet

copy icon

INVESTING

copy icon

IPV4

copy icon

IPV6

copy icon

MCN

copy icon

ML

copy icon

multicloud

copy icon

Multicloud

copy icon

MUP

copy icon

NETWORKING

copy icon

NETWORKING INDUSTRY

copy icon

Routing

copy icon

SRV6

copy icon

uSID

© 2025 Arrcus Inc.

The hyperscale networking software company

twitter.9badb793a348.svg
linkedin.a6aa185890e0.svg

2077 Gateway Place Suite 400 San Jose, CA, 95110

Site by

unomena