tencent cloud

Cloud Virtual Machine

最新情報とお知らせ
製品情報
パブリックイメージの更新情報
OSの公式サポート終了計画
製品に関するお知らせ
製品概要
CVM概要
製品の強み
基本概念
リージョンとゾーン
初心者ガイド
Service Regions and Service Providers
製品の課金
課金概要
課金モデル
課金項目
課金モデルの変更
購入インスタンス
仕様変更の料金説明
料金未払いに関する説明
クイックスタート
カスタム設定によるLinuxインスタンスの購入
カスタム設定によるWindowsインスタンスの購入
ユーザーガイド
操作ガイド一覧
ご利用制限一覧
インスタンス
スポットインスタンス
リザーブドインスタンス
イメージ
ストレージ
バックアップと復元
ネットワーク
セキュリティ
パスワード/キー
監視とアラート
運用管理
便利な機能
サーバー移行
オンライン移行
オフライン移行
移行に関するご相談
トラブルシューティング
CVMインスタンスにログインできない原因や対処法
Windowsインスタンスのログインに関する障害
Linuxインスタンスのログインに関する障害
その他のインスタンスログインに関する障害
インスタンス実行時の障害
Linuxインスタンスのメモリに関する障害
ネットワーク障害
実践チュートリアル
CVMの選定ガイド
環境構築
ウェブサイトの構築
アプリケーションの構築
可視化ページの構築
ローカルファイルをCVMへアップロード
ネットワークパフォーマンステスト
その他の実践チュートリアル
API リファレンス
History
Introduction
API Category
Making API Requests
Region APIs
Instance APIs
Cloud Hosting Cluster APIs
Image APIs
Instance Launch Template APIs
Placement Group APIs
Key APIs
Security Group APIs
Network APIs
Data Types
Error Codes
セキュリティとコンプライアンス
Cloud Access Management(CAM)
ネットワーク
よくあるご質問
リージョンとアベイラビリティゾーンに関するご質問
課金クラス
インスタンスに関するご質問
ストレージに関するご質問
イメージに関するご質問
サーバー移行について
ネットワークに関するご質問
セキュリティに関するご質問
OSに関するご質問
運用と監視に関するご質問
CAMに関するご質問
NTPサービスに関するご質問
適用シナリオに関するご質問
Agreements
CVM Service Level Agreements
Red Hat Enterprise Linux Image Service Agreement
Public IP Service Level Agreement
用語集

netperfを使用したテスト

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-09-08 17:25:33

操作シナリオ

このドキュメントでは、netperfによってCVMの高スループットネットワークパフォーマンステストを行う方法についてご紹介します。

ツールの紹介

Netperf HPが開発したネットワークパフォーマンステストツールであり、主にTCPおよびUDPのスループットパフォーマンスをテストします。テスト結果は主に、システムから他のシステムへのデータ送信の速度、ならびに他のシステムからのデータ受信の速度を反映します。
SAR ネットワークトラフィックの監視に用いられます。実行のサンプルは次のとおりです。
sar -n DEV 1
02:41:03 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:41:04 PM eth0 1626689.00 8.00 68308.62 1.65 0.00 0.00 0.00
02:41:04 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:41:04 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:41:05 PM eth0 1599900.00 1.00 67183.30 0.10 0.00 0.00 0.00
02:41:05 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
フィールドの解釈は次のとおりです。
フィールド
単位
説明
rxpck/s
pps
1秒あたりの受信パケット数、すなわち受信pps
txpck/s
pps
1秒あたりの送信パケット数、すなわち送信pps
rxkB/s
kB/s
受信帯域幅
txkB/s
kB/s
送信帯域幅

テストシーンおよびパフォーマンス指標

テストシーン

テストシーン
クライアント側のコマンド実行
SAR 監視指標
UDP 64
netperf -t UDP_STREAM -H <server ip> -l 10000 -- -m 64 -R 1 &
PPS
TCP 1500
netperf -t TCP_STREAM -H <server ip> -l 10000 -- -m 1500 -R 1 &
帯域幅
TCP RR
netperf -t TCP_RR -H <server ip> -l 10000 -- -r 32,128 -R 1 &
PPS

パフォーマンス指標

