Comment puis-je résoudre les problèmes de performances réseau entre les instances Amazon EC2 dans un VPC et un hôte sur site sur une passerelle Internet ?

Date de la dernière mise à jour : 07/10/2019

Je rencontre des problèmes de performances réseau entre mes instances Windows Amazon Elastic Compute Cloud (Amazon EC2) et mon hôte sur site sur une passerelle Internet. Comment puis-je résoudre ces problèmes de perte de paquets ou de latence ?

Resolution

Remarque : avant de démarrer le dépannage, identifiez les adresses IP source et de destination. Si la destination est une URL, utilisez la commande « nslookup » pour identifier l'adresse IP. Sachez que certaines URL utilisent des adresses IP dynamiques. Il se peut donc que l'adresse IP soit changeante. Exécutez la commande plusieurs fois pour voir si l'adresse IP est constante.

Vérifier la capacité ECN

1. Exécutez la commande suivante pour déterminer si la fonctionnalité de notification explicite de congestion (ECN) est activée.

netsh interface tcp show global

2. Si la fonctionnalité ECN est activée, exécutez la commande suivante pour la désactiver.

- netsh interface tcp set global ecncapability=disabled

3. Si vous ne constatez pas une amélioration des performances, vous pouvez réactiver la fonctionnalité ECN à l'aide de la commande suivante.

netsh interface tcp set global ecncapability=enabled

Vérifier les sauts et dépanner la connectivité du port TCP

Commencez par utiliser MTR ou tracert pour examiner les sauts :

Méthode MTR

1.    Téléchargez et installez WinMTR.

2.    Saisissez l'IP de destination dans la section « Host » (Hôte), puis choisissez « Start » (Démarrer).

3.    Laissez le test s'exécuter pendant une minute, puis choisissez « Stop » (Arrêter).

4.    Choisissez « Copy text to clipboard »(Copier le texte dans le presse-papiers) et collez la sortie dans un fichier texte.

5.    Recherchez d'éventuelles pertes dans la colonne % qui sont propagées vers la destination.
Remarque : ignorez tous les sauts avec le message « No response from host » (Aucune réponse de l'hôte). Ce message indique que ces sauts particuliers ne répondent pas aux sondes ICMP.

6.    Examinez les sauts sur les rapports MTR à l'aide d'une approche de bas en haut. Par exemple, observez la perte sur le dernier saut ou la dernière destination puis examinez les sauts précédents.

méthode tracert

Vous pouvez utiliser l'utilitaire de commande tracert si vous ne souhaitez pas installer MTR.

1.    Effectuez un tracert vers l'URL ou l'adresse IP de destination.

2.    Recherchez n'importe quel saut présentant un pic soudain dans le temps de l'aller-retour (RTT). Un pic soudain dans RTT peut indiquer l'existence d'un nœud surchargé responsable d'une latence ou de pertes de paquets dans votre trafic.

Ensuite, vérifiez la connectivité du port TCP :
Remarque : comme WinMTR et tracert sont tous deux basés sur ICMP, vous pouvez utiliser tracetcp pour dépanner la connectivité du port TCP.

1.    Téléchargez WinPcap et tracetcp.

2.    Récupérez le fichier ZIP Tracetcp.

3.    Copiez tracetcp.exe sur votre lecteur C.

4.    Installez WinPcap.

5.    Ouvrez l'invite de commande et WinPcap racine sur votre lecteur C à l'aide de la commande C:\Users\username > cd\ .

6.    Exécutez tracetcp à l'aide des commandes suivantes : tracetcp.exe hostname:port ou tracetcp.exe ip:port.

Vérification du Gestionnaire des tâches Windows

Si vous avez accès à l'instance source ou à l'instance de destination, vérifiez le Gestionnaire des tâches Windows. Recherchez les problèmes d'utilisation du processeur et de la mémoire, ou la charge moyenne.

Effectuer une capture de paquets

Remarque : une bonne pratique consiste à commencer par démarrer la capture des paquets, puis à initier le trafic. Cette approche vous aide à capturer tous les paquets pour le flux.

1.    Installez Wireshark et effectuez une capture de paquet.

2.    Utilisez le filtre suivant pour isoler le trafic entre des sources particulières dans la capture des paquets : (ip.addr eq source_IP) && (tcp.flags.syn = = 1). La sortie affiche tous les flux tcp initiés par cette adresse IP source.

3.    Sélectionnez la ligne avec l'adresse IP source et l'adresse IP de destination appropriées.

4.    Choisissez le menu contextuel (clic droit), puis choisissez « Follow » (Suivre), « TCP Stream » (Flux TCP). Cette action déclenche un flux TCP entre l'adresse IP source et l'adresse IP de destination que vous souhaitez examiner.

5.    Recherchez les retransmissions, les paquets en double ou les notifications de taille de fenêtre TCP comme la fenêtre TCP pleine ou la taille de fenêtre zéro. Ces notifications peuvent indiquer que les tampons TCP manquent d'espace.