ネットワーク帯域幅を制限する方法は?


74

リモートサーバーでアプリケーションをホストしています。限られたネットワーク帯域幅でテストする必要があります(インターネットアクセスが悪いユーザー向け)。

インターネット帯域幅を制限できますか?たとえば、1秒あたり128 KB。

回答:


68

http://linux.die.net/man/8/tcでtc利用可能なマニュアルページと呼ばれるコマンドを使用して、インターフェイスのネットワーク帯域幅を調整できます。

簡単なスクリプトについては、wondershaperを試してください

tcの使用例: tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540


6
私のユーザー名/パスワード認証のためのatmail.comプロンプトへのリンク... :(
Ash

1
:あなたはここにAtmailコンテンツを取得することができますweb.archive.org/web/20130719031908/http://atmail.com/kb/2009/...
トムSaleeba

決してよりよい後期のあなたのつもりが、より良い方法があるbusyboxのルータを使用する場合tc、コマンド、あなたがここにマークのポストをチェックアウトすることができmark.koli.ch/... OpenVZのwikiにはより多くの例があるopenvz.org/Traffic_shaping_with_tc
nwgat

:(必要であれば、あなたは答えを編集することができます)のiptablesで帯域幅を制限することも可能であるように見えますserverfault.com/questions/52027/...
baptx

62

前の回答で述べたように、wondershaperは簡単に仕事をします。Jwalanta Shresthaによる上記のリンクからの情報を含めます

apt-get install wondershaper

wondershaper-特定のインターフェースの帯域幅を制限する簡単なツール。

$ sudo wondershaper {interface} {down} {up}

{down}および{up}はkpbs単位の帯域幅です

たとえば、インターフェースeth1の帯域幅を256kbpsダウンリンクと128kbpsアップリンクに制限する場合、

$ sudo wondershaper eth1 256 128

制限をクリアするには、

$ sudo wondershaper clear eth1 

2
理想的には、新しい解答を追加するのではなく、元の解答を編集するだけです。これが標準ポリシーです。とにかく、回答に+1を追加します。回答に情報を追加するからです。
シヴァム

2
これは、モバイルデータをテザリングしていて、フェアユースの制限がある場合(およびLycamobileの場合は新しいバンドルを購入する必要がある場合)に非常に便利です。YouTubeなどのビデオストリーミングWebサイトでは、十分な帯域幅があればビデオ全体が直接読み込まれます。帯域幅を制限すると、ビデオは自動的に低解像度に切り替わり、視聴しているものだけをダウンロードします。すべてを視聴したくない場合はデータを保存します。
baptx

2
帯域幅を制限するだけでなく、トラフィックを優先するため、大きなファイルのアップロードにも役立ちます。そのため、10gbファイルをアップロードするときに、まだSSHを使用できます。
PeterM

5
Wondershaperは非常に時代遅れです:Wondershaper Must Die(Bufferbloat.net)
Niklas Holm

10

いくつかの基準に基づいてネットワークリソースを制限することは、QoSの主題です。Linuxシステムでユーザートラフィックを制御する方法はいくつかあります。

Bert HubertによるLinuxでの高度なルーティング技術とトラフィック制御に関する優れたハウツーがあります。


2
その中の特定のセクションを参照していましたか?
rogerdpack

1
システム設定を変更したくない場合は、squid3プロキシをインストールし、プロキシを介して「制限付き」アプリケーションを設定してください。CLIアプリのあなたがtorsocksやproxychainsを設定することができ、かつ重いGUIアプリケーションのために、あなたもバイオリン弾きモノをインストールすることができますについては、そうそう...すべてを制御するいくつかの方法があります:)
erm3nda

(これはリンクのみの回答です)
Konrad Gajewski

7

既にどこかにApacheがセットアップされている場合は、mod_bwプロキシ接続でも動作するを使用できます(つまり、Apacheはすべてを適切なサーバーに転送するだけですが、応答は遅くなります)。


6

Dummynetはあなたが望むことをし、さらに多くのことをします。レイテンシー、ランダムなパケット損失などを制御することさえできます。


6

iptables hashlimitモジュールを使用することもできます。以下に簡単な例を示します。

iptables -A FORWARD -m hashlimit --hashlimit-above 512kb / sec --hashlimit-burst 1mb --hashlimit-mode srcip、dstip --hashlimit-name bwlimit -j DROP

このルールは、FORWARDチェーンを通過するトラフィックを、送信元と宛先の各ペアに対して1MBバーストで512kb /秒として制限します。

詳細については、iptablesマニュアルのhashlimitセクションを確認してください。

http://ipset.netfilter.org/iptables-extensions.man.html

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.