Segment Routing Path Minimization via ECMP Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing segment routing technologies face challenges in determining the minimum number of segments needed to instantiate a given path in a segment routed network, particularly when dealing with Equal Cost Multipath (ECMP) scenarios, which affects network efficiency and traffic distribution.
Innovation Solution
The method involves generating a Shortest Path Directed Acyclic Graph (SPDAG) and using modified versions of Dijkstra's algorithm, such as the ECMP-Dijkstra, Greedy Minimum Segment Cover, and Fast Greedy algorithms, to compute the minimum segment labeling by determining the end node of an ECMP and terminating the algorithm at appropriate nodes to identify unique paths, thereby minimizing the number of segments required.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If the number of segments is reduced to simplify routing, then device complexity is reduced, but the ability to avoid hot-spots and distribute traffic evenly deteriorates
Solution Approach 1:
The patent applies segmentation by dividing the routing path into multiple segments, where each segment is defined by a segment identifier and a set of nodes. This allows the network to route traffic through intermediate nodes while maintaining manageable complexity. The segmentation enables traffic distribution across multiple paths without requiring explicit per-flow state at every node, resolving the contradiction between simplicity and effective traffic distribution.
2Reliability
If explicit path routing is used to steer traffic away from hot-spots, then network utilization is improved, but device complexity increases due to per-flow state maintenance
Solution Approach 1:
The patent extracts the per-flow state requirement from intermediate nodes by using segment identifiers that are pushed onto the packet stack at the ingress node. This allows intermediate nodes to forward packets based solely on the segment label without maintaining complex per-flow state. The extraction enables effective traffic steering while significantly reducing device complexity at routing nodes.
Solution Approach 2:
The segment identifier acts as an intermediary mechanism between the ingress node's traffic engineering decisions and the forwarding decisions at intermediate nodes. This intermediary allows the ingress node to implement complex traffic distribution policies while intermediate nodes perform simple label-based forwarding, resolving the contradiction between network utilization and device complexity.
3Device complexity
If Dijkstra's algorithm terminates at ECMP end nodes to minimize segments, then the number of segments is reduced, but measurement precision of path deviation is reduced
Solution Approach 1:
The patent applies local quality by differentiating between ECMP end nodes and non-ECMP end nodes in the SPDAG. At ECMP end nodes, the algorithm terminates early to minimize segments, while at non-ECMP end nodes, it continues to detect path deviations. This selective approach allows the system to achieve both reduced segment count and accurate path deviation detection where needed.
Data Source
AI summary
Various embodiments relate to a method and apparatus for computing a minimum segment labeling of a given path on a segment cover graph, the method including receiving a connection request for a connection between a source node and a destination node, generating a Shortest Path Directed Acyclic Graph (“SPDAG”) from the source node to the destination node by running a shortest path algorithm from the source node, determining an end node, between the source node and the destination node, at which the SPDAG deviates from the given path, determining whether the end node is the end of an Equal Cost Multipath (“ECMP”) and terminating the shortest path algorithm at a predecessor node to the end node if the end node is the end of an ECMP and making the predecessor node to the end node the source node.


