SRGB

SR architecture doesn’t have a specific control plane protocol. A routing protocol, ISIS, OSPF or BGP, is generally used to distribute Segment ID information in the network. Segment Ids distributed by IGP are called IGP Segments and those distributed by BGP are called BGP Segments.

An IGP Segment ID (IGP SID) is a type of Segment that is attached to a link-state update advertised by IGP. That means IGP advertisements requires some extensions. Both ISIS and OSPF are extended to support the distribution of Segment Ids. For the Prefix-SID Segment Routing Global Block (SRGB) is used, on the other hand for the Adj-SID Segment Routing Local Block is used (SRLB).

SR Global Block (SRGB) is the set of global segments in the SR domain. If a node participates in multiple SR domains, there is one SRGB for each SR domain. In SR-MPLS, SRGB is a local property of a node and identifies the set of local labels reserved for global segments. In SR-MPLS, using identical SRGBs on all nodes within the SR domain is strongly recommended. SR Local Block (SRLB) is local property of an SR node. In SR-MPLS, SRLB is a set of local labels reserved for local segments, like Adj-SIDs.

IGP Prefix Segment Identifer (Prefix-SID) is a Global Segment, advertised by ISIS or OSPF and associated with a prefix, commonly with a loopback ip address. The operator assigns a domain wide unique Prefix-SID to prefixes in the domain. The domain wide uniqueness is a property. In the MPLS Data Plane, Prefix-SIDs are allocated from Segment Routing Global Block (SRGB). It can be hard coded or it may be indexed to the SRGB.

In the control plane, ISIS or OSPF distributes both the SRGB and Index value. Where possible, it is recommended that identical SRGBs be configured on all nodes in an SR domain.

Node A1



Incoming Active Segment: NULL
Operation: PUSH 300006
Egress Interface: The interface towards to next-hop

Node A2


Incoming Active Segment: 300006
Operation: CONTINUE 300006 (PHP Disabled)
Egress Interface: The interface towards to next-hop

In the example node A3 ditributed its SRGB and Index valu via IGP. All the other nodes have the same SRGB configured. That’s why Node A1 and Node A2 install the calculated Prefix SID for Node A3 into the data plane as an MPLS Label.

Node A1



Incoming Active Segment: NULL
Operation: PUSH 300106
Egress Interface: The interface towards to next-hop

Node A2



Incoming Active Segment: 300106
Operation: SWAP 300006 (PHP Disabled)
Egress Interface: The interface towards to next-hop

It is not recommended but it is possible to use different SRGB on different node. In the axample, Node A2 has different SRGB configured. Node A1, when calculating the outgoing SID value to reach Node A3, will consider the SRGB of next hop.

According to current standards, if a node receives Prefix SID and SRGB information form another node, but the calculated Prefix SID is out of the local range, it will not be installed. It is possible to use different SRGB but calculated Prefix SIDs should still be inside the local range.

When you define the SRGB for your node, it will allocate that range for the SR MPLS. Dynamic label allocation for some other protocols will be done from out of this range.

About: fabricplane