Salta al contenuto

Come posso risolvere i problemi di prestazioni della rete Direct Connect?

9 minuti di lettura
0

La mia connessione AWS Direct Connect presenta problemi di prestazioni, tra cui bassa velocità effettiva, latenza del traffico e perdita di pacchetti.

Risoluzione

Nota: è consigliabile configurare un computer di test dedicato on-premises con Amazon Virtual Private Cloud (Amazon VPC). Utilizza un tipo di istanza Amazon Elastic Compute Cloud (Amazon EC2) di dimensione C5 o superiore.

Identifica i problemi della rete o dell'applicazione

Utilizza lo strumento iPerf3 per misurare la larghezza di banda della rete e confrontare i risultati con altre applicazioni o strumenti. Per ulteriori informazioni, consulta What is iPerf / iPerf3? (Cos'è iPerf/iPerf3?) sul sito web iPerf.

Completa i seguenti passaggi:

  1. Per installare iPerf3, esegui uno di questi comandi in base al sistema operativo che utilizzi.

    Linux e Red Hat Enterprise Linux (RHEL):

    sudo yum install iperf3 -y

    Ubuntu:

    sudo apt install iperf3 -y
  2. Per misurare in modo bidirezionale il throughput, esegui questi comandi iPerf3 per il server e per il client:

    Istanza Amazon EC2 (server):

    iperf3 -s -V

    Host locale on-premises (client):

    iperf3 -c <private IP of EC2> -P 15 -t 15
    iperf3 -c <private IP of EC2> -P 15 -t 15 -R
    
    iperf3 -c <private IP of EC2> -w 256K
    iperf3 -c <private IP of EC2> -w 256K -R
    
    iperf3 -c <private IP of EC2> -u -b 1G -t 15
    iperf3 -c <private IP of EC2> -u -b 1G -t 15 -R
    

    Nota: -P imposta thread paralleli per il massimo throughput. -R inverte la direzione del test e -u utilizza il protocollo UDP (User Datagram Protocol) anziché il protocollo TCP per misurare la perdita di pacchetti.

Nel seguente esempio di risultati del test TCP, Bitrate è il throughput o la velocità di trasmissione misurato. Transfer è la quantità totale di dati scambiati tra client e server. Retry è il numero di pacchetti ritrasmessi. La ritrasmissione avviene sul lato mittente:

[ ID] Interval Transfer Bitrate Retry [SUM] 0.00-15.00 sec 7.54 GBytes 4.32 Gbits/sec 18112 sender [SUM] 0.00-15.00 sec 7.52 GBytes 4.31 Gbits/sec receiver

Nel seguente esempio di risultati del test UDP, Lost è 0% sul lato mittente. Questo perché la coppia mittente (ID) e destinatario (5) ha inviato il numero massimo di datagrammi UDP. Lost/Total datagrams mostra quanti pacchetti il destinatario ha perso e la percentuale di perdita. In questo esempio, il destinatario ha perso il 79% del traffico di rete:

[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams [ 5] 0.00-15.00 sec 8.22 GBytes 4.71 Gbits/sec 0.000 ms 0/986756 (0%) sender [ 5] 0.00-15.00 sec 1.73 GBytes 989 Mbits/sec 0.106 ms 779454/986689 (79%) receiver

Nota: se la connessione Direct Connect utilizza AWS Site-to-Site VPN su un'interfaccia virtuale pubblica, esegui i test delle prestazioni senza VPN.

Visualizza le metriche e i contatori dell'interfaccia

Utilizza Amazon CloudWatch Logs per visualizzare metriche che possono aiutarti a risolvere i problemi. Ad esempio, visualizza ConnectionErrorCount e cerca valori diversi da zero che mostrino un errore Media Access Control (MAC) per un dispositivo AWS. Puoi utilizzare la statistica Sum per la metrica ConnectionErrorCount.

Visualizza ConnectionLightLevelTx and ConnectionLightLevelRx per verificare se le letture del segnale ottico sono comprese tra -14,4 e 2,50 dBm.

Visualizza ConnectionBpsEgress, ConnectionBpsIngress, VirtualInterfaceBpsEgress, and VirtualInterfaceBpsIngress per assicurarti che il bitrate non raggiunga la massima larghezza di banda.

Per ulteriori informazioni, consulta Metriche e dimensioni di AWS Direct Connect.

Se utilizzi un'interfaccia virtuale ospitata che condivide la larghezza di banda totale con altri utenti, chiedi al proprietario di Direct Connect informazioni sull'utilizzo della connessione. Per ulteriori informazioni, consulta Connessioni di rete ibride.

Controlla il router e il firewall nella posizione Direct Connect per rilevare eventuali problemi:

  • Verifica la presenza di anomalie relative a CPU, memoria, utilizzo delle porte, cali e scarti.
  • Esegui il comando show interfaces statistics per individuare errori di input e di output dell'interfaccia, come errori CRC (Cyclic Redundancy Check), di frame, di collisione e di portante.
  • Se gli errori di interfaccia sono aumentati, pulisci o sostituisci il cavo patch in fibra e il modulo Small Form-factor Pluggable (SFP).

Inoltre, controlla se è pianificata la manutenzione di Direct Connect.

Esegui MTR in modo bidirezionale per verificare il percorso di rete

Esegui il comando My Traceroute (MTR) per Linux per analizzare le prestazioni della rete. Per Windows, è consigliabile attivare WSL 2, in modo da poter installare MTR in un sottosistema Linux. Per ulteriori informazioni, consulta Novità di WSL 2 sul sito web Microsoft. Puoi scaricare WinMTR dal sito web SourceForge.

Per eseguire MTR in modo bidirezionale, completa i seguenti passaggi:

  1. Per installare MTR, esegui uno di questi comandi in base al sistema operativo:

    Amazon Linux/RHEL:

    sudo yum install mtr -y

    Ubuntu:

    sudo apt install mtr -y
  2. Per la direzione on-premises ad AWS, esegui MTR nell'host locale (basato su ICMP e TCP):

    mtr -n -c 100 <private IP of EC2> --report$ mtr -n -T -P <EC2 instance open TCP port> -c 100 <private IP of EC2> --report
  3. Per la direzione da AWS a on-premises, esegui MTR nell'istanza EC2 (basata su ICMP e TCP):

    mtr -n -c 100 <private IP of the local host> --report$ mtr -n -T -P <local host open TCP port> -c 100 <private IP of the local host> --report

Il seguente esempio di comando e di output mostra i risultati MTR basati su ICMP:

mtr -n -c 100 192.168.52.10 --report
Start: Sat Oct 30 20:54:39 2021
HOST:                             Loss%   Snt   Last   Avg  Best  Wrst StDev
  1.|-- 10.0.101.222               0.0%   100    0.7   0.7   0.6   0.9   0.0
  2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
  3.|-- 10.110.120.2               0.0%   100  266.5 267.4 266.4 321.0   4.8
  4.|-- 10.110.120.1              54.5%   100  357.6 383.0 353.4 423.7  19.6
  5.|-- 192.168.52.10             47.5%   100  359.4 381.3 352.4 427.9  20.6

Il seguente esempio di comando e di output mostra i risultati MTR basati su TCP:

mtr -n -T -P 80 -c 100 192.168.52.10 --report
Start: Sat Oct 30 21:03:48 2021
HOST:                             Loss%   Snt   Last   Avg  Best  Wrst StDev
  1.|-- 10.0.101.222               0.0%   100    0.9   0.7   0.7   1.1   0.0
  2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
  3.|-- 10.110.120.2               0.0%   100  264.1 265.8 263.9 295.3   3.4
  4.|-- 10.110.120.1               8.0%   100  374.3 905.3 354.4 7428. 1210.6
  5.|-- 192.168.52.10             12.0%   100  400.9 1139. 400.4 7624. 1384.3

Nei risultati precedenti, ogni riga di un hop rappresenta un dispositivo di rete per un pacchetto di dati che passa dall'origine alla destinazione. Per ulteriori informazioni sulla lettura dei risultati dei test MTR, consulta Reading MTR output network diagnostic tool (Lettura dell’output dello strumento diagnostico di rete MTR) sul sito web ExaVault.

Il seguente esempio di comando e di output mostra i risultati MTR basati su ICMP:

mtr -n -c 100 192.168.52.10 --report
Start: Sat Oct 30 20:54:39 2021
HOST:                             Loss%   Snt   Last   Avg  Best  Wrst StDev
  1.|-- 10.0.101.222               0.0%   100    0.7   0.7   0.6   0.9   0.0
  2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
  3.|-- 10.110.120.2               0.0%   100  266.5 267.4 266.4 321.0   4.8
  4.|-- 10.110.120.1              54.5%   100  357.6 383.0 353.4 423.7  19.6
  5.|-- 192.168.52.10             47.5%   100  359.4 381.3 352.4 427.9  20.6

Il seguente esempio di comando e di output mostra i risultati MTR basati su TCP:

mtr -n -T -P 80 -c 100 192.168.52.10 --report
Start: Sat Oct 30 21:03:48 2021
HOST:                             Loss%   Snt   Last   Avg  Best  Wrst StDev
  1.|-- 10.0.101.222               0.0%   100    0.9   0.7   0.7   1.1   0.0
  2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
  3.|-- 10.110.120.2               0.0%   100  264.1 265.8 263.9 295.3   3.4
  4.|-- 10.110.120.1               8.0%   100  374.3 905.3 354.4 7428. 1210.6
  5.|-- 192.168.52.10             12.0%   100  400.9 1139. 400.4 7624. 1384.3

Gli esempi precedenti mostrano una connessione Direct Connect con peer Border Gateway Protocol (BGP) 10.110.120.1 e 10.110.120.2. Esiste una percentuale di perdita per il quarto e il quinto hop di destinazione che indica un problema con la connessione Direct Connect o con il router remoto 10.110.120.1. Poiché una connessione Direct Connect dà la priorità a TCP rispetto a ICMP, un risultato MTR basato su TCP mostra una percentuale di perdita inferiore.

Il seguente esempio di comando e di output mostra che la perdita di pacchetti del dispositivo NAT o del firewall locale è pari al 5%. La perdita di pacchetti influisce su tutti gli hop successivi, inclusa la destinazione:

mtr -n -c 100 192.168.52.10 --report
Start: Sat Oct 30 21:11:22 2021
HOST:                              Loss%   Snt   Last   Avg  Best  Wrst StDev
  1.|-- 10.0.101.222               5.0%   100    0.8   0.7   0.7   1.1   0.0
  2.|-- ???                       100.0   100    0.0   0.0   0.0   0.0   0.0
  3.|-- 10.110.120.2               6.0%   100  265.7 267.1 265.6 307.8   5.1
  4.|-- 10.110.120.1               6.0%   100  265.1 265.2 265.0 265.4   0.0
  5.|-- 192.168.52.10              6.0%   100  266.7 266.6 266.5 267.2   0.0

Acquisisci un pacchetto e analizza i risultati

Acquisisci un pacchetto nell’host locale e nell'istanza EC2. Utilizza l'utilità Wireshark o tcpdump per ottenere il traffico di rete per l'analisi. Per ulteriori informazioni su tcpdump, consulta tcpdump sul sito web tcpdump. Per scaricare Wireshark, consulta la pagina di download Wireshark sul sito web Wireshark.

Ad esempio, esegui questo comando tcpdump per ottenere il timestamp e l'indirizzo IP dell'host:

tcpdump -i YOUR_NETWORK_INTERFACE  -s0 -w $(date +"%Y%m%d_%H%M%S").$(YOUR_HOSTNAME -s).pcap port YOUR_PORT

Nota: sostituisci YOUR_NETWORK_INTERFACE con la tua interfaccia di rete, YOUR_HOSTNAME con il nome del tuo host e YOUR_PORT con la tua porta.

Utilizza il calcolatore di throughput TCP sul sito web Switch per calcolare il limite della rete, il prodotto larghezza di banda-ritardo e la dimensione del buffer TCP. Per ulteriori informazioni, consulta Risolvere i problemi di Direct Connect.

Informazioni correlate

Qual è la differenza tra un'interfaccia virtuale in hosting (VIF) e una connessione in hosting?

Improving Performance on AWS and Hybrid Networks (Miglioramento delle prestazioni delle reti AWS e ibride)

AWS UFFICIALEAggiornata 8 mesi fa