TCP Slow Start Passive Bandwidth Estimation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The current TCP slow start technique often underestimates link capacity over wireless links due to mistaking occasional wireless loss for congestion loss, leading to premature exit from the slow start state and under-utilization of wireless link capacity, and causes 'buffer bloat' due to conservative threshold settings.
Innovation Solution
A passive bandwidth estimation method that determines the maximum delivery rate of a wireless link by repeatedly sending packets over consecutive time periods and exiting the slow start state when the link reaches maximum capacity, using a server device to calculate the optimal congestion window size without active measurement traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If TCP slow start technique is used to detect maximum available bandwidth, then link capacity estimation is improved, but wireless loss is mistakenly treated as congestion loss causing premature exit from slow start state
Solution Approach 1:
The patent dynamically adjusts the slow start threshold based on packet delivery rates observed during the slow start phase. Instead of using a fixed threshold, the system continuously monitors delivery rates and adapts the threshold accordingly, allowing the TCP connection to remain in slow start state longer and more accurately detect maximum available bandwidth while accounting for wireless loss conditions.
Solution Approach 2:
The system implements feedback by monitoring packet delivery rates during the slow start state and using this information to determine whether to exit the slow start state. The feedback mechanism compares observed delivery rates against dynamically adjusted thresholds, ensuring that exit decisions are based on actual congestion conditions rather than transient wireless loss events.
2Reliability
If conservative threshold settings are used to avoid premature exit, then reliability is improved, but buffer bloat occurs due to excessive buffering
Solution Approach 1:
The patent employs dynamic threshold adjustment where the slow start threshold is not fixed but adapts based on observed packet delivery rates. This dynamic approach allows the system to use aggressive thresholds when delivery rates indicate good conditions, reducing buffering latency, while automatically becoming more conservative when delivery rates suggest congestion, thereby preventing buffer bloat.
Solution Approach 2:
The system changes the threshold parameter dynamically during operation rather than using a static conservative value. By monitoring delivery rates and adjusting the threshold parameter in real-time, the system optimizes the balance between reliable congestion detection and minimizing buffering latency, avoiding both premature exit and excessive buffering.
3Productivity
If aggressive congestion window growth is used during slow start, then productivity is improved, but underestimation of link capacity occurs due to wireless loss
Solution Approach 1:
The patent uses feedback from observed packet delivery rates to guide congestion window growth during slow start. Instead of following a fixed aggressive growth pattern, the system adjusts its behavior based on actual delivery rate measurements, allowing aggressive growth when conditions permit while preventing premature termination when wireless loss occurs, thereby accurately detecting maximum link capacity.
Solution Approach 2:
The congestion window growth pattern is made dynamic rather than static. The system adapts the growth rate and termination conditions based on real-time observations of packet delivery rates, enabling aggressive productivity improvement when the wireless link can sustain it while maintaining accurate link capacity detection by responding to actual network conditions.
Data Source
AI summary
A device establishes a wireless link with a user device via a network and selects a time period for a slow start state of the wireless link. The device enters the slow start state after selecting the time period and repeatedly provides a quantity of packets over consecutive time periods to the user device. The device determines a delivery rate for each time period, of the consecutive time periods, based on the quantity of packets provided each time period and determines a maximum delivery rate for the delivery rates of the consecutive time periods. The device determines that the wireless link is at a maximum capacity when a current delivery rate satisfies a threshold rate, based on the maximum delivery rate, after a threshold time period of the consecutive time periods and exits the slow start state based on the wireless link being at the maximum capacity.


