Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

iPerf3 – Linux の正確なネットワーク スループットと速度テスト

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

[こちらもお勧めです:Linux 用の 17 の便利な帯域幅監視ツール ]

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

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

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

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

要件:

  • ネットワークに接続された 2 台のコンピュータ(どちらも iperf3 を搭載)

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

iperf3 の使用を開始する前に 、ベンチマークに使用する 2 台のマシンにインストールする必要があります。 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 サーバー間のネットワーク速度をテストする方法

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

形式 (k) を指定できます。 、グラム キロビットの場合 、メガビットギガビット またはK キロバイト用 、メガバイトギガバイト ) -f を使用してレポートします。 図のように切り替えます。

$ iperf3 -s -f K 

ポート5201の場合 サーバー上の別のプログラムによって使用されている場合は、別のポート (例:3000) を指定できます。 ) -p を使用 図のように切り替えます。

$ iperf3 -s -p 3000

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

$ iperf3 -s -D > iperf3log 

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

$ iperf3 -c 192.168.10.1 -f K

18 頃以降 20まで 数秒経過すると、クライアントは終了し、次のスクリーンショットに示すように、ベンチマークの平均スループットを示す結果が生成されます。

iPerf3 – Linux の正確なネットワーク スループットと速度テスト サーバー間のネットワーク スループットをテストする

ベンチマーク結果から、上のスクリーンショットに示されているように、サーバーからの値にばらつきがあります。 そしてクライアント 。ただし、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
iPerf3 – Linux の正確なネットワーク スループットと速度テスト クライアントでサーバー ネットワークの結果を取得する

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

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

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

$ man iperf3

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

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


  1. 星空を眺めるときは、この便利なBashスクリプトを使用してください

    Linuxがサーバーや開発者によって使用されていることについてよく話しますが、天文学を含む他の多くの分野でも使用されています。 Linuxで利用できる天文学ツールはたくさんあります。たとえば、スカイマップ、星図、望遠鏡を制御するための望遠鏡ドライブシステムへのインターフェイスなどです。しかし、天文学者にとっての1つの課題は、暗闇の中で目を動かしながらコンピューターを使用することです。 夜に野外で運動するとき、天文学者は彼らの暗視を維持する必要があります。人間の目が完全に拡張して低照度レベルに調整されるまで最大30分かかる場合があります。また、電話やラップトップを通常の色と明るさのレベルで

  2. マスター スクリプト:反復的なタスクを自動化して生産性を向上

    厳格で高品質なソフトウェアを構築した経験が豊富な開発者は、スクリプトを作成することで作業のほとんどを自動化する傾向があります。これらのスクリプトは、単純なエイリアス bash コマンドから、サーバー上で実行される反復的な cron トリガーまで多岐にわたります。 このチュートリアルでは、スクリプトとは何か、その多くの使用例、スクリプトを使用する利点と欠点について学びます。また、実際の動作を確認できるように、いくつかのサンプル スクリプトについても説明します。 スクリプトとは何ですか? スクリプトは、タスクや制御プロセスの自動化に役立つスクリプト言語 (Bash、Python、JavaScr