今回は、iperf3についてというかiperf3で調べたRaspberry Pi 4のWi-Fiについてです。
結論から言うと、Raspberry Pi 4のWi-Fiは、非常に遅い。サーバーとして使う場合などでは、有線LANを使うに限るのではないかと思われます。
iperf3について
iperf3は、ネットワークの帯域幅と速度を調べるために多くのプラットホーム用に公開されているツールです。
プロジェクトのホームページは、iperf3 ですが、GitHubでソースなども公開されています。Obtaining iperf3のページから辿ってWindows用のバイナリーなどを入手することも出来ます。
iperf3のインストール
AlmaLinuxやRaspberry Pi OSの場合には、パッケージとしてインストールすることが出来ます。
AlmaLinuxの場合は、次のコマンドを実行します。
$ sudo dnf install -y iperf3
Raspberry Pi OSの場合は、次のコマンドを実行します。
$ sudo apt install -y iperf3
Windowsの場合には、ダウンロードしたzipファイルを解凍しておきます。
iperf3の実行
iperf3を実行する場合には、2台のコンピューターがクライアントとサーバーになって動作します。
サーバー側では、次のように実行します。
$ iperf3 -s
クライアント側では、サーバー側のIPアドレスを指定して次のように実行します。
$ iperf3 -c <サーバー側のIPアドレス>
Windowsで実行する場合には、Windows Powershellまたはコマンドプロンプトで、先に解凍したフォルダーに移動してから上記のように実行します。ただし、Windows Powershellでは先頭に”./”をつけてカレントディレクトリーのコマンドであることを明示する必要があります。
上記がAlmaLinuxでiperf3をクライアントとして実行したものです、非常に遅くて送受信共に60Mbps程度となっています。このAlmaLinuxは、Raspberry Pi 4の8GBモデルでWi-Fiを使用しています。
その際にサーバー側として使用していた側が以下となります。こちらはRaspberry Pi 4の4GBモデルで、有線LANでネットワークに接続しています。
上記の様にiperf3でオプションを指定しなかった場合には、サーバー側がポート番号5201
でLISTENしていてTCPが使用されています。オプションでポート番号を変更したり、UDPを使用したりすることも出来ます。
また1秒毎にデータを送受信して10回実行した結果が表示されています。
有線LANでのiperf3の実行
先ほどの例では、同じルーターに接続しているRaspberry Pi同士ですがWi-Fiを使用している場合の例でした。
次に、ルーターが2台に跨るために少し遅いのですが、Raspberry Pi 4を2台とも有線LANで接続した場合の例となります。
この内容をみると先ほどより、10倍近く早くなっています。この結果を見ても、Raspberry Pi 4を使用する場合には可能であればWi-Fiを使わない方が良さそうです。
参考までに同じスイッチに有線LANで接続しているRaspberry Pi同士の場合には、次の内容となっています。
まとめ
iperf3というツールを使うことで、ネットワークの帯域幅と速度を容易に知ることができる様子を見て来ました。また、使用する環境によって同じパソコンを使用しても大幅にネットワークの状況が異なることもわかりました。使用する目的と用途に合わせて、最適な環境を構築していくことができれば幸いです。