Funzionamento degli acceleratori di routing personalizzati in AWS Global Accelerator - AWS Global Accelerator

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Funzionamento degli acceleratori di routing personalizzati in AWS Global Accelerator

Utilizzando un acceleratore di routing personalizzato in AWS Global Accelerator, è possibile utilizzare la logica dell'applicazione per mappare direttamente uno o più utenti a una destinazione specifica tra molte destinazioni, ottenendo comunque i vantaggi in termini di prestazioni di Global Accelerator. Un acceleratore di routing personalizzato associa gli intervalli delle porte del listener alle destinazioni delle istanze EC2 nelle subnet del cloud privato virtuale (VPC). Ciò consente a Global Accelerator di instradare in modo deterministico il traffico a un indirizzo IP privato Amazon EC2 specifico e destinazione della porta nella subnet.

Ad esempio, puoi utilizzare un acceleratore di routing personalizzato con un'applicazione di gioco online in tempo reale in cui assegnare più giocatori a una singola sessione su un server di gioco Amazon EC2 in base a fattori che scegli, come posizione geografica, abilità del giocatore e modalità di gioco. Oppure potresti avere un'applicazione VoIP o social media che assegna più utenti a un server multimediale specifico per sessioni vocali, video e messaggistica.

L'applicazione può chiamare un'API Global Accelerator e ricevere una mappatura statica completa delle porte Global Accelerator e dei relativi indirizzi IP e porte di destinazione associati. È possibile salvare tale mapping statico e quindi il servizio di matchmaking utilizzarlo per instradare gli utenti a istanze EC2 di destinazione specifiche. Non devi effettuare modifiche al tuo software client per iniziare a utilizzare Global Accelerator con la tua applicazione.

Per configurare un acceleratore di routing personalizzato, selezionare un endpoint di subnet VPC. Quindi si definisce un intervallo di porte di destinazione a cui verranno mappate le connessioni in ingresso, in modo che il software possa ascoltare sullo stesso set di porte in tutte le istanze. Global Accelerator crea una mappatura statica che consente al servizio di matchmaking di tradurre un indirizzo IP di destinazione e un numero di porta per una sessione in un indirizzo IP esterno e una porta forniti agli utenti.

Lo stack di rete dell'applicazione potrebbe funzionare su un singolo protocollo di trasporto oppure è possibile utilizzare UDP per la consegna rapida e TCP per una consegna affidabile. È possibile impostare UDP, TCP o UDP e TCP per ogni intervallo di porte di destinazione, in modo da offrire la massima flessibilità senza dover duplicare la configurazione per ogni protocollo.

Nota

Per impostazione predefinita, tutte le destinazioni di subnet VPC in un acceleratore di routing personalizzato non sono autorizzate a ricevere traffico. Questo deve essere sicuro per impostazione predefinita e anche per fornire un controllo granulare su quali destinazioni di istanza EC2 private nella subnet sono autorizzate a ricevere traffico. È possibile consentire o negare il traffico alla subnet o a combinazioni di indirizzi IP e porte specifiche (socket di destinazione). Per ulteriori informazioni, consulta Aggiunta, modifica o rimozione di un endpoint di subnet VPC. È inoltre possibile specificare le destinazioni utilizzando l'API Global Accelerator. Per ulteriori informazioni, consultaAllowCustomRoutingTeDenyCustomRoutingTraffic: .

Esempio di funzionamento del routing personalizzato in Global Accelerator

Ad esempio, supponiamo che tu voglia supportare 10.000 sessioni in cui gruppi di utenti interagiscono, ad esempio sessioni di gioco o chiamate VoIP, su 1.000 istanze Amazon EC2 dietro Global Accelerator. In questo esempio, verrà specificato un intervallo di porte del listener 10001-20040 e un intervallo di porte di destinazione 81-90. Diciamo che abbiamo le quattro subnet VPC in us-est-1: subnet-1, subnet-2, subnet-3 e subnet-4.

Nella configurazione di esempio, ogni subnet VPC ha una dimensione di blocco di /24 in modo che possa supportare 251 istanze Amazon EC2. (Cinque indirizzi sono riservati e non disponibili da ogni subnet e questi indirizzi non vengono mappati.) Ogni server in esecuzione su ogni istanza EC2 serve le seguenti 10 porte, specificate per le porte di destinazione nel nostro gruppo di endpoint: 81-90. Ciò significa che abbiamo 2510 porte (10 x 251) associate a ogni subnet. Ogni porta può essere associata a una sessione.

Poiché sono state specificate 10 porte di destinazione su ogni istanza EC2 nella nostra subnet, Global Accelerator le associa internamente a 10 porte listener che è possibile utilizzare per accedere alle istanze EC2. Per illustrarlo semplicemente, diciamo che esiste un blocco di porte del listener che inizia con il primo indirizzo IP della subnet endpoint per il primo set di 10, quindi passa all'indirizzo IP successivo per il set successivo di 10 porte del listener.

Nota

La mappatura in realtà non è prevedibile in questo modo, ma stiamo usando una mappatura sequenziale qui per aiutare a mostrare come funziona la mappatura delle porte. Per determinare il mapping effettivo per gli intervalli di porte del listener, utilizzare le seguenti operazioni API: ListCustomRoutingPortMappingseListCustomRoutingPortMappingsByDestination: .

Nel nostro esempio, la prima porta listener è 10001. Tale porta è associata al primo indirizzo IP della subnet, 192.0.2.4, e alla prima porta EC2 81. La porta del listener successivo, 10002, è associata al primo indirizzo IP della subnet, 192.0.2.4, e alla seconda porta EC2 82. Nella tabella seguente viene illustrato il modo in cui questo mapping di esempio continua attraverso l'ultimo indirizzo IP della prima subnet VPC e quindi il primo indirizzo IP della seconda subnet VPC.

Porta del listener Global Accelerator Sottoreti VPC Porta istanza EC2
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