複数のネットワークカードを使用して Amazon EC2 インスタンスのネットワーク帯域幅を最大化する - Amazon Elastic Compute Cloud

複数のネットワークカードを使用して Amazon EC2 インスタンスのネットワーク帯域幅を最大化する

EFA をサポートする多くのインスタンスタイプには複数のネットワークカードもあります。詳細については「ネットワークカード」を参照してください。これらのインスタンスタイプのいずれかで EFA を使用する予定がある場合は次の基本設定をお勧めします。

  • プライマリネットワークインターフェイス (ネットワークカードインデックス 0、デバイスインデックス 0) にはEFA (EFA と ENA の組み合わせ) インターフェイスを作成します。EFA のみのネットワークインターフェイスをプライマリネットワークインターフェイスとして使用することはできません。

  • 追加のネットワークインターフェイスごとに、次の未使用ネットワークカードインデックス、デバイスインデックス 1、および ENA 帯域幅要件や IP アドレススペースなどのユースケースに応じて、EFA (EFA と ENA の組み合わせ) または EFA のみのネットワークインターフェイスのいずれかを使用します。ユースケース例については「P5 インスタンスの EFA 設定」を参照してください。

注記

P5 インスタンスでは最大ネットワーク帯域幅を有効にするために、特定の方法でネットワークインターフェイスを設定する必要があります。詳細については「P5 インスタンスの EFA 設定」を参照してください。

次の例はこれらの推奨事項に基づいてインスタンスを起動する方法を示しています。

Instance launch
インスタンス起動ウィザードを使用したインスタンスの起動時に EFA を指定するには
  1. [ネットワーク設定] セクションで、[編集] をクリックしてください。

  2. 高度なネットワーク設定の拡張。

  3. プライマリネットワークインターフェイス (ネットワークインターフェイス 1) で、[ネットワークカードインデックス = 0][デバイスインデックス = 0][インターフェイスタイプ = EFA と ENA の組み合わせ] を選択してください。

  4. 必要な追加のネットワークインターフェイスごとに、[ネットワークインターフェイスの追加] を選択してください。ネットワークカードインデックスでは次の未使用インデックスを選択し、[デバイスインデックス = 1][インターフェイスタイプ = EFA と ENA の組み合わせ] または [EFA のみ] を選択してください。

[run-instances] コマンドを使用してインスタンスの起動中に EFA を指定するには

--network-interfaces では必要な数のネットワークインターフェイスを指定します。プライマリネットワークインターフェイスに NetworkCardIndex=0DeviceIndex=0InterfaceType=efa を指定します。追加のネットワークインターフェイスについてはNetworkCardIndex には次の未使用インデックス、DeviceIndex=1InterfaceType=efa、または efa-only を指定してください

次のコマンドスニペットの例は32 の EFA デバイスおよび 1 つの ENA デバイスによるリクエストを示しています。

$ aws --region $REGION ec2 run-instances \ --instance-type p5.48xlarge \ --count 1 \ --key-name key_pair_name \ --image-id ami-0abcdef1234567890 \ --network-interfaces "NetworkCardIndex=0,DeviceIndex=0,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=1,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=2,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=3,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=4,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=5,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=6,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=7,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=8,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=9,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=10,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=11,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=12,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=13,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=14,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=15,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=16,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=17,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=18,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=19,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=20,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=21,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=22,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=23,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=24,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=25,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=26,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=27,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=28,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=29,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=30,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" \ "NetworkCardIndex=31,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa|efa-only" ...
Launch templates
Amazon EC2 コンソールを使用して起動テンプレートに EFA を追加するには
  1. [ネットワーク設定] セクションで [高度なネットワーク設定] を展開します。

  2. プライマリネットワークインターフェイス (ネットワークインターフェイス 1) を追加するには[ネットワークインターフェイスの追加] を選択し、[ネットワークカードインデックス = 0][デバイスインデックス = 0][インターフェイスタイプ = EFA と ENA の組み合わせ] を選択してください。

  3. さらにネットワークインターフェイスを追加するには[ネットワークインターフェイスの追加] を選択してください。ネットワークカードインデックスでは次の未使用インデックスを選択し、[デバイスインデックス = 1][インターフェイスタイプ = EFA と ENA の組み合わせ] または [EFA のみ] を選択してください。

[create-launch-template] コマンドを使用して起動テンプレートに EFA を追加するには

