90 likes | 211 Vues
This document provides a comprehensive overview of TCP congestion control mechanisms, focusing on the feedback control mechanism that utilizes the congestion window (cwnd) to manage the sending rate. It explains concepts like slow start, fast retransmission, and timeout behaviors, highlighting how cwnd is adjusted during different network conditions, including packet loss. Key variants such as Tahoe and Reno are discussed, detailing their approaches to congestion avoidance and recovery. Simulations illustrate the effects of dropped packets and the adaptation of cwnd to maintain effective data transmission.
E N D
Congestion Control in TCP • Feedback control mechanism • Using cwnd to control sending rate. cwnd += 1/cwnd for each successful transmission cwnd /= 2 for each packet loss • Slow start and timeout
Fast Retransmission Timeout Slow Start Microscopic View of TCP Behavior
cwnd Packet loss time Slow Start Congestion Avoidance Timeout Slow Start TCP Behavior
Tahoe TCP • Slow start • Congestion avoidance • Fast retransmission • To avoid long delay to detect packet loss • Triple duplicated acks trigger retransmission • Ssthreshold is set to a half of cwnd • Slowstart until cwnd reaches ssthreshold
Reno TCP • Avoid pipe to be empty after packet loss due to slow start. • fast recovery • Entering by a TCP sender after receiving an initial threshold of dup acks. • Cwnd is reduced to a half. • Usable window is inflated to cwnd + ndup. • Exit upon receipt of an ack for new data.
Exit from fast retrans. cwnd=7 Exit from fast retrans. cwnd=3 fast retrans. cwnd=3, ndup=5, uwnd=8 cwnd=7, ndup=13, uwnd=20 Microscopic View cwnd=15 cwnd=8