Come posso risolvere i problemi relativi alle prestazioni della rete Direct Connect?

8 minuti di lettura
0

Sto riscontrando bassi livelli di velocità effettiva, latenza del traffico e problemi di prestazioni con la mia connessione AWS Direct Connect.

Risoluzione

Segui queste istruzioni per isolare e diagnosticare i problemi relativi alle prestazioni della rete e delle applicazioni.

Nota: è consigliabile configurare una macchina di test dedicata in locale e con un Amazon Virtual Private Cloud (Amazon VPC). Utilizza il tipo di istanza Elastic Compute Cloud (Amazon EC2) con dimensioni C5 o superiori.

Problema di rete o dell’applicazione

È possibile installare e utilizzare lo strumento iPerf3 per confrontare la larghezza di banda della rete e verificare i risultati con altre applicazioni o strumenti.

1.    Installazione di Linux/REHEL:

$ sudo yum install iperf3 -y

Installazione di Ubuntu:

$ sudo apt install iperf3 -y

2.    Esegui iPerf3 sul client e sul server per misurare la velocità effettiva in modo bidirezionale simile al seguente:

Istanza Amazon EC2 (server):

$ iperf3 -s -V

Host locale on-premise (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 

----------------
-P, --parallel n
    number of parallel client threads to run; It is critical to run multi-threads to achieve the max throughput.
-R, --reverse
    reverse the direction of a test. So the EC2 server sends data to the on-prem client to measure AWS -> on-prem throughput.
-u, --udp
    use UDP rather than TCP. Since TCP iperf3 does not report loss, UDP tests are helpful to see the packet loss along a path.

Esempio di risultati del test TCP:

[ 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

Bitrate: la velocità effettiva misurata o la velocità di trasmissione.

Trasferimento: la quantità totale di dati scambiati tra client e server.

Nuovo tentativo: il numero di pacchetti ritrasmessi. La ritrasmissione è osservata sul lato del mittente.

Esempio di risultati del test UDP:

[ 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

La perdita è pari allo 0% sul lato mittente perché viene inviata la quantità massima di datagrammi UDP.

I datagrammi persi o totali sul lato ricevitore indicano quanti pacchetti vengono persi e il tasso di perdita. In questo esempio, viene perso il 79% del traffico di rete.

Nota: se la connessione Direct Connect utilizza una Amazon Virtual Private Network (Amazon VPN) su un'interfaccia virtuale pubblica (VIF), esegui test delle prestazioni senza la VPN.

Controlla i parametri e i contatori dell'interfaccia

Controlla Amazon CloudWatch Logs per i seguenti parametri:

  • ConnectionErrorCount: applica la statistica di somma e nota che valori diversi da zero indicano errori di livello MAC sul dispositivo AWS.
  • ConnectionLightLevelTx e ConnectionLightLevelRx: assicurati che le letture del segnale ottico rientrino nell'intervallo -14,4 e 2,50 dBm.
  • ConnectionBpsEgress, ConnectionBpsIngress, VirtualInterfaceBpsEgress e VirtualInterfaceBpsIngress: assicurati che il bitrate non abbia raggiunto la larghezza di banda massima.

Per ulteriori informazioni, consulta Parametri e dimensioni di Direct Connect.

Se utilizzi un'interfaccia virtuale ospitata (Hosted VIF) che condivide la larghezza di banda totale con altri utenti, verifica con il proprietario di Direct Connect l'utilizzo della connessione.

Controlla il router e il firewall nella posizione Direct Connect per quanto segue:

  • CPU, memoria, utilizzo delle porte, riduzioni, rimozioni.
  • Usa "mostra statistiche interfacce" o un’opzione simile per verificare la presenza di errori di input e output dell'interfaccia come CRC, frame, collisioni e carrier.
  • Pulisci o sostituisci il cavo patch in fibra e il modulo SFP per i contatori usurati.

Controlla AWS Personal Health Dashboard per assicurarti che la connessione Direct Connect non sia in fase di manutenzione.

Esegui MTR in modo bidirezionale per controllare il percorso di rete

Puoi utilizzare il comando MTR Linux per analizzare le prestazioni della rete. Per il sistema operativo Windows, una best practice consiste nell’abilitare WSL 2 in modo da poter installare MTR su un sottosistema Linux. Puoi scaricare WinMTR dal sito Web di SourceForge.

1.    Installazione di Amazon Linux/REHEL:

$ sudo yum install mtr -y

Installazione di Ubuntu:

$ sudo apt install mtr -y

2.    Per la direzione on-premise -> AWS, esegui MTR sull’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 AWS --> on-premise, esegui MTR sull'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

Esempio di risultati dei test MTR:

#ICMP based MTR results
$ 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

#TCP based MTR results
$ 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

Ogni riga in un hop rappresenta un dispositivo di rete che il pacchetto di dati passa dall'origine alla destinazione. Per ulteriori informazioni su come leggere i risultati dei test MTR, visita il sito Web di ExaVault.

L'esempio seguente mostra una connessione Direct Connect con i peer BGP 10.110.120.1 e 10.110.120.2. La percentuale di perdita è osservata al 4° e 5° hop di destinazione. Questo può indicare un problema con la connessione Direct Connect o il router remoto 10.110.120.1. Il risultato MTR TCP mostra una percentuale di perdita inferiore perché TCP ha la priorità su ICMP con la connessione Direct Connect.

#ICMP based MTR results
$ 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

#TCP based MTR results
$ 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

L'esempio seguente mostra la perdita di pacchetti del firewall locale o del dispositivo NAT al 5%. La perdita di pacchetti influisce su tutti i salti 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 sull’host locale e sull'istanza EC2. Usa l'utilità tcpdump o Wireshark per ottenere il traffico di rete per l'analisi. Il seguente comando tcpdump example ottiene il timestamp e l'indirizzo IP dell'host:

tcpdump -i <network interface> -s0 -w $(date +"%Y%m%d_%H%M%S").$(hostname -s).pcap port <port>

Utilizza il calcolatore di velocità effettiva TCP sul sito Web di Switch per calcolare il limite di rete, il prodotto con ritardo della larghezza di banda e le dimensioni del buffer TCP.

Per ulteriori informazioni, consulta Risoluzione dei problemi di AWS Direct Connect.


Informazioni correlate

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

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa