Wide LAG and ECMP Flow Channels for Ordered Congestion Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network architectures face challenges in scalability, versatility, and efficiency due to increasing network load and diverse traffic types, particularly in high-performance computing and IoT applications, with conventional congestion control being slow and ineffective.
Innovation Solution
Implementing flow channels with flow-specific queuing and acknowledgement-based congestion management, allowing dynamic setup and teardown of packet streams using flow IDs, enabling distributed control without a central controller, and ensuring fair treatment and quick response to traffic changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional network architectures are used, then device simplicity is maintained, but network scalability and efficiency deteriorate due to increasing network load and diverse traffic types
Solution Approach 1:
The patent segments packet streams into flow channels with dedicated buffers, separating different traffic types and applications. Each flow channel is identified by a flow ID and has its own buffer, allowing independent congestion control and preventing head-of-line blocking. This segmentation enables the network to handle diverse traffic types efficiently without requiring complete architectural complexity.
Solution Approach 2:
The patent implements dynamic flow channel setup and teardown based on packet arrival patterns. Flow channels are created when new packets arrive and are deallocated when no packets are present for a specified time. This dynamic behavior allows the network to adapt to varying traffic loads and applications, improving efficiency without maintaining permanent complex structures.
2Reliability
If flow channels with dedicated buffers are implemented, then packet delivery reliability is improved, but buffer overflow risk increases without proper congestion control
Solution Approach 1:
The patent implements feedback-based congestion control where the network monitors buffer occupancy levels and adjusts packet transmission accordingly. When a flow channel's buffer approaches capacity, the system applies feedback mechanisms to throttle or pause packet transmission, preventing buffer overflow while maintaining reliable packet delivery. This feedback loop ensures that the dedicated buffers serve their reliability function without causing harmful overflow conditions.
3Productivity
If centralized control is used for flow management, then control simplicity is maintained, but system scalability deteriorates due to single point of failure and control bottleneck
Solution Approach 1:
The patent implements self-service flow management where each flow channel autonomously manages its own buffer and congestion control. Flow channels automatically setup when packets arrive and deallocate when idle, without requiring centralized control. This self-service approach enables system scalability by distributing control logic throughout the network, eliminating single points of failure while maintaining manageable complexity through standardized flow channel operations.
4Productivity
If packets are forwarded through multiple output ports for LAG and ECMP, then network utilization is improved, but packet ordering and flow control become more difficult
Solution Approach 1:
The patent segments packet streams into distinct flow channels identified by flow IDs, allowing multiple packets to be forwarded through different output ports simultaneously. Each flow channel maintains its own buffer and ordering, so while network utilization is improved through parallel paths, packet ordering within each flow is preserved. This segmentation makes flow control manageable by treating each flow independently rather than as a monolithic stream.
Data Source
AI summary
Methods and systems are provided for controlling wide LAG and ECMP in a network. At the ingress edge of the network, a switch can identify packets as LAG or ECMP packets, and allow them to be forwarded through the switch fabric using multiple output ports or paths.


