Global Accelerator でのカスタムルーティングアクセラレーターの仕組み
AWS Global Accelerator でカスタムルーティングアクセラレーターを使用すると、アプリケーションロジックを使用して、Global Accelerator のパフォーマンス上の利点を得ながら、1 人以上のユーザーを多くの送信先間で特定の送信先に直接マッピングできます。カスタムルーティングアクセラレーターは、リスナーポート範囲を Amazon VPC (VPC) サブネットの EC2 インスタンス送信先にマッピングします。これにより、Global Accelerator はサブネット内の特定の Amazon EC2 プライベート IP アドレスとポート送信先にトラフィックを決定的にルーティングできます。
例えば、地理的位置、プレイヤースキル、ゲームモードなど、選択した要素に基づいて Amazon EC2 ゲームサーバー上の 1 つのセッションに複数のプレイヤーを割り当てるオンラインリアルタイムゲームアプリケーションでカスタムルーティングアクセラレーターを使用できます。または、音声、ビデオ、メッセージングセッション用に、特定のメディアサーバーに複数のユーザーを割り当てる VoIP またはソーシャルメディアアプリケーションがある場合があります。
アプリケーションは Global Accelerator API を呼び出し、Global Accelerator ポートと、関連する送信先 IP アドレスとポートの完全な静的マッピングを受信できます。静的マッピングを保存し、マッチメーキングサービスがそれを使用して特定の送信先 EC2 インスタンスにユーザーをルーティングできます。アプリケーションで Global Accelerator の使用を開始するために、クライアントソフトウェアを変更する必要はありません。
カスタムルーティングアクセラレーターを設定するには、VPC サブネットエンドポイントを選択します。次に、受信接続がマッピングされる送信先ポート範囲を定義して、ソフトウェアがすべてのインスタンスで同じポートセットをリッスンできるようにします。Global Accelerator は、マッチメーキングサービスがセッションの送信先 IP アドレスとポート番号を、ユーザーに付与する外部 IP アドレスとポートに変換できるようにする静的マッピングを作成します。
アプリケーションのネットワークスタックは、単一のトランスポートプロトコルで動作するか、UDP を使用して高速配信を行い、TCP を使用して信頼性の高い配信を行うことができます。送信先ポート範囲ごとに UDP、TCP、または UDP と TCP の両方を設定することで、各プロトコルの設定を複製することなく、最大限の柔軟性を実現できます。
注記
デフォルトでは、カスタムルーティングアクセラレーター内のすべての VPC サブネット送信先はトラフィックを受信できません。これはデフォルトでセキュリティを確保するとともに、サブネット内のプライベートな EC2 インスタンスのうち、どの送信先がトラフィックを受信できるかを細かく制御するためのものです。サブネット、または特定の IP アドレスとポートの組み合わせ (送信先ソケット) へのトラフィックを許可または拒否できます。詳細については、「 カスタムルーティングアクセラレーターの VPC サブネットエンドポイントを追加する」を参照してください。Global Accelerator API を使用して送信先を指定することもできます。詳細については、「AllowCustomRoutingTraffic」および「DenyCustomRoutingTraffic」を参照してください。