TCP 序列計數器溢出

TCP 序列計數器溢出

我從課程中得到以下問題:

“假設互聯網上的 TCP 連接的可用頻寬為 300Mbps。假設某些數據包以非常高的延遲傳輸。在哪個延遲時間可能會出現嚴重問題?這是一個現實問題嗎?”

我計算出,在大約 2 分鐘的延遲時間內,序列計數器內將會發生溢位(如果您假設它從 0 開始)。根據 RFC,序列計數器將溢出至零。我在 RFC 中沒有發現“如果發生這種情況該怎麼辦”,但也許我忽略了它。

我的問題是:會發生什麼事?這只是 TCP 的限制嗎?是否有解決方法(除了使用更大的序列計數器)?

答案1

好吧,相關的 RFC 告訴您如何正確執行此操作(並實際解決問題)。看http://www.apps.ietf.org/rfc/rfc1323.html第 4 節。

答案2

我不認為溢出本身是一個問題,只有當您收到一個序號位於當前接收視窗內但實際上來自 4 GiB 之前(的倍數)的資料包時,您才會遇到問題。為此,根據您的計算,資料包必須延遲兩分鐘(聽起來似乎合理)。實際上,我認為這種情況不會經常發生,因為通常不會發生所有中間系統都需要大量緩衝區空間(也需要 4 GiB 左右)。

相關內容