3

私は、Buffer Bloating のネットワーク現象をシミュレートしようとする学校のプロジェクトに取り組んでいます。これは基本的に、メモリの価格が安いためにルーターのバッファがどんどん大きくなった結果としての遅延です。

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

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

ここで、「tc」コマンドまたはジョブに適した他のツールを使用してこれを構成する方法について、このコミュニティに意見を求めたいと思います。または、バッファの肥大化をシミュレートする方法について他のアイデアがある場合は、それらも大歓迎です。

お待ち頂きまして、ありがとうございます。

4

1 に答える 1

3

肥大化をシミュレートするには 2 つの方法があると思いますが、使用しているカーネルや iproute のバージョンによって異なります。TBFNETEM では、レートとキュー サイズを設定できます。

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

また

tc qdisc add dev eth0 root netem Xmbit limit Y

ここで、X は帯域幅、Y はキュー サイズです。最初のものはどの 2.6 カーネルでも動作し、新しいバージョンの 2.4 でも動作するはずです。後者には、新しいバージョンの Linux カーネルと Iproute ツールが必要です。

よろしく、ディエゴ

于 2012-03-19T02:26:17.127 に答える