Flow-Aware ECMP Nexthop Selection via Pre-Allocated Slots
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing ECMP routing technologies face challenges in maintaining flow resilience and minimizing disruptions due to nexthop additions or deletions, leading to potential flow disruptions and inefficiencies in load balancing across network paths.
Innovation Solution
Implementing customer-configurable ECMP nexthop selection functions across network elements, which allows for flow-aware policies and dynamic management of nexthop mappings to minimize disruptions and optimize path selection, using a centralized controller to distribute and configure these functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If randomization per network element is introduced to increase randomness and avoid polarization of traffic, then load balancing is improved, but flow consistency deteriorates when next hops are added or withdrawn
Solution Approach 1:
The patent applies preliminary action by pre-allocating ECMP group table slots for nexthops before they are added to the ECMP group. When a nexthop is added, its slot is reserved in advance, ensuring that existing flows are not remapped. This prevents flow disruption while allowing load balancing across multiple nexthops.
Solution Approach 2:
The patent introduces an intermediary mechanism - the ECMP group table with pre-allocated slots - that mediates between the need for random load balancing and flow consistency. The table structure with dedicated slots for each nexthop acts as an intermediary that maintains flow-to-nexthop mappings stable even when ECMP group membership changes.
2Adaptability or versatility
If nexthops are dynamically added or withdrawn from ECMP group, then network adaptability is improved, but flow disruption increases
Solution Approach 1:
The patent applies preliminary action by pre-allocating ECMP group table slots for nexthops before they are added to the ECMP group. When a nexthop is added, its slot is reserved in advance, ensuring that existing flows are not remapped. This prevents flow disruption while allowing load balancing across multiple nexthops.
Solution Approach 2:
The patent implements dynamics by allowing the ECMP group membership to change dynamically while maintaining flow consistency. The system adapts to nexthop additions and withdrawals by using pre-allocated slots and flow-aware policies, enabling the network to be dynamic without disrupting established flows.
3Productivity
If packet flows are remapped to different ECMP next hops when next hops change, then load balancing is improved, but flow disruption increases
Solution Approach 1:
The patent applies preliminary action by pre-allocating ECMP group table slots for nexthops before they are added to the ECMP group. When a nexthop is added, its slot is reserved in advance, ensuring that existing flows are not remapped. This prevents flow disruption while allowing load balancing across multiple nexthops.
Solution Approach 2:
The patent applies local quality by treating each ECMP group table slot as having a specific quality - it is dedicated to a particular nexthop. This local dedication ensures that flows mapped to a slot remain consistent even when other ECMP group members change, while still allowing overall load balancing across different slots.
Data Source
AI summary
A method and apparatus of a network element that processes network data in an equal cost multi-path (ECMP) group is described. In an exemplary embodiment, the network element receives the network data, where the network data is part of network data flow. In addition, the network element detects that the network data flow is a new network data flow and selects a transmitting nexthop from a plurality of nexthops of the ECMP group. The network element further maps the new network flow to a slot of a table in an ECMP group and transmits the network data using the transmitting nexthop.


