為什麼不同主機上的TCP視窗比例值(縮放因子)不同?

為什麼不同主機上的TCP視窗比例值(縮放因子)不同?

為什麼不同主機上的TCP視窗比例值(縮放因子)不同?

為什麼不在所有主機上使該值相同?

理論上,這個值在0-14之間。在現今的互聯網中,規模值的實際範圍是多少?

答案1

RFC 1323,第 2.1 節:

最大接收視窗以及比例因子由最大接收緩衝區空間決定。在典型的現代實作中,此最大緩衝區空間是預設的,但可以在開啟 TCP 連線之前由使用者程式覆蓋。這決定了比例因子,[...]

答案2

由於最大視窗是 2^S(其中 S 是縮放移位計數)乘以最多 2^16 - 1(最大未縮放視窗),因此如果 S <= 14,最大視窗保證 < 2^30。計數必須限制為14(允許2^30 = 1 GB 的視窗)。如果收到的視窗縮放選項的 shift.cnt 值超過 14,則 TCP 應記錄錯誤,但使用 14 而不是指定值。

RFC 1323

相關內容