Testar a taxa de transferência de rede de VMs usando NTTTCP

Cuidado

Este artigo faz referência ao CentOS, uma distribuição do Linux que está se aproximando do status de EOL (fim da vida útil). Considere seu uso e planeje adequadamente. Para obter mais informações, veja as Diretrizes sobre fim da vida útil do CentOS.

Este artigo descreve como usar a ferramenta NTTTCP gratuita da Microsoft para testar a largura de banda de rede e o desempenho da taxa de transferência em VMs (máquinas virtuais) do Windows ou Linux no Azure. Uma ferramenta como a NTTTCP direciona a rede para teste e minimiza o uso de outros recursos que podem afetar o desempenho.

Pré-requisitos

Observação

O teste usando um IP virtual (VIP) é possível, mas está além do escopo deste artigo.

Exemplos usados neste artigo

Configuração Valor
Endereço IP da VM do receptor 10.0.0.5
Quantidade de núcleos de VM 2

Teste da taxa de transferência com VMs do Windows ou Linux

Você pode testar a taxa de transferência de VMs do Windows usando NTTTCP ou VMs do Linux usando NTTTCP-para-Linux.

Preparar VMs e instalar o NTTTCP-para-Windows

  1. Nas VMs emissoras e receptoras, baixe a versão mais recente do NTTTCP em uma pasta separada, como c:\tools.

  2. Abra a linha de comando do Windows e navegue até a pasta em que ntttcp.exe foi baixado.

  3. Na VM receptora, crie uma regra allow no Windows Firewall para permitir a chegada de tráfego do NTTTCP. É mais fácil permitir o programa ntttcp.exe pelo nome, em vez de permitir a entrada de portas TCP específicas. Execute o comando a seguir, substituindo c:\tools pelo caminho de download para ntttcp.exe se for 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 a configuração, use os seguintes comandos para testar um fluxo TCP (Protocolo TCP) único por 10 segundos nas máquinas virtuais receptor e remetente:

    VM do receptor

    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
    

    VM do remetente

    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
    

    Observação

    Use os comandos anteriores apenas para a configuração de teste.

    Dica

    Ao executar o teste pela primeira vez para verificar a configuração, use um teste de curta duração para obter resultados rápidos. Depois que a ferramenta estiver funcionando, estenda a duração do teste para 300 segundos para obter os resultados mais precisos.

Executar testes de taxa de transferência

Execute o teste por 300 segundos ou cinco minutos nas VMs emissora e receptora. A emissora e a receptora devem especificar a mesma duração de teste para o parâmetro -t.

  1. Na VM receptora, execute o comando a seguir, substituindo os espaços reservados <number of VM cores> e <receiver IP address> pelos seus próprios 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. Na VM emissora, execute o comando a seguir. Os comandos da emissora e receptora diferem apenas no parâmetro -s ou -r que designa a VM emissora ou 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. Aguarde os resultados.

Ao concluir o teste, a saída deve ser semelhante ao exemplo a seguir:

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

Teste da taxa de transferência entre uma VM do Windows e uma VM do Linux

Para executar testes de taxa de transferência NTTTCP entre uma VM do Windows e uma VM do Linux, habilite o modo sem sincronização usando o sinalizador -ns no Windows ou o sinalizador -N no Linux.

Para testar com a VM do Windows como receptora, execute o seguinte comando:

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

Para testar com a VM do Windows como emissora, execute o seguinte comando:

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

Próximas etapas