cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
290
Views
1
Helpful
1
Replies

Configuring SRv6 locators to follow a locator plan

I was recently doing one of the CCIE SP practice labs and came across an SRv6 question that was asking me to configure an SRv6 C-SID F3216 locator plan. It broke the different parts up into bits as follows:

  • Domain Block = FC00:01::/24
  • Algo = 3 bits = 8 Flex-Algos
  • Cluster = 7 bits = 256 clusters
  • Nodes = 12 bits = 2048 nodes

Now, as far as I know, the uSID header looks like this:

stevencrutchley_1-1724782583869.png

This is completely different from what the question seems to be asking.

 For one thing, I didn't think that different bits were reserved for Flex-Algos. My understanding of flex algo, is that the different locators will be advertised in the ISIS TLVs along with their relevant algorithm number, which, according to the CLI I can always configure between 128-255.

 

RP/0/RP0/CPU0:SP-X-P4(config-srv6)#locators locator FOO algorithm ?
  <128-255>  Algorithm ID
RP/0/RP0/CPU0:SP-X-P4(config-srv6)#

 

The Cluster I've never heard of either- is this referencing the concept of a SET which can be used when summarizing different blocks?

If I configure the prefix ,the Block and Node lengths seem to be unchangeable (last line of output):

 

RP/0/RP0/CPU0:SP-X-P4#sh run segment-routing 
Wed Aug 21 12:26:01.692 UTC
segment-routing
 global-block 16000 23999
 local-block 25000 26000
 srv6
  logging locator status
  encapsulation
   source-address 2620:fc7:1001::6
  !
  locators
   locator FOO
    micro-segment behavior unode psp-usd
    prefix 2001:1ab:1::/48
   !
  !
 !
!
 
RP/0/RP0/CPU0:SP-X-P4#sh run router isis BAR
Wed Aug 21 12:26:12.397 UTC
router isis BAR
 is-type level-2-only
 net 00.0001.0000.0000.0001.00
 address-family ipv6 unicast
  segment-routing srv6
   locator FOO
   !
  !
 !
!
 
RP/0/RP0/CPU0:SP-X-P4#show isis segment-routing srv6 locators detail 
Wed Aug 21 12:26:15.654 UTC
 
IS-IS BAR SRv6 Locators
Name                  ID       Algo  Prefix                    Status
------                ----     ----  ------                    ------
FOO                   1        0     2001:1ab:1::/48           Active
  Advertised Level: level-1-2   
  Level: level-2-only Metric: 1        Administrative Tag: 0         
  SID behavior: uN (PSP/USD)
  SID value:    2001:1ab:1::
  Block Length: 32, Node Length: 16, Func Length: 0, Args Length: 80
 
RP/0/RP0/CPU0:SP-X-P4#

 

 

 

I've done some reading through Cisco documentation and found this page stating that

The uSID carrier format is specified using the notation "Fbbuu" , where “bb” is size of block and “uu” is size of ID. For example, "F3216" is a format with a 32-bit uSID block and 16-bit uSID IDs.

However the Block size being requested in the question is 24, not 32. The same document also states:

F3216 is the default format, and the only format that is supported in IOS XR 7.3.1 release.

Unless Block and Domain Block are not the same thing?

Then I found this page. Which confirms the SID format I put above. But it also says:

Bits allocation for ‘SSNN’ under uSID1 can be tweaked as per the requirement by the provider and does not have to end at the 8-bit boundary as shown for Nibble 33-40.

But I can't seem to find where to tweak these, and I've explored all the possible context sensitive help I can from the CLI (of both 7.9.2 and 7.3.2).

I fear I am grossly misunderstanding the question or something fundamental. Can anyone assist in clarifying this?

1 Accepted Solution

Accepted Solutions

Harold Ritter
Level 12
Level 12

Hi @steven.crutchley ,

Cluster = 7 bits = 256 clusters Nodes = 12 bits = 2048 nodes

I am not sure where that comes from, but there seems to be a bit of an issue with the maths here. 7 bits would allow for 128 clusters and 12 bits would allow for 4096 nodes.

This is completely different from what the question seems to be asking.

You can actually embed whatever you want/need inside the Block ID and uSID ID.

> I didn't think that different bits were reserved for Flex-Algos

The strategy here is to allocate a separate block for each separate algo you use.

My understanding of flex algo, is that the different locators will be advertised in the ISIS TLVs along with their relevant       > algorithm number, which, according to the CLI I can always configure between 128-255.

You understanding is correct, but that doesn't have anything to do with the allocation scheme.

The Cluster I've never heard of either- is this referencing the concept of a SET which can be used when summarizing      > different blocks?

As I mentioned, you can embed whatever you want in your allocation scheme and yes, the set would  be used for summarization.

However the Block size being requested in the question is 24, not 32.

The /24 would be for the SRv6 based prefix, from which would be allocated. The block ID is the additional 8 bits that could be used to allocate blocks (/32) for different purposes. For example you could allocate a separate block for each algo. This is what the Algo = 3 bits = 8 Flex-Algos refers to.

SRv6 based prefix: fc00:0000::/24

algo 0: fc00:0000::/32

algo 128: fc00:0001::/32

algo 129: fc00:0002:/32

etc

F3216 is the default format, and the only format that is supported in IOS XR 7.3.1 release.

That is still the case in the most recent IOX-XR release.

Unless Block and Domain Block are not the same thing?

Domain Block = SRv6 based prefix = /24 in this specific case.

Block = /32 (recommend and only supported value as of now)

Bits allocation for ‘SSNN’ under uSID1 can be tweaked as per the requirement by the provider and does not have to end at the 8-bit boundary as shown for Nibble 33-40.

But I can't seem to find where to tweak these, and I've explored all the possible context sensitive help I can from the CLI   > (of both 7.9.2 and 7.3.2)

There is no need for a special command here. This refers to the set value, which would be embedded in the locator and used for prefix summarization. This just needs to be part of your allocation plan if you are planning on doing summarization in your network.

> Can anyone assist in clarifying this?

I will be happy to help if you have any additional questions or need any clarifications.

Regards,

 

Harold Ritter
Sr Technical Leader
CCIE 4168 (R&S, SP)
harold@cisco.com
México móvil: +52 1 55 8312 4915
Cisco México
Paseo de la Reforma 222
Piso 19
Cuauhtémoc, Juárez
Ciudad de México, 06600
México

View solution in original post

1 Reply 1

Harold Ritter
Level 12
Level 12

Hi @steven.crutchley ,

Cluster = 7 bits = 256 clusters Nodes = 12 bits = 2048 nodes

I am not sure where that comes from, but there seems to be a bit of an issue with the maths here. 7 bits would allow for 128 clusters and 12 bits would allow for 4096 nodes.

This is completely different from what the question seems to be asking.

You can actually embed whatever you want/need inside the Block ID and uSID ID.

> I didn't think that different bits were reserved for Flex-Algos

The strategy here is to allocate a separate block for each separate algo you use.

My understanding of flex algo, is that the different locators will be advertised in the ISIS TLVs along with their relevant       > algorithm number, which, according to the CLI I can always configure between 128-255.

You understanding is correct, but that doesn't have anything to do with the allocation scheme.

The Cluster I've never heard of either- is this referencing the concept of a SET which can be used when summarizing      > different blocks?

As I mentioned, you can embed whatever you want in your allocation scheme and yes, the set would  be used for summarization.

However the Block size being requested in the question is 24, not 32.

The /24 would be for the SRv6 based prefix, from which would be allocated. The block ID is the additional 8 bits that could be used to allocate blocks (/32) for different purposes. For example you could allocate a separate block for each algo. This is what the Algo = 3 bits = 8 Flex-Algos refers to.

SRv6 based prefix: fc00:0000::/24

algo 0: fc00:0000::/32

algo 128: fc00:0001::/32

algo 129: fc00:0002:/32

etc

F3216 is the default format, and the only format that is supported in IOS XR 7.3.1 release.

That is still the case in the most recent IOX-XR release.

Unless Block and Domain Block are not the same thing?

Domain Block = SRv6 based prefix = /24 in this specific case.

Block = /32 (recommend and only supported value as of now)

Bits allocation for ‘SSNN’ under uSID1 can be tweaked as per the requirement by the provider and does not have to end at the 8-bit boundary as shown for Nibble 33-40.

But I can't seem to find where to tweak these, and I've explored all the possible context sensitive help I can from the CLI   > (of both 7.9.2 and 7.3.2)

There is no need for a special command here. This refers to the set value, which would be embedded in the locator and used for prefix summarization. This just needs to be part of your allocation plan if you are planning on doing summarization in your network.

> Can anyone assist in clarifying this?

I will be happy to help if you have any additional questions or need any clarifications.

Regards,

 

Harold Ritter
Sr Technical Leader
CCIE 4168 (R&S, SP)
harold@cisco.com
México móvil: +52 1 55 8312 4915
Cisco México
Paseo de la Reforma 222
Piso 19
Cuauhtémoc, Juárez
Ciudad de México, 06600
México