TCP滑動視窗協議

2021-07-06 03:44:27 字數 395 閱讀 9892

1.首先是ab之間三次握手建立tcp連線。在報文的互動過程中,a將自己的緩衝區大小(視窗大小)3傳送給b,b同理,這樣雙方就知道了對端的視窗大小。

2.a開始傳送資料,a連續傳送3個單位的資料,因為他知道b的緩衝區大小。在這一波資料傳送完後,a就不能再發了,需等待b的確認。

3.a傳送過來的資料逐漸將緩衝區填滿。

4.這時候緩衝區中的乙個報文被程序讀取,緩衝區有了乙個空位,於是b向a傳送乙個ack,這個報文中指示視窗大小為1。

a收到b發過來的ack訊息,並且知道b將視窗大小調整為1,因此他只傳送了乙個單位的資料並且等待b的下乙個確認報文。

5.如此反覆。

TCP 滑動視窗協議

什麼是滑動視窗協議?一圖勝千言,看下面的圖。簡單解釋下,傳送和接受方都會維護乙個資料幀的序列,這個序列被稱作視窗。傳送方的視窗大小由接受方確定,目的在於控制傳送速度,以免接受方的快取不夠大,而導致溢位,同時控制流量也可以避免網路擁塞。下面圖中的4,5,6號資料幀已經被傳送出去,但是未收到關聯的ack...

TCP 滑動視窗協議

本系列文章是博主學習tcp協議以來的個人筆記。博主不能保證本文所述 內容絕對正確,所 以請讀者抱著懷疑的態度閱讀本部落格內的文字。如果讀 者因本部落格內的文字造成損失,本人 無力負責。如果有任何謬誤或者問題,希望讀者不吝賜教。在遍布世界的網際網路線路上進行可靠的資料傳輸談何容易,一來傳輸介質 有差異...

TCP 滑動視窗協議

什麼是滑動視窗協議?一圖勝千言,看下面的圖。簡單解釋下,傳送和接受方都會維護乙個資料幀的序列,這個序列被稱作視窗。傳送方的視窗大小由接受方確定,目的在於控制傳送速度,以免接受方的快取不夠大,而導致溢位,同時控制流量也可以避免網路擁塞。下面圖中的4,5,6號資料幀已經被傳送出去,但是未收到關聯的ack...