Información general sobre las redes aceleradas

Precaución

En este artículo se hace referencia a CentOS, una distribución de Linux que está cerca de su estado Final de ciclo vida (EOL). Tenga en cuenta su uso y planifique en consecuencia. Para obtener más información, consulte la guía de fin de vida de CentOS.

En este artículo se describen las ventajas, las restricciones y las configuraciones admitidas de Redes aceleradas. Las redes aceleradas permiten la virtualización de E/S de raíz única (SR-IOV) en los tipos de máquina virtual (VM) compatibles, lo que mejora considerablemente el rendimiento de las redes. Esta ruta de acceso de datos de alto rendimiento omite el host, lo que reduce la latencia, la inestabilidad y el uso de CPU de las cargas de trabajo de red más exigentes.

Nota

Para obtener más información sobre la versión preliminar del adaptador de red de Microsoft Azure (MANA), consulte la documentación de Azure MANA.

En el diagrama siguiente, se muestra la comunicación entre dos máquinas virtuales con y sin redes aceleradas.

Captura de pantalla que muestra la comunicación entre las máquinas virtuales de Azure con y sin redes aceleradas.

Sin redes aceleradas, todo el tráfico de entrada y salida de la máquina virtual tiene que atravesar el host y el conmutador virtual. El conmutador virtual proporciona toda la aplicación de directivas al tráfico. Las directivas incluyen grupos de seguridad de red, listas de control de acceso, aislamiento y otros servicios virtualizados de red.

Con Redes aceleradas, el tráfico que llega a la interfaz de red (NIC) de la máquina virtual se reenvía directamente a la máquina virtual. Las redes aceleradas descargan todas las directivas de red que aplicó el conmutador virtual y las aplica en el hardware. Dado que el hardware aplica las directivas, la NIC puede reenviar el tráfico directamente a la máquina virtual. La NIC omite el host y el conmutador virtual, y mantiene toda las directivas que aplicó en el host.

Ventajas

Las redes aceleradas tienen las siguientes ventajas:

  • Menor latencia y más paquetes por segundo (pps). Al eliminar el conmutador virtual de la ruta de acceso de datos, se quita el tiempo que los paquetes pasan en el host para el procesamiento de directivas. También aumenta el número de paquetes que la máquina virtual puede procesar.

  • Inestabilidad reducida. El tiempo de procesamiento de los conmutadores virtuales depende de la cantidad de directivas a aplicar y de la carga de trabajo de la CPU que realiza el procesamiento. La descarga de la aplicación de directivas en el hardware elimina esa variabilidad mediante la entrega de paquetes directamente a la VM. La descarga también quita la comunicación entre el host y la VM, todas las interrupciones de software y todos los cambios de contexto.

  • Disminución de la utilización de la CPU. el pasar por alto el conmutador virtual en el host conlleva una disminución de la utilización de la CPU para procesar el tráfico de red.

Limitaciones y restricciones

  • Las ventajas de las redes aceleradas solo se aplican a la máquina virtual que las habilita.

  • Para obtener los mejores resultados, habilite las redes aceleradas en al menos dos máquinas virtuales de la misma red virtual de Azure. Esta característica tiene un impacto mínimo en la latencia al comunicarse entre redes virtuales o al conectarse localmente.

  • No se pueden habilitar redes aceleradas en una máquina virtual en ejecución. Puede habilitar las redes aceleradas en una máquina virtual admitida solo cuando la máquina virtual está detenida y desasignada.

  • No se pueden implementar máquinas virtuales (clásicas) con redes aceleradas a través de Azure Resource Manager.

  • La plataforma Azure no actualiza los controladores NIC de Mellanox en la máquina virtual. En el caso de las máquinas virtuales que ejecutan Linux y FreeBSD, se recomienda a los clientes mantenerse al día con las últimas actualizaciones del kernel que ofrece la distribución. Para las máquinas virtuales que ejecutan Windows, los clientes deben aplicar controladores actualizados desde la página de asistencia de Nvidia si posteriormente se encuentra algún problema con el controlador entregado con la imagen de Marketplace o aplicado a una imagen personalizada.

Regiones admitidas

Las redes aceleradas están disponibles en todas las regiones globales de Azure y la nube de Azure Government.

Sistemas operativos admitidos

Las siguientes versiones de Windows admiten redes aceleradas:

  • Windows Server 2022
  • Windows Server 2019 Standard/Datacenter
  • Windows Server 2016 Standard/Datacenter
  • Windows Server 2012 R2 Standard/Datacenter
  • Windows 10, versión 21H2 o posterior, incluido Windows 10 Enterprise multisesión
  • Windows 11 (incluye Windows 11 Enterprise multisesión)

Las siguientes distribuciones de Linux y FreeBSD de Azure Marketplace admiten redes aceleradas de forma predeterminada:

  • Ubuntu 14.04 con el kernel linux-azure
  • Ubuntu 16.04 o posterior
  • SLES12 SP3 o posterior
  • RHEL 7.4 o posterior
  • CentOS 7.4 o posterior
  • CoreOS Linux
  • Debian "Stretch" con kernel backports
  • Debian "Buster" o posterior
  • Oracle Linux 7.4 y posterior con Red Hat Compatible Kernel (RHCK)
  • Oracle Linux 7.5 y posterior con UEK, versión 5
  • FreeBSD 10.4, 11.1, 12.0 o posterior

Instancias de máquina virtual admitidas

La mayoría de los tamaños de instancia de máquina virtual de uso general y optimizados para procesos de dos o más vCPU admiten redes aceleradas. En las instancias que admiten hyperthreading, las instancias de máquina virtual con cuatro o más vCPU admiten redes aceleradas.

Para comprobar si un tamaño de máquina virtual admite redes aceleradas, consulte Tamaños de máquinas virtuales en Azure.

Puede consultar directamente la lista de SKU de máquina virtual que admiten redes aceleradas mediante el comando az vm list-skus de la CLI de 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

Nota:

Aunque los tamaños NC y NV aparecen en la salida del comando, esos tamaños no admiten redes aceleradas. La habilitación de redes aceleradas en máquinas virtuales NC o NV no tiene ningún efecto.

Imágenes de máquina virtual personalizadas

Si usa una imagen personalizada compatible con redes aceleradas, asegúrese de que dispone de los controladores necesarios para trabajar con las NIC ConnectX-3, ConnectX-4 Lx y ConnectX-5 de Mellanox en Azure. Además, las redes aceleradas requieren configuraciones de red que excluyen la configuración de las funciones virtuales en los controladores mlx4_en y mlx5_core.

Las imágenes con la versión 19.4 o posterior de cloud-init tienen la red correctamente configurada para admitir redes aceleradas durante el aprovisionamiento.

En el ejemplo siguiente se muestra un ejemplo de lista desplegable de configuración para NetworkManager en RHEL o 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

Pasos siguientes