指標
説明
64バイトUDP送受信PPS(パケット/秒)
UDPによってバッチデータ伝送を行う際のデータ伝送スループットを表し、ネットワークの転送能力の限界を反映することができます(パケット損失の可能性あり)。
1500バイトTCP送受信帯域幅(Mbits/秒)
TCPによってバッチデータ伝送を行う際のデータ伝送スループットを表し、ネットワークの帯域幅能力の限界を反映することができます(パケット損失の可能性あり)。
TCP-RR(回/秒)
TCP長リンクにおいてRequest/Response操作を繰り返した場合のトランザクションスループットを表します。TCPのパケット損失なしにネットワーク転送を行う能力を反映することができます。

操作手順

テスト環境の準備

1. 3台のテストサーバーを準備します。Linux CVMのカスタマイズ設定 を参照して、テストサーバーを購入してください。ここではテストサーバーにCentOS 8.2 OSを使用します。
2. 順にテストサーバーにログインし、以下のコマンドを実行してnetperfツールをインストールします。CVMへのログイン方法については、標準ログイン方式を使用してLinuxインスタンスにログイン(推奨)をご参照ください。
yum install -y sysstat wget tar automake make gcc
wget -O netperf-2.7.0.tar.gz -c https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.7.0
tar zxf netperf-2.7.0.tar.gz
cd netperf-netperf-2.7.0
./autogen.sh && ./configure && make && make install

パケット送信パフォーマンスのテスト

1. サーバー上でそれぞれ以下のコマンドを実行し、netperfおよびnetserverの残りのプロセスを停止します。
pkill netserver && pkill netperf
2. このうちサーバーaをクライアント側、 サーバーbとサーバーcをサーバー側とします。サーバー側で以下のコマンドを実行し、netserverを実行します。
netserver
返された結果が下図のとおりであれば、他のnetserverプロセスがまだ存在することを表します。手順1 中のコマンドを実行し、該当のプロセスを停止してください。


返された結果が下図のとおりであれば、netserverの実行に成功したことを表します。続けて次の操作を行ってください。


3. テストシーン で提供されたコマンドをクライアント側で実行し、クライアント側のパケット送信パフォーマンスがそれ以上向上しなくなるまでnetperfプロセスを増減し続けます。
説明:
コマンド実行を繰り返す必要があり、かつserver ipには異なるサーバーIPを使用する必要があります。1つのプロセスが最大パフォーマンスに達しない場合は、テスト支援スクリプト を実行し、プロセスを一括して開始することができます。
4. クライアント側で以下のコマンドを実行し、クライアント側のパケット送信パフォーマンスの変化を観察し、最大値をとります。
sar -n DEV 1
得られた結果に基づき、パフォーマンス指標 を参照して分析を行うことで、CVMの高スループットネットワークパフォーマンスを測定することができます。

パケット受信パフォーマンスのテスト

1. サーバー上でそれぞれ以下のコマンドを実行し、netperfおよびnetserverの残りのプロセスを停止します。
pkill netserver && pkill netperf
2. このうちサーバーaをサーバー側、 サーバーbとサーバーcをクライアント側とします。サーバー側で以下のコマンドを実行し、netserverを実行します。
netserver
返された結果が下図のとおりであれば、他のnetserverプロセスがまだ存在することを表します。手順1中のコマンドを実行し、該当のプロセスを停止してください。


返された結果が下図のとおりであれば、netserverの実行に成功したことを表します。続けて次の操作を行ってください。


3. テストシーン で提供されたコマンドをクライアント側で実行し、クライアント側のパケット送信パフォーマンスがそれ以上向上しなくなるまでnetperfプロセスを増減し続けます。
説明:
コマンド実行を繰り返す必要があり、クライアント側はそれぞれnetperfを開始します。1つのプロセスが最大パフォーマンスに達しない場合は、テスト支援スクリプト を実行し、プロセスを一括して開始することができます。
4. サーバー側で以下のコマンドを実行し、サーバー側のパケット受信パフォーマンスの変化を観察し、最大値をとります。
sar -n DEV 1
得られた結果に基づき、パフォーマンス指標 を参照して分析を行うことで、CVMの高スループットネットワークパフォーマンスを測定することができます。

付録

テスト支援スクリプト

このスクリプトを実行すると、複数のnetperfプロセスを迅速に開始することができます。
#!/bin/bash
count=$1
for ((i=1;i<=count;i++))
do
echo "Instance:$i-------"
# 下記のコマンドはテストシーンの表内のコマンドに置き換え可能です
# -Hの後にサーバーのIPアドレスを入力します。
# -lの後にテスト期間を入力します。netperfが途中で終了しないように、期間を10000に設定します。
netperf -t UDP_STREAM -H <server ip> -l 10000 -- -m 64 -R 1 &
done


ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック