Linux
將 TCP 擁塞控制變體添加到 Linux Ubuntu
我想在 Linux Ubuntu 中測試 TCP 的不同變體。我有核心版本 3.14 的 Ubuntu 14.04 LTS。當我使用以下命令檢查可用的擁塞控制算法時,
sysctl net.ipv4.tcp_available_congestion_control
我只得到:cubic 和 reno。但是,我想測試 Hybla、HighSpeed 等其他變體。如果我執行,menuconfig
我可以選擇我想要的變體並編譯核心。但就我而言,我已經編譯了核心,所以是否可以有一些包含 TCP 變體作為可載入核心模組的 Linux 包?
看看這裡,看看你安裝了哪些模組……
ls -la /lib/modules/$(uname -r)/kernel/net/ipv4
你應該得到一個模組列表,我得到了這個。
tcp_bic.ko tcp_diag.ko tcp_highspeed.ko tcp_htcp.ko tcp_hybla.ko tcp_illinois.ko tcp_lp.ko tcp_scalable.ko tcp_vegas.ko tcp_veno.ko tcp_westwood.ko
您可以通過 greping 配置文件中的 TCP_CONG 來查看核心已配置的內容,即
grep TCP_CONG /boot/config-$(uname -r) CONFIG_TCP_CONG_ADVANCED=y CONFIG_TCP_CONG_BIC=m CONFIG_TCP_CONG_CUBIC=y CONFIG_TCP_CONG_WESTWOOD=m CONFIG_TCP_CONG_HTCP=m CONFIG_TCP_CONG_HSTCP=m CONFIG_TCP_CONG_HYBLA=m CONFIG_TCP_CONG_VEGAS=m CONFIG_TCP_CONG_SCALABLE=m CONFIG_TCP_CONG_LP=m CONFIG_TCP_CONG_VENO=m CONFIG_TCP_CONG_YEAH=m CONFIG_TCP_CONG_ILLINOIS=m CONFIG_DEFAULT_TCP_CONG="cubic"
要嘗試其中之一,您需要使用
modprobe -a tcp_westwood
或任何您想要的方式安裝它。然後,您可以使用它來測試它echo "westwood" > /proc/sys/net/ipv4/tcp_congestion_control