TCP Congestion Window Acceleration via Receive Window Feedback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In high-speed TCP links, the initial slow start algorithm for congestion avoidance often leads to underutilization of network speed and TCP receive window buffer capacity, resulting in suboptimal throughput.
Innovation Solution
Implementing a TCP congestion-avoidance algorithm that sets the congestion window (CWND) value to the maximum receive window (RWND) value received in acknowledgement packets, allowing for accelerated CWND growth and increased throughput by efficiently filling the receive window buffer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the initial slow start algorithm is used for congestion avoidance, then the network can prevent overload, but the network speed and receive window buffer capacity are underutilized
Solution Approach 1:
The patent applies preliminary action by pre-calculating and setting the congestion window (CWND) to a larger initial value based on the receive window (RWND) from acknowledgment packets, rather than starting from a small value and slowly increasing. This allows the TCP sender to immediately utilize more of the available network capacity and receive window buffer capacity from the beginning of the connection, avoiding the underutilization problem of the traditional slow start algorithm.
2Productivity
If the congestion window is increased to maximize throughput, then network capacity utilization improves, but the risk of network overload increases
Solution Approach 1:
The patent applies feedback by continuously monitoring the advertised receive window (RWND) values from acknowledgment packets and dynamically adjusting the congestion window (CWND) accordingly. The sender uses the maximum RWND value received in ACK packets to set appropriate CWND values, ensuring that throughput is maximized while respecting the receiver's buffer capacity and avoiding network overload. This feedback mechanism allows the system to adapt to changing network conditions and receiver capabilities.
Data Source
AI summary
A device can transmit, to a transmission control protocol (TCP) receiver, a quantity of packets based on a congestion window (CWND) value. The device can receive, from the TCP receiver, a quantity of acknowledgement (ACK) packets, that include a corresponding quantity of advertised receive window (RWND) values, based on transmitting the quantity of packets. The device can determine a maximum value for an updated CWND based on the CWND value and the corresponding quantity of RWND values. The device can provide a quantity of additional packets, to the TCP receiver, based on the maximum value for the updated CWND to cause the TCP receiver to selectively increase a size of a receive buffer.


