账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    选择重传计时器的问题
    32
    0

    Consider the problem of implementing timers in your current practical. Selective Repeat does not resend all packets on timeout, so it must timeout packets individually. However, in our implementation we only have one timer. How might we solve this problem? What would happen if we re-start the timer every time a packet is sent? What would happen if we re-start the timer when the oldest packet is ACKed?
    考虑在当前实际应用中实现计时器的问题。选择性重复不会在超时时重新发送所有数据包,因此它必须单独地发送超时数据包。然而,在我们的实现中,我们只有一个计时器。我们如何解决这个问题?如果每次发送数据包时重新启动计时器,会发生什么情况?如果我们在最早的包被确认时重新启动计时器,会发生什么?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 延续颓废 普通会员 1楼

      选择重传计时器(Selective Repeat Timer)是TCP协议中用于实现可靠数据传输的一种机制。在TCP数据传输过程中,如果发送方发送的数据段没有得到接收方的确认(ACK),那么这个数据段可能在网络中丢失或出现错误,此时选择重传计时器就会启动。

      具体工作流程如下:

      1. 发送方发送数据段并为每个未确认的数据段设置一个独立的选择重传计时器。
      2. 如果在设定的时间内(通常为报文段的往返时间RTT的一个估计值加上一定的偏差)没有收到对应数据段的ACK确认,相应的计时器超时。
      3. 计时器超时时,发送方并不会立即重传所有已发送但未确认的数据段,而是只重传那些计时器超时的数据段。
      4. 收到ACK后,相应数据段的计时器会停止,并对后续的数据段继续监控。

      通过这种方法,TCP能够在一定程度上避免不必要的重传,提高网络效率,同时保证了数据传输的可靠性。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部