回答

0

確切地說,一次顯然是不可能的。如果網絡連接中斷並永不恢復,該怎麼辦?

+1

我不確定這適用於此,因爲那麼至少一次也是不可能的。我認爲這些語義假設某種程度的連接總是會最終恢復 - 但我可能是錯的 – Mark

+0

我同意。所以,正如你所期望的那樣,TCP保證最多一次。 –

2

我們可以說,TCP提供在-一次至少送恰好一個處理,關於以下定義:

  • 在-至少一次交付:TCP消息將至少一次傳遞到目的地。更具體地說,如果沒有收到ACK(知識),它將在特定的超時時間內保持重新傳輸,以便它最終被傳送。但是,如果其中一些重新傳輸沒有丟失(但只是延遲),則會傳送多個消息副本。
  • 準確一次處理:每個TCP消息將由目標節點處理一次。更具體地說,目的地將注意到重複的消息(檢查每個收到的消息的ID)。因此,即使消息傳遞了兩次,目標節點也只會處理它(傳遞給應用程序級別)一次,並忽略稍後收到的重複項。
相關問題