91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

TCP可靠傳輸的實現

發布時間:2020-07-08 14:16:21 來源:網絡 閱讀:277 作者:jjjssswww 欄目:網絡安全

假設我們討論A向B發送數據,A端有發送窗口,B端有接受窗口

根據 B 給出的窗口值 A 構造出自己的發送窗口,假如A收到了B的確認報文,此時窗口的值為20,確認序號的值為31,那么接收端會構造出下面的窗口

TCP可靠傳輸的實現

這里面前后沿可以不動和前移,但是前沿可以后移(不建議)

下面我們討論發送窗口

(1)發送窗口表示,里面的數據在未收到確認數據報之前,都可以連續發送,但是發送了的,必須保留,以便于重傳

(2)如果窗口越大,那么可以連續發送的卻多,但是前提是接收窗口可以及時接收

(3)發送窗口后沿的部分表示已經確認的,所以不會后移,如果前移(收到確認),不動(未收到確認),前沿可能前移和后移,但是不建議后移,可能收到了確認報文,告訴源主機減小窗口

 

假設發送了11個字節,但是為收到確認

TCP可靠傳輸的實現

 

 

P3 – P1 = A 的發送窗口(又稱為通知窗口)

P2 – P1 = 已發送但尚未收到確認的字節數

P3 – P2 = 允許發送但尚未發送的字節數(又稱為可用窗口)

從上面可以看到保存一個窗口需要3個指針

 

下面假設收到了31號字節,并把31-33號字節交付給主機,刪除,并將窗口向前移動3個序號,同事給A發送信號,此時確認號shi34

 

TCP可靠傳輸的實現

 

A 的發送窗口內的序號都已用完, 但還沒有再收到確認,必須停止發送。可能是網絡的原因,入過超時,那么需要重傳一次

TCP可靠傳輸的實現

前面說過緩存的問題,我們討論一下緩存和窗口的問題:

(1)緩沖和序號都是有限的,而且是環裝的可以重復利用

TCP可靠傳輸的實現

 

 上面是發送緩沖,里面主要有應用程序發給發送方的數據(未發送)還有tcp已經發出,但是未收到確認的數據

 

 TCP可靠傳輸的實現

接收緩存

(1)按照順序到達,但是沒有被應用程序接收的,沒有按順序到達,的

 

 

注意:

(1)雖然發送方的窗口是根據接收方的確認數據確定的,但是雙方并不總是一樣大,因為網絡時間延時的問題

(2)對于不按照順序到達的,tcp沒有強制規定,但是通常保存在窗口中一會

(3)tcp要求接收方必須有累積確認的功能,這樣可以減少網絡通信,但是推送發送的時間不同太長,否則會發生重傳的機制,通常不超過(0.5s)

 

超時重傳時間的選擇:

 TCP每發送一個報文段,就對這個報文段設置一次計時器。只要計時器設置的重傳時間到還沒有收到確認,就要重傳這個報文段。由于數據鏈路層和運輸層的往返實驗概率分布存在很大差異,因此有必要選擇合適的超時重傳時間。

     報文段的往返時延是指收到確認報文的時間與每一個報文段發出的時間之差。報文段的平均往返時延RTT是由各個報文段的往返時延樣本加權平均得出來的。計算公式為:

     平均往返時延RTT=α×(舊的RTT)+(1-α)×(新的往返時延樣本),1 ≤ α < 1 典型的值為α為7/8.

 

     即使有一個好的RTT,要選擇一個合適的超時重傳時間RTO(Restransmission Time out)仍然不是一個容易的事情。, 顯然RTO要大于RTT。其計算公式為 RTO = β × RTT, β > 1, 推薦是2

 

選擇確認SACK

接收方收到了和前面的字節流不連續的兩個字節塊。 如果這些字節的序號都在接收窗口之內,那么接收方就先收下這些數據,但要把這些信息準確地告訴發送方,使發送方不要再重復發送這些已收到的數據。

TCP可靠傳輸的實現

和前后字節不連續的每一個字節塊都有兩個邊界: 左邊界和右邊界。圖中用四個指針標記這些邊界。 第一個字節塊的左邊界 L1 = 1501,但右邊界 R1 = 3001。 左邊界指出字節塊的第一個字節的序號,但右邊界減 1 才是 字節塊中的最后一個序號。 第二個字節塊的左邊界 L2 = 3501,而右邊界 R2 = 4501。

如果要使用SACK那么這些信息需要存在首部可選部分,最多只能使用4個字節快  4*4*2=32  +2(1個字節指明SACK選項,另一個指明這個選項用多少字節)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

sa tc
AI

阿荣旗| 射阳县| 辽阳市| 娄底市| 平泉县| 黎城县| 宝丰县| 罗源县| 吉首市| 盐城市| 楚雄市| 石屏县| 上杭县| 德令哈市| 西昌市| 故城县| 交口县| 昆明市| 金乡县| 安义县| 射洪县| 镇宁| 屏南县| 道孚县| 疏附县| 靖宇县| 临清市| 凯里市| 青川县| 富民县| 吴堡县| 丹凤县| 汉川市| 临邑县| 佛坪县| 龙胜| 汉中市| 米脂县| 兴文县| 修武县| 布尔津县|