随着網絡帶寬的增加,更多資料可以容納到管道中,并且随着管道變得越來越長,确認收到資料需要更長的時間。這種關系稱為帶寬時延乘積(BDP)。
計算公式:
BDP(位)=帶寬(位/秒)*RTT(秒)
計算得出的BDP用作TCP視窗大小優化的建議。
linux修改核心參數更改TCP視窗大小
linux中TCP視窗大小受到以下參數影響:
net.core.rmem_max
#為所有類型的連接配接設定最大OS接收緩沖區大小
net.core.wmem_max
#為所有類型的連接配接設定最大OS發數緩沖區大小
net.ipv4.tcp_rmem
#三個值:
#可以為TCP套接字配置設定的最小接收緩沖區大小
#預設接收緩沖區大小
#可以為TCP套接字配置設定的最大接收緩沖區大小
net.ipv4.tcp_wmem
#三個值:
#單個TCP套接字配置設定的最小發送緩沖區大小
#單個TCP套接字預設發送緩沖區大小
#可以為TCP套接字配置設定的最大發送緩沖區大小
前兩個參數會影響直接控制TCP視窗大小的應用的最大TCP視窗大小,方法是将應用的請求限制為不超過這些值。
後兩個參數會影響linux自動調整運作的應用的TCP視窗大小。
net.ipv4.tcp.window_scaling
#設定為1表示啟用,需要建立tcp連接配接的雙方都開啟才有效。