今天用wireshark抓取TCP連線時的報文發現客戶端的Win變大了,這裡是使用了Window Scale來擴張TCP接收視窗,使得接收視窗可以大於65535位元組。
首先1號包是TCP第一次握手連線時客戶端的請求包,客戶端如果視窗大於65535,那麼就先將Window size value設定為65535,並且將Options中Shift count設定為8(根據實際情況而定),表示客戶端視窗將大於65535,具體是多大,在3號資料包會給出視窗的基數。
下面是3號包截圖,可以看到視窗的基數是343,視窗的倍數是2^8=256,那麼實際的視窗大小為343*256=87808Byte。