ネットワークパフォーマンステストツール--Iperf、Netperf、MZ

ネットワーク性能測定の5つの指標

  • 可用性(availability)
  • 応答時間(response time)
  • ネットワーク利用率(network utilization)
  • ネットワークスループット(network throughput)
  • ネットワーク帯域容量(network bandwidth capacity)
  1. 可用性

ネットワークの正常動作を確認するためにはpingコマンドが最も簡単な方法です。icmp echo requestを送信し、icmp echo replyを受け取ることでリモートマシンとの接続状態を判断します。

ping -c 4 -s 64 example.com

異なるサイズのパケットを送信できる機能は、特にネットワーク機器のテストにおいて重要です。

  1. 応答時間

Pingコマンドのecho request/replyの往復時間を計測することで応答時間を測定できます。ネットワーク負荷やデバイスの問題などが応答時間に影響を与えます。

  1. ネットワーク利用率

ネットワーク利用時間が総時間に対する比率を示します。例えばEthernetでは、一度に一つのパケットしか送信できないため、利用率は0%または100%になります。

  1. ネットワークスループット

ネットワーク内の二つのノード間での残余帯域幅を測定します。実際の環境でのスループット測定には異なる時間帯での複数回のテストが必要です。

  1. ネットワーク帯域容量

最大利用可能な帯域幅を示し、ネットワーク機器の能力によって決まります。Packet pairsやpacket trains技術を使用して測定を行います。

データ収集方式

SNMPプロトコルを使用した直接取得、tcpdumpなどの監視ツール、そしてiperf、netperf、mzなどのツールによるデータ生成があります。

Iperf

オプション 説明
-u UDPモード使用
-p ポート指定
-l バッファ長設定
-w ソケットバッファサイズ設定

サーバー専用オプション

オプション 説明
-s サーバーモード起動
-P 並列接続数設定

クライアント専用オプション

オプション 説明
-b 帯域幅設定
-d 双方向テスト

実例

UDPモード:

# サーバー
iperf -u -s

# クライアント
iperf -u -c 192.168.1.1 -b 100M -t 60

TCPモード:

# サーバー
iperf -s

# クライアント
iperf -c 192.168.1.1 -t 60

Netperf

テーブル形式のオプション:

オプション 説明
-H リモートサーバーIP指定
-l テスト時間指定

実例:

# サーバー
./netserver

# クライアント
./netperf -H 192.168.0.28 -l 60

MZ

C言語で開発された高速トラフィック生成ツール。以下のような機能を持ちます:

  • ARP, UDP, TCPなど多数のパケットタイプの生成
  • 詳細なオプションでカスタマイズ可能

実例:

# IPパケット生成
mz eth0 -t ip p=68:65:6c:6c:6f:20:77:6f:72:6c:64

# UDPパケット生成
mz eth0 -B 192.168.1.1 -t udp "dp=16384-32767, p=A1:00:CC:00:00:AB:CD:EE:EE:DD:DD:00"

タグ: ネットワークテスト Iperf Netperf MZ パフォーマンス測定

7月8日 16:47 投稿