ウェブサイト検索

Linux で iPerf3 ツールを使用してネットワーク速度をテストする方法


iperf3 は、リアルタイムのネットワーク スループット測定を実行するための、無料のオープンソース、クロスプラットフォームのコマンドライン ベースのプログラムです。これは、IP ネットワークで達成可能な最大帯域幅をテストするための最も強力なツールの 1 つです (IPv4 および IPv6 をサポート)。

iperf を使用すると、タイミング、バッファ、TCP、UDP、SCTP などのプロトコルに関連するいくつかのパラメータを調整できます。これは、ネットワーク パフォーマンスのチューニング操作に役立ちます。

ネットワーク パフォーマンスを最大限に向上させるには、ネットワークの送受信機能のスループットと遅延を増加させる必要があります。

ただし、実際のチューニングに入る前に、いくつかのテストを実行して、チューニング プロセスのガイドとなるネットワーク全体のパフォーマンス統計を収集する必要があります。

その結果には、秒単位の時間間隔、転送されたデータ、帯域幅 (転送速度)、損失、その他の有用なネットワーク パフォーマンス パラメーターが含まれます。これは主に、特定のパス上での TCP 接続の調整を支援することを目的としており、このガイドではこれに焦点を当てます。

要件:

  • ネットワークに接続された 2 台のコンピュータには、両方ともiperf3 がインストールされています。

Linux システムに iPerf3 をインストールする方法

iperf3 の使用を開始する前に、ベンチマークに使用する 2 台のマシンに iperf3 をインストールする必要があります。 iperf3 は、ほとんどの一般的な Linux ディストリビューションの公式ソフトウェア リポジトリで入手できるため、図に示すようにパッケージ マネージャーを使用してインストールするのは簡単です。

sudo apt install iperf3         [On Debian, Ubuntu and Mint]
sudo yum install iperf3         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a net-misc/iperf   [On Gentoo Linux]
sudo apk add iperf3             [On Alpine Linux]
sudo pacman -S iperf3           [On Arch Linux]
sudo zypper install iperf3      [On OpenSUSE]    

両方のマシンにiperf3 をインストールしたら、ネットワーク スループットのテストを開始できます。

2 つの Linux サーバー間のネットワーク速度をテストする方法

まず、サーバーとして使用するリモート マシンに接続し、-s フラグを使用してサーバー モードで iperf3 を起動します。デフォルトではポート 5201 をリッスンします。

形式 (キロビットメガビットの場合は kmg) を指定できます。 、ギガビットまたはKMGキロバイトメガバイト) G バイト) をレポートに含めるには、図に示すように -f スイッチを使用します。

iperf3 -s -f K 

ポート 5201 がサーバー上の別のプログラムによって使用されている場合は、 -p スイッチを使用して別のポート (3000 など) を指定できます。示されています。

iperf3 -s -p 3000

オプションで、次のように -D フラグを使用してサーバーをデーモンとして実行し、サーバー メッセージをログ ファイルに書き込むことができます。

iperf3 -s -D > iperf3log 

次に、クライアントとして扱うローカル マシン (実際のベンチマークが行われる場所) で、-c を使用してクライアント モードで iperf3 を実行します。フラグを設定し、サーバーが実行されているホストを指定します (IP アドレス、ドメイン、またはホスト名のいずれかを使用)。

iperf3 -c 192.168.10.1 -f K

1820 秒後、クライアントは終了し、次のスクリーンショットに示すように、ベンチマークの平均スループットを示す結果が生成されます。

ベンチマーク結果から、上のスクリーンショットに示されているように、サーバークライアントの値にばらつきがあります。ただし、 実行するすべてのテストでiperf クライアント マシンから得られた結果を使用することを常に考慮する必要があります。

Linux で高度なネットワーク テスト スループットを実行する方法

以下で説明するように、高度なテストを実行するためのクライアント固有のオプションが多数あります。

特定の時点でのネットワーク内のデータ量を決定する重要な要素の 1 つは、TCP ウィンドウ サイズです。これは、TCP 接続を調整する際に重要です。以下に示すように、-w フラグを使用してウィンドウ サイズ/ソケット バッファ サイズを設定できます。

iperf3 -c 192.168.10.1 -f K -w 500K	

サーバーが送信しクライアントが受信するリバース モードで実行するには、-R スイッチを追加します。

iperf3 -c 192.168.10.1 -f K -w 500K -R	

双方向テストを実行するには、つまり両方向の帯域幅を同時に測定するには、-d オプションを使用します。

iperf3 -c 192.168.10.1 -f K -w 500K -d

クライアント出力でサーバーの結果を取得したい場合は、--get-server-output オプションを使用します。

iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output

-P オプションを使用して、同時に実行する並列クライアント ストリームの数 (この例では 2 つ) を設定することもできます。

iperf3 -c 192.168.10.1 -f K -w 500K -P 2

詳細については、iperf3 のマニュアル ページを参照してください。

man iperf3

それだけです!実際のネットワーク パフォーマンスの調整を行う前に、必ずネットワーク パフォーマンス テストを実行してください。 iperf3 は、ネットワーク スループット テストの実行に役立つ強力なツールです。

共有したい考えや質問がありましたら、以下のコメント フォームをご利用ください。