0%

tcp拥塞控制

拥塞控制

  1. 慢开始

    在发生拥塞(触发超时重传)时执行慢开始算法,发生拥塞时慢开始门限ssthresh减为原来一半。

    慢开始时把拥塞窗口cwnd设为1,每收到一个ack时cwnd+1,所以每经过一轮RTT后cwnd会乘2。

  2. 拥塞避免

    当拥塞窗口cwnd大于慢开始门限sstresh之后,cwnd每经过一轮RTT后自增1.

  3. 快重传

    有时网络没有拥塞但是个别报文也会丢失,这时候如果触发慢开始就会导致网络利用率下降,所以有了快重传算法。

    快重传就是在发射端连续接收到三个相同的ack时立刻对丢失的报文进行重传而不管重传计时器是否超时,之后进行快恢复而不是慢开始。

  4. 快恢复

    快恢复就是把拥塞窗口cwnd和慢开始门限都设置为触发快重传时cwnd的一半,然后执行拥塞避免。

20211218115702

总结

拥塞窗口小于慢开始门限时,执行慢开始算法,拥塞窗口指数增长;拥塞窗口大于慢开始门限时,执行拥塞避免算法,拥塞窗口线性增长。

在没有发生拥塞时,拥塞窗口增大;在可能发生拥塞时,拥塞窗口减小。

判断网络是否发生拥塞的依据为是否触发超时重传。

Welcome to my other publishing channels