Testar a latência da rede entre VMs do Azure
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 das aplicações utiliza estes protocolos e este tráfego tem o maior efeito no desempenho das aplicações.
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:
- Crie um canal de comunicação bidirecional entre os computadores, designando um como emissor e outro como recetor.
- 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:
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.
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étodos de implantação de VM, como 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.
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.
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
Baixe a versão mais recente do latte.exe para ambas as VMs e coloque-a em uma pasta separada, como c:/tools.
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.
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
Na VM do remetente, execute o mesmo comando que no recetor, exceto com
-c
adicionado para indicar a VM cliente ou remetente. Novamente, substitua 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
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
- Reduza a latência com um grupo de posicionamento de proximidade do Azure.
- Otimize a taxa de transferência de rede para máquinas virtuais do Azure.
- Aloque a largura de banda da rede da máquina virtual.
- Teste a largura de banda e a taxa de transferência.
- Para obter mais informações sobre a rede virtual do Azure, consulte Perguntas frequentes sobre a Rede Virtual do Azure.