TCP重傳與確認機制

2021-07-15 16:53:01 字數 829 閱讀 3189

tcp按照以下特定順序工作:

1.放置於重傳佇列中,計時器開始 包含資料的片段一經傳送,片段的乙份複製就放在名為重傳佇列的資料結構中,此時啟動重傳計時器。因此,在某些時間點,每乙個片段都會放在佇列裡。佇列按照重傳計時器的剩餘時間來排列,因此tcp軟體可追蹤那幾個計時器在最短時間內超時。

2.確認處理 如果在計時器超時之前收到了確認資訊,則該片段從重傳佇列中移除。

3.重傳超時 如果在計時器超時之前沒有收到確認資訊,則發生重傳超時,片段自動重傳。當然,相比於原片段,對於重傳片段並沒有更多的保障機制。因此,重傳之後該片段還是保留在重傳佇列裡。重傳計時器被重啟,重新開始倒計時。如果重傳之後沒有收到確認,則片段會再次重傳並重複這一過程。在某些情況下重傳也會失敗。我們不想要tcp永遠重傳下去,因此tcp只會重傳一定數量的次數,並判斷出現故障終止連線。

確認機制

tcp確認資訊是基於序列號累積的。每次當裝置a傳送片段給裝置b,裝置b檢視該片段的確認號字段。所有低於該字段的序列號都已經被裝置a接收了。因此,當片段中所傳送的所有位元組的序列號都比裝置a到裝置b的最後乙個確認號小的時候,乙個從裝置b發到裝置a的片段被認為是確認了。這是通過計算片段中最後乙個序列號結合片段的資料字段來實現的。

未確認片段處理策略:

1.僅重傳超時片段:

這是一種更加保守的方式,僅重傳超時的片段,希望其他片段都能夠成功接收。如果該片段之後的其他片段實際上接收到了,這一方式是最佳的,如果沒接收到,就無法正常執行

2.重傳所有片段

無論何時乙個片段超時了,不僅重傳該片段,還有所有其他尚未確認的片段。這一方式確保了任何時間都有乙個等待確認的停頓時間,在所有未確認片段丟失的情況下,會重新整理全部未確認片段,以使對端裝置多一次接收機會

TCP協議的確認重傳機制

tcp協議是面向連線的傳輸層協議,tcp的傳輸特點具有可靠性,它具有面向連線服務來確保可靠穩定傳輸,而確認重傳機制是tcp協議保證可靠穩定傳輸最重要的機制,他包括累計確認 超時時間計算 快速重傳等幾個方面。確認重傳機制 在傳送乙個資料之後,就開啟乙個定時器,若是在這個時間內沒有收到傳送資料的ack確...

TCP協議滑動視窗與確認重傳機制?

位元組流傳輸狀態分類與滑動視窗的概念 tcp協議使用以位元組為單位的滑動視窗協議,來控制位元組流的傳送 接收 確認與重傳過程。接收視窗的大小由接收端根據快取剩餘空間的大小,以及應用程序讀取資料的速度來決定。傳送視窗的大小取決於接收視窗的大小。傳送視窗和接收視窗 傳送視窗等於第二類和第三類的位元組數之...

TCP協議 TCP報頭,確認應答機制,超時重傳

tcp協議段格式 tcp報頭各部分意義 urg 緊急指標是否有效,當該標誌位為1時,表示有緊急訊號需要處理 ack 確認號是否有效 psh 提示接收端將接受緩衝區中的資料讓應用層讀走 涉及生產者消費者模型 rst 對方要求重新建立連線,把攜帶rst標識的稱為復位報文段,當連線建立異常時,重新建立連線...