Network Congestion Avoidance via Transport Layer Feedback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional techniques are ineffective in preventing or controlling network congestion, especially in latency-sensitive and large-scale distributed applications, where bursty traffic loads can cause rapid congestion that traditional after-the-event response methods struggle to mitigate effectively.
Innovation Solution
A system that detects the onset of congestion by comparing arrival and egress rates in network queues, generates control messages with unique congestion-point identifiers to delay messages, and propagates these messages through the network to prevent further congestion, using a wavefront of 'freeze' control messages to throttle back bursting messages before they reach congested points.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If conventional after-the-event response techniques are used to mitigate congestion, then network simplicity is maintained, but latency-sensitive applications suffer from increased and variable latency
Solution Approach 1:
The patent implements preliminary action by detecting congestion onset at the transport layer before it propagates to lower layers and causes packet loss. The system proactively identifies when queues are approaching full capacity and takes preventive measures (such as notifying senders to slow down) before actual congestion occurs, thereby avoiding latency increases and packet retransmissions while maintaining network simplicity
2Device complexity
If conventional response techniques are used to reduce offered load, then network core simplicity is preserved, but large-scale distributed applications with bursty traffic cannot be effectively mitigated
Solution Approach 1:
The patent implements feedback by establishing a control path between low-layer queues and higher-layer flow control entities. When congestion is detected at the queue level, feedback signals are sent to transport layer entities, which then adjust their sending rates. This multi-layer feedback mechanism enables effective congestion mitigation for bursty traffic in large-scale distributed applications while keeping the network core simple
Solution Approach 2:
The system performs preliminary congestion detection and response at the transport layer, preventing congestion before it reaches the network core. By anticipating congestion conditions and taking preventive action early in the protocol stack, the system effectively handles bursty traffic patterns without requiring complex network core intervention
3Device complexity
If no flow control is implemented at lower layers, then protocol simplicity is maintained, but rapid traffic bursts can oversubscribe underlying memories and queues causing congestion
Solution Approach 1:
The patent introduces feedback-based flow control that operates transparently to existing protocols. Queue depth information is fed back to senders, enabling them to self-regulate their transmission rates. This maintains protocol simplicity while preventing throughput instability caused by bursty traffic oversubscribing network resources
Data Source
AI summary
One embodiment of the present invention provides a system that avoids network congestion. During operation, the system can detect an onset of congestion in a first queue at a first node. Next, the first node can generate a first control-message, wherein the first control-message contains a congestion-point identifier which is associated with the first queue. The first node can then send the first control-message to a second node, which can cause the second node to delay sending a second message to the first node, wherein the second message is expected to be routed through the first queue at the first node. Next, the second node may propagate the control-message to a third node which may cause the third node to delay sending a third message to the second node, wherein the third message is expected to be routed through the first queue at the first node.


