Circuit style segment routing policies with compressed SID list
A head-end node in a Segment Routing network includes circuitry configured to detect a failure of a Segment Routing policy, set an eligibility flag for the candidate path associated with the Segment Routing policy to false, and, if one or more other candidate paths exist for the Segment Routing policy, switch to another candidate path of the one or more other candidate paths considering corresponding eligibility flags for the one or more other candidate paths. The eligibility flag and the corresponding eligibility flags are maintained by the head-end node for the candidate path and the one or more other candidate paths such that the head-end node selects a path based thereon.
1 . A head-end node in a Segment Routing network comprising circuitry configured to:
detect a failure of a Segment Routing policy which is between the head-end node and a destination in the Segment Routing network,
set an eligibility flag for a candidate path associated with the Segment Routing policy to false,
if one or more other candidate paths exist for the Segment Routing policy, switch to another candidate path that is marked eligible based on a corresponding eligibility flag set and for which bandwidth has been reserved to the destination, and
receive updates from a Path Computation Engine (PCE) to change a setting of one or more of the eligibility flag and the corresponding eligibility flags.
2 . The head-end node of claim 1 , wherein the eligibility flag and the corresponding eligibility flags are maintained at least in part by the head-end node such that the head-end node selects a path based thereon.
3 . The head-end node of claim 1 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false based on whether a corresponding expanded Segment Identifier (SID) list matches a corresponding intended path.
4 . The head-end node of claim 1 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false based on updates in the Segment Routing network.
5 . The head-end node of claim 1 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false by one of the PCE and a Software Defined Networking (SDN) controller whereas the head-end node is only able to set the eligibility flag and the corresponding eligibility flags to false.
6 . The head-end node of claim 1 , wherein the one or more other candidate paths comprise multiple candidate paths each having a corresponding eligibility flag set to true, and wherein the head-end node is configured to select any one of these multiple candidate paths as the another candidate path.
7 . A method implemented in a head-end node in a Segment Routing network comprising steps of:
detecting a failure of a Segment Routing policy which is between the head-end node and a destination in the Segment Routing network;
setting an eligibility flag for a candidate path associated with the Segment Routing policy to false;
if one or more other candidate paths exist for the Segment Routing policy, switching to another candidate path that is marked eligible based on a corresponding eligibility flag set and for which bandwidth has been reserved to the destination; and
receiving updates from a Path Computation Engine (PCE) to change a setting of one or more of the eligibility flag and the corresponding eligibility flags.
8 . The method of claim 7 , wherein the eligibility flag and the corresponding eligibility flags are maintained at least in part by the head-end node such that the head-end node selects a path based thereon.
9 . The method of claim 7 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false based on whether an expanded Segment Identifier (SID) list for a corresponding path matches a corresponding intended path.
10 . The method of claim 7 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false based on updates in the Segment Routing network.
11 . The method of claim 7 , wherein the eligibility flag and the corresponding eligibility flags are set to either true or false by the PCE whereas the head-end node is only able to set the eligibility flag and the corresponding eligibility flags to false.
12 . The method of claim 7 , wherein the failure is detected using Interior Gateway Protocol (IGP) or using an Operations, Administration, and Maintenance (OAM) protocol.
13 . A non-transitory computer-readable medium comprising instructions that cause one or more processors to:
monitor topology changes in a Segment Routing network,
update corresponding eligibility flags for candidate paths for Segment Routing policies based on whether expanded versions of compressed Segment Identifier (SID) lists for the candidate paths match respective explicit intended paths previously provided to corresponding head-end nodes, and
provide the updated corresponding eligibility flags for the candidate paths for the Segment Routing policies to corresponding head-end nodes in the Segment Routing network, updates from a Path Computation Engine (PCE) to change a setting of one or more of the corresponding eligibility flags, the corresponding head-end nodes configured to perform path switching in response to detecting path failures, wherein the switching is to another candidate path that is marked eligible based on the updated corresponding eligibility flags and for which bandwidth has been reserved to the destination.
14 . The non-transitory computer-readable medium of claim 13 , wherein the eligibility flags are maintained at least in part by the corresponding head-end nodes such that the corresponding head-end nodes only select a path based on the path's eligibility flag being true.
15 . The non-transitory computer-readable medium of claim 13 , wherein the instructions further cause the one or more processors to set the corresponding eligibility flags of the candidate paths to either true or false based on whether an expanded SID list for a corresponding candidate path of the candidate paths matches a corresponding intended path.
16 . The non-transitory computer-readable medium of claim 13 , wherein the instructions further cause the one or more processors to set the corresponding eligibility flags to either true or false.
17 . The non-transitory computer-readable medium of claim 13 , wherein the instructions further cause the one or more processors to
for a given Segment Routing policy, compute an intended path based on a current state of the Segment Routing network, and
provide a SID list based thereon.
18 . The non-transitory computer-readable medium of claim 17 , wherein the instructions further cause the one or more processors to
detect a deviation where the SID list no longer matches the intended path and set the corresponding eligibility flag accordingly.