拥塞控制
最后更新于:2022-04-02 04:07:04
[TOC]
## 概述
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/7d/cb/7dcbd185b97236ec43a7ae60280a98b5_2090x344.png)
1. 一条数据链路经过非常多的设备
2. 数据链路中各个部分都有可能成为网路传输的瓶颈
3. 通过报文超时则认为是拥塞
## 与流量控制的区别
1. 流量控制考虑点对点的通信量的控制
2. 拥塞控制考虑整个网络,是全局性的考虑
## 拥塞方法
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/57/39/573964bed82434d835183f9bffd1b562_1608x914.png)
### 慢启动算法
1. 由小到大逐渐增加发送数据量
2. 每收到一个报文确认,就加一
数据量从`1 -> 2 -> 4 ->8 -> 16 `,进行指数镇长,直到到达慢启动阈值(ssthresh)
到达慢启动阈值后切换为拥塞避免算法
### 拥塞避免算法
1. 维护一个拥塞窗口的变量
2. 只要网络不拥塞,就试探着拥塞窗口调大
从 `16 -> 17 -> 18`,慢慢增大
';