Listen to this article if you do not want to read
Flex-algo and Anycast-SID | In this article we will discuss how Anycast-SID can be used with Flex-algo in scenarios where some part of the network does’t support Flex-algo (or Segment Routing)
We already discussed details of Anycast-SID and Flex-algo in separate articles. Please refer to below links for more detailed articles,
https://segmentroutingexpert.com/2020/05/29/anycast-sid-in-segment-routing/ and https://segmentroutingexpert.com/2020/03/18/flex-algo-explained-allows-sharing-single-network-infrastructure-resources-among-multiple-virtual-services/
Flex-algo helps to compute and identify non-default path in the network based on custom user-defined metric such as delay or TE-Metric . There might be situation when some part of the network is still using traditional LDP based MPLS and rest is SR based network and still want to use Flex-algo to compute a path end-to-end .Thats where the Anycast-SID helps to accomplish the same. In such situations, Flex-algo is used in SR nodes which provided low-delay path and IGP shortest path is used where delay information is not available ( on LDP nodes).
Lets understand with the help sample topology and see how it works, refer figure 1 below,
In the topology above, Nodes S1,S2,S3,S4 and S5 are SR enabled and Nodes S6,S7 and S8 are LDP enabled. SR enabled nodes can participate in Flex-algo with delay as definition (metric) and LDP enabled nodes cannot participate in Flex-algo. Now, the requirement is have low delay path from Ingress node S1 towards egress node S8. In this example, path from S1 to S4 or S5 will be low delay path using Flex-algo and from node S4 or S5 to S8 will be based on IGP shortest path , means LDP network is not delay aware. Here are the different SR building blocks or steps used while computing path between node S1 and S8,
- The selection of the optimal path in the SR domain will leverage Anycast-SID on the border nodes S4 and S5. These nodes will advertise same Flex-algo Anycast-SID within SR domain.
- Flex-algo definition on SR nodes is delay , means, metric used to calculate path between node S1 towards nodes S4 or S5 is delay.
- Nodes S4 and S5 will advertise Flex-algo SID 16820, this will allow to send packets towards closest SR node with least delay from node S1. As per the link delay mentioned in the topology, optimal path from node S1 will be through node S4 . Therefore path of Flex-algo Anycast-SID 16820 is S1-S2-S4.
- Path from node S4 towards S8 will be based on IGP shortest path as this is LDP domain which is not delay aware network.
- As Node S8 is not SR node, one or more nodes will act as mapping server and will advertise prefix-SID on behalf of Node S8 which is 16100.
- SR border nodes S4 and S5 will take care of mapping function and stitch S8 prefix SID 16100 with LDP LSP towards S8.
- IGP shortest path from Node S4 towards S4 is S4-S6-S8.
- End -to-end path from node S1 to S8 will be,
9. SR policy on S1 will have SID-list (16820,16100) with 16820 as top label and 16100 bottom label.
Solution is fully automatic and dynamic once configured , IGP dynamically adjust low delay path in the SR domain with the help of Flex-algo Anycast-SID and shortest path in the LDP domain . Anycast-SID also provide node resiliency between border nodes.In this use case, different SR building blocks such as Flex-algo, Anycast-SID, LDP-SR interworking and SR-TE combines to provide solution to given problem. I hope this article is helpful in understanding how Flex-algo leverages Anycast-SID . Please write comment below if you have any query or clarification. Also, if you want to be expert on Segment Routing , you can buy these highly recommended books , segment routing part-1 and segment routing part-II