Funktionsweise von benutzerdefinierten Routing-Beschleunigern in AWS Global Accelerator - AWS Global Accelerator

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Funktionsweise von benutzerdefinierten Routing-Beschleunigern in AWS Global Accelerator

Wenn Sie einen benutzerdefinierten Routing-Beschleuniger in AWS Global Accelerator verwenden, können Sie mithilfe der Anwendungslogik einen oder mehrere Benutzer einem bestimmten Ziel unter vielen Zielen direkt zuordnen und gleichzeitig die Leistungsvorteile von Global Accelerator nutzen. Ein benutzerdefinierter Routingbeschleuniger ordnet Listener-Portbereiche EC2-Instance-Zielen in VPC -Subnetzen (Virtual Private Cloud) zu. Dadurch kann Global Accelerator den Datenverkehr deterministisch an eine bestimmte private IP-Adresse und ein Port-Ziel von Amazon EC2 in Ihrem Subnetz weiterleiten.

Sie können beispielsweise einen benutzerdefinierten Routing-Beschleuniger mit einer Online-Echtzeit-Gaming-Anwendung verwenden, in der Sie einer einzigen Sitzung auf einem Amazon EC2 Spielserver mehrere Spieler basierend auf Faktoren zuweisen, die Sie auswählen, wie z. B. geografischer Standort, Spielerfähigkeiten und Spielmodus. Oder Sie haben eine VoIP - oder Social-Media-Anwendung, die mehrere Benutzer einem bestimmten Medienserver für Sprach-, Video- und Messaging-Sitzungen zuweist.

Ihre Anwendung kann eine Global Accelerator-API aufrufen und eine vollständige statische Zuordnung der Global Accelerator-Ports und der zugehörigen Ziel-IP-Adressen und -Ports erhalten. Sie können diese statische Zuordnung speichern und dann vom Matchmaking-Service zum Weiterleiten von Benutzern an bestimmte EC2-Zielinstanzen verwenden. Sie müssen keine Änderungen am Clientsoftware vornehmen, um Global Accelerator mit Ihrer Anwendung nutzen zu können.

Um einen benutzerdefinierten Routingbeschleuniger zu konfigurieren, wählen Sie einen VPC -Subnetzendpunkt aus. Anschließend definieren Sie einen Zielportbereich, dem eingehende Verbindungen zugeordnet werden, damit Ihre Software denselben Port über alle Instanzen hinweg abhören kann. Global Accelerator erstellt eine statische Zuordnung, die es Ihrem Matchmaking-Dienst ermöglicht, eine Ziel-IP-Adresse und Portnummer für eine Sitzung in eine externe IP-Adresse und einen externen Port zu übersetzen, die Sie Benutzern geben.

Der Netzwerk-Stack Ihrer Anwendung funktioniert möglicherweise über ein einziges Transportprotokoll, oder Sie verwenden UDP für die schnelle Bereitstellung und TCP für eine zuverlässige Bereitstellung. Sie können UDP, TCP oder sowohl UDP als auch TCP für jeden Zielportbereich festlegen, um Ihnen maximale Flexibilität zu bieten, ohne die Konfiguration für jedes Protokoll duplizieren zu müssen.

Anmerkung

Standardmäßig dürfen alle VPC -Subnetzziele in einem benutzerdefinierten Routingbeschleuniger keinen Datenverkehr empfangen. Dies soll standardmäßig sicher sein und Ihnen auch eine granulare Kontrolle darüber geben, welche privaten EC2-Instance-Destinationen in Ihrem Subnetz Datenverkehr empfangen dürfen. Sie können den Datenverkehr zum Subnetz oder zu bestimmten IP-Adress- und Portkombinationen (Ziel-Sockets) zulassen oder verweigern. Weitere Informationen finden Sie unter Hinzufügen, Bearbeiten oder Entfernen eines VPC -Subnetzendpunkts. Sie können Ziele auch mithilfe der Global Accelerator-API angeben. Weitere Informationen finden Sie unterAllowCustomRoutingTrafficundDenyCustomRoutingTraffic.

Beispiel für die Funktionsweise von benutzerdefiniertem Routing in Global Accelerator

