TCP的滑动窗口

RTT:发送一个数据包到收到对应的ACK,所花费的时间。
就是Server发送一个数据包然后对方回应一个ACK的时间,当Server接收到ACK之后,就能计算出从Server发出包到接收到回应的时间。
RTO:重传时间间隔。
TCP在发送一个数据包之后,会启动一个重传定时器,RTO就是这个定时器的重传时间。如果收到回复的ACK,重传时间就自动失效,如果没有收到回复的ACK,RTO定时器的时间也到了,发送方就重传。由于RTO是本次发送当前数据包所预估的超时时间,那么RTO就需要一个很好的算法来统计,来更好的预测这次超时时间。RTO不是固定写死的配置,而是经过RTT计算出来的。有了RTT才能计算出RTO。

TCP会将数据拆分成段进行传输,处于效率和传输速率的考虑,我们不可能等数据一段一段的发送,等到上一段数据被确认收到之后在发送下一段数据,这个效率是很低的,我们是要实现对数据进行批量发送,TCP必须要解决数据的可靠传输,以及包括乱序的问题。所以TCP需要知道网络实际的数据处理带宽或数据处理速度,这样才不会引起网络拥塞,导致丢包。

TCP使用滑动窗口做流量控制与乱序重排,TCP的滑动窗口主要有两个作用:

  1. 保证TCP的可靠性。
  2. 保证TCP的流控特性。
    WIndow用于发送方通知接收方还有多少缓冲区可以接收数据。发送方根据接收方的处理能力来发送数据,不会导致接收方处理不过来,这便是流量控制。同时滑动窗口机制还提供了TCP面向字节流的设计思路。
    窗口大小可以动态调整。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值