TCP 常用知识笔记(简)-8

TCP重传

超时重传

在发送数据时,设置一个定时器,当超过指定时间还没收到ACK报文确认应答报文就重发该数据。
发生情况:数据包丢失,确认应答丢失。
超时重传时间RTO一般略大约RTT,并且会根据网络状况动态变化。

快速重传

快速重传以数据驱动重传,当连续收到三个相同的ACK且在定时器过期之前就触发重传重传报文。
问题:不知道是重传ACK的还是重传所有的。

SACK方法()

也是收到三个相同的ACK就触发重传,不过该方法会在TCP头部加一个sack字段用来将缓存的地图发送给对方,就可以知道哪些数据收到哪些数据没有收到,重传的时候就可以选择性重传。

D-SACK

主要使用SACK让发送方知道有哪些数据被重复接收了。
可以让发送方知道是发出去的包丢失了,还是ACK报文丢失了。
可以知道是否是发送方的包被网络延迟了。

猜你喜欢

转载自blog.csdn.net/weixin_43891021/article/details/114197795