IP Library › Granted Patent US 12,659,261
Granted Patent B2
US 12,659,261 · App. 18/532,088 · Granted Jun 16, 2026

Detecting segment expansion changes in segment routing using dynamic shortest path first

Inventors: Todd Defilippi (Redwood City, CA); Cengiz Alaettinoglu (Sherman Oaks, CA)
Assignee: Ciena Corporation
H04L45/122H04L45/03H04L45/34
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,659,261
App. No.
18/532,088
Granted
Jun 16, 2026
Kind
B2
Abstract

Systems and methods for detecting segment expansion changes in Segment Routing using Dynamic Shortest Path First (SPF) include tracking one or more provisioned paths for one or more Segment Routing (SR) policies in a Segment Routing network, based on Shortest Path First (SPF) pairs associated with segments of the one or more provisioned paths; responsive to routing changes in the Segment Routing network, determining which of the SPF pairs are affected due to their SPF trees changing based on the routing changes; and determining which of the one or more SR policies have veered off of their respective provisioned path based on which of the SPF pairs are affected by the routing changes.

Claims (46)

1 . A non-transitory computer-readable medium comprising instructions that, when executed, cause one or more processors, to perform steps of:

tracking one or more provisioned paths for one or more Segment Routing (SR) policies in a Segment Routing network, based on maintaining Shortest Path First (SPF) pairs and corresponding SPF trees associated with segments of the one or more provisioned paths;

responsive to routing changes in the Segment Routing network, detecting affected SPF pairs based on change to corresponding SPF trees for determining which of the SPF pairs are affected due to their SPF trees changing based on the routing changes, wherein detecting comprises, for each SPF pair, comparing its SPF-tree path before and after the routing change and deeming the SPF pair affected when the paths differ; and

determining which of the one or more SR policies have veered off of their respective provisioned path based on which of the SPF pairs are affected by the routing changes.

2 . The non-transitory computer-readable medium of claim 1 , wherein the determining which of the SPF pairs are affected includes, for a given SPF pair,

determining a first path taken by the given SPF pair on its SPF tree before the routing change;

determining a second path taken by the given SPF pair on its SPF tree after the routing change; and

determining the given SPF pair is affected if the second path and the first path no longer match after the routing change.

3 . The non-transitory computer-readable medium of claim 2 , wherein the SPF tree is updated based on the routing change using dynamic SPF algorithms which update the SPF tree based on the routing change instead of recomputing the SPF tree entirely.

4 . The non-transitory computer-readable medium of claim 1 , wherein the SPF trees changing based on the routing changes are updated using dynamic SPF algorithms which update the SPF tree based on the routing change instead of recomputing the SPF tree entirely.

5 . The non-transitory computer-readable medium of claim 1 , wherein the tracking includes an index of the SPF pairs and which segment lists of the one or more provisioned paths expanded include each of the SPF pairs, such that a plurality of provisioned paths use a same SPF pair.

6 . The non-transitory computer-readable medium of claim 1 , wherein the determining which of the one or more SR policies have veered off of their respective provisioned path includes

for the one or more SR policies that have SPF pairs that are affected, performing a full expansion of all segments to check if an expanded path based on the full expansion matches a corresponding provisioned path.

7 . The non-transitory computer-readable medium of claim 1 , wherein the steps further include

for the one or more SR policies that have veered off of their respective provisioned path, determining a respective new segment list that matches their respective provisioned path after the routing changes.

8 . An apparatus comprising:

at least one processor, and

memory storing instructions that, when executed, cause the at least one processor to

track one or more provisioned paths for one or more Segment Routing (SR) policies in a Segment Routing network, based on maintaining Shortest Path First (SPF) pairs and corresponding SPF trees associated with segments of the one or more provisioned paths,

