Amazon EC2 インスタンスのネットワーク帯域幅 - Amazon Elastic Compute Cloud

Amazon EC2 インスタンスのネットワーク帯域幅

インスタンスの帯域幅の仕様は、インスタンスのインバウンドトラフィックとアウトバウンドトラフィックの両方に適用されます。例えば、インスタンスが最大 10 Gbps の帯域幅を指定した場合、インバウンドトラフィックには最大 10 Gbps、アウトバウンドトラフィックには最大 10 Gbps の帯域幅になります。EC2 インスタンスで使用できるネットワーク帯域幅は、次のようにいくつかの要因によって異なります。

マルチフロートラフィック

インスタンスで使用できる集約マルチフロートラフィックの帯域幅は、トラフィックの宛先によって異なります。

  • リージョン内 – トラフィックは、インスタンスで使用可能な全ネットワーク帯域幅を利用することができます。

  • 他のリージョンへの通信、インターネットゲートウェイ、Direct Connect、ローカルゲートウェイ (LGW) – トラフィックは、最低 32 個の vCPUs を搭載した現行世代のインスタンスで利用可能なネットワーク帯域幅の最大 50% を利用できます。32vCPUs未満の現世代のインスタンスの帯域幅は 5 Gbps に制限されています。

シングルフロートラフィック

インスタンスが同じクラスタープレイスメントグループにない場合、シングルフロートラフィックのベースライン帯域幅は 5 Gbps に制限されます。レイテンシーを減らし、シングルフロー帯域幅を増やすには、以下のいずれかをお試しください。

  • クラスタープレイスメントグループを使用すると、同じプレイスメントグループ内のインスタンスで最大 10 Gbps の帯域幅を実現できます。

  • または、任意の 2 つのエンドポイント間に複数のパスを設定することで、Multipath TCP (MPTCP) を使用して高帯域幅を実現できます。

  • 同じサブネット内の対象インスタンスに ENA Express を設定して、それらのインスタンス間で最大 25 Gbps を実現します。

使用可能なインスタンスの帯域幅

使用可能なインスタンスのネットワーク帯域幅は、その vCPU の数によって異なります。例えば、m5.8xlarge インスタンスには 32 個の vCPU と 10 Gbps のネットワーク帯域幅があり、m5.16xlarge インスタンスには 64 個の vCPU と 20 Gbps のネットワーク帯域幅があります。ただし、インスタンスがこの帯域幅を達成できない場合があります。例えば、インスタンスレベルでネットワーク許容量 (1 秒あたりのパケット数や追跡される接続数など) を超えた場合などです。トラフィックが使用できる帯域幅の量は、vCPUsの数と宛先によって異なります。例えば、m5.16xlarge インスタンスは 64 vCPUs のため、リージョン内の別のインスタンスへのトラフィックは、使用可能な全帯域幅 (20 Gbps) を利用できます。ただし、異なるリージョンの別のインスタンスへのトラフィックは、使用可能な帯域幅の 50% (10 Gbps) しか利用できません。

通常、vCPU が 16 個以下のインスタンス (サイズ 4xlarge 以下) の場合、指定の帯域幅に「最大」と文書化されています。例えば、最大 10 Gbpsなどです。これらのインスタンスには、ベースライン帯域幅があります。追加需要を満たすために、ネットワーク I/O クレジットメカニズムを使用して、ベースライン帯域幅を超えてバーストすることができます。インスタンスは、インスタンスのサイズに応じて、バースト帯域幅を限られた期間 (通常は 5~60 分) 使用できます。

インスタンスは、起動時にネットワーク I/O クレジットの最大数を受け取ります。インスタンスがネットワーク I/O クレジットを使い果たすと、ベースライン帯域幅に戻ります。実行中のインスタンスは、ベースライン帯域幅よりも少ないネットワーク帯域幅を使用するたびに、ネットワーク I/O クレジットを取得します。停止したインスタンスは、ネットワーク I/O クレジットを取得しません。バースト帯域幅は共有リソースであるため、インスタンスにクレジットが使用可能な場合でも、インスタンスのバーストはベストエフォートベースで行われます。

