0
点赞
收藏
分享

微信扫一扫

TCP流量控制与拥塞控制


流量控制:TCP通过滑动窗口来进行流量控制,维护一个发送窗口与一个接收窗口,接收窗口根据接收情况发送信息给发送窗口,发送窗口根据返回的信息确定发送的数据,并动态调整发送窗口大小,以避免发送速率太快,接收方来不及接收。


拥塞控制:慢开始、拥塞避免、快重传、快恢复

1.慢开始:发送方首先设置一个阈值,每收到一个报文段的确认就会将窗口大小+1,然后从1个报文段M1大小开始传送数据,收到接收方的确认后,就将发送窗口(拥塞窗口)大小增加一个报文段成为2,接下来发送报文段M2、M3,收到两个确认后,再将窗口加2设为4,接下来发送M4-M7......这样每经过一个传输轮次,拥塞窗口大小就翻倍。当发送窗口>阈值的时候,开始执行拥塞避免算法。

2.拥塞避免:当发送窗口大于阈值时,开始执行此算法,每经过一个传输轮次后将窗口增大一个报文段长度而不是翻倍。当网络出现超时时,将阈值减半,发送窗口减为1,重新开始执行慢开始算法。


3.快重传:接收方每收到一个失序的报文段就立即发出重复确认。比如当前接收方正确接收到了M1、M2两个报文,并返回了确认,发送方发送的M3在传输过程中丢失了,但是发送方并不知道,因此接着传输M4、M5、M6,接受方每收到上述一个报文,就知道M3丢失了,因此立即发出一个M2确认,这样发送方收到了四次M2确认,一次是正常的,后三个都是重复的,快重传算法规定,发送方只要一连收到三个重复的确认,就立即重传丢失的报文M3。而不是等待重传计时器到期。接下来执行快恢复算法。

4.快恢复:当发送链接收到三个重复确认后,可以判断出当前网络没有发生拥塞,但是为了预防网络发生拥塞,会与拥塞避免算法一样将门限设为最后一次传输窗口大小的一半,但是接下来不会进行慢开始算法,而是以当前门限为发送窗口大小,执行拥塞避免算法。

举报

相关推荐

0 条评论