« オープンソースビジネス推進協議会(OBCI)へ参加 | メイン | お問合わせ »

mod_cband

mod_cband は転送量やダウンロード速度の制限や同時接続数の制限などができる Apache 2 サーバーのモジュールです。
 mod_cband は従来の帯域制限モジュール (mod_bandwidth, mod_limitipconn, mod_curb) を合わせ、Apache 2で使えるように作られたもので、サーバー全体やバーチャルホストごと、またはIPごとに帯域/転送量の制限、最大のダウンロード速度の制限、一秒間のリクエスト数(Requests per Second)、最大の同時接続数(maximum number of simultaneous IP connections) の制限をすることができるます。
 サーバーのユーザーに「10GB/月 」などのデータ転送量の制限をしたり、クライアント毎にダウンロード速度や同時接続数の制限を行いたい場合などに使うことができます。

■インストール方法
mod-cband-0.9.7.5.tgzをダウンロードし、/tmpディレクトリに保存する。
cd /tmp
tar xzvf mod-cband-0.9.7.5.tgz
cd mod-cband-0.9.7.5
./configure
make
make install

■設定方法(引用:http://cband.linux.pl/documentation)
: 設定は /etc/httpd/conf.d/mod_cband.conf を編集して行います。
: 起動時にモジュールをサーバにロードする


LoadModule cband_module /usr/lib/apache2/modules/mod_cband.so


: 書き方は VirtualHost コンテナの中に記入して行います (IPアドレス 1.2.3.4 でホスト名が www.example.com ドキュメントルートは /var/www の例)。



ServerName www.example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/www

: サーバー全体(このバーチャルホスト)の最大速度を 1024kbps、一秒間の最大リクエストを 10、同時接続数を 30 に制限する場合


CBandSpeed 1024 10 30


: クライアントのIPごとの最大速度を 10kB/s、最大リクエストを 3、同時接続数を 2 に制限する場合


CBandRemoteSpeed 10kb/s 3 2


: トラフィック(転送量)の制限を 100M (100Mbytes) に設定


CBandLimit 100M


: トラフィック(転送量)を計算する期間を 4週間 に設定


CBandPeriod 4W


: トラフィックの制限を超えた場合に 速度を 128kbps、リクエストを 5、同時接続数を 15 に制限 (未記入だと制限を超えた場合は503になります)


CBandExceededSpeed 128 5 15


: トラフィックの制限を超えた場合に503ページでなく他のページに飛ばす場合


CBandExceededURL http://www.example.com/traffic_exceeded.html


- - - - - - - - - - - - - - - - - - - - - - - -
例:www.example.comに4週間で100MBの転送量制限をして、超えた場合には最大速度を 128kbps、リクエストを 5、同時接続数を 15 にする



ServerName www.example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/www
CBandLimit 100M
CBandExceededSpeed 128 5 15
CBandScoreboard /var/www/scoreboard
CBandPeriod 4W

- - - - - - - - - - - - - - - - - - - - - - - -


: ブラウザからGUIで帯域やクライアントの状況を見るには 内に下記を記入することで、 http://www.example.com/cband-status または http://www.example.com/cband-status-me でmod_cband-statusを見ることができます。


SetHandler cband-status


SetHandler cband-status-me

: (パフォーマンス向上のため)scoreboardにデータを送る期間と、ランダムデータの送信を apache2.conf(Debian), httpd.conf(Fedora) に記入


CBandScoreFlushPeriod 1
CBandRandomPulse On


: 最後にApacheを再起動で適用されます
Debian:
/etc/init.d/apache2 restart
Fedora:
/etc/init.d/httpd restart


- - - - - - - - - - - - - - - - - - - - - - - -
: 単位の記入について注意事項
* 速度:
kbps, Mbps, Gbps - "ビット"毎秒
kb/s, Mb/s, Gb/s - "バイト"毎秒
デフォルト(単位未記入)は kbps です


* 転送量:
K, M, G - 1000/1000*1000/1000*1000*1000 バイト
Ki, Mi, Gi - 1024/1024*1024/1024*1024*1024 バイト
デフォルト(単位未記入)は K です


* 期間:
S, M, H, D, W - 秒/分/時間/日/週
デフォルト(単位未記入)は S です
- - - - - - - - - - - - - - - - - - - - - - - -

About

2008年8月20日 14:18に投稿されたエントリーのページです。

ひとつ前の投稿は「オープンソースビジネス推進協議会(OBCI)へ参加」です。

次の投稿は「お問合わせ」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。