2014年1月12日

EC2 でネットワークスループットを計測

EC2 上で iperf をインストールしてネットワークスループットを計測してみましょう。Amazon Linux を使います。

まずはインストール。普通にやると出てきません。
$ sudo yum install iperf
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main/latest                                                                                 | 2.1 kB     00:00
amzn-updates/latest                                                                              | 2.3 kB     00:00
Nothing to do

--enablerepo=epel を付けることでインストールできます。
$ sudo yum install iperf  --enablerepo=epel
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main/latest                                                                                 | 2.1 kB     00:00
amzn-updates/latest                                                                              | 2.3 kB     00:00
648 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package iperf.x86_64 0:2.0.5-9.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                   Arch                       Version                            Repository                Size
========================================================================================================================
Installing:
 iperf                     x86_64                     2.0.5-9.el6                        epel                      53 k

Transaction Summary
========================================================================================================================
Install  1 Package

Total download size: 53 k
Installed size: 121 k
Is this ok [y/d/N]: y
Downloading packages:
warning: /var/cache/yum/x86_64/latest/epel/packages/iperf-2.0.5-9.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Public key for iperf-2.0.5-9.el6.x86_64.rpm is not installed
iperf-2.0.5-9.el6.x86_64.rpm                                                                     |  53 kB     00:00
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Importing GPG key 0x0608B895:
 Userid     : "EPEL (6) <epel@fedoraproject.org>"
 Fingerprint: 8c3b e96a f230 9184 da5c 0dae 3b49 df2a 0608 b895
 Package    : epel-release-6-8.9.amzn1.noarch (installed)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : iperf-2.0.5-9.el6.x86_64                                                                             1/1
  Verifying  : iperf-2.0.5-9.el6.x86_64                                                                             1/1

Installed:
  iperf.x86_64 0:2.0.5-9.el6

Complete!

サーバとクライアントモードがあるようです。
$ iperf
Usage: iperf [-s|-c host] [options]
Try `iperf --help' for more information.

サーバとして起動すると通信を待ち受けます。デフォルトのポートは 5001 のようです。(ポートは -p にて指定できるようです)
$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------

クライアントから通信を行いましょう。
$ iperf -c localhost
------------------------------------------------------------
Client connecting to localhost, TCP port 5001
TCP window size:  168 KByte (default)
------------------------------------------------------------
[  3] local 127.0.0.1 port 32853 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  16.8 GBytes  14.5 Gbits/sec
できました。

サーバ側でも結果が出ています。
$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 32853
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  16.8 GBytes  14.5 Gbits/sec

これで快適ネットワークスループットを計測できますね!

0 コメント:

コメントを投稿