FreeBSDで(デフォルトではない)他のTCP輻輳制御アルゴリズムを実行する方法はありますか?ワイヤレスネットワークでより良いパフォーマンスを得るために、研究論文で発表されたいくつかのアイデアを使用して既存のTCP輻輳制御アルゴリズムを修正しようとしています。
ベストアンサー1
sysctl.confを見ると、どのTCP輻輳制御アルゴリズムが利用可能かを確認できますnet.inet.tcp.cc.available
。デフォルトではnewrenoのみが使用可能なので、これを使用します。さまざまなアルゴリズムを使用できます。cc_something
で名前付きモジュールを見つけます/boot/kernel
。
たとえば、kldloadを介してロードできますkldload cc_vegas
。これを行うと、新しいアルゴリズムがnet.inet.tcp.cc.available
。 sysctlで選択できますnet.inet.tcp.cc.algorithm
。
完全な例は次のとおりです。
% sysctl -a | grep net.inet.tcp.cc
net.inet.tcp.cc.available: newreno
net.inet.tcp.cc.algorithm: newreno
% sudo kldload cc_vegas
% sysctl -a | grep net.inet.tcp.cc
net.inet.tcp.cc.vegas.beta: 3
net.inet.tcp.cc.vegas.alpha: 1
net.inet.tcp.cc.available: newreno, vegas
net.inet.tcp.cc.algorithm: newreno
% sudo sysctl net.inet.tcp.cc.algorithm=vegas
net.inet.tcp.cc.algorithm: newreno -> vegas
% sudo sysctl net.inet.tcp.cc.algorithm=newreno
net.inet.tcp.cc.algorithm: vegas -> newreno
%