TCP的超时与重传

2019-05-17  本文已影响0人  食梦狸猫

TCP通过在发送时设置一个定时器来解决数据和确认可能丢失的情况。如果定时器溢出时还没有收到确认,那么它就重传该数据。
对于每个连接,TCP管理4个不同的定时器:

拥塞避免算法

慢启动算法是在一个连接上发起数据流的方法,但有时我们会到达中间路由器的极限,此时分组就被丢弃。需要拥塞避免算法来处理丢弃分组。

该算法假定由于分组受到损坏引起的丢失是非常少的,因此分组丢失就意味着在某处网络上发送了拥塞:发生超时和接收到重复的确认。

拥塞避免算法和慢启动算法需要对每个连接维持两个变量:一个拥塞窗口cwnd,一个慢启动门限ssthresh。

快速重传和快速恢复算法

快速重传算法:如果一连串收到3个或3个以上的重复ACK,就非常可能是一个报文段丢失了。于是就重传丢失的数据报文段,而无需等待超时定时器溢出。

当TCP超时重传时,它不一定要重传同样的报文段,TCP允许进行重新分组而发送一个较大的报文段。

上一篇下一篇

猜你喜欢

热点阅读