当前位置: 首页 > news >正文

网络协议封神考点:TCP拥塞控制的4个步骤(慢启动+拥塞避免+快重传+快恢复)原理+流程图+详解

网络协议封神考点:TCP拥塞控制的4个步骤(慢启动+拥塞避免+快重传+快恢复)原理+流程图+详解

    • 一、前言
    • 二、什么是 TCP 拥塞控制?
    • 三、TCP 拥塞控制 4 个核心步骤(必背)
    • 四、TCP 拥塞控制完整流程图
    • 五、拥塞控制 4 大步骤详细讲解
      • 5.1 步骤1:慢启动(Slow Start)
      • 5.2 步骤2:拥塞避免(Congestion Avoidance)
      • 5.3 步骤3:快速重传(Fast Retransmit)
      • 5.4 步骤4:快速恢复(Fast Recovery)
    • 六、关键异常:超时发生会怎样?
    • 七、拥塞控制参数说明
    • 八、高频面试题(满分答案)
      • 8.1 TCP 拥塞控制有哪 4 个步骤?
      • 8.2 慢启动的特点?
      • 8.3 拥塞避免的特点?
      • 8.4 收到 3 个重复 ACK 会进入什么阶段?
      • 8.5 发生超时会怎样?
    • 九、总结(最强记忆版)
      • TCP 拥塞控制四步走:
    • 文末小贴士

🌺The Begin🌺点点关注,收藏不迷路🌺

一、前言

TCP 作为互联网的核心传输协议,不仅要保证可靠传输,还要保证网络不被挤崩
如果发送方一直疯狂发包,路由器和接收方都会彻底瘫痪。

因此 TCP 专门设计了拥塞控制机制,这是面试、网络原理、性能调优的必考大题

本文带你用最清晰的步骤、最易懂的流程图、最标准的表述,彻底讲透 TCP 拥塞控制。


二、什么是 TCP 拥塞控制?

拥塞控制 =TCP 自动感知网络拥堵程度,动态调整发包速度,防止网络过载。
它通过拥塞窗口 cwnd控制发送速度。

三、TCP 拥塞控制 4 个核心步骤(必背)

TCP 拥塞控制一共4 个阶段

  1. 慢启动(Slow Start)
  2. 拥塞避免(Congestion Avoidance)
  3. 快速重传(Fast Retransmit)
  4. 快速恢复(Fast Recovery)

下面逐步骤图文详解。


四、TCP 拥塞控制完整流程图

建立连接

慢启动
cwnd 指数增长

到达 ssthresh?

拥塞避免
cwnd 线性增长

出现3个重复ACK?

快速重传

快速恢复
cwnd 折半,线性增长

发生超时

sshthresh减半
cwnd=1
回到慢启动


五、拥塞控制 4 大步骤详细讲解

5.1 步骤1:慢启动(Slow Start)

目标:刚开始慢慢发包,试探网络状况。
规则

  • 初始 cwnd = 1、2、4(通常是 1)
  • 每收到 1 个 ACK,cwnd +1
  • 一个 RTT 后,cwnd 翻倍(指数增长)
  • 增长非常快

特点
从慢开始,但速度飙升极快,快速占满带宽。


5.2 步骤2:拥塞避免(Congestion Avoidance)

触发条件:cwnd ≥ ssthresh(慢启动门限)
目标:防止网络突然拥塞,平稳增长。
规则

  • 一个 RTT 内,cwnd+1
  • 线性缓慢增长
  • 谨慎增加速度,避免拥塞

5.3 步骤3:快速重传(Fast Retransmit)

触发条件:收到3 个重复 ACK
目标:立即丢包重传,不等超时。
规则

  • 不等定时器超时
  • 直接重传丢失的包
  • 立刻进入快速恢复

5.4 步骤4:快速恢复(Fast Recovery)

触发条件:快速重传之后
规则

  1. ssthresh = cwnd / 2
  2. cwnd = ssthresh + 3
  3. 进入线性增长
  4. 恢复正常后,回到拥塞避免

特点
不用回到 cwnd=1 的慢启动,速度恢复更快。


六、关键异常:超时发生会怎样?

