NIC Fine-Grain Flow Control for Class-Level Congestion Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network architectures face challenges in managing flow-level congestion, leading to adverse impacts on non-congested data flows due to class-level congestion control, which affects all applications within a traffic class.
Innovation Solution
A network interface controller (NIC) equipped with FGFC logic and traffic management blocks identifies congestion-causing flows, applying fine-grain flow control by throttling only those flows using control frames like XOFF and XON, while allowing regular forwarding for others.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If class-level congestion control is applied, then congestion management is simplified, but non-congested data flows are adversely impacted
Solution Approach 1:
The patent segments traffic control at the flow level rather than class level. Each flow is identified using flow identifiers (such as 5-tuple or 7-tuple parameters) and maintained in separate flow tables within the NIC. This allows independent congestion control for each flow, so that throttling one flow does not affect other non-congested flows, thereby resolving the contradiction between control simplicity and throughput preservation.
Solution Approach 2:
The patent implements local quality by applying flow-specific congestion control policies. Instead of uniform class-level control, the system monitors individual flow characteristics and applies appropriate control measures (such as pause frames or credit-based throttling) only to congested flows. This localized approach preserves network throughput for non-congested flows while maintaining effective congestion management.
2Productivity
If fine-grain flow control is implemented, then individual flow management is improved, but NIC complexity increases
Solution Approach 1:
The patent merges flow control functionality directly into the NIC hardware structure. The NIC includes integrated flow control logic that combines packet classification, flow identification, congestion detection, and throttle control in a single device. This integration eliminates the need for complex external control systems while enabling fine-grain flow management, thus improving flow management efficiency without proportionally increasing overall system complexity.
Solution Approach 2:
The NIC implements self-service flow control by autonomously monitoring its own buffer status and generating appropriate control frames (such as pause frames or credit frames) without requiring external intervention. The NIC's flow control logic automatically identifies congested flows and applies throttling based on internal state information, enabling efficient fine-grain control while keeping the NIC design relatively simple through self-contained functionality.
3Ease of manufacture
If conventional flow control is used, then implementation is straightforward, but network capacity is limited
Solution Approach 1:
The patent introduces dynamic flow control mechanisms that adapt to changing network conditions. The NIC dynamically monitors buffer occupancy, packet arrival rates, and flow characteristics to adjust throttle levels in real-time. This dynamic approach allows the system to maximize network capacity by optimizing flow control parameters on-the-fly, while remaining implementable through standard NIC architectures with added software or hardware modules.
Solution Approach 2:
The patent utilizes parameter changes to enhance network capacity. By monitoring multiple flow parameters (such as packet size, inter-arrival time, priority levels) and adjusting control parameters accordingly, the system optimizes throughput for different traffic patterns. The NIC can change control parameters dynamically based on observed flow behavior, enabling higher network capacity while maintaining straightforward implementation through parameter-based control rather than complex structural changes.
Data Source
AI summary
A network interface controller (NIC) capable of facilitating fine-grain flow control (FGFC) is provided. The NIC can be equipped with a network interface, an FGFC logic block, and a traffic management logic block. During operation, the network interface can determine that a control frame from a switch is associated with FGFC. The network interface can then identify a data flow indicated in the control frame for applying the FGFC. The FGFC logic block can insert information from the control frame into an entry of a data structure stored in the NIC. The traffic management logic block can identify the entry in the data structure based on one or more fields of a packet belonging to the flow. Subsequently, the traffic management logic block can determine whether the packet is allowed to be forwarded based on the information in the entry.


