TCP窗口擴大選項


TCP窗口擴大選項(TCP Window Scale Option)

TCP窗口擴大選項 TCP Window Scale Option (WSopt)

窗口擴大選項用於擴大TCP通告窗口,使TCP的窗口定義從16bit增加為32bit。

1、RFC 1323中關於窗口擴大選項的圖示如下:

      TCP Window Scale Option (WSopt):
         Kind: 3 Length: 3 bytes
                +———+———+———+
                | Kind=3  |Length=3 |shift.cnt|
                +———+———+———+

2、要啟用窗口擴大選項,通訊雙方必須在各自的SYN報文中發送這個選項。主動建立連接的一方在SYN報文中發送這個選項;而被動建立連接的一方只有在收到帶窗口擴大選項的SYN報文之后才能發送這個選項。

3、這個選項只在一個SYN報文中有意義(<SYN>或<SYN,ACK>),包含窗口擴大選項的報文如果沒有SYN位,則會被忽略掉。當連接建立起來后,在每個方向的擴大因子是固定的。注意:在SYN報文本身的窗口字段始終不做任何的擴大(The Window field in a SYN (i.e., a <SYN> or <SYN,ACK>) segment itself is never scaled.)。

4、在啟用窗口擴大選項的情況下,若發送一個窗口通告,要將實際窗口大小右移shift.cnt位,然后賦給TCP首部中的16bit窗口值;而當接收到一個窗口通告時,則將TCP首部中的16bit窗口值左移shift.cnt位,以獲得實際的通告窗口大小。

5、shift.cnt取值范圍為0~14,即最大TCP序號限定為2^16 * 2^ 14  = 2^30 < 2^31。該限制用於防止字節序列號溢出。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM