trickleを使って帯域制限をかけてvnstatで帯域状態をモニタリング

trickle

帯域制限をおこないたいコマンドの前にこのコマンドをつけて実行すると帯域制限がかけられる。

インストール

apt-get install trickle


実行

trickle -s -d 128 -u 128 curl -L -O http://ftp.riken.jp/Linux/ubuntu-releases/16.04/ubuntu-16.04.3-server-amd64.iso
  • -sスタンドアロンモードで実行コマンドのみに適用したいときに使用する。
  • -dダウンロードの帯域を指定(単位はKB/s)
  • -uアップロードの帯域を指定(単位はKB/s)


上記だと128KB/sなので
128KB/s * 8bit = 1024Kb/s
となり1Mb/sの制限になる。

以下のようにダウンロード・アップロードのそれぞれの帯域だけを指定することも可能

ダウンロードのみ
trickle -s -d 128 curl -L -O http://ftp.riken.jp/Linux/ubuntu-releases/16.04/ubuntu-16.04.3-server-amd64.iso


アップロードのみ
trickle -s -u 128 curl -L -O http://ftp.riken.jp/Linux/ubuntu-releases/16.04/ubuntu-16.04.3-server-amd64.iso


vnstat

現状のトラフィック(帯域)の確認が出来る。

インストール

apt-get install vnstat


実行

vnstat --live -i eth0
  • --liveでリアルタイムで表示
  • -iでインターフェースを指定


実行結果例
$ vnstat --live -i eth0
Monitoring eth0...    (press CTRL-C to stop)

   rx:     1.07 Mbit/s   109 p/s          tx:       13 kbit/s    23 p/s

1Mb/sの制限がかかっていることが分かる。