pepoとネットワークを語ろう

40年前からこれまでとこれからのネットワークを語る

通信速度の測定について

2008-03-05 01:06:32 | Linux
iperf でLAN間のスピードや負荷試験を行うことが出来ます、WAN側では行わないこと!
ipフィルタリングがされていると各種実験が出来ません通信速度の測定に関わらず、iptablesを停止させます。
[root@~]# service iptables stop
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
[root@~]#
サーバー側を起動してから、クライアント側を起動する。接続が成功すると結果を両方へ表示してくれます。
まずは、サーバー側の起動から、Ctl-c で停止させます。
[root@centos ~]# iperf -s 
------------------------------------------------------------ <---クライアントが接続されると以下結果を表示
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.0.6 port 5001 connected with 192.168.0.254 port 32773
[ 4] 0.0-10.0 sec 112 MBytes 94.1 Mbits/sec
つきに、クライアント側の起動
[root@ ~]# iperf -c 192.168.0.254
lient connecting to 192.168.0.254, TCP port 5001 <---サーバーへ接続されると以下結果を表示
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.6 port 32910 connected with 192.168.0.254 port 5001
[ 3] 0.0-10.0 sec 112 MBytes 94.1 Mbits/sec

送信の帯域制御をネットワーク全体でかかるように設定して計測してみます。
/etc/syconfig/cbq/cbq-100.http <---設定ファイル
DEVICE=eth0,100Mbit,10Mbit
RATE=1Mbit
WEIGHT=100Kbit
PRIO=5
RULE=192.168.0.0/24 <---このネットワーク全てのIPトラフィックで帯域制限

[root@~]# /etc/init.d/cbq.init restart <---設定したらスクリプトの再起動
[root@~]# iperf -c 192.168.0.254
------------------------------------------------------------
Client connecting to 192.168.0.254, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.6 port 34899 connected with 192.168.0.254 port 5001
[ 3] 0.0-10.1 sec 1.19 MBytes 982 Kbits/sec
[root@~]#
ほぼ、帯域制限どおりの結果が表示されます。iperf はペイロード(実データ)の帯域を表示しますので少なめです。

LANポートの通信帯域制御について

2008-03-04 15:22:44 | Linux
LANのポート通信帯域制御をしてみる
CBQ.init traffic management scriptは/sbin/tc コマンドで送信の帯域制御を設定する時、比較的容易に出来るように、
スクリプト化したものです。
詳細は、traffic control Mini-Howtoを参照してください。
/etc/syconfig/cbq/cbq-xxx へ以下のような設定ファイルを書きます。
例:ネットワーク内 192.168.0.0/24 のhttpトラフィックを1Mbitに制限するものです。
/etc/syconfig/cbq/cbq-100.http
DEVICE=eth0,100Mbit,10Mbit
RATE=1Mbit
WEIGHT=100Kbit
PRIO=5
RULE=192.168.0.0/24:80

DEVICE=ifname,bandwidth[,weight]
ifname は eth0 eth1 などデバイス名
bandwidth は実際のデバイス ethernet 10Mbit 又は 100Mbit の帯域
weight は帯域に比例して調整します。推奨は weight = bandwidth / 10
RATE は割り当帯域 WEIGHT は RATEに対応して値 WEIGHT = RATE / 10 PRIO はプライオリティ1~8 デフォルト5 RULE は実際に適用するIP、プロトコル RULE=192.168.0.1:20/0xfffc この場合20~24ポートを帯域制限の対象になります。設定を入力したら、実際に起動させて動作確認します。
/etc/init.d/cbq.init start