インバウンドトラフィックとアウトバウンドトラフィックには個別のネットワーク I/O クレジットバケットがあります。

ベースおよびバーストネットワークパフォーマンス

「Amazon EC2 Instance Types ガイド」では、各インスタンスタイプのネットワークパフォーマンスに加え、バースト帯域幅を使用できるインスタンスで利用可能な、ベースラインネットワーク帯域幅について説明しています。詳細については、次を参照してください:

AWS CLI を使用してネットワークパフォーマンスを表示するには

describe-instance-types AWS CLI コマンドを使用して、インスタンスタイプに関する情報を表示できます。次の例では、すべての C5 インスタンスのネットワークパフォーマンス情報を表示します。

aws ec2 describe-instance-types \ --filters "Name=instance-type,Values=c5.*" \ --query "InstanceTypes[].[ \ InstanceType, \ NetworkInfo.NetworkPerformance, \ NetworkInfo.NetworkCards[0].BaselineBandwidthInGbps]" \ --output table

正常な出力

--------------------------------------------- | DescribeInstanceTypes | +--------------+--------------------+-------+ | c5.4xlarge | Up to 10 Gigabit | 5.0 | | c5.xlarge | Up to 10 Gigabit | 1.25 | | c5.12xlarge | 12 Gigabit | 12.0 | | c5.24xlarge | 25 Gigabit | 25.0 | | c5.metal | 25 Gigabit | 25.0 | | c5.9xlarge | 12 Gigabit | 12.0 | | c5.2xlarge | Up to 10 Gigabit | 2.5 | | c5.large | Up to 10 Gigabit | 0.75 | | c5.18xlarge | 25 Gigabit | 25.0 | +--------------+--------------------+-------+
AWS Tools for PowerShell を使用してネットワークパフォーマンスを表示するには

Get-EC2InstanceType PowerShell コマンドを使用して、インスタンスタイプに関する情報を表示できます。次の例では、すべての C5 インスタンスのネットワークパフォーマンス情報を表示します。

Get-EC2InstanceType -Filter @{Name = "instance-type"; Values = "c5.*" } | ` Select-Object ` InstanceType, @{Name = 'NetworkPerformance'; Expression = {($_.Networkinfo.NetworkCards.NetworkPerformance)}}, @{Name = 'BaselineBandwidthInGbps'; Expression = {($_.Networkinfo.NetworkCards.BaselineBandwidthInGbps)}} | ` Format-Table -AutoSize

正常な出力

InstanceType NetworkPerformance BaselineBandwidthInGbps ------------ ------------------ ----------------------- c5.4xlarge Up to 10 Gigabit 5.00 c5.xlarge Up to 10 Gigabit 1.25 c5.12xlarge 12 Gigabit 12.00 c5.9xlarge 12 Gigabit 12.00 c5.24xlarge 25 Gigabit 25.00 c5.metal 25 Gigabit 25.00 c5.2xlarge Up to 10 Gigabit 2.50 c5.large Up to 10 Gigabit 0.75 c5.18xlarge 25 Gigabit 25.00

インスタンスの帯域幅をモニタリングします。

CloudWatch メトリクスを使用して、インスタンスのネットワーク帯域幅と送受信されたパケットをモニタリングできます。Elastic Network Adapter (ENA) ドライバーが提供するネットワークパフォーマンスメトリクスを使用して、トラフィックが Amazon EC2 がインスタンスレベルで定義するネットワーク許容量を超えるかモニタリングできます。

Amazon EC2 がインスタンスのメトリクスデータを CloudWatch に送信するときに、1 分単位か 5 分単位かを設定できます。CloudWatch インスタンスメトリクスでは、許容量を超え、パケットがドロップされたことがネットワークパフォーマンスメトリクスに表示されることがあります。これは、インスタンスのネットワークリソースに対する需要が短時間で急増し (マイクロバーストと呼ばれる)、CloudWatch メトリクスがこのようなマイクロ秒単位の急増を反映するのに十分な粒度を持っていない場合に発生します。