Nehmen wir beispielsweise an, Sie möchten 10.000 Sitzungen unterstützen, bei denen Gruppen von Benutzern interagieren, z. B. Spielesitzungen oder VoIP Anrufsitzungen, über 1.000 Amazon EC2 Instances hinter Global Accelerator. In diesem Beispiel geben wir einen Listener-Portbereich von 10001—20040 und einen Zielportbereich von 81—90 an. Wir werden sagen, dass wir die vier VPC -Subnetze in us-east-1 haben: subnet-1, subnet-2, subnet-3 und subnet-4.

In unserer Beispielkonfiguration hat jedes VPC -Subnetz eine Blockgröße von /24, sodass 251 Amazon EC2 Instances unterstützt werden können. (Fünf Adressen sind reserviert und nicht in jedem Subnetz verfügbar, und diese Adressen werden nicht zugeordnet.) Jeder Server, der auf jeder EC2-Instance ausgeführt wird, bedient die folgenden 10 Ports, die wir für die Zielports in unserer Endpunktgruppe angegeben haben: 81-90. Dies bedeutet, dass wir 2510 Ports (10 x 251) mit jedem Subnetz verbunden sind. Jeder Port kann einer Sitzung zugeordnet werden.

Da wir 10 Zielports für jede EC2-Instance in unserem Subnetz angegeben haben, ordnet Global Accelerator diese intern 10 Listener-Ports zu, die Sie für den Zugriff auf EC2-Instances verwenden können. Um dies einfach zu veranschaulichen, sagen wir, dass es einen Block von Listener-Ports gibt, der mit der ersten IP-Adresse des Endpunktsubnetzes für den ersten Satz von 10 beginnt und dann zur nächsten IP-Adresse für den nächsten Satz von 10 Listener-Ports wechselt.

Anmerkung

Das Mapping ist eigentlich nicht so vorhersehbar, aber wir verwenden hier ein sequentielles Mapping, um zu zeigen, wie die Port-Mapping funktioniert. Verwenden Sie die folgenden API-Vorgänge, um die tatsächliche Zuordnung für die Listener-Portbereiche zu ermitteln: ListCustomRoutingPortMappingsundListCustomRoutingPortMappingsByDestination.

In unserem Beispiel ist der erste Listener-Port 10001. Dieser Port ist der ersten Subnetz-IP-Adresse 192.0.2.4 und dem ersten EC2-Port 81 zugeordnet. Der nächste Listener-Port 10002 ist mit der ersten Subnetz-IP-Adresse 192.0.2.4 und dem zweiten EC2-Port 82 verknüpft. In der folgenden Tabelle wird veranschaulicht, wie diese Beispielzuordnung durch die letzte IP-Adresse des ersten VPC -Subnetzes und dann die erste IP-Adresse des zweiten VPC-Subnetzes fortgesetzt wird.

Global Accelerator Listener-Port VPC -Subnetze EC2-Instance-Port
10001 192.0.2.4 81
10002 192.0.2.4 82
10003 192.0.2.4 83
10004 192.0.2.4 84
10005 192.0.2.4 85
10006 192.0.2.4 86
10007 192.0.2.4 87
10008 192.0.2.4 88
10009 192.0.2.4 89
10010 192.0.2.4 90
10011 192.0.2.5 81
10012 192.0.2.5 82
10013 192.0.2.5 83
10014 192.0.2.5 84
10015 192.0.2.5 85
10016 192.0.2.5 86
10017 192.0.2.5 87
10018 192.0.2.5 88
10019 192.0.2.5 89
10020 192.0.2.5 90
... ... ...
12501 192.0.2.244 81
12502 192.0.2.244 82
12503 192.0.2.244 83
12504 192.0.2.244 84
12505 192.0.2.244 85
12506 192.0.2.244 86
12507 192.0.2.244 87
12508 192.0.2.244 88
12509 192.0.2.244 89
12510 192.0.2.244 90
12511 192.0.3.4 81
12512 192.0.3.4 82
12513 192.0.3.4 83
12514 192.0.3.4 84
12515 192.0.3.4 85
12516 192.0.3.4 86
12517 192.0.3.4 87
12518 192.0.3.4 88
12519 192.0.3.4 89
12520 192.0.3.4 90