引言
TCP拥塞控制,有以下四种算法:
- 慢开始算法
- 拥塞避免算法
- 快重传机制(冗余ACK)---> 快恢复算法
一、区分"TCP拥塞控制" 和 "TCP流量控制"
- 流量控制:控制端到端的数据发送量,是"局部的"
比如下图中,A和D相互发送数据,要做流量控制

- 拥塞控制:控制整个网络 中每台主机的数据发送量,降低路由器负载,是"全局的"
比如下图中,整个网络的数据传输,要做拥塞控制

二、如何判断网络拥塞?
- 发出的每个报文段,都能顺利地收到ACK确认一一不拥塞
- 发出的报文段未能按时收到ACK,引发超时重传一一严重拥塞
- 收到冗余ACK,引发快重传一一有点拥塞
1. 如果检测到网络拥塞怎么办?
- 迅速减少发送的数据量
- 严重拥塞就迅速缩小拥塞窗口
- 有点拥塞就适当缩小拥塞窗口