responsive to routing changes in the Segment Routing network, detect affected SPF pairs based on change to corresponding SPF trees to determine which of the SPF pairs are affected due to their SPF trees changing based on the routing changes, wherein the affected SPF pairs are detected by, for each SPF pair comparing its SPF-tree path before and after the routing change and deeming the SPF pair affected when the paths differ, and

determine which of the one or more SR policies have veered off of their respective provisioned path based on which of the SPF pairs are affected by the routing changes.

9 . The apparatus of claim 8 , wherein, to determine which of the SPF pairs are changed includes, for a given SPF pair, the instructions that, when executed, further cause the at least one processor to

determine a first path taken by the given SPF pair on its SPF tree before the routing change,

determine a second path taken by the given SPF pair on its SPF tree after the routing change, and

determine the given SPF pair is affected if the second path and the first path no longer match after the routing change.

10 . The apparatus of claim 9 , wherein the SPF tree is updated based on the routing change using dynamic SPF algorithms which update the SPF tree based on the routing change instead of recomputing the SPF tree entirely.

11 . The apparatus of claim 8 , wherein the SPF trees changing based on the routing changes are updated using dynamic SPF algorithms which update the SPF tree based on the routing change instead of recomputing the SPF tree entirely.

12 . The apparatus of claim 8 , wherein the provisioned paths are tracked using an index of the SPF pairs and which of segment lists the one or more provisioned paths expanded include each of the SPF pairs, such that a plurality of provisioned paths use a same SPF pair.

13 . The apparatus of claim 8 , wherein, to determine which of the one or more SR policies have veered off of their respective provisioned path, the instructions that, when executed, further cause the at least one processor to

for the one or more SR policies that have SPF pairs that are affected, perform a full expansion of all segments to check if an expanded path based on the full expansion matches a corresponding provisioned path.

14 . The apparatus of claim 8 , wherein the instructions that, when executed, further cause the at least one processor to

for the one or more SR policies that have veered off of their respective provisioned path, determine a respective new segment list that matches their respective provisioned path after the routing changes.

15 . A method comprising steps of:

tracking one or more provisioned paths for one or more Segment Routing (SR) policies in a Segment Routing network, based on maintaining Shortest Path First (SPF) pairs and corresponding SPF trees associated with segments of the one or more provisioned paths;

responsive to routing changes in the Segment Routing network, detecting affected SPF pairs based on change to corresponding SPF trees for determining which of the SPF pairs are affected due to their SPF trees changing based on the routing changes, wherein detecting comprises, for each SPF pair, comparing its SPF-tree path before and after the routing change and deeming the SPF pair affected when the paths differ; and

determining which of the one or more SR policies have veered off of their respective provisioned path based on which of the SPF pairs are affected by the routing changes.

16 . The method of claim 15 , wherein the determining which of the SPF pairs are affected includes, for a given SPF pair,

determining a first path taken by the given SPF pair on its SPF tree before the routing change;

determining a second path taken by the given SPF pair on its SPF tree after the routing change; and

determining the given SPF pair has changed if the second path and the first path no longer match after the routing change.

17 . The method of claim 15 , wherein the SPF trees changing based on the routing changes are updated using dynamic SPF algorithms which update the SPF tree based on the routing change instead of recomputing the SPF tree entirely.

18 . The method of claim 15 , wherein the tracking includes an index of the SPF pairs and which segment lists of the one or more provisioned paths expanded include each of the SPF pairs, such that a plurality of provisioned paths use a same SPF pair.

19 . The method of claim 15 , wherein the determining which of the one or more SR policies have veered off of their respective provisioned path includes

for the one or more SR policies that have SPF pairs that are affected, performing a full expansion of all segments to check if an expanded path based on the full expansion matches a corresponding provisioned path.

20 . The method of claim 15 , wherein the steps further include

for the one or more SR policies that have veered off of their respective provisioned path, determining a respective new segment list that matches their respective provisioned path after the routing changes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2023
From: DEFILIPPI, TODD; ALAETTINOGLU, CENGIZ
To: CIENA CORPORATION
Reel/Frame 065797/0466 →
Continuity (1)
Related Publication 20250193107A1 · Jun 12, 2025
References Cited (43)
US 7058016B1 · Harper · 2006 [cited by examiner]
US 7120792B1 · Jacobson et al. · 2006 [cited by applicant]
US 7197573B1 · Jacobson et al. · 2007 [cited by applicant]
US 7234001B2 · Simpson · 2007 [cited by examiner]
US 7428213B2 · Vasseur · 2008 [cited by examiner]
US 7539191B1 · Jacobson et al. · 2009 [cited by applicant]
US 7545756B2 · Previdi · 2009 [cited by applicant]
US 8135834B1 · Jacobson et al. · 2012 [cited by applicant]
US 8274901B1 · Casner et al. · 2012 [cited by applicant]
US 8422502B1 · Alaettinoglu et al. · 2013 [cited by applicant]
US 8937946B1 · Kanna et al. · 2015 [cited by applicant]
US 9026674B1 · Kanna et al. · 2015 [cited by applicant]
US 9537846B2 · Jethanandani · 2017 [cited by examiner]
US 10601724B1 · Filsfils · 2020 [cited by examiner]
US 11057278B1 · Côtéet al. · 2021 [cited by applicant]
US 11425056B1 · Kumar · 2022 [cited by examiner]
US 20130039651A1 · Sadananda · 2013 [cited by examiner]
US 20140369238A1 · Alaettinoglu et al. · 2014 [cited by applicant]
US 20150117203A1 · Filsfils · 2015 [cited by examiner]
US 20160057049A1 · Jacobson et al. · 2016 [cited by applicant]
US 20170222920A1 · Thubert · 2017 [cited by examiner]
US 20190288941A1 · Filsfils · 2019 [cited by examiner]
US 20200008067A1 · Filsfils · 2020 [cited by examiner]
US 20200389401A1 · Enguehard · 2020 [cited by examiner]
US 20210029021A1 · Torvi · 2021 [cited by examiner]
US 20210099378A1 · Alaettinoglu et al. · 2021 [cited by applicant]
US 20220086078A1 · Sivabalan et al. · 2022 [cited by applicant]
US 20220103463A1 · Margaria · 2022 [cited by examiner]
US 20220225171A1 · Thubert · 2022 [cited by examiner]
US 20230062080A1 · Sidebottom · 2023 [cited by examiner]
US 20230067946A1 · Alaettinoglu et al. · 2023 [cited by applicant]
US 20230095297A1 · Alaettinoglu et al. · 2023 [cited by applicant]
US 20230098528A1 · Alaettinoglu et al. · 2023 [cited by applicant]
US 20230146226A1 · Sivabalan et al. · 2023 [cited by applicant]
US 20240235984A1 · Chunduri · 2024 [cited by examiner]
CN 115567438A · 2023 [cited by applicant]
CN 118869565A · 2024 [cited by examiner]
WO 2023038818A1 · 2023 [cited by applicant]
D. Frigioni et al., “Fully Dynamic Output Bonded Single Source Shortest Path Problem,” Chapter 25, pp. 212-221. [cited by applicant]
C. Filsfils et al., “Segment Routing Architecture,” Internet Engineering Task Force (IETF), Category: Standards Track, ISSN: 2070-1721, Jul. 2018, pp. 1-32. [cited by applicant]
C. Filsfils et al., “IPv6 Segment Routing Header (SRH),” Internet Engineering Task Force (IETF), Standards Track, ISSN: 2070-1721, Mar. 2020, pp. 1-27. [cited by applicant]
Minghao Xu et al., “P-LFA: A Novel LFA-Based Percolation Fast Rerouting Mechanism,” WASA 2022, LNCS 13472, Nov. 17, 2022, pp. 557-571. [cited by applicant]
Mar. 5, 2025, International Search Report and Written Opinion for International Patent Application No. PCT/US2024/058180. [cited by applicant]