资讯专栏INFORMATION COLUMN

计算机网络——TCP超时重传时间的选择

zlyBear / 2389人阅读

摘要:超时重传时间的选择是最复杂的问题之一,超时重传时间在很大程度上影响了的传输效率。但网络是很复杂的,基于一次样本的测量是无法确定的,就比如给发送的数据报文段,它的往返时间很可能因为网络质量的波动,而导致往返时间大于超时重传时间。

    超时重传时间的选择是TCP最复杂的问题之一,超时重传时间RTO在很大程度上影响了TCP的传输效率。

    如上图所示的通信过程,A首先向B发送数据报文段0,并接收来自B的确认报文段,这中间的时间称为往返时间RTT,因此我们选择的超时重传时间RTO应当略大于往返时间RTT,如果太小了就会导致A在收到确认报文之前就进行了重传。
    但网络是很复杂的,基于一次样本的测量是无法确定RTO的,就比如A给B发送的数据报文段1,它的往返时间很可能因为网络质量的波动,而导致往返时间大于超时重传时间。

    因此,我们需要选择新的、更加合理的RTO计算方案。如上图所示的计算公式,考虑到了新的RTT样本给RTO带来的影响,进行了加权处理。
    在根据RTT计算出RTO后,当又获得了新的RTT样本,那么就要综合两个RTT时间,给新老RTT赋予不同的权值,新的RTTs=(1-α)x 旧RTTs + α x 新的RTT样本值,而新的RTO由RTTs和RTTD两部分组成,RTTD的计算公式也如图上所示。

    在对RTT样本进行采集时,也可能会出现一定的问题。如上图所示,如果A发送的报文段丢失了,在到达重传时间后进行该报文的重传,并收到了针对重传报文的确认,而如果把这个确认当做是对丢失报文的确认,就会使RTT样本过大;而如上图右侧所示,如果将对报文的确认误以为是对重传报文的确认,就会导致RTT样本过小。
    为了解决这个问题,提出了一个方案,即报文段每重传一次,就将超时重传时间RTO增大,一般做法是取为原来的两倍。

    如上图所示的通信过程,根据采集到的往返时间RTT和RTO的计算公式,我们可以很方便地求得具体的RTO数值。

    而如果出现了超时重传的情况,就直接将新的RTO取为原来的两倍即可。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/123667.html

相关文章

  • TCP协议详解

    摘要:传输控制协议概述最主要的特点是面向连接的运输层协议。应用程序在使用协议之前,必须先建立连接。当时,表明此报文段的发送发的数据已发送完毕,并要求释放运输连接窗口占字节。 传输控制协议 TCP 概述 TCP 最主要的特点 TCP 是面向连接的运输层协议。应用程序在使用 TCP 协议之前,必须先建立 TCP 连接。在传送数据完毕后,必须释放已经建立的 TCP 连接 每一条 TCP 连接只能...

    zhouzhou 评论0 收藏0
  • 搞定计算网络面试,看这篇就够了(补充版)

    摘要:相对与上一个版本的计算机网路面试知识总结,这个版本增加了协议如何保证可靠传输包括超时重传停止等待协议滑动窗口流量控制拥塞控制等内容并且对一些已有内容做了补充。 相对与上一个版本的计算机网路面试知识总结,这个版本增加了 TCP协议如何保证可靠传输包括超时重传、停止等待协议、滑动窗口、流量控制、拥塞控制等内容并且对一些已有内容做了补充。 一 OSI与TCP/IP各层的结构与功能,都有哪些协...

    lylwyy2016 评论0 收藏0
  • 摘记《Wireshark网络分析就这么简单》

    摘要:在不同子网,向发起请求,跨子网需要默认网关转发。最大传输单元决定每次传输多少,发包的大小由较小一方决定每个包所能携带的最大数据量。在连接建立时三次握手,双方会告知对方。影响期间不能传输数据。例如发送方的网络层会将数据包分片。 A、B在不同子网,B向A发起请求,跨子网需要默认网关转发。先通过ARP广播获取默认网关的MAC地址。然后默认网关向A转发请求,最后A回复B,形成三角回路。 MT...

    zhou_you 评论0 收藏0
  • 网络协议 9 - TCP(下)

    摘要:收到了,发送,要求下一个是,不幸又丢了。在对于包的确认中,会同时携带一个窗口大小的字段。前面的滑动窗口是怕发送方把接收方缓存塞满,而拥塞窗口,是怕把网络塞满。这里有一个公式可以看出,是拥塞窗口和滑动窗口共同控制发送的速度。 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - 从物理层到 MAC 层 网络协议 4 - 交换机与 VLAN:办公室太...

    Noodles 评论0 收藏0
  • 网络协议 9 - TCP(下)

    摘要:收到了,发送,要求下一个是,不幸又丢了。在对于包的确认中,会同时携带一个窗口大小的字段。前面的滑动窗口是怕发送方把接收方缓存塞满,而拥塞窗口,是怕把网络塞满。这里有一个公式可以看出,是拥塞窗口和滑动窗口共同控制发送的速度。 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - 从物理层到 MAC 层 网络协议 4 - 交换机与 VLAN:办公室太...

    Carbs 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<