マシン間の回線速度を調べる方法としてiperfを使うというのがあるけど、ググってみると古い情報だと「ver.2はもう更新終了してver.3に移行した」とか「ver.3はまだWindowsに対応していない」とか出てきたので、見つけた方法のうち2019/04/22時点で一番楽なのはこれだと思う。
ダウンロードサイト
各種OS向けのiperf 3.1.3がダウンロードできる。
LinuxだけでなくWindows、Andoroid、iOS用のものもある。
https://iperf.fr/iperf-download.php
使い方
Windowsでは解凍して出てきたiperf3.exeをコマンドプロンプトで各種オプションを付けて実行するだけ。
Linuxの場合はrpmをインストールして、Windowsと同様に各種オプションを付けて実行すれば良い。
[root@host ~]# rpm -ivh iperf3-3.1.3-1.fc24.x86_64.rpm
オプションについてはサーバ側として起動する「-s」、クライアント側として起動する「-c [ホスト名 or IPアドレス]」などがある。
オプションの使い方については他に説明している人がいるのでそちらを参照すればいいと思う。
サーバ側:Linux、クライアント側:Windows 10、というように異なるOS間でも使用できる。
またローカル内で2つ、サーバ側とクライアント側として起動するとローカルでのデータコピーが何Gbps相当なのかといった調べ方もできる。
所感
個人的な感想ではあるが、iperfで出る回線速度は体感よりも小さな値だと思う。
イントラネットなど高速で近いところだとほぼ期待どおりの値がでる。例えば1000BASE-Tでつないだイントラネットでは900Mbpsくらい。
一方でフレッツの1Gbpsベストエフォートで実測300~400Mbpsくらいと言われているところでもiperfで試してみると40Mbpsと表示されたりする。
ファイルサイズが大きいものを投げれば回線速度の値は大きくなるし、小さいものを投げれば小さくなる。
実測値として転送処理時間の計算に入れるのではなく、あくまで「目安として測ってみたら何Mbpsだった」と思った方がいいかもしれない。
回線は速いはずなのにマシンがぽんこつで処理速度が出ない、じゃあネックはどこだ、というように調べるのにも使える。