web-dev-qa-db-ja.com

Linux UbuntuにTCP輻輳制御バリアントを追加します

Linux UbuntuでTCP=のさまざまなバリアントをテストします。カーネルバージョン3.14のUbuntu 14.04 LTSを持っています。次のコマンドを使用して、利用可能な輻輳制御アルゴリズムを確認しますsysctl net.ipv4.tcp_available_congestion_control取得できるのは、キュービックとリノのみです。ただし、Hybla、HighSpeedなどの他のバリアントをテストしたいと思います。 menuconfigを実行すると、必要なバリアントを選択してカーネルをコンパイルできます。しかし、私の場合、すでにカーネルをコンパイルしているので、ロード可能なカーネルモジュールとしてTCPバリアントを含むLinuxパッケージを使用できますか?

3
IoT

ここで、インストールしたモジュールを確認してください...

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

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 
5
Harry

tcp_hyblatcp_highspeed の両方がモジュールとしてカーネルツリーに追加されます。したがって、これらのモジュールを個別にコンパイル、インストールして使用できます。カスタムモジュールをコンパイルする方法をすでにご存じだと思います。

0
rakib_