2012-03-18 8 views
2

私はBuffer Bloatingのネットワーク現象をシミュレートしようとしている学校プロジェクトに取り組んでいます。これは本質的に、メモリの安い価格のために、ルータのバッファが時間がますます大きくなるため、待ち時間になります。tcを使ったトラフィックシェーピング

このプロジェクトを開始するにあたり、私は既にLinuxの "tc"コマンドとその使用方法についていくつかの調査を行っていますが、私のニーズに合った正しい設​​定をする方法は見当たりません。状況は次のとおりです。私は3台のコンピュータを持っています。 PC1はPC2に接続され、PC2はPC3に接続される。この構成では、PC2が大きなバッファが使用されるルータとして機能しています。トラフィックは、PC1からPC2に送信されます。私の意図は、PC2がPC1からPC3に着信データを送信するために使用できる帯域幅を制限することです。

私は、遅いリンクをシミュレートするためにバッファからパケットをフェッチするのに遅れてPC2に大きなバッファを設定することによってこれを行うことを計画していました。これにより、大きなバッファがいっぱいになり、レイテンシが導入されるはずです。

ここでは、このコミュニティに、「tc」コマンドを使用してこれを設定する方法や、ジョブに適した他のツールを設定する方法についてお聞きしたいと思います。また、バッファ膨張をシミュレートする方法に関する他のアイデアがある場合は、それらも歓迎します。

ご理解いただきありがとうございます。

+2

すでにLARTC(Linuxの高度なルーティング&トラフィック制御HOWTO)http://lartc.org/howto/lartc.cookbook.ultimate-tc.htmlを読みますか? – dAm2K

+0

こんにちは、ありがとうございました。私はそれを読んだが、それは私が探しているもののかなり進んだようだ。私はそれを設定する約2または3行を見つけることを望んでいた。それは、他のキューイングの分野を探すために私を他の方向で指摘しました。私はトークンバケツを見ます。 –

答えて

2

私はbloatingをシミュレートする2つの方法があり、カーネルや使用しているiprouteのバージョンに依存すると思います。 TBFおよびNETEMレートとキューサイズを設定できます。 Xは、帯域幅及びYキュー・サイズである

tc qdisc add dev eth0 root tbf rate Xmbit limit Y burst 1500 

又は

tc qdisc add dev eth0 root netem Xmbit limit Y 

。最初のバージョンは2.6カーネルで動作し、2.4はいくつかの新しいバージョンで動作するはずです。後のバージョンでは、LinuxカーネルとIprouteツールの新しいバージョンが必要です。

よろしく、 サンディエゴ

+0

コマンドをいただきありがとうございます。私はトークンバケツが本当に私の目的に役立つことを発見しました。私は数日後にそれを試してみる(私はそれをテストするための機器を持っていない)と戻って報告されます。 2番目のコマンドは、シンプルさとエレガンスの面で有望です。ありがとうございました。 –

+1

私はあなたの最初のソリューションを使用して、それは魅力的なように働いた。ちょっとした微調整とチューニングで、私は必要なものを見つけました。あなたの答えをありがとう。 –

関連する問題