每日 27
TCP的拥塞控制:
核心机制
(1) 慢启动
目的:初始阶段快速探测可用带宽。
规则:
初始拥塞窗口(cwnd)设为1 MSS(最大报文段大小)。
每收到一个ACK,cwnd增加1 MSS(指数增长:每个RTT窗口翻倍)。
当cwnd达到慢启动阈值(ssthresh)时,进入拥塞避免阶段。
触发退出:发生丢包(超时或重复ACK)时,重置cwnd=1,ssthresh设为当前cwnd/2。
(2) 拥塞避免
目的:避免窗口增长过快导致拥塞。
规则:
每收到一个ACK,cwnd增加 1/cwnd(线性增长:每个RTT窗口+1 MSS)。
触发退出:若发生丢包,进入快速恢复(Reno)或慢启动(Tahoe)。
(3) 快速重传
目的:尽快恢复丢包,避免等待超时。
规则:
收到3个重复ACK时,立即重传丢失的报文,无需等待超时。
进入快速恢复阶段(Reno特有)。
(4) 快速恢复
目的:减少因单个丢包导致的性能损失。
规则:
将ssthresh设为当前cwnd/2,cwnd = ssthresh + 3 MSS(补偿已确认的3个重复ACK)。
每收到一个重复ACK,cwnd增加1 MSS。
收到新数据的ACK时,退出快速恢复,cwnd = ssthresh,进入拥塞避免。

浙公网安备 33010602011771号