03-18-2024 11:11 AM - edited 03-19-2024 07:46 AM
Hi All,
I found in Segment Routing Architecture RFC 8402
"A BGP-Prefix segment is global (unless explicitly advertised otherwise) within the SR domain."
"An IGP-Prefix segment is global (unless explicitly advertised otherwise) within the SR domain."
"An IGP-Adjacency segment is local (unless explicitly advertised otherwise) to the node that advertises it."
But I can not understand how an IGP or BGP Prefix-SID, can not be in the global SR domain scope, or an IGP Adj-SID can be in the global domain scope, can anyone explain? how can this be implemented and what is the benefit of that?
Best Regards,
Hussain Sameer
03-18-2024 11:33 AM - edited 03-18-2024 11:34 AM
According to RFC8402:
Local Segment: In SR-MPLS, this is a local label outside the SRGB. It may be part of the explicitly advertised SRLB. In SRv6, this can be any IPv6 address, i.e., the address may be part of the SRGB, but used such that it has local significance. The instruction associated with the segment is defined at the node level.
A perfect example of that would be an adjacency SID, which is used to steer the traffic to a specific adjacency on a specific node.
Regards,
03-18-2024 01:28 PM - edited 03-18-2024 01:30 PM
Hi Harold,
Thanks for your replay,
I see your idea, you are talking about the local segment which is Adj-SID, that can be part of SRGB in SRv6, but the case is whether the SID is globally significant or locally significant, in my question I'm wondering how the Prefix-SID should be in the SRGB but also can be locally significant.
Please see below my research about this case:
This paragraph from the same RFC 8402 says:
o While SR allows a local segment to be attached to an IGP prefix, where the terminology "IGP-Prefix segment" or "Prefix-SID" is used, the segment is assumed to be global (i.e., the SID is defined from the advertised SRGB). This is consistent with all the described use cases that require global segments attached to IGP prefixes.
Also, I found in RFC 8665 this paragraph:
L-Flag: Local/Global Flag. If set, then the value/index carried by the Prefix-SID has local significance. If not set, then the value/index carried by this sub-TLV has global significance.
and in this RFC 8667:
L-Flag: Local Flag. If set, then the value/index carried by the Prefix-SID has local significance. By default, the flag is UNSET.
Upon the above, I see that this can be implemented, but yet cisco does not implement it, I can confirm that based on this PDF https://www.segment-routing.net/tutorials/2016-09-27-segment-routing-igp-control-plane/
pages 34 and 36 mentioned that this flag bit is always unset.
Also, weirdly, adj-sid can be global as RFC 8402 explicitly says that as below:
IGP-Adjacency Segment: an IGP-Adjacency segment is an IGP segment attached to a unidirectional adjacency or a set of unidirectional adjacencies. By default, an IGP-Adjacency segment is local (unless explicitly advertised otherwise) to the node that advertises it. Also referred to as "Adj-SID".
and in the same pdf above cisco does not implement it, as this flag is always set, please see pages 52 and 53
However, I can not find any info about the BGP prefix SID, and how it can be locally significant, I searched in this RFC 8669 and found that the flags are undefined as below:
As I know now how IGP Prefix-SID or Adj-SID can be locally significant by using L bit, appreciate your idea about how BGP Prefix-SID can be determined as locally significant also.
Yet I still have not found any reason for implementing such a feature !!
Best Regards,
Hussain Sameer
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide