Compartir vía


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

Resumen

En este artículo se describe cómo usar la herramienta NTTTCP gratuita de Microsoft para probar el ancho de banda de red y el rendimiento en máquinas virtuales (VM) de Azure Windows o Linux. 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.

Prerrequisitos

  • Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
  • Dos máquinas virtuales Windows o Linux en Azure. Crear una máquina virtual Windows o crear una máquina virtual Linux.
    • Para probar el rendimiento, necesita dos máquinas virtuales del mismo tamaño para funcionar como remitente y receptor. Las dos máquinas virtuales deben estar en el mismo grupo de selección de ubicación de 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 para 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, pero está fuera del ámbito de este artículo.

Ejemplos usados en este artículo

Configuración Importancia
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 de Windows o máquinas virtuales Linux

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

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

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

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

  3. En la máquina virtual receptora, cree una regla de Windows Firewall allow para permitir que llegue el tráfico NTTTCP. Es más fácil permitir nttcp.exe por nombre que permitir puertos TCP de entrada específicos. Ejecuta el siguiente comando, reemplazando con tu ruta 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 .

  1. En la máquina virtual receptora, ejecute el comando siguiente y reemplace los marcadores de posición y 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 o 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 de Windows y una máquina virtual Linux

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

Para probar con la máquina virtual de Windows como receptor, 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 de Windows como remitente, ejecute el siguiente comando:

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

Pasos siguientes