NetworkInterfaces では必要な数のネットワークインターフェイスを指定します。プライマリネットワークインターフェイスに NetworkCardIndex=0DeviceIndex=0InterfaceType=efa を指定します。追加のネットワークインターフェイスについてはNetworkCardIndex には次の未使用インデックス、DeviceIndex=1InterfaceType=efa、または efa-only を指定してください

次のスニペットは設定可能な 32 のネットワークインターフェイスのうち 3 つのネットワークインターフェイスを使用した例を示しています。

"NetworkInterfaces":[ { "NetworkCardIndex":0, "DeviceIndex":0, "InterfaceType": "efa", "AssociatePublicIpAddress":false, "Groups":[ "security_group_id" ], "DeleteOnTermination":true }, { "NetworkCardIndex": 1, "DeviceIndex": 1, "InterfaceType": "efa|efa-only", "AssociatePublicIpAddress":false, "Groups":[ "security_group_id" ], "DeleteOnTermination":true }, { "NetworkCardIndex": 2, "DeviceIndex": 1, "InterfaceType": "efa|efa-only", "AssociatePublicIpAddress":false, "Groups":[ "security_group_id" ], "DeleteOnTermination":true }, { "NetworkCardIndex": 3, "DeviceIndex": 1, "InterfaceType": "efa|efa-only", "AssociatePublicIpAddress":false, "Groups":[ "security_group_id" ], "DeleteOnTermination":true } ...

P5 インスタンスの EFA 設定

P5 インスタンスのネットワーク帯域幅の総量は 3,200 Gbps で、そのうち最大 800 Gbps を IP ネットワークトラフィックに使用できます。EFA ネットワークトラフィックと IP ネットワークトラフィックは同じ基盤となるリソースを共有するため、一方が使用する帯域幅は他方が利用できる帯域幅を減らします。つまり、総帯域幅が 3,200 Gbps を超えず、IP 帯域幅が 800 Gbps を超えない限り、EFA トラフィックと IP トラフィックの間でネットワーク帯域幅を任意の組み合わせで分散できます。例えば、IP 帯域幅で 400 Gbps を使用する場合、同時に最大 2,800 Gbps の EFA 帯域幅を実現できます。

ユースケース 1: IP アドレスを保存し、潜在的な Linux IP の問題を回避する

この設定では最大 3200 Gbps の EFA ネットワーク帯域幅と最大 100 Gbps の IP ネットワーク帯域幅を 1 つのプライベート IP アドレスで提供します。また、この設定はパブリック IP アドレスの自動割り当ての禁止や、インスタンスに複数のネットワークインターフェイスがある場合に発生する可能性のある IP ルーティングの課題 (ホスト名から IP アドレスへのマッピングの問題や送信元 IP アドレスの不一致) など、Linux IP の潜在的な問題を回避するのに役立ちます。

  • プライマリネットワークインターフェイス (ネットワークカードインデックス 0、デバイスインデックス 0) にはEFA (EFA と ENA の組み合わせ) ネットワークインターフェイスを使用します。

  • 残りのネットワークインターフェイス (ネットワークカードインデックス 1~31、デバイスインデックス 1) にはEFA のみのネットワークインターフェイスを使用します。

ユースケース 2: 最大 EFA と IP ネットワーク帯域幅

この設定では最大 3200 Gbps の EFA ネットワーク帯域幅と最大 800 Gbps の IP ネットワーク帯域幅を 8 つのプライベート IP アドレスで提供します。この設定ではパブリック IP アドレスを自動割り当てすることはできません。ただし、インターネット接続の起動後に、Elastic IP アドレスをプライマリネットワークインターフェイス (ネットワークカードインデックス 0、デバイスインデックス 0) にアタッチすることはできます。

  • プライマリネットワークインターフェイス (ネットワークカードインデックス 0、デバイスインデックス 0) にはEFA (EFA と ENA の組み合わせ) ネットワークインターフェイスを使用します。

  • 残りのインターフェイスについては次の手順を実行します。

    • ネットワークカードインデックス 1、2、3 で EFA のみのネットワークインターフェイスを指定し、デバイスインデックス 1 を使用します。

    • 次のネットワークカードインデックスサブセットに 1 つの EFA (EFA と ENA の組み合わせ) ネットワークインターフェイスと 3 つの EFA のみのネットワークインターフェイスを指定し、それらすべてにデバイスインデックス 1 を使用します。

      • [4,5,6,7]

      • [8,9,10,11]

      • [12,13,14,15]

      • [16,17,18,19]

      • [20,21,22,23]

      • [24,25,26,27]

      • [28,29,30,31]

次の例ではこの設定を示します。

$ aws --region $REGION ec2 run-instances \ --instance-type p5.48xlarge \ --count 1 \ --key-name key_pair_name \ --image-id ami_id \ --network-interfaces "NetworkCardIndex=0,DeviceIndex=0,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=1,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=2,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=3,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=4,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=5,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=6,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=7,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=8,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=9,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=10,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=11,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=12,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=13,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=14,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=15,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=16,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=17,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=18,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=19,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=20,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=21,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=22,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=23,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=24,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=25,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=26,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=27,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=28,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa" \ "NetworkCardIndex=29,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=30,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" \ "NetworkCardIndex=31,DeviceIndex=1,Groups=security_group_id,SubnetId=subnet_id,InterfaceType=efa-only" ...

P6e-GB200 インスタンスの EFA 設定

P6e-GB200 インスタンスは、最大 17 個のネットワークカードで設定できます。次の図は、P6e-GB200 インスタンスの物理ネットワークインターフェイスカード (NIC) のレイアウトと、ネットワークカードインデックス (NCI) のマッピングを示しています。

P6e-GB200 インスタンスの物理ネットワークインターフェイスカード (NIC) とネットワークカードインデックス (NCI) のマッピング。

プライマリ NCI (インデックス 0) は、最大 100 Gbps の ENA 帯域幅をサポートします。次のインデックスを持つ NCI は、EFA 専用ネットワークインターフェイスと 400 Gbps の EFA 帯域幅をサポートします: [1、3、5、7、9、11、13、15]。次のインデックスを持つ NCI は、最大 200 Gbps の ENA または EFA 帯域幅をサポートします: [2、4、6、8、10、12、14、16]。

次のグループの NCI は、ホスト上の基盤となる物理 NIC を共有します:

  • [1 および 2]

  • [3 および 4]

  • [5 および 6]

  • [7 および 8]

  • [9 および 10]

  • [11 および 12]

  • [13 および 14]

  • [15 および 16]

各物理 NIC は、最大 400 Gbps の帯域幅をサポートします。これらのグループの NCI は基盤となる同じ物理 NIC を共有するため、1 つが帯域幅を使用すると、他が利用できる帯域幅が減少します。例えば、NCI 2 が 200 Gbps の ENA 帯域幅を使用する場合、NCI 1 は同時に最大 200 Gbps の EFA 帯域幅を使用できます。

ホスト上の基盤となる各 GPU は、次の NCI ペアを介して直接トラフィックを送信できます。

  • [1 および 3]

  • [5 および 7]

  • [9 および 11]

  • [13 および 15]

各 GPU は、最大 400 Gbps の EFA 帯域幅をサポートします。これらのグループのネットワークカードは同じ GPU を共有するため、1 つが帯域幅を使用すると、他が利用できる帯域幅が減少します。例えば、NCI 1 が 200 Gbps の EFA 帯域幅を使用する場合、NCI 3 は同時に最大 200 Gbps の EFA 帯域幅を使用できます。したがって、EFA の最大パフォーマンスを実現するには、次のいずれかを実行して合計 1,600 Gbps の EFA 帯域幅を達成することをお勧めします。

  • EFA 専用ネットワークインターフェイスを各グループの 1 つの NCI のみに追加して、ネットワークインターフェイスあたり 400 Gbps (4 つの EFA ネットワークインターフェイス x 400 Gbps) を達成します。

  • EFA 専用ネットワークインターフェイスを各グループの各 NCI に追加して、ネットワークインターフェイスあたり 200 Gbps (8 つの EFA ネットワークインターフェイス x 200 Gbps) を達成します。

例えば、次の設定では、各 NCI グループで単一の EFA 専用ネットワークインターフェイスを使用して最大 1,600 Gbps の EFA 帯域幅を提供し、プライマリ NCI (インデックス 0) のみを使用して最大 100 Gbps の ENA ネットワーク帯域幅を提供します。

  • プライマリ NCI (ネットワークカードインデックス 0、デバイスインデックス 0) には ENA ネットワークインターフェイスを使用します。

  • EFA 専用ネットワークインターフェイスを以下に追加します。

    • NCI 1、デバイスインデックス 0

    • NCI 5、デバイスインデックス 0

    • NCI 9、デバイスインデックス 0

    • NCI 13、デバイスインデックス 0