【问题标题】:How does TCP deal with ACKs received after the timeout period has expiredTCP如何处理超时后收到的ACK
【发布时间】:2014-09-02 01:15:56
【问题描述】:

假设 2 个端点通过 TCP 进行通信。 'A' 向'B' 发送一些数据并期望'B' 确认它。然而,它比平时花费更多时间,并且“A”处的重传计时器到期,因此再次发送相同的数据。然后来自'B'的ACK(从第一次发送数据开始)终于到达。那么现在 TCP 是如何处理这个 ACK​​ 的呢?它是否将此 ACK 视为对第一次发送数据的确认?还是作为第二次发送数据的确认?

【问题讨论】:

  • 不会有任何区别。

标签: tcp network-protocols


【解决方案1】:

ACK 确认所有数据到达对等端的特定序列号,而不是特定数据包的到达。因为数据不会随着重传而改变,所以第一次或第二次尝试生成 ACK 并不重要。发送方甚至可能将多个丢失的数据合并成新的数据包进行重传。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 2015-10-16
    • 1970-01-01
    • 1970-01-01
    • 2022-09-22
    相关资源
    最近更新 更多