Amazon Elastic Compute Cloud (Amazon EC2) インスタンスがあり、そのインスタンスの 1 秒あたりのネットワークパケット (PPS) の制限を確認したいと考えています。
簡単な説明
Amazon EC2 インスタンスの PPS は、インスタンスのさまざまなネットワーク特性に依存します。これには次が含まれます。
- トラフィックミックス、Transmission Control Protocol (TCP) と User Datagram Protocol (UDP)
- フロー数
- パケットサイズ
- 新しい接続と既存の接続
- 適用済みのセキュリティグループのルール
PPS の許容値は、全体的な帯域幅の許容値とは別に考慮されます。インスタンスが全体的な帯域幅の許容値を下回っている場合でも、平均パケットサイズが小さすぎる場合は PPS 許容値を超えることがあります。
解決方法
iperf2 テストを使用して PPS ベンチマークを実行できます。ネットワークの特性によっては、このテストは、前述のネットワーク特性を踏まえて、任意の Amazon EC2 インスタンスの PPS の大体の制限を確認するのに役立ちます。
iperf2 テストを実行するには、次の操作を実行します。
1. Amazon Linux 2 イメージを使用して、同じアベイラビリティーゾーン (AZ) に 2 つの Amazon EC2 インスタンスを作成します。両方のインスタンスのインスタンスタイプは類似しているはずです。
2. 次のコマンドを実行して、両方のインスタンスに開発ツールと git をインストールします。
sudo yum groupinstall "Development Tools"
sudo yum install git
3. 次のコマンドを実行して、両方の Amazon EC2 インスタンスで iperf コードのクローンを作成します。
cd /usr/local/
sudo git clone https://git.code.sf.net/p/iperf2/code iperf2-code
4. 次を使用して、両方の Amazon EC2 インスタンスでパッケージを構築およびインストールします。
cd /usr/local/iperf2-code
sudo ./configure
sudo make
sudo make install
5. リスニングモードで 1 つのインスタンスで iperf を実行します。このインスタンスは iperf テストのサーバーとして機能します。
sudo /usr/local/bin/iperf -s -u
6. 別のインスタンスで次の iperf コマンドを実行します。このインスタンスはクライアントとして機能します。
sudo /usr/local/bin/iperf -c <private_IP_of_server_instance> -u -i 1 -l 16 -b 20kpps -e -P64
レスポンスには、このインスタンスタイプのために達成される最大 PPS が表示されます。詳細については、「MANPAGE of IPERF」(IPERF の MANPAGE) を参照してください。