Visão geral da rede acelerada

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 os benefícios, as restrições e as configurações com suporte da Rede Acelerada. A Rede Acelerada permite a virtualização de E/S de raiz única (SR-IOV) em tipos de VMs (máquina virtual) com suporte, melhorando consideravelmente o desempenho da rede. Esse caminho de dados de alto desempenho ignora o host, o que reduz a latência, a tremulação e a utilização da CPU para as cargas de trabalho de rede mais exigentes.

Observação

Para obter mais informações sobre a versão preliminar do Adaptador de Rede do Microsoft Azure (MANA), consulte a Documentação do Azure MANA

O diagrama a seguir ilustra como duas VMs se comunicam com e sem a Rede Acelerada.

Captura de tela mostrando a comunicação entre VMs do Azure com e sem Rede Acelerada.

Sem Rede Acelerada , todo o tráfego de rede que entra e sai da VM atravessa o host e o comutador virtual. O comutador virtual fornece toda a aplicação de políticas ao tráfego de rede. As políticas incluem grupos de segurança de rede, listas de controle de acesso, isolamento e outros serviços virtualizados de rede.

Com a Rede Acelerada, o tráfego de rede que chega à interface de rede (NIC) da VM é encaminhado diretamente para a VM. A Rede Acelerada descarrega todas as políticas de rede que o comutador virtual aplicou e as aplica no hardware. Como o hardware aplica políticas, a NIC pode encaminhar o tráfego de rede diretamente para a VM. A NIC ignora o host e o comutador virtual, enquanto mantém todas as políticas aplicadas no host.

Benefícios

A Rede Acelerada tem os benefícios a seguir:

  • Menor latência e maior número de pacotes por segundo (pps). A remoção do comutador virtual do caminho de dados elimina o tempo que os pacotes passam no host para o processamento da política. Ele também aumenta o número de pacotes que a VM pode processar.

  • Tremulação reduzida. O tempo de processamento do comutador virtual depende da quantidade de política a ser aplicada e da carga de trabalho da CPU que faz o processamento. O descarregamento da imposição de políticas para o hardware remove essa variabilidade entregando pacotes diretamente à VM. O descarregamento também remove a comunicação de host para VM, todas as interrupções de software e todas as alternâncias de contexto.

  • Utilização de CPU reduzida. ignorar o comutador virtual no host resulta em menor utilização da CPU para processar o tráfego de rede.

Limitações e restrições

  • Os benefícios da Rede Acelerada se aplicam somente à VM que a habilita.

  • Para obter melhores resultados, habilite a Rede Acelerada em pelo menos duas VMs na mesma rede virtual do Azure. Esse recurso exerce um impacto mínimo sobre a latência quando você se comunica nas diversas redes virtuais ou se conecta no local.

  • Não é possível habilitar a Rede Acelerada em uma VM em execução. A Rede Acelerada em uma VM suportada só pode ser habilitada quando a VM for interrompida e desalocada.

  • Não é possível implantar máquinas virtuais (clássicas) com a Rede Acelerada através do Azure Resource Manager.

  • A plataforma do Azure não atualiza os drivers de NIC Mellanox na VM. Para VMs que executam Linux e FreeBSD, os clientes são incentivados a permanecer atualizados com as atualizações de kernel mais recentes oferecidas pela distribuição. Para VMs que executam o Windows, os clientes devem aplicar drivers atualizados da página de suporte da Nvidia se algum problema for encontrado posteriormente com o driver entregue com a imagem do Marketplace ou aplicado a uma imagem personalizada.

Regiões com suporte

A Rede Acelerada está disponível em todas as regiões globais do Azure e na Nuvem do Azure Governamental.

Sistemas operacionais com suporte

As versões do Windows a seguir dão suporte à Rede Acelerada:

  • Windows Server 2022
  • Windows Server 2019 Standard/Datacenter
  • Windows Server 2016 Standard/Datacenter
  • Windows Server 2012 R2 Standard/Datacenter
  • Windows 10, versão 21H2 ou posterior, incluindo o Windows 10 Enterprise multisessão
  • Windows 11, incluindo o Windows 11 Enterprise multisession

As seguintes distribuições Linux e FreeBSD do Azure Marketplace dão suporte à Rede Acelerada pronta para uso:

  • Ubuntu 14.04 com o kernel linux-azure
  • Ubuntu 16.04 ou posterior
  • SLES12 SP3 ou posterior
  • RHEL 7.4 ou posterior
  • CentOS 7.4 ou posterior
  • CoreOS Linux
  • Debian "Stretch" com kernel de portas traseiras
  • Debian "Buster" ou posterior
  • Oracle Linux 7.4 e posterior com Kernel Compatível com Red Hat (RHCK)
  • Oracle Linux 7.5 e posterior com UEK versão 5
  • FreeBSD 10.4, 11.1, 12.0 & 12.0 ou posterior

Instâncias de VM compatíveis

A maioria dos tamanhos de instâncias de VMs de uso geral e otimizadas para computação com duas ou mais vCPUs dá suporte à Rede Acelerada. Em instâncias que suportam hyperthreading, instâncias de VM com quatro ou mais vCPUs dão suporte à Rede Acelerada.

Para verificar se um tamanho de VM dá suporte à Rede Acelerada, confira Tamanhos para máquinas virtuais no Azure.

Você pode consultar diretamente a lista de SKUs de VMs que dão suporte à Rede Acelerada usando o comando az vm list-skus da CLI do Azure:

az vm list-skus \
  --location westus \
  --all true \
  --resource-type virtualMachines \
  --query '[].{size:size, name:name, acceleratedNetworkingEnabled: capabilities[?name==`AcceleratedNetworkingEnabled`].value | [0]}' \
  --output table

Observação

Embora os tamanhos NC e NV apareçam na saída do comando, esses tamanhos não dão suporte à Rede Acelerada. Habilitar a Rede Acelerada em VMs NC ou NV não tem efeito.

Imagens de VM personalizadas

Se você usar uma imagem personalizada que dar suporte à Rede Acelerada, verifique se você tem os drivers necessários para trabalhar com NICs Mellanox ConnectX-3, ConnectX-4 Lx e ConnectX-5 no Azure. A Rede Acelerada também requer configurações de rede que isentam a configuração das funções virtuais nos drivers mlx4_en e mlx5_core.

As imagens com a versão 19.4 ou posterior de cloud-init têm a rede configurada corretamente para dar suporte à Rede Acelerada durante o provisionamento.

O exemplo a seguir mostra um exemplo de configuração suspensa para NetworkManager no RHEL ou no CentOS:

sudo mkdir -p /etc/NetworkManager/conf.d
sudo cat > /etc/NetworkManager/conf.d/99-azure-unmanaged-devices.conf <<EOF
# Ignore SR-IOV interface on Azure, since it's transparently bonded
# to the synthetic interface
[keyfile]
unmanaged-devices=driver:mlx4_core;driver:mlx5_core
EOF

Próximas etapas