Prueba de la latencia de red entre máquinas virtuales de Azure

Precaución

En este artículo se hace referencia a CentOS, una distribución de Linux que está cerca de su estado Final de ciclo vida (EOL). Tenga en cuenta su uso y planifique en consecuencia. Para más información, consulte la Guía de fin de ciclo de vida de CentOS.

En este artículo, se describe cómo probar la latencia de red entre las máquinas virtuales (VM) de Azure mediante las herramientas disponibles de manera pública Latte para Windows o SockPerf para Linux.

Para obtener los resultados más precisos, debe medir la latencia de red de la máquina virtual con una herramienta diseñada para la tarea y excluir otros tipos de latencia, como la latencia de la aplicación. Latte y SockPerf proporcionan los resultados de latencia de red más relevantes centrándose en el tráfico del Protocolo de control de transmisión (TCP) y el protocolo de datagramas de usuario (UDP). La mayoría de las aplicaciones usan estos protocolos y este tráfico tiene el mayor efecto en el rendimiento de la aplicación.

Muchas otras herramientas comunes de prueba de latencia de red, como Ping, no miden el tráfico TCP o UDP. Las herramientas como Ping usan el Protocolo de mensajes de control de Internet (ICMP), que las aplicaciones no usan. El tráfico ICMP se puede tratar de forma diferente del tráfico de la aplicación y no afecta directamente al rendimiento de la aplicación. Los resultados de las pruebas ICMP no se aplican directamente a las cargas de trabajo que usan TCP y UDP.

Latte y SockPerf miden solo los tiempos de entrega de carga TCP o UDP. Estas herramientas usan el siguiente enfoque para medir la latencia de red entre dos equipos físicos o virtuales:

  1. Cree un canal de comunicación bidireccional entre los equipos designando uno como emisor y otro como receptor.
  2. Envíe y reciba paquetes en ambas direcciones y mida el tiempo de ida y vuelta (RTT).

Sugerencias y procedimientos recomendados para optimizar la latencia de red

Para optimizar las máquinas virtuales para la latencia de red, observe estas recomendaciones al crear las máquinas virtuales:

Use estos siguientes procedimientos recomendados para probar y analizar la latencia de red:

  1. En cuanto termine de implementar, configurar y optimizar las máquinas virtuales de red, tome las medidas de latencia de red de la base de referencia entre las máquinas virtuales implementadas para establecer pruebas comparativas.

  2. Pruebe los efectos en la latencia de red para cambiar cualquiera de los siguientes componentes:

    • El sistema operativo o el software de la pila de red, lo que incluye los cambios de configuración.
    • Un método de implementación de la máquina virtual, como la implementación en una zona de disponibilidad o en un grupo con ubicación por proximidad (PPG).
    • Las propiedades de la máquina virtual, como Redes aceleradas o cambios de tamaño.
    • Una configuración de red virtual, como el enrutamiento o el filtrado de cambios.
  3. Compare siempre los nuevos resultados de las pruebas con la base de referencia o con los resultados de las pruebas más recientes previos a los cambios controlados.

  4. Repita las pruebas cada vez que observe o implemente cambios.

Prueba de máquinas virtuales con Latte o SockPerf

Use estos procedimientos siguientes para instalar y probar la latencia de red con Latte para Windows o SockPerf para Linux.

Instalación de Latte y configuración de máquinas virtuales

  1. Descargue la versión más reciente de latte.exe en ambas máquinas virtuales, en una carpeta independiente, como c:\tools.

  2. En la máquina virtual receptora, cree una regla de Firewall de Windows Defender allow para permitir que llegue el tráfico de Latte. Es más fácil permitir el programa latte.exe por su nombre que permitir determinados puertos TCP de entrada. En el comando, reemplace el marcador de posición <path> por la ruta de acceso en la que ha descargado latte.exe, como c:\tools\.

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

Ejecución de Latte en las máquinas virtuales

Ejecute latte.exe desde la línea de comandos de Windows, no desde PowerShell.

  1. En la máquina virtual receptora, ejecute el comando siguiente y reemplace los marcadores de posición <receiver IP address>, <port> y <iterations> por sus propios valores.

    latte -a <receiver IP address>:<port> -i <iterations>
    
    • Para obtener resultados representativos, es suficiente la realización de unas 65 000 iteraciones.
    • Cualquier número de puerto disponible es válido.

    En este ejemplo, se muestra el comando de una máquina virtual con una dirección IP de 10.0.0.4:

    latte -a 10.0.0.4:5005 -i 65100

  2. En la máquina virtual emisora, ejecute el mismo comando que en la máquina virtual receptora, pero agregue -c para indicar el cliente o la máquina virtual emisora. Reemplace nuevamente los marcadores de posición <receiver IP address>, <port> y <iterations> por sus propios valores.

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

    Por ejemplo:

    latte -c -a 10.0.0.4:5005 -i 65100

  3. Espere a que se muestren los resultados. En función de la distancia que haya entre las máquinas virtuales, la prueba podría tardar unos minutos en finalizar. Considere comenzar con menos iteraciones para probar si se ha realizado correctamente antes de ejecutar pruebas más largas.

Pasos siguientes