06-05-2020 08:37 AM - edited 06-06-2020 01:23 AM
Hello All,
Here is my topology running Segment-Routing with TI-LFA (Node + SRLG-Disjoint).
Here is the tiebreaker scenario.
RP/0/RP0/CPU0:P2(config)#do sh run router isis
Tue May 12 22:02:21.985 UTC
router isis IGP
<..snipped..>
fast-reroute per-prefix tiebreaker node-protecting index 200
fast-reroute per-prefix tiebreaker srlg-disjoint index 100
The TI-LFA (srlg) protection path is via P9 & P-RR3 onwards
RP/0/RP0/CPU0:P2(config)#do sh isis fast-reroute 5.5.5.5/32 detail
Wed May 13 00:51:46.390 UTC
L2 5.5.5.5/32 [30/115] medium priority
via 23.0.0.3, GigabitEthernet0/0/0/0, P-RR3, SRGB Base: 16000, Weight: 0
Backup path: TI-LFA (srlg), via 29.0.0.9, GigabitEthernet0/0/0/5 P9, SRGB Base: 16000, Weight: 0
P node: P9.00 [9.9.9.9], Label: ImpNull
Q node: P-RR3.00 [3.3.3.3], Label: 24022
Prefix label: 16005
Backup-src: PE5.00
P: No, TM: 130, LC: No, NP: No, D: No, SRLG: Yes
src PE5.00-00, 5.5.5.5, prefix-SID index 5, R:0 N:1 P:0 E:0 V:0 L:0
RP/0/RP0/CPU0:P2(config)#
router isis IGP
address-family ipv4 unicast
fast-reroute per-prefix tiebreaker srlg-disjoint index 255
Backup path changes to Node Protection, via P7 and P4
RP/0/RP0/CPU0:P2(config)#do sh isis fast-reroute 5.5.5.5/32 detail
Wed May 13 01:00:00.310 UTC
L2 5.5.5.5/32 [30/115] medium priority
via 23.0.0.3, GigabitEthernet0/0/0/0, P-RR3, SRGB Base: 16000, Weight: 0
Backup path: TI-LFA (node), via 27.0.0.7, GigabitEthernet0/0/0/3 P7, SRGB Base: 16000, Weight: 0
P node: P7.00 [7.7.7.7], Label: ImpNull
Q node: P4.00 [4.4.4.4], Label: 24001
Prefix label: 16005
Backup-src: PE5.00
P: No, TM: 120, LC: No, NP: Yes, D: No, SRLG: No
src PE5.00-00, 5.5.5.5, prefix-SID index 5, R:0 N:1 P:0 E:0 V:0 L:0
RP/0/RP0/CPU0:P2(config)#
So far so good!!!
Tiebreaker between Node-Protection and SRLG-Disjoint works fine.
Removed node-protection and srlg-disjoint both.
SRLG-Disjoint + Global Weighted SRLG Protection also works fine.
router isis IGP address-family ipv4 unicast fast-reroute per-prefix srlg-protection weighted-global
router isis IGP address-family ipv4 unicast fast-reroute per-prefix tiebreaker srlg-disjoint index 100
router isis IGP srlg
router isis IGP srlg name SRLG-100
router isis IGP srlg name SRLG-100 static ipv4 address 34.0.0.3 next-hop ipv4 address 34.0.0.4
RP/0/RP0/CPU0:P2(config)# do sh isis fast-reroute 5.5.5.5/32 detail
Fri Jun 5 15:24:26.693 UTC
L2 5.5.5.5/32 [30/115] Label: 16005, medium priority
via 23.0.0.3, GigabitEthernet0/0/0/0, Label: 16005, P-RR3, SRGB Base: 16000, Weight: 0
Backup path: TI-LFA (srlg), via 29.0.0.9, GigabitEthernet0/0/0/5 P9, SRGB Base: 16000, Weight: 0, Metric: 230
Backup tunnel: tunnel-te32824
P node: P9.00 [9.9.9.9], Label: ImpNull
Q node: P-RR3.00 [3.3.3.3], Label: 24001
Q node: P7.00 [7.7.7.7], Label: 24001
Q node: P4.00 [4.4.4.4], Label: 24001
Prefix label: 16005
Backup-src: PE5.00
P: No, TM: 230, LC: No, NP: No, D: No, SRLG: Yes
src PE5.00-00, 5.5.5.5, prefix-SID index 5, R:0 N:1 P:0 E:0 V:0 L:0, Alg:0
RP/0/RP0/CPU0:P2(config)#
So far so good.
Now add node-protection with lower priority
RP/0/RP0/CPU0:P2(config)#do sh run formal router isis | i "tie|srlg"
Fri Jun 5 15:30:11.356 UTC
router isis IGP address-family ipv4 unicast fast-reroute per-prefix srlg-protection weighted-global
router isis IGP address-family ipv4 unicast fast-reroute per-prefix tiebreaker node-protecting index 200
router isis IGP address-family ipv4 unicast fast-reroute per-prefix tiebreaker srlg-disjoint index 100
router isis IGP srlg
router isis IGP srlg name SRLG-100
router isis IGP srlg name SRLG-100 static ipv4 address 34.0.0.3 next-hop ipv4 address 34.0.0.4
RP/0/RP0/CPU0:P2(config)#
RP/0/RP0/CPU0:P2(config)#do sh isis fast-reroute 5.5.5.5/32 detail
Fri Jun 5 15:28:43.211 UTC
L2 5.5.5.5/32 [30/115] Label: 16005, medium priority
via 23.0.0.3, GigabitEthernet0/0/0/0, Label: 16005, P-RR3, SRGB Base: 16000, Weight: 0
Backup path: TI-LFA (node+srlg), via 27.0.0.7, GigabitEthernet0/0/0/3 P7, SRGB Base: 16000, Weight: 0, Metric: 1120
P node: P7.00 [7.7.7.7], Label: ImpNull
Q node: P4.00 [4.4.4.4], Label: 24001
Prefix label: 16005
Backup-src: PE5.00
P: No, TM: 1120, LC: No, NP: Yes, D: No, SRLG: Yes
src PE5.00-00, 5.5.5.5, prefix-SID index 5, R:0 N:1 P:0 E:0 V:0 L:0, Alg:0
RP/0/RP0/CPU0:P2(config)#
It appears the the default admin-weight is 1000, which is why the metric is now 1120.
Then what is this?
RP/0/RP0/CPU0:P2(config)#router isis IGP srlg ?
admin-weight Default administrative weight for all SRLGs, default is 1
name SRLG Name
<cr>
RP/0/RP0/CPU0:P2(config)#
Changed it to 0, but the backup path does not change, still node+srlg, not sure how and why
RP/0/RP0/CPU0:P2(config)#show
Fri Jun 5 15:32:25.519 UTC
Building configuration...
!! IOS XR Configuration 7.1.1
router isis IGP
srlg
name SRLG-100
admin-weight 0
!
!
!
end
RP/0/RP0/CPU0:P2(config)#commit
Fri Jun 5 15:32:26.591 UTC
RP/0/RP0/CPU0:Jun 5 15:32:27.710 UTC: config[69018]: %MGBL-CONFIG-6-DB_COMMIT : Configuration committed by user 'ios'. Use 'show configuration commit changes 1000000122' to view the changes.
RP/0/RP0/CPU0:P2(config)#do sh isis fast-reroute 5.5.5.5/32 detail
Fri Jun 5 15:32:33.012 UTC
L2 5.5.5.5/32 [30/115] Label: 16005, medium priority
via 23.0.0.3, GigabitEthernet0/0/0/0, Label: 16005, P-RR3, SRGB Base: 16000, Weight: 0
Backup path: TI-LFA (node+srlg), via 27.0.0.7, GigabitEthernet0/0/0/3 P7, SRGB Base: 16000, Weight: 0, Metric: 120
P node: P7.00 [7.7.7.7], Label: ImpNull
Q node: P4.00 [4.4.4.4], Label: 24001
Prefix label: 16005
Backup-src: PE5.00
P: No, TM: 120, LC: No, NP: Yes, D: No, SRLG: Yes
src PE5.00-00, 5.5.5.5, prefix-SID index 5, R:0 N:1 P:0 E:0 V:0 L:0, Alg:0
RP/0/RP0/CPU0:P2(config)#
Please help me understand the above scenario.
Regards,
Hemant