滑動視窗協議

2021-08-20 03:27:13 字數 1335 閱讀 6242

協議4:滑窗協議(全雙工協議)簡介

兩個視窗

預設視窗為1,序列號長度為3位的傳送過程:

文字描述:

接收方收到幀後,首先核對是否為預期幀號(frame_expected),如果是的,則接收並frame_expected+1,移動接收視窗

傳送端收到應答幀,核對響應幀號(next_frame_to_send),核對無誤後,從網路層取新的幀,並執行next_frame_to_send+1,移動傳送視窗,如核對幀號不正確,則不移動視窗

void protocol4(void)		//因為是雙工協議,不再有發方收方的界限

if(r.ack==next_frame_to_send) //是不是確認了

}s.info = buffer;

s.seq = next_frame_to_send;

s.ack = 1-frame_expected; //捎帶確認

每個待傳送幀被賦予乙個序列號seq,seq的取值範圍是0~2^n-1(n位欄位,中n=1)

建立緩衝區:

傳送視窗:快取已傳送、待確認的幀

接收視窗:快取期待接收的幀(序號)

傳送視窗滑動機制

視窗設定

視窗滑動機制

特點可能會出現的異常情況

因為機制原因仍然可以正常工作,只不過有很多重複幀浪費了頻寬

通道利用率

已知:則通道的利用率為:k/(k+br)

例子:求解:

提高通道利用率的方法:

增加滑動視窗最大長度w

理想情況下,使例題通道利用率達到100%,則滑動視窗最大長度為:w = 26

如何尋找乙個合適的w值

滑動視窗協議

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

滑動視窗協議

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

滑動視窗協議

同學 luffy 給你打 讓你記下一串手機號碼,可是你記憶力不太好,你跟 luffy 約定,一次只最多只能報 4 個數字,luffy 念一遍,如果你聽到了就把他說的話重複一遍。接下來 你 你一次最多報 4 個數字,多了我記不住啊!luffy 139 你 139 luffy 知道你聽到了 luffy ...