Tester la latence du réseau entre des machines virtuelles Azure

Attention

Cet article fait référence à CentOS, une distribution Linux proche de l’état EOL (End Of Life). Faites le point sur votre utilisation et organisez-vous en conséquence. Pour plus d’informations, consultez l’aide relative à la fin de vie de CentOS.

Cet article décrit comment tester la latence du réseau entre des machines virtuelles (VM) Azure à l’aide des outils disponibles publiquement Latte pour Windows ou SockPerf pour Linux.

Pour obtenir les résultats les plus précis, vous devez mesurer la latence du réseau des machines virtuelles (VM) avec un outil conçu pour la tâche et qui exclut d’autres types de latence, tels que la latence de l’application. Latte et SockPerf fournissent les résultats de latence du réseau les plus pertinents en se concentrant sur le trafic des protocoles TCP (Transmission Control Protocol) et UDP (User Datagram Protocol). La plupart des applications utilisent ces protocoles, et ce trafic a l’effet le plus important sur le niveau de performance de l’application.

De nombreux autres outils courants de test de latence du réseau, tels que Ping, ne mesurent pas le trafic TCP ou UDP. Des outils tels que Ping utilisent le protocole ICMP (Internet Control Message Protocol), que les applications n’utilisent pas. Le trafic ICMP peut être traité différemment du trafic d’application et n’affecte pas directement le niveau de performances de l’application. Les résultats des tests ICMP ne s’appliquent pas directement aux charges de travail qui utilisent TCP et UDP.

Latte et SockPerf mesurent uniquement les délais de livraison de la charge utile TCP ou UDP. Ces outils utilisent l’approche suivante pour mesurer la latence du réseau entre deux ordinateurs physiques ou virtuels :

  1. Créez un canal de communication bidirectionnel entre les ordinateurs en désignant l’un comme expéditeur et l’autre comme destinataire.
  2. Envoyez et recevez des paquets dans les deux directions et mesurer la durée des boucles (RTT).

Conseils et meilleures pratiques pour optimiser la latence du réseau

Pour optimiser la latence du réseau entre des machines virtuelles, observez les recommandations suivantes lorsque vous créez les machines virtuelles :

Utilisez les meilleures pratiques suivantes pour tester et analyser la latence du réseau :

  1. Dès que vous avez terminé le déploiement, la configuration et l’optimisation des machines virtuelles du réseau, prenez des mesures de base de la latence du réseau entre les machines virtuelles déployées afin d’établir des points de référence.

  2. Testez les effets sur la latence du réseau de la modification de l’un des composants suivants :

    • au logiciel du système d’exploitation ou de la pile réseau, y compris les modifications de configuration ;
    • Une méthode de déploiement de machine virtuelle, telle que le déploiement dans une zone de disponibilité ou un groupe de placement de proximité (PPG).
    • aux propriétés des machines virtuelles, telles que les changements de taille ou de mise en réseau accélérée ;
    • Une configuration de réseau virtuel, telle que le routage ou le filtrage des modifications.
  3. Comparez toujours les nouveaux résultats de test à la base de référence ou aux derniers résultats de test avant les modifications contrôlées.

  4. Répétez les tests chaque fois que vous observez ou déployez des modifications.

Tester des machines virtuelles avec Latte ou SockPerf

Utilisez les procédures suivantes pour installer et tester la latence du réseau avec Latte pour Windows ou SockPerf pour Linux.

Installer Latte et configurer des machines virtuelles

  1. Téléchargez la dernière version de latte.exe sur les deux machines virtuelles, dans un dossier distinct tel que c:\tools.

  2. Sur la machine virtuelle du destinataire, créez une règle allow de pare-feu Windows Defender pour autoriser l’arrivée du trafic de Latte. Il est plus facile d’autoriser le programme latte.exe par nom que d’autoriser des ports TCP entrants spécifiques. Dans la commande, remplacez l’espace réservé <path> par le chemin d’accès dans lequel vous avez téléchargé latte.exe, par exemple c:\tools\.

    netsh advfirewall firewall add rule program=<path>latte.exe name="Latte" protocol=any dir=in action=allow enable=yes profile=ANY
    

Exécuter Latte sur les machines virtuelles

Exécutez latte.exe à partir de la ligne de commande Windows et non à partir de PowerShell.

  1. Sur la machine virtuelle du destinataire, exécutez la commande suivante, en remplaçant les espaces réservés <receiver IP address>, <port> et <iterations> par vos propres valeurs.

    latte -a <receiver IP address>:<port> -i <iterations>
    
    • Environ 65 000 itérations suffisent à renvoyer des résultats représentatifs.
    • Tout numéro de port disponible est correct.

    L’exemple suivant montre la commande pour une machine virtuelle ayant une adresse IP 10.0.0.4 :

    latte -a 10.0.0.4:5005 -i 65100

  2. Sur la machine virtuelle de l’expéditeur, exécutez la même commande que sur celle du destinataire, en ajoutant -c pour indiquer la machine virtuelle du client ou de l’expéditeur. Remplacez à nouveau les espaces réservés <receiver IP address>, <port> et<iterations> par vos propres valeurs.

    latte -c -a <receiver IP address>:<port> -i <iterations>
    

    Par exemple :

    latte -c -a 10.0.0.4:5005 -i 65100

  3. Attendez les résultats. Selon l’éloignement des machines virtuelles, le test peut prendre quelques minutes. Vous pouvez commencer par un nombre inférieur d'itérations pour vérifier que cela fonctionne avant d'exécuter de plus long tests.

Étapes suivantes