TCP协议的拥塞控制

拥塞控制:发送方需要维护的一个状态变量,它将决定着发送方同时可以发送多少个数据包。【例如:道路上的交通警察,要及时指挥车辆的行驶,从而使道路通畅无阻】

影响因素:拥塞控制受数据包的数量影响,数据包数量越多则拥塞的可能性越大,反之越小。

拥塞控制的解决方法:【慢开始,拥塞避免,快重传,快恢复】

由此图来理解四个方法:

TCP协议的拥塞控制_第1张图片

慢开始:从图中可以看出,拥塞窗口从1开始,由小增大,并且值的变化是翻倍增长的,越来越大。

拥塞避免:当拥塞窗口由慢开始增长到一个名为“ssthresh的初始值”时,不再翻倍增长而是每次增加1,此为拥塞避免的“加法增大”,降低了拥塞窗口的增长速度。

快重传:在进行拥塞避免的时候,在接收方要求每次接收到的报文段后,都要对最后一个已收到的报文段进行确认,然后发送方只要一连收到三个重复确认就应当立即重传对方尚未收到的报文段。

快恢复:由图可以看出快恢复和快重传是紧密相连的,在执行快重传结束时,就执行了快恢复,快恢复则是把“ssthresh的值”设置为快重传最后一次执行值的一半,然后通过拥塞控制的“加法增大”进行线性的增长,降低了发送方发送的速率,解决了拥塞问题。

你可能感兴趣的:(java,tcp/ip,网络,服务器)