Load-Aware ECMP Routing via Centralized State Machine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing equal-cost multipath (ECMP) routing solutions are limited by static path selection based on flow-hash, which does not account for instantaneous loading or congestion, leading to network congestion and high latencies, and lack mechanisms for dynamic packet reordering.
Innovation Solution
The load-aware ECMP technique dynamically balances traffic by using a central state machine to evaluate optimal paths based on real-time loading and congestion information, reducing the need for local packet-level path selection and avoiding packet reordering through centralized decision-making and periodic updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If flow-hash based ECMP routing is used, then bandwidth utilization is improved through load-balancing, but network congestion and latency increase due to lack of real-time loading awareness
Solution Approach 1:
The patent implements a feedback mechanism where routing decisions are dynamically adjusted based on real-time loading information from network paths. The system continuously monitors path loading states and uses this feedback to modify ECMP group mappings, ensuring traffic is routed away from congested paths and toward less loaded paths, thereby reducing latency while maintaining bandwidth utilization.
Solution Approach 2:
The patent transforms the static ECMP routing into a dynamic system by periodically updating ECMP group mappings based on current network conditions. Instead of fixed flow-hash based path selection, the system dynamically reconfigures which flows are assigned to which ECMP groups, allowing the routing behavior to adapt to changing network loading states and reduce congestion-related latency.
2Productivity
If dynamic load-balancing solutions are implemented, then network congestion is reduced, but area, power, and cost requirements increase
Solution Approach 1:
The patent segments the routing decision-making process into two parts: a centralized controller that performs complex load-aware path selection and ECMP group management, and simplified network devices that execute pre-computed routing decisions. This segmentation allows sophisticated congestion avoidance without burdening individual network devices with complex processing, reducing their area and power requirements.
Solution Approach 2:
The patent introduces a centralized controller as an intermediary between network monitoring and routing execution. This controller aggregates loading information from multiple paths, performs complex ECMP group mapping computations, and distributes simplified routing rules to network devices. The intermediary handles the computational complexity centrally, allowing network devices to maintain simpler, more efficient hardware implementations.
3Reliability
If software-based path programming is used, then optimal paths can be programmed, but response time is severely limited and packet reordering occurs
Solution Approach 1:
The patent performs preliminary computation of ECMP group mappings and optimal path assignments in advance, based on current network conditions. The centralized controller pre-calculates the routing decisions and distributes them to network devices before traffic needs to be routed. This preliminary action allows the system to respond quickly to traffic changes without real-time computation delays, while still achieving optimal path selection.
Solution Approach 2:
The patent replaces software-based path programming with a hybrid approach where a centralized controller uses software for computation but implements rapid path switching through hardware-based ECMP group mapping mechanisms. This substitution maintains the accuracy of software-based optimal path programming while achieving faster response times through hardware acceleration and pre-computed routing tables.
Data Source
AI summary
A semiconductor chip for implementing load-aware equal-cost multipath routing includes a number of pipes, each pipe being coupled to a portion of ports on the semiconductor chip, and a central unit consisting of a state machine and multiple databases. The databases contain information regarding a communication network including an overlay network and an underlay network, and the state machine is implemented in hardware and can optimize at least one feature of the overlay network and a corresponding group of paths within the underlay network.


