TCP/IP基础04:拥塞控制

我与影子孤独终老i 提交于 2020-01-31 05:42:02

1 拥塞

1.1 什么是拥塞?

   拥塞是一种持续过载的网络状态,此时用户对网络资源(包括链路带宽、存储空间和处理器处理能力等)的需求超过了固有的容量。一句话说就是,接收方一口气收到了太多的数据,处理不了了。

1.2 解决方法

  限制发送方的发送窗口。
  而发送方的发送窗口是由两方面决定的。1、接收方的接受窗口。2、网络影响。

2 拥塞处理

2.1 拥塞处理流程

  1、刚开始时,对于网络状况一无所知,所以需要把初始值设置的比较小。RFC建议2-4个MSS。
  2、如果发出去的包都得到了确认,表明没有达到拥塞点,可以增大拥塞窗口。如果初始值为2的话,那么每次收到2个ACK,那么发送窗口就会增大2。1-2这个过程被称为慢启动过程。
  3、当窗口的值达到ss阈值之后,如果继续,传输速度比较快,那么拥塞的概率就会变大。此时RFC建议每一个RTT窗口加1。这一个过程称为拥塞避免。 如果没有发生拥塞的话就可以和最大接受窗口相同。
  4.1、当发生网络拥塞时,会出现重传,如果发生超时重传,那么发送窗口会初始值开始,重新开始慢启动。此时不但慢启动耗时,而且还会等待RTO的时间。影响网络的传输。 图片引用自:https://blog.csdn.net/rock_joker/article/details/76769404
  4.2、当发生快速重传时(发送方收到大于3个ACK)(之所以时快速,是因为不需要和超时重传一样等待一段时间)。此时重新开始重传时,重传的窗口大小为拥塞时窗口大小的一半;并且继续保留在拥塞避免阶段。 这个阶段称为快恢复。
在这里插入图片描述

Q:SS阈值怎么设定?

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!