滑動視窗協議

2021-09-30 08:59:02 字數 1244 閱讀 6969

百科名片

滑動視窗協議,是tcp使用的一種流量控制方法。該協議允許傳送方在停止並等待確認前可以連續傳送多個分組。由於傳送方不必每發乙個分組就停下來等待確認,因此該協議可以加速資料的傳輸。

只有在接收視窗向前滑動時(與此同時也傳送了確認),傳送視窗才有可能向前滑動。   收發兩端的視窗按照以上規律不斷地向前滑動,因此這種協議又稱為滑動視窗協議。   當傳送視窗和接收視窗的大小都等於 1時,就是停止等待協議。   當傳送視窗大於1,接收視窗等於1時,就是回退n步協議。   當傳送視窗和接收視窗的大小均大於1時,就是選擇重發協議。   協議中規定,對於視窗內未經確認的分組需要重傳。這種分組的數量最多可以等於傳送視窗的大小,即滑動視窗的大小n減去1(因為傳送視窗不可能大於(n-1),起碼接收視窗要大於等於1)。tcp協議在工作時,如果傳送端的tcp協議軟體每傳輸乙個資料分組後,必須等待接收端的確認才能夠傳送下乙個分組,由於網路傳輸的時延,將有大量時間被用於等待確認,導致傳輸效率低下。為此tcp在進行資料傳輸時使用了

滑動視窗機制

。   tcp滑動視窗用來暫存兩台計算機問要傳送的資料分組。每台執行tcp協議的計算機有兩個滑動視窗:乙個用於資料傳送,另乙個用於資料接收。傳送端待發資料分組在緩衝區排隊等待送出。被滑動視窗框入的分組,是可以在未收到接收確認的情況下最多送出的部分。滑動視窗左端標誌x的分組,是已經被接收端確認收到的分組。隨著新的確認到來,視窗不斷向右滑動。   tcp協議軟體依靠滑動視窗機制解決傳輸效率和流量控制問題。它可以在收到確認資訊之前傳送多個資料分組。這種機制使得網路通訊處於忙碌狀態,提高了整個網路的吞吐率,它還解決了端到端的通訊流量控制問題,允許接收端在擁有容納足夠資料的緩衝之前對傳輸進行限制。在實際執行中,tcp滑動視窗的大小是可以隨時調整的。收發端tcp協議軟體在進行分組確認通訊時,還交換滑動視窗控制資訊,使得雙方滑動視窗大小可以根據需要動態變化,達到在提高資料傳輸效率的同時,防止擁塞的發生。 稱視窗左邊沿向右邊沿靠近為視窗合攏,這種現象發生在資料被傳送和確認時。   當視窗右邊沿向右移動時將允許傳送更多的資料,稱之為視窗張開。這種現象發生在另一端的接收程序讀取已經確認的資料並釋放了tcp的接收快取時。   當右邊沿向左移動時,稱為視窗收縮。host requirements rfc強烈建議不要使用這種方式。但tcp必須能夠在某一端產生這種情況時進行處理。   如果左邊沿到達右邊沿,則稱其為乙個零視窗。(1)傳送方不必傳送乙個全視窗大小的資料。   (2)來自接收方的乙個報文段確認資料並把視窗向右邊滑動,這是因為視窗的大小事相對於確認序號的。   (3)視窗的大小可以減小,但是視窗的右邊沿卻不能夠向左移動。   (4)接收方在傳送乙個ack前不必等待視窗被填滿。

滑動視窗協議

只有在接收視窗向前滑動時 與此同時也傳送了確認 傳送視窗才有可能向前滑動。收發兩端的視窗按照以上規律不斷地向前滑動,因此這種協議又稱為滑動視窗協議。當傳送視窗和接收視窗的大小都等於 1時,就是停止等待協議。當傳送視窗大於1,接收視窗等於1時,就是回退n步協議。當傳送視窗和接收視窗的大小均大於1時,就...

滑動視窗協議

百科名片 滑動視窗協議,是tcp使用的一種 流量控制方法。該協議允許傳送方在停止並等待確認前可以連續傳送多個分組。由於傳送方不必每發乙個分組就停下來等待確認,因此該協議可以加速資料的傳輸。只有在接收視窗向前滑動時 與此同時也傳送了確認 傳送視窗才有可能向前滑動。收發兩端的視窗按照以上規律不斷地向前滑...

滑動視窗協議

協議4 滑窗協議 全雙工協議 簡介 兩個視窗 預設視窗為1,序列號長度為3位的傳送過程 文字描述 接收方收到幀後,首先核對是否為預期幀號 frame expected 如果是的,則接收並frame expected 1,移動接收視窗 傳送端收到應答幀,核對響應幀號 next frame to sen...