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à.
Migliora le prestazioni di rete tra le istanze EC2 con ENA Express
ENA Express è alimentato dalla tecnologia AWS Scalable Reliable Datagram (SRD). SRD è un protocollo di trasporto di rete ad alte prestazioni che utilizza l’instradamento dinamico per aumentare il throughput e ridurre al minimo la latenza di coda. Con ENA Express, puoi comunicare tra due istanze EC2 nella stessa zona di disponibilità o tra zone di disponibilità all'interno della stessa regione.
Vantaggi di ENA Express
-
Aumenta la larghezza di banda massima che un singolo flusso può utilizzare da 5 Gbps a 25 Gbps all'interno della stessa regione, fino al limite di istanze aggregate.
-
Riduce la latenza di coda del traffico di rete tra le istanze EC2 nella stessa zona di disponibilità, specialmente durante i periodi di elevato carico di rete.
-
Rileva ed evita i percorsi di rete congestionati.
-
Gestisce alcune attività direttamente a livello di rete, come il riordino dei pacchetti sul lato di ricezione e la maggior parte delle ritrasmissioni necessarie. Questo libera il livello dell’applicazione per altre attività.
Nota
-
Se la tua applicazione ha requisiti elevati di pacchetti al secondo e deve ottimizzare la latenza durante i periodi non congestionati, potrebbe essere la soluzione migliore. Reti avanzate
-
Il traffico di ENA Express non può essere inviato in una zona locale.
-
Il supporto ENA Express per il traffico tra le zone di disponibilità non è disponibile in Sud America (San Paolo), Medio Oriente (Bahrein) e Medio Oriente (Emirati Arabi Uniti).
Dopo aver abilitato ENA Express per il collegamento dell’interfaccia di rete su un’istanza, l’istanza di invio avvia la comunicazione con l’istanza di ricezione e SRD rileva se ENA Express è in funzione sia sull’istanza di invio sia sull’istanza di ricezione. Se ENA Express è in funzione, la comunicazione può utilizzare la trasmissione SRD. Se ENA Express non è in funzione, la comunicazione torna alla trasmissione ENA standard.
Nei periodi di tempo in cui il traffico di rete è leggero, potresti notare un leggero aumento della latenza media dei pacchetti (decine di microsecondi) quando il pacchetto utilizza ENA Express. In questi periodi, le applicazioni che danno priorità a specifiche caratteristiche prestazionali di rete possono trarre vantaggio da ENA Express come segue:
-
I processi possono trarre vantaggio dall'aumento della larghezza di banda massima a flusso singolo da 5 Gbps a 25 Gbps all'interno della stessa regione, fino al limite di istanze aggregate. Ad esempio, se un tipo di istanza specifico supporta fino a 12,5 Gbps, anche la larghezza di banda a flusso singolo è limitata a 12,5 Gbps.
-
I processi con esecuzione prolungata nella stessa zona di disponibilità avranno una latenza di coda ridotta durante i periodi di congestione della rete.
-
I processi possono trarre vantaggio da una distribuzione più fluida e standard per i tempi di risposta della rete.
Argomenti
Come funziona ENA Express
ENA Express è alimentato dalla tecnologia AWS Scalable Reliable Datagram (SRD). Distribuisce i pacchetti per ogni flusso di rete su diversi AWS percorsi di rete e regola dinamicamente la distribuzione quando rileva segni di congestione. Gestisce anche il riordino dei pacchetti sul lato di ricezione.
Per garantire che ENA Express sia in grado di gestire il traffico di rete come previsto, le istanze di invio e ricezione e la comunicazione tra di esse devono soddisfare tutti i seguenti requisiti:
-
Sono supportati i tipi sia delle istanze di invio sia di quelle di ricezione. Per ulteriori informazioni, consulta la tabella Tipi di istanza supportati per ENA Express.
-
Sia le istanze di invio sia quelle di ricezione devono avere ENA Express configurato. Se esistono differenze nella configurazione, si possono verificare situazioni in cui il traffico è impostato automaticamente sulla trasmissione ENA standard. Lo scenario seguente mostra ciò che accade in questo caso.
Scenario: differenze nella configurazione
Istanza ENA Express abilitato UDP utilizza ENA Express Istanza 1 Sì Sì Istanza 2 Sì No In questo caso, il traffico TCP tra le due istanze può utilizzare ENA Express, poiché è abilitato su entrambe le istanze. Tuttavia, poiché una delle istanze non utilizza ENA Express per il traffico UDP, la comunicazione tra queste due istanze tramite UDP utilizza la trasmissione ENA standard.
-
Le istanze di invio e ricezione devono essere eseguite nella stessa regione.
-
Il percorso di rete tra le istanze non deve includere box middleware (software intermediario). ENA Express attualmente non supporta i box middleware (software intermediario).
-
(Solo istanze Linux) Per utilizzare tutto il potenziale della larghezza di banda, utilizza la versione 2.2.9 o successiva del driver.
-
(Solo istanze Linux) Per produrre parametri, utilizza la versione 2.8 o successiva del driver.
Se un requisito non viene soddisfatto, le istanze utilizzano il TCP/UDP protocollo standard ma senza SRD per comunicare.
Per assicurarti che il driver di rete dell’istanza sia configurato per prestazioni ottimali, consulta le best practice consigliate per i driver ENA. Queste best practice si applicano anche a ENA Express. Per ulteriori informazioni, consulta la guida ENA Linux Driver Best Practices and Performance Optimization Guide sul sito Web
Nota
Per Amazon EC2, una relazione tra un’istanza e un’interfaccia di rete a essa collegata è un collegamento. Le impostazioni di ENA Express si applicano al collegamento. Se l’interfaccia di rete è scollegata dall’istanza, il collegamento non esiste più e le impostazioni di ENA Express ad esso applicate non sono più valide. Lo stesso vale quando un’istanza viene terminata, anche se l’interfaccia di rete rimane.
Dopo avere abilitato ENA Express per i collegamenti dell’interfaccia di rete sia sull’istanza di invio sia sull’istanza di ricezione, è possibile utilizzare i parametri di ENA Express per garantire che le istanze traggano il massimo vantaggio dai miglioramenti delle prestazioni offerti dalla tecnologia SRD. Per ulteriori informazioni sui parametri di ENA Express, consulta la pagina Parametri di ENA Express.
Tipi di istanza supportati per ENA Express
I seguenti tipi di istanza supportano ENA Express.
Ottimizza le prestazioni per le impostazioni ENA Express su istanze Linux
Per garantire che ENA Express possa funzionare in modo efficace, l'istanza Linux deve soddisfare diversi requisiti di configurazione di rete.
Invece di configurare ogni impostazione manualmente, puoi scaricare ed eseguire lo script di controllo delle impostazioni ENA Express dal GitHub repository Amazon. Lo script convalida l'istanza rispetto alle impostazioni richieste e consigliate per ENA Express ed emette i comandi esatti per risolvere eventuali problemi rilevati.
https://github.com/amzn/amzn-ec2-ena-utilities/blob/main/ena-express/check-ena-express-settings.sh
Lo script controlla le seguenti impostazioni e configurazioni:
-
Dimensioni MTU: ENA Express richiede un MTU inferiore a quello predefinito per ospitare intestazioni SRD aggiuntive AWS . Le connessioni TCP appena stabilite bloccano automaticamente l'MSS per mitigare questo problema, ma il traffico UDP richiede comunque un MTU inferiore.
-
Limite di dimensione della coda di output TCP: verifica che il limite di byte in volo per socket sia sufficiente a sostenere un throughput elevato. Gli ambienti con una maggiore latenza di rete richiedono un limite più elevato.
-
Limite di coda di byte: conferma che il limite di coda di byte (BQL) è disabilitato nell'interfaccia di rete. BQL può limitare la quantità di dati in coda per la trasmissione a livello di dispositivo, il che limita le prestazioni di ENA Express.
Nota
Il driver ENA per la distribuzione Amazon Linux disattiva i limiti delle code di byte per impostazione predefinita.
-
TCP autocorking: verifica se l'autocorking TCP è disabilitato. La disabilitazione dell'autocorking può ridurre la latenza per determinati modelli di traffico TCP ENA Express, come i carichi di lavoro di richiesta-risposta. Ciò potrebbe comportare un aumento minimo del sovraccarico di elaborazione dei pacchetti.
-
Dimensioni della coda TX e LLQ di grandi dimensioni: verifica che la dimensione della coda di trasmissione per l'interfaccia di rete sia sufficientemente grande per prestazioni ottimali. Lo script verifica anche se il parametro del modulo ENA disabilita esplicitamente la funzione Large Low Latency Queue (Large LLQ), in quanto può ridurre la profondità della coda TX disponibile. Per ulteriori informazioni su Large LLQ e sul suo impatto sulla dimensione della coda TX, vedere Large Low Latency Queue (Large LLQ) su.
GitHub -
Dimensione della coda RX: verifica che il ring buffer di ricezione per l'interfaccia di rete sia sufficientemente grande da gestire il traffico in entrata in modo efficiente ed evitare cadute di pacchetti sotto carico.
-
Dimensioni del buffer TCP e del socket di rete: verifica che le dimensioni massime del buffer di ricezione e invio TCP, nonché i valori predefiniti e massimi del buffer del socket di rete principale, siano sufficientemente grandi da sostenere un throughput elevato. Queste impostazioni sono importanti in ambienti con una maggiore latenza di rete, in cui sono necessari buffer più grandi per utilizzare la connessione.
-
Controllo della congestione TCP: verifica che la configurazione del controllo della congestione TCP sia ottimizzata per l'uso con ENA Express in ambienti con una maggiore latenza di rete.
Lo script riporta anche informazioni diagnostiche aggiuntive, tra cui la versione del driver ENA, le statistiche ENA SRD, le impostazioni di moderazione delle interruzioni, la configurazione della coda e le dimensioni del buffer dei socket. Queste informazioni possono essere utili per risolvere i problemi di prestazioni di ENA Express.
Per garantire che il driver di rete dell'istanza sia configurato per prestazioni ottimali, consulta anche la Guida alle migliori pratiche e all'ottimizzazione delle prestazioni dei driver ENA Linux