复习-TCP拥塞控制

aaakz0347 发布于 2025-06-12 43 次阅读



1. 慢启动(Slow Start)

  • 初始 cwnd=1(拥塞窗口大小)。
  • 每收到一个 ACK,cwnd 翻倍增长(指数级增长)。
  • 图中前 0~3 轮次,cwnd 依次从 1 → 2 → 4 → 8。
  • cwnd 达到 慢启动门限 ssthresh=8 时,进入下一个阶段。

2. 拥塞避免(Congestion Avoidance)

  • 增长速度放缓:每收到一轮 ACK,cwnd 只加 1(线性增长)。
  • 图中 4~7 轮次,cwnd 从 8 → 9 → 10 → 11 → 12。

3. 快重传(Fast Retransmit)

  • 当收到 3 个重复的 ACK 时,认为发生了丢包。
  • 触发快速重传机制:
    1. ssthresh = cwnd/2(原来是 12,变为 6)。
    2. cwnd 收缩为 ssthresh + 3 = 9(表示立刻进入快恢复,而不是退回到 1)。
  • 图中第 7 轮,cwnd=12 发生丢包,收到 3 个重复 ACK,进入快重传。

4. 快恢复(Fast Recovery)

  • 进入快恢复状态时,cwnd = ssthresh + 3
  • 在收到重复 ACK 时,cwnd 增加 1。
  • 图中第 8~10 轮次,cwnd 从 9 → 10 → 11。
  • 当收到新的数据 ACK 时,说明丢包数据已经恢复传输,此时:
    • cwnd = ssthresh = 6
    • 退出快恢复,进入 拥塞避免阶段

5. 拥塞避免(再次进入)

  • 图中第 12~15 轮,cwnd 从 6 → 7 → 8 → 9,线性增长。

✅ 总结一下几个阶段的特点:

  • 慢启动:指数增长(快,但风险高)。
  • 拥塞避免:线性增长(慢,但稳)。
  • 快重传:检测到丢包时,不等超时,立刻重传。
  • 快恢复:不回退到 1,而是 cwnd=ssthresh,快速恢复到稳定增长。
此作者没有提供个人介绍。
最后更新于 2025-09-21