2011-12-16 24 views
2

私は、Mac OS X ための代替オープンソースTCPの実装を発見した[1]の代わりにNewRenoので、輻輳制御としてLEDBATを使用Mac OS Xで異なる輻輳制御アルゴリズムをロードする方法は?

  • 私はそのOSに慣れていないので、そのソースファイルをビルドしてシステムにロードする方法を教えてください。容易に構築することができる

は(Linuxではように行う方法がある場合、例えば、私は思っていた、いくつかの実装が存在である[2]、次にカーネルにモジュールとして差し込まとロードランタイム:

make; make install 
modprobe tcp_ledbat 
sysctl -w net.ipv4.tcp_congestion_control=ledbat 

[1]http://opensource.apple.com/source/xnu/xnu-1699.22.81/bsd/netinet/tcp_ledbat.c

は、[2] http://perso.telecom-paristech.fr/~valenti/pmwiki/pmwiki.php?n=Main.LEDBAT#howtokernel

はLEDBAT輻輳制御アルゴリズムは、OSXライオン(10.7.X)に組み込まれており、別々にコンパイルする必要はありませんあなた

+0

私はSuperUserへの移行の投票を見るが、これはServerProfaultを提案するITプロに必要なもののように思える。一方、それはおそらくApple.SEのMac固有のものです。 @Dynamiq:もしあなたが好きなら、モデレータのためにそれをフラグすることができます。 – dmckee

+0

***別名:***あなたは開発ツールをインストールした後に(あなたはマシンにDVDを持っている)*ものを作ることができるはずです。 – dmckee

+0

** dmckee **ありがとうございます。私はxCodeを試してみよう! – Dynamiq

答えて

2

ありがとうございます。以前のバージョンのOSXでLEDBATを使用することは可能ではないと思います。 LEDBATは 'バックグラウンド'転送を提供し、次のsocketオプション - setsocketopt(sock、SOL_SOCKET、O_TRAFFIC_CLASS、SO_TC_BK、sizeof(int))を設定することによってソケット上で選択することができます。また、ソケットのトラフィッククラスは、IPヘッダーのDSCP値の影響を受ける可能性があります。

さらに、OSXには、Network Kernel Extensions (NKE)を使用して他のネットワークプロトコルのカーネルモジュールをロードする機能があります。たとえば、SCTPプロトコル用に開発されたNKE moduleがあります。

関連する問題