【问题标题】:Is an RST packet guaranteed to arrive?RST数据包是否保证到达?
【发布时间】:2015-05-29 15:49:37
【问题描述】:

当连接被非正常终止时(即RST 数据包已发送到另一端),RST 数据包是否保证到达?我的意思是,如果没有发回ACK包,发送设备怎么知道对方已经收到了RST包!

【问题讨论】:

  • 请注意,发送RST的设备不再关心对方是否接收到它,因为它已经关闭并释放了所有状态信息。 RST 的意思是“这里什么都没有”。更多的数据包将意味着更多(无状态)RST 数据包作为回报。

标签: sockets networking tcp winsock


【解决方案1】:

RST 数据包没有被确认,所以没有你所说的“保证”。但是,如果您继续发送到已重置连接的端点,它将继续发出 RST 数据包。

【讨论】:

    【解决方案2】:

    不可能在所有情况下都让通信双方同意是否应该关闭连接。这是无法解决的Two Generals ProblemRST 更多的是“礼貌”和性能优化。它允许在几乎所有情况下进行早期清理。

    但是,如果您拉动电缆,所有数据包都会进入黑洞,并且不清楚这只是暂时超时还是永久失去连接。

    【讨论】:

      猜你喜欢
      • 2015-08-17
      • 2015-08-26
      • 1970-01-01
      • 1970-01-01
      • 2019-02-13
      • 2010-12-14
      • 1970-01-01
      • 2019-07-23
      • 1970-01-01
      相关资源
      最近更新 更多