Flow-Level Transmit Control for Microburst Congestion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current congestion control techniques in networks suffer from inefficiencies such as microbursts, network-wide deadlocks, and imprecise congestion notifications, leading to packet drops and decreased performance.
Innovation Solution
A system utilizing a flow-level transmit mechanism with a source and receive SFA that generates and processes congestion notification packets (CNP) to identify and throttle specific transmit queues causing congestion, providing fast and precise congestion control.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If segment offloading is applied to reduce processing overhead, then CPU processing overhead is reduced, but microbursts are created that overflow packet buffers and cause packet drops
Solution Approach 1:
The patent segments the congestion control mechanism into multiple components: receive-side congestion detection (separate from transmit processing), dedicated CNP queues (separate from data queues), and flow-specific transmit queue control. This segmentation allows congestion notification to be processed independently without interfering with high-speed data transmission, preventing microbursts while maintaining low CPU overhead.
Solution Approach 2:
The patent introduces congestion notification packets (CNP) as an intermediary mechanism between receiver and transmitter. The CNP serves as a dedicated control message that carries congestion information without being mixed with data traffic, allowing the receiver to notify the transmitter of congestion conditions without causing buffer overflow or microbursts.
2Reliability
If priority-based flow control (PFC) is used to relieve congestion, then specific CoS flows are paused, but all flows of the same CoS group pause causing network-wide deadlocks
Solution Approach 1:
The patent applies local quality by implementing flow-level granularity in congestion control. Instead of pausing all flows of a CoS group (global action), the system identifies and pauses only the specific transmit queue that caused the congestion (local action). This is achieved through CNP classification that identifies the source flow and selective transmit queue stopping, maintaining productivity of other flows while providing congestion relief.
3Loss of information
If explicit congestion notification (ECN) is used, then congestion information is transmitted from receiver to sender, but the response is slow and imprecise causing traffic to continue at full rate
Solution Approach 1:
The patent implements preliminary action by having the receiver proactively generate and send CNP packets as soon as congestion is detected in receive queues, before the transmitter can cause further buffer overflow. The CNP is prepared and transmitted immediately, enabling the sender to slow down transmission in advance, preventing packet drops and reducing response time compared to traditional ECN.
Solution Approach 2:
The patent replaces the traditional ECN mechanical system (marking packets, relying on receiver notification, software-based flow throttling) with a more direct mechanism: dedicated CNP packets transmitted through dedicated queues, with hardware-assisted transmit queue stopping. This substitution eliminates the delay inherent in traditional ECN processing and provides immediate, precise flow control.
Data Source
AI summary
A system for congestion control using a flow level transmit mechanism is disclosed. In some embodiments, the system comprises a source SFA and a receive SFA. The source SFA is configured to detect and classify a congestion notification packet (CNP) generated based on congestion in a network; select a receive block from a plurality of receive blocks based on the CNP; forward the CNP to a dedicated congestion notification queue of the receive block; identify a transmit queue from a plurality of transmit blocks based on processing the congestion notification queue, wherein the transmit queue originated a particular transmit flow causing the congestion; and stop the transmit queue.


