Partilhar via


Testar a latência da rede entre VMs do Azure

Atenção

Este artigo faz referência ao CentOS, uma distribuição Linux com status de Fim de Vida (EOL). Por favor, considere o seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim da Vida Útil do CentOS.

Este artigo descreve como testar a latência de rede entre máquinas virtuais (VMs) do Azure usando as ferramentas publicamente disponíveis Latte para Windows ou SockPerf para Linux.

Para obter os resultados mais precisos, você deve medir a latência da rede VM com uma ferramenta projetada para a tarefa e que exclua outros tipos de latência, como a latência do aplicativo. O Latte e o SockPerf fornecem os resultados de latência de rede mais relevantes, concentrando-se no tráfego TCP (Transmission Control Protocol) e UDP (User Datagram Protocol). A maioria dos aplicativos usa esses protocolos, e esse tráfego tem o maior efeito no desempenho do aplicativo.

Muitas outras ferramentas comuns de teste de latência de rede, como o Ping, não medem o tráfego TCP ou UDP. Ferramentas como o Ping utilizam o Internet Control Message Protocol (ICMP), que as aplicações não utilizam. O tráfego ICMP pode ser tratado de forma diferente do tráfego da aplicação e não afecta diretamente o desempenho da aplicação. Os resultados do teste ICMP não se aplicam diretamente a cargas de trabalho que utilizam TCP e UDP.

O Latte e o SockPerf medem apenas os tempos de entrega de carga útil TCP ou UDP. Estas ferramentas utilizam a seguinte abordagem para medir a latência da rede entre dois computadores físicos ou virtuais:

  1. Crie um canal de comunicação bidirecional entre os computadores, designando um como emissor e outro como recetor.
  2. Enviar e receber pacotes em ambas as direcções e medir o tempo de ida e volta (RTT).

Dicas e práticas recomendadas para otimizar a latência da rede

Para otimizar as VMs para latência de rede, observe as seguintes recomendações ao criar as VMs:

  • Use a versão mais recente do Windows ou Linux.
  • Habilite a rede acelerada para aumentar o desempenho.
  • Implante VMs em um grupo de posicionamento de proximidade do Azure.
  • Crie VMs maiores para um melhor desempenho.

Use as seguintes práticas recomendadas para testar e analisar a latência da rede:

  1. Assim que terminar de implantar, configurar e otimizar VMs de rede, faça medições de latência de rede de linha de base entre VMs implantadas para estabelecer benchmarks.

  2. Teste os efeitos na latência da rede da alteração de qualquer um dos seguintes componentes:

    • Sistema operacional (SO) ou software de pilha de rede, incluindo alterações de configuração.
    • Método de implantação de VM, como a implantação em uma zona de disponibilidade ou grupo de posicionamento de proximidade (PPG).
    • Propriedades da VM, como Rede Acelerada ou alterações de tamanho.
    • Configuração de rede virtual, como alterações de roteamento ou filtragem.
  3. Sempre compare os resultados de novos testes com a linha de base ou com os resultados de teste mais recentes antes de alterações controladas.

  4. Repita os testes sempre que observar ou implantar alterações.

Testar VMs com Latte ou SockPerf

Use os procedimentos a seguir para instalar e testar a latência da rede com o Latte para Windows ou o SockPerf para Linux.

Instalar o Latte e configurar VMs

  1. Baixe a versão mais recente do latte.exe para ambas as VMs, em uma pasta separada, como c:\tools.

  2. Na VM do recetor , crie uma regra do Firewall allow do Windows Defender para permitir que o tráfego Latte chegue. É mais fácil permitir o programa latte.exe pelo nome do que permitir portas TCP de entrada específicas. No comando, substitua o espaço reservado <path> pelo caminho para o qual você baixou 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
    

Executar Latte nas VMs

Execute latte.exe a partir da linha de comando do Windows, não do PowerShell.

  1. Na VM do recetor, execute o seguinte comando, substituindo os <receiver IP address>espaços reservados , <port>e <iterations> com seus próprios valores.

    latte -a <receiver IP address>:<port> -i <iterations>
    
    • Cerca de 65.000 iterações são suficientes para retornar resultados representativos.
    • Qualquer número de porta disponível é bom.

    O exemplo a seguir mostra o comando para uma VM com um endereço IP de 10.0.0.4:

    latte -a 10.0.0.4:5005 -i 65100

  2. Na VM do remetente, execute o mesmo comando que no recetor, exceto com -c adicionado para indicar a VM cliente ou remetente. Substitua novamente os <receiver IP address>espaços reservados , <port>e <iterations> por seus próprios valores.

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

    Por exemplo:

    latte -c -a 10.0.0.4:5005 -i 65100

  3. Aguarde os resultados. Dependendo da distância entre as VMs, o teste pode levar alguns minutos para ser concluído. Considere começar com menos iterações para testar o sucesso antes de executar testes mais longos.

Próximos passos