Come posso trovare il limite di pacchetti di rete al secondo (PPS) per le istanze Amazon EC2?

3 minuti di lettura
0

Ho un'istanza Amazon Elastic Compute Cloud (Amazon EC2) e desidero trovare il suo limite di pacchetti di rete al secondo (PPS).

Breve descrizione

Il PPS per un'istanza EC2 dipende da diverse caratteristiche della rete dell'istanza. Tali caratteristiche includono i seguenti fattori:

  • Combinazione di traffico, TCP e UDP
  • Numero di flussi
  • Dimensione del pacchetto
  • Nuove connessioni vs. connessioni esistenti
  • Regole del gruppi di sicurezza applicate

La tolleranza del PPS viene considerata separatamente dalla tolleranza complessiva di larghezza di banda. Sebbene un'istanza possa essere al di sotto della tolleranza della larghezza di banda complessiva, è possibile superare la tolleranza PPS se la dimensione media del pacchetto è troppo piccola. Per determinare se l'istanza supera attualmente il PPS allocato, estrai le informazioni dal driver ENA.

Risoluzione

Per eseguire un benchmark PPS, usa un test iperf2. A seconda delle caratteristiche della rete, i clienti possono utilizzare il benchmark IPerf per determinare il limite PPS approssimativo di qualsiasi istanza EC2.

Per eseguire il benchmark, completa i seguenti passaggi:

  1. Usa un'immagine Amazon Linux 2 o Amazon 2023 per creare due istanze EC2 nella stessa zona di disponibilità.
    Nota: le istanze devono essere dello stesso tipo.

  2. Per installare strumenti di sviluppo e git su entrambe le istanze, esegui i seguenti comandi:

    sudo yum groupinstall "Development Tools" -y
    sudo yum install git -y
  3. Esegui i seguenti comandi per cambiare la directory con la directory /usr/local e clonare il codice IPerf da Git a entrambe le istanze EC2:

    cd /usr/local/
    sudo git clone https://git.code.sf.net/p/iperf2/code iperf2-code
  4. Per compilare e installare il pacchetto su entrambe le istanze EC2, esegui i seguenti comandi:

    cd /usr/local/iperf2-codesudo
    ./configure
    sudo make && make install
  5. Per fare in modo che la prima istanza funga da server IPerf in esecuzione in modalità UDP per le massime prestazioni, esegui IPerf:

    sudo /usr/local/bin/iperf -s -u

    Il comando restituisce il seguente risultato:

    ------------------------------------------------------------
    Server listening on UDP port 5001
    UDP buffer size:  208 KByte (default)
    ------------------------------------------------------------
  6. Affinché il client IPerf si connetta correttamente al server IPerf, assicurati che il gruppo di sicurezza associato al server consenta le connessioni su 5001/UDP. Per ulteriori informazioni, consulta Security group example.

  7. Nella seconda istanza, usa il client IPerf per connetterti con UDP al server IPerf:

    sudo /usr/local/bin/iperf -c <private_ip_of_server_instance> -u -i 1 -l 16 -b 20kpps -e -P64 -o /tmp/bw_test.txt && grep -i sum-64 /tmp/bw_test.txt

    Nota: sostituisci <private_ip_of_server_instance> con l'indirizzo IP interno del server IPerf.

L'output del comando viene scritto in un file di log in /tmp/bw_test.txt. Viene visualizzato il riepilogo di ogni secondo di durata del test e il PPS.

Il comando restituisce il seguente risultato:

[SUM-64] 0.00-1.00 sec 9.42 MBytes 79.1 Mbits/sec 617416/2 617416 pps
[SUM-64] 1.00-2.00 sec 10.1 MBytes 84.3 Mbits/sec 658689/0 658692 pps
[SUM-64] 2.00-3.00 sec 10.1 MBytes 84.7 Mbits/sec 661837/0 661838 pps
[SUM-64] 3.00-4.00 sec 10.1 MBytes 84.6 Mbits/sec 661226/0 661226 pps
[SUM-64] 6.00-7.00 sec 9.73 MBytes 81.7 Mbits/sec 637975/0 637975 pps
[SUM-64] 7.00-8.00 sec 9.46 MBytes 79.4 Mbits/sec 620172/0 620172 pps
[SUM-64] 8.00-9.00 sec 9.46 MBytes 79.4 Mbits/sec 620150/0 620151 pps

Questo output mostra il PPS massimo raggiunto per questo tipo di istanza. Per ulteriori informazioni, consulta IPERF sul sito Web di IPERF.

Informazioni correlate

Documentazione per l'utente iPerf2 sul sito Web di iPerf

AWS UFFICIALE
AWS UFFICIALEAggiornata 8 mesi fa