L4ロードバランサー、ゲートウェイ、サーバーのベンチマークに使える、DPDKベースのネットワークトラフィック生成・負荷テストツール。
esnet/iperf
iperf3は、TCP、UDP、SCTPでIPネットワークの最大実効帯域幅を測定するコマンドラインツールです。
- スター
- 8,865
- フォーク
- 1,469
- 未解決の Issue
- 245
- 最終コミット
- 10 日前
これは何?
iperf3は、IPネットワーク上の2台のホスト間で実現可能な最大帯域幅を実測します。一方のマシンでサーバー、もう一方でクライアントとして実行すると、各テストのスループットまたはビットレート、パケットロスなどのパラメーターを報告します。時間、プロトコル、バッファーの設定はコマンドラインから調整できます。
iperf3は、従来のiperfを一から書き直したもので、コードベースが小さくなり、他のプログラムで利用できるライブラリ版も提供します。ゼロコピー・モードや任意で選択できるJSON出力などの機能が追加されています。従来のiperfとの後方互換性はなく、別プロジェクトのiperf2は独自に開発が続けられています。
主にESnetとLawrence Berkeley National Laboratoryが開発しており、ネットワーク計測システムperfSONARの構成要素です。開発対象はUbuntu Linux、FreeBSD、macOSで、標準的なconfigureとmakeの手順でビルドできます。
主な機能
- 012台のホスト間でTCP、UDP、SCTPのスループットを測定します。
- 02ビットレート、パケットロスなど、テストごとの統計情報を報告します。
- 03時間、プロトコル、バッファーのパラメーターを調整できます。
- 04スクリプト処理や解析に使えるJSON出力を任意で利用できます。
- 05高度なテスト向けに、ゼロコピーのsendfileモードとCPU affinity設定を利用できます。
- 06他のプログラムに組み込めるライブラリ版を提供します。
ユースケース
- 2台のサーバー間のリンクや経路で実現可能な帯域幅を確認する。
- ネットワークのスループット問題を調査し、設定ごとの結果を比較する。
- perfSONARによる計測環境の一環として、ネットワーク性能テストを実行する。
- JSON出力を使って、スクリプトで帯域幅テストを自動化する。
クイックスタート
- 1
ソースリポジトリをクローンする
git clone https://github.com/esnet/iperf.git - 2
ソースからビルドしてインストールする
./configure; make; make install
使う前に知っておきたいこと
- 公式にサポートされているのは Ubuntu Linux、FreeBSD、macOS のみです。それ以外のプラットフォームは保証されません。
- メタデータ上のライセンスは未指定(NOASSERTION)ですが、README には米国政府に関する表記を含む BSD 形式のライセンスが記載されています。
トピック
よくある質問
- iperf とは?
- iperf3は、TCP、UDP、SCTPでIPネットワークの最大実効帯域幅を測定するコマンドラインツールです。 iperf3は、IPネットワーク上の2台のホスト間で実現可能な最大帯域幅を実測します。一方のマシンでサーバー、もう一方でクライアントとして実行すると、各テストのスループットまたはビットレート、パケットロスなどのパラメーターを報告します。時間、プロトコル、バッファーの設定はコマンドラインから調整できます。
- iperf は無料で使えますか?ライセンスは?
- iperf は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- iperf は今もメンテナンスされていますか?
- 活発にメンテナンス中。iperf の最終コミットは 2026年10月27日 です。
- iperf は何に使えますか?
- 2台のサーバー間のリンクや経路で実現可能な帯域幅を確認する。 ネットワークのスループット問題を調査し、設定ごとの結果を比較する。 perfSONARによる計測環境の一環として、ネットワーク性能テストを実行する。 JSON出力を使って、スクリプトで帯域幅テストを自動化する。
- iperf のインストール方法は?
- ソースリポジトリをクローンする: git clone https://github.com/esnet/iperf.git ソースからビルドしてインストールする: ./configure; make; make install
- iperf はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/esnet/iperf
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
GoとReactで構築された、Web UI付きのセルフホスト型ネットワーク速度テスト・サーバー監視ツール。
保守性と高性能を重視したネットワークプロトコルのサーバーやクライアントを構築するための、非同期・イベント駆動型Javaフレームワークです。
ARP、ICMP、TCP、UDP、SOCKS5スキャンに対応し、自動化向けにJSON出力できるGo製のネットワークスキャナー。
fio、iperf3、Geekbenchを使い、Linuxサーバーのディスク、ネットワーク、CPU・メモリをベンチマークする単一のbashスクリプト。
HTTP、Redis、MySQL、Kafka、DNSの通信をキャプチャし、カーネル内で遅延が発生している箇所を可視化するeBPFベースのネットワーク解析CLI。