Prueba del rendimiento de red de la máquina virtual mediante NTTTCP

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 obtener más información, consulte la guía de fin de vida de CentOS.

En este artículo, se describe cómo usar la herramienta NTTTCP gratuita de Microsoft para probar el rendimiento y el ancho de banda de red en máquinas virtuales (VM) Windows o Linux de Azure. Una herramienta como NTTTCP tiene como destino la red para realizar pruebas y minimiza el uso de otros recursos que podrían afectar al rendimiento.

Requisitos previos

  • Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
  • Dos máquinas virtuales Windows o Linux en Azure. Cree una máquina virtual Windows o cree una máquina virtual Linux.
    • Para probar el rendimiento, necesita dos máquinas virtuales del mismo tamaño para funcionar como emisora y receptora. Las dos máquinas virtuales deben estar en el mismo grupo con ubicación por proximidad o conjunto de disponibilidad, por lo que puede usar sus direcciones IP internas y excluir equilibradores de carga de la prueba.
    • Tenga en cuenta el número de núcleos de máquina virtual y la dirección IP de la máquina virtual receptora que se van a usar en los comandos. Los comandos emisor y receptor usan la dirección IP del receptor.

Nota:

Es posible realizar pruebas mediante una dirección IP virtual (VIP), pero está fuera del ámbito de este artículo.

Ejemplos usados en este artículo

Configuración Valor
Dirección IP de la máquina virtual receptora 10.0.0.5
Número de núcleos de máquinas virtuales 2

Prueba del rendimiento con máquinas virtuales Windows o máquinas virtuales Linux

Puede probar el rendimiento de las máquinas virtuales Windows mediante NTTTCP o desde máquinas virtuales Linux mediante NTTTCP-for-Linux.

Preparación de las máquinas virtuales e instalación de NTTTCP-for-Linux

  1. En las máquinas virtuales emisora y receptora, descargue la versión más reciente de NTTTCP en una carpeta independiente, como c:\tools.

  2. Abra la línea de comandos de Windows y vaya a la carpeta donde descargó ntttcp.exe.

  3. En la máquina virtual de recepción, cree una regla allow de Firewall de Windows Defender para permitir que llegue el tráfico de NTTTCP. Es más fácil permitir nttcp.exe por nombre que permitir puertos TCP de entrada específicos. Ejecute el siguiente comando y reemplace c:\tools por su ruta de acceso de descarga para ntttcp.exe si es diferente.

    netsh advfirewall firewall add rule program=c:\tools\ntttcp.exe name="ntttcp" protocol=any dir=in action=allow enable=yes profile=ANY
    
  4. Para confirmar la configuración, use los siguientes comandos para probar un único flujo de Protocolo de control de transferencia (TCP) durante 10 segundos en las máquinas virtuales de recepción y envío:

    Máquina virtual de recepción

    ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1

    ntttcp -r -m 4,*,10.0.0.5 -t 10 -P 1
    

    Máquina virtual de envío

    ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 10 -P 1

    ntttcp -s -m 4,*,10.0.0.5 -t 10 -P 1
    

    Nota:

    Use los comandos anteriores solo para probar la configuración.

    Sugerencia

    Cuando ejecute la prueba por primera vez para comprobar la configuración, use una duración de prueba breve para obtener comentarios rápidos. Después de verificar que la herramienta funcione, amplíe la duración de la prueba en 300 segundos para obtener resultados más precisos.

Ejecución de pruebas de rendimiento

Ejecute la prueba durante 300 segundos o cinco minutos en las máquinas virtuales emisora y receptora. Ambas máquinas virtuales deben especificar la misma duración de prueba para el parámetro -t.

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

    ntttcp -r -m [<number of VM cores> x 2],*,<receiver IP address> -t 300

    ntttcp -r -m 4,*,10.0.0.5 -t 300
    
  2. En la máquina virtual emisora, ejecute el siguiente comando. Los comandos emisor y receptor solo difieren en el parámetro -s o -r que designa la máquina virtual emisora o receptora.

    ntttcp -s -m [<number of VM cores> x 2],*,<receiver IP address> -t 300

    ntttcp -s -m 4,*,10.0.0.5 -t 300
    
  3. Espere a que se muestren los resultados.

Una vez finalizada la prueba, la salida debe ser similar a la del ejemplo siguiente:

C:\tools>ntttcp -s -m 4,*,10.0.0.5 -t 300
Copyright Version 5.39
Network activity progressing...


Thread  Time(s) Throughput(KB/s) Avg B / Compl
======  ======= ================ =============
     0  300.006        29617.328     65536.000
     1  300.006        29267.468     65536.000
     2  300.006        28978.834     65536.000
     3  300.006        29016.806     65536.000


#####  Totals:  #####


   Bytes(MEG)    realtime(s) Avg Frame Size Throughput(MB/s)
================ =========== ============== ================
    34243.000000     300.005       1417.829          114.141


Throughput(Buffers/s) Cycles/Byte       Buffers
===================== =========== =============
             1826.262       7.036    547888.000


DPCs(count/s) Pkts(num/DPC)   Intr(count/s) Pkts(num/intr)
============= ============= =============== ==============
     4218.744         1.708        6055.769          1.190


Packets Sent Packets Received Retransmits Errors Avg. CPU %
============ ================ =========== ====== ==========
    25324915          2161992       60412      0     15.075

Prueba del rendimiento entre una máquina virtual Windows y una máquina virtual Linux

Para ejecutar pruebas de rendimiento NTTTCP entre una máquina virtual Windows y una máquina virtual Linux, habilite el modo sin sincronización mediante la marca -ns en Windows o la marca -N en Linux.

Para probar con la máquina virtual Windows como receptora, ejecute el siguiente comando:

ntttcp -r -m [<number of VM cores> x 2],*,<Linux VM IP address> -t 300

Para probar con la máquina virtual Windows como emisora, ejecute el siguiente comando:

ntttcp -s -m [<number of VM cores> x 2],*,<Linux VM IP address> -ns -t 300

Pasos siguientes