ECMP Path Validation Using Deterministic Flow Labels
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for validating Equal Cost Multiple Paths (ECMPs) in segment routing networks are inefficient and non-deterministic, often missing failures due to random label selection and are not applicable for end-to-end performance measurement in SRv6 data planes.
Innovation Solution
A deterministic process using a wildcard flow label or entropy label to validate ECMPs by forwarding test packets to all available next-hops, allowing instantaneous end-to-end performance measurement and data plane validation, with notifications for failure detection and latency values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If random label selection is used for ECMP validation, then the validation process is simple to implement, but it is non-deterministic and often misses failures
Solution Approach 1:
The patent changes the label parameter from randomly selected values to a systematic sequence starting from 0. This deterministic parameter change ensures that all ECMP paths are systematically validated by sending test packets with incrementing label values, making the validation both reliable and complete without excessive complexity
Solution Approach 2:
The patent performs preliminary actions by first determining the total number of ECMP paths before validation begins. This preliminary knowledge allows the system to systematically allocate and validate each path using sequential label values, ensuring no path is missed while maintaining a structured validation process
2Adaptability or versatility
If traditional validation methods are used, then the implementation is straightforward, but they are not applicable for end-to-end performance measurement in SRv6 data planes
Solution Approach 1:
The patent creates a universal validation mechanism that works across multiple network protocols including SRv6, SR MPLS, IPv6, and IPv4. By using a protocol-agnostic approach with standardized test packets and label manipulation, the same validation system can measure end-to-end performance across different data planes without requiring separate validation systems for each protocol
Solution Approach 2:
The patent introduces an intermediary validation system that sits between the control plane and data plane. This intermediary component handles the complex tasks of determining ECMP paths, generating test packets with appropriate labels, and analyzing results, thereby enabling versatile validation across protocols without making the underlying network devices complex
3Productivity
If multiple ECMP paths are validated sequentially, then the validation is thorough, but it takes significant time and is not near-instantaneous
Solution Approach 1:
The patent implements periodic validation by sending test packets with incrementing label values through all ECMP paths in a systematic sequence. This periodic action with labels 0, 1, 2, ... ensures thorough validation of each path while maintaining efficient throughput, achieving near-instantaneous validation by processing multiple paths in rapid succession rather than lengthy sequential testing
Solution Approach 2:
The patent performs preliminary determination of the total number of ECMP paths before validation begins. This preliminary knowledge allows the system to efficiently allocate test packets across all paths in parallel or rapid sequence, ensuring thorough validation of forwarding correctness while minimizing validation time through optimized packet distribution
Data Source
AI summary
Systems, methods, and computer-readable media are disclosed for validating multiple paths used for routing network traffic in a network. In one aspect, a network controller can identify one or more intermediate nodes on each of multiple paths in a network, wherein the multiple paths begin at a first network node and end at a last network node. The network controller can further generate a data packet with a label at the first network node, forward the test data packet from the first network node, along each of the one or more intermediate nodes, to the last network node, and perform a data plane validation process for validating packet forwarding from the first network node to the last network node based on the label(s) by determining if a number of the multiple paths equals to a number of packets received at the last network node.