如果发生超时,说明网络严重拥塞:

  1. ssthresh = cwnd / 2
  2. cwnd 重置为 1
  3. 重新回到慢启动

这是最严厉的降速。


七、拥塞控制参数说明

  • cwnd:拥塞窗口,发送方控制速度
  • rwnd:接收窗口,流量控制
  • ssthresh:慢启动门限,区分慢启动/拥塞避免
  • 实际发送窗口 = min(cwnd, rwnd)

八、高频面试题(满分答案)

8.1 TCP 拥塞控制有哪 4 个步骤?

慢启动、拥塞避免、快速重传、快速恢复。

8.2 慢启动的特点?

cwnd 指数增长,速度飙升快。

8.3 拥塞避免的特点?

cwnd 线性增长,平稳谨慎。

8.4 收到 3 个重复 ACK 会进入什么阶段?

快速重传 → 快速恢复。

8.5 发生超时会怎样?

cwnd 重置为1,ssthresh 减半,回到慢启动。


九、总结(最强记忆版)

TCP 拥塞控制四步走:

  1. 慢启动:指数起飞
  2. 拥塞避免:线性慢涨
  3. 快速重传:丢包立刻重传
  4. 快速恢复:折半线性恢复

一句话记忆:
慢启动狂飙,拥塞避免缓,三ACK快恢复,超时重来慢启动。


文末小贴士

在 Wireshark 里可以看到:
cwndssthresh
是网络速度、延迟、拥塞分析的核心字段!



🌺The End🌺点点关注,收藏不迷路🌺
http://www.jsqmd.com/news/594134/

相关文章:

  • 【仿真测试】基于FPGA的完整16QAM通信链路实现,含频偏锁定,帧同步,定时点,Viterbi译码,信道,误码统计
  • 基于 LangGraph 的 Agentic RAG 核心架构
  • 2024年无锡企业AI快手推广服务商深度测评与选择指南 - 2026年企业推荐榜
  • ​Problem - 2180D - Codeforces​
  • SingleWireDataBus:轻量级嵌入式单总线通信协议
  • 2025 年 11月 11日 - KB5068861(OS内部版本 26200.7171和 26100.7171)
  • Bugtton:ATmega328P专用超低开销按钮消抖库
  • STM32远程固件升级(FOTA)实现方案详解
  • @JsonFormat的作用和用法
  • STM32驱动X-NUCLEO-IHM02A1实现工业级步进电机控制
  • Go语言的gRPC服务开发
  • Windows 系统文件修复:SFC + DISM
  • 单片机BootLoader设计与实现指南
  • 前端可访问性:让所有人都能使用你的应用
  • 构建具备 Cyclic Loop(循环反思) 与 Self-Correction(自我修正) 能力的企业级 Agent
  • 2026海岸防护工程核心装备选型:螺母块体钢模租赁服务商五强榜单深度解读 - 2026年企业推荐榜
  • 2025届学术党必备的降重复率工具横评
  • 告别 AI 对话 “失忆”!Spring AI 聊天记忆底层原理与全场景落地实战
  • 2026年4月矿山煤矿电力电缆生产厂家推荐:涵中低压、低压、中压等 - 品牌2026
  • 前端缓存策略:让你的应用飞起来
  • 2026年石油石化电力电缆生产厂家推荐:含中低压、低压、中压等(4月版) - 品牌2026
  • 2026年吸粉机选型指南:五大实力源头厂家深度解析与场景化推荐 - 2026年企业推荐榜
  • 2026届学术党必备的降AI率平台横评
  • 3种方案玩转赛博朋克2077存档修改:从入门到精通的技术指南
  • 2024 ICPC National Invitational Collegiate Programming Contest, Wuhan Site 2024 ICPC 邀请赛 武汉
  • 读懂公司第一篇-现金流表深度解读 - 智慧园区
  • 到底什么是 TCP 连接:从三次握手到四次挥手,从数据结构到状态机
  • 爬虫对抗实战 - ZLibrary 反爬机制分析与突破
  • Spring-AI 第 14 章 - 语音消息处理详解
  • TCP 是用来解决什么问题:从 IP 的不可靠到可靠的端到端通信