IGP Adjacency Segment Identifier (Adj-SID) is a local label allocated from SRLB. It is attached to a unidirectional adjacency or a set of unidirectional adjacencies. Segment Routing Adj-SIDs usually represent a link (peering) and have a local significance. Of course It is used with Prefix-SID of local node. Locally significant means that the remote nodes will not install a state in the forwarding plane for an Adj-SID.
Only the directly connected Nodes will use these labels. They are absolute values and allocated dynamically by IGP. Adj-SID values are distributed by the Segment Routing Control Plane but it is only locally significant. Every node will assign different Adj-SID for every neighbor. Main usage scenarios for Adj-SID are Segment Routing Traffic Engineering and Topology-Independent Loop Free Alternate.
Adj-SID Example
Here, I will not go into details of SR-TE but to understand usage of Adj-SID I will give an example.
According to below topology let’s assume, Prefix SID of Node-E is 16005, Prefix-SID of Node-F is 16006 and 125 is allocated as Adj-SID for Node-E to Node-D adjacency. All of these SIDs will be distributed by IGP. By default, if your configuration pushes 16006 label before IP header, shortest path will be used to reach the destination. In this case, A-C-D-F is the shortest path.
What if you want to use the A-B-E-D-F path? It is possible by pushing a label stack to define this path. (How you can create this label stack is not scope of this post)
Step by Step Explanation
- Node-A, Push the label stack. 16005 is the outer label.
- Node-B, after receiving the packet search its SR forwarding table, does the next operation (PHP) Packet is sent to Node-E with a outer label of 125.
- For Node-E, 125 is used to define the link (or adjacency) to Node-D. Again with PHP, Node-E pops to top label and sends packet to Node-D with a label of 16006
- Node-D pops (PHP) the label and sends packet to the final destination.
Note that, the only router that is aware of 125 is the Node-E and it is the creater of that Adj-SID.