TCP(传输控制协议)是否提供最多一次,至少一次或完全一次传送

时间:2016-08-04 18:21:26

标签: tcp message-queue transmission reliable-message-delivery

我听说它提供完全一次交付几乎是不可能的。与此同时,据说TCP提供有保证的交付。如果TCP没有提供确切的一次保证交付,那么它最少提供一次或至少提供一次

2 个答案:

答案 0 :(得分:5)

我们可以说TCP提供 至少一次投放 完全一次处理 ,关于以下定义:

  • 至少一次发送:TCP消息将至少一次发送到目的地。更具体地说,如果没有收到ACK(知识),它将继续以特定超时重新发送,从而最终将被传送。但是,如果其中一些重新传输没有丢失(但只是延迟),那么将传递多个邮件副本。
  • 完全一次处理:每个TCP消息将由目标节点处理一次。更具体地说,目的地将注意重复的消息(检查每个接收的消息的ID)。因此,即使消息被传递两次,目标节点也只会处理它(将其传递给应用程序级别)并忽略稍后收到的重复项。

答案 1 :(得分:0)

完全一次显然是不可能的。如果网络连接被切断并且永远不会恢复怎么办?

相关问题