Application-Aware ECMP Discovery Mechanism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network technologies face challenges in efficiently discovering and load-balancing Equal Cost Multipath (ECMP) paths across modern communications networks, particularly for applications like BFD and MPLS, due to impractical or expensive path discovery capabilities, leading to incomplete fault monitoring and inefficient resource utilization.
Innovation Solution
An application-aware ECMP discovery mechanism is introduced, utilizing an Application Specific Mapping (ASM) TLV within MPLS Tree Trace echo requests to identify hashing parameters for load balancing, allowing external applications to specify parameters such as IP addresses, port numbers, and entropy labels, enabling comprehensive ECMP path discovery and load balancing across networks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Difficulty of detecting and measuring
If ECMP path discovery is implemented using existing specifications, then path discovery capability is added, but it is impractical and expensive
Solution Approach 1:
The patent introduces an intermediary ECMP discovery mechanism that acts as a mediator between network devices and applications. This mechanism uses template-based packet generation and hash parameter specification to discover ECMP paths without requiring complex modifications to existing network devices or applications, thereby reducing implementation cost and complexity while maintaining discovery capability.
Solution Approach 2:
The patent changes parameters by introducing hash parameter specifications and template-based packet generation. Instead of using complex existing discovery protocols, the system modifies packet parameters (source/destination addresses, port numbers, hash parameters) to systematically probe and discover ECMP paths, making the discovery process more practical and cost-effective.
2Measurement precision
If MPLS Tree Trace is used to discover ECMP paths, then deterministic discovery of all possible ECMP paths is achieved, but the discovered paths are valid only for MPLS echo request flows with specific source and destination IP addresses and port numbers
Solution Approach 1:
The patent addresses this limitation by introducing hash parameter specifications that allow the discovery mechanism to adapt to different applications. By specifying hash parameters (such as source/destination addresses, port numbers, and other flow identifiers), the system can generate probe packets that match the specific flow characteristics of any application, making the discovered ECMP paths valid for that application's traffic patterns.
Solution Approach 2:
The patent segments the ECMP discovery process into application-specific components. Each application can specify its own hash parameters and flow characteristics, allowing the discovery mechanism to be tailored to each application's requirements. This segmentation enables precise path discovery for each application while maintaining overall system versatility.
3Productivity
If hardware load balancing is used for packet forwarding, then traffic is distributed across ECMP paths, but applications cannot determine which paths their packets will actually use
Solution Approach 1:
The patent implements feedback by having the ECMP discovery mechanism return path information to applications based on the hash parameters specified. Applications can query the discovery mechanism with their specific flow parameters and receive feedback about which ECMP paths their packets will take. This feedback loop restores path information visibility while maintaining hardware load balancing efficiency.
Solution Approach 2:
The ECMP discovery mechanism acts as an intermediary between hardware load balancing and applications. It captures the hash parameter specifications, determines the actual paths used by hardware based on these parameters, and communicates this information back to applications. This intermediary layer preserves both the efficiency of hardware load balancing and the visibility of path information for applications.
Data Source
AI summary
One embodiment is a method including creating at an ingress node of a communications network a request message identifying a hashing parameter for a network application, and including range of values for the identified hashing parameter to enable load balancing for packets associated with the network application; forwarding the created request message to a node associated with a next hop along a first path through the network between the ingress node and an egress node; and receiving a response message from the node associated with the next hop, wherein the response message includes load balancing information for the node associated with the next hop corresponding to the range of values for the identified hashing parameter.


