Dynamic Receive Window Adjustment for Network Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The default TCP receive window parameter limits the amount of data that can be transmitted, which is insufficient for modern computer hardware capabilities, leading to potential underutilization of receiver buffer capacity and inefficient data transmission.
Innovation Solution
A method to dynamically control the size of the receive window based on the backlog parameter and round trip time, allowing for adaptive adjustment of the receive window size to maximize data transmission without overwhelming the receiver, using a transceiver, processors, and memory to determine and reset the window size according to acknowledgment packets and network conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the default TCP receive window parameter is used to prevent overwhelming the receiver, then receiver buffer overflow is avoided, but data transmission efficiency is reduced due to underutilization of receiver buffer capacity
Solution Approach 1:
The patent implements dynamic adjustment of the receive window size at the transmitting device based on real-time feedback from the receiver. The receiver sends backlog parameters indicating its current buffer status, and the transmitter dynamically modifies the receive window size accordingly, transitioning from a static default value to a dynamic adaptive value that optimizes both reliability and productivity
Solution Approach 2:
The patent establishes a feedback mechanism where the receiver continuously monitors its buffer backlog and communicates this information back to the transmitter through acknowledgment packets. The transmitter uses this feedback to adjust the receive window size, creating a closed-loop control system that balances buffer overflow prevention with efficient data transmission
2Productivity
If the receive window size is increased to utilize modern hardware capabilities, then data transmission efficiency is improved, but the receiver may be overwhelmed by excessive data
Solution Approach 1:
The receive window size is transformed from a fixed large value to a dynamic parameter that adjusts in real-time based on receiver conditions. The transmitter continuously adapts the window size according to backlog parameters received from the receiver, ensuring the window is large enough to utilize hardware capabilities but small enough to prevent overwhelming the receiver
Solution Approach 2:
The patent changes the receive window parameter from a static default value to a dynamically modified value based on receiver backlog conditions. The transmitter adjusts this parameter in response to feedback from the receiver, optimizing the balance between transmission efficiency and receiver capacity utilization
3Productivity
If dynamic adjustment of receive window size is implemented, then network performance is optimized, but system complexity increases
Solution Approach 1:
The receiver autonomously monitors its own buffer conditions and generates backlog parameters without external intervention. The transmitter autonomously adjusts the receive window size based on received feedback, creating a self-regulating system that optimizes performance without requiring complex external control mechanisms
Data Source
AI summary
A method of controlling size of a receive window includes transmitting packets over a communication channel from a transmitting device to a receiver, and receiving acknowledgment packets from the receiver, the received acknowledgement packets from the receiver including an advertised receive window size. The method further includes determining a backlog parameter for the receiver in accordance with the advertised receive window size, determining a queuing delay in accordance the received acknowledgment packets, resetting a size of a congestion window in accordance with a function of a current size of the congestion window and a factor proportional to the queuing delay, and resetting a size of a receive window in accordance with a function of a current size of the receive window and the backlog parameter. A network window is reset in accordance with the smaller of the size of the congestion window and the size of the receive window.


