Partager via


Présentation de la mise en réseau accélérée

Attention

Cet article fait référence à CentOS, une distribution Linux ayant atteint l’état EOL (fin du service). Faites le point sur votre utilisation et organisez-vous en conséquence. Pour plus d’informations, consultez les conseils d’aide relatifs à la fin de vie de CentOS.

Cet article décrit les avantages, les contraintes et les configurations prises en charge par la mise en réseau accélérée. Performances réseau accélérées active la virtualisation SR-IOV (Single Root I/O Virtualization) sur des types de machines virtuelles pris en charge, ce qui améliore considérablement les performances réseau. Ce chemin d’accès aux données hautement performant contourne l’hôte, ce qui réduit la latence, l’instabilité et l’utilisation du processeur pour les charges de travail réseau les plus exigeantes.

Notes

Pour plus d’informations sur la préversion de la carte réseau Microsoft Azure (MANA), consultez la documentation sur Azure MANA

Le diagramme suivant illustre la façon dont deux machines virtuelles communiquent avec et sans mise en réseau accélérée :

Capture d’écran qui montre la communication entre des machines virtuelles Azure avec ou sans Performances réseau accélérées.

Sans Performances réseau accélérées, tout le trafic réseau en direction et en provenance de la machine virtuelle doit transiter par l’hôte et le réseau virtuel. Le réseau virtuel assure l'application de toutes les politiques au trafic réseau. Les stratégies incluent les groupes de sécurité réseau, les listes de contrôle d’accès, l’isolation et d’autres services virtualisés réseau.

Avec la mise en réseau accélérée, le trafic qui parvient à l’interface réseau (NIC) de la machine virtuelle est directement transféré à celle-ci. La mise en réseau accélérée décharge toutes les stratégies réseau que le réseau virtuel applique, et les applique dans le matériel. Étant donné que le matériel applique les stratégies, la NIC peut transférer le trafic réseau directement à la machine virtuelle. La carte d’interface réseau ignore l’hôte et le commutateur virtuel, alors qu’elle gère l’ensemble de la stratégie appliquée à l’hôte.

Avantages

Performances réseau accélérées présente les avantages suivants :

  • Une latence plus faible et un plus grand nombre de paquets par seconde. En supprimant le commutateur virtuel du chemin de données, on élimine le temps que les paquets passent dans l'hôte pour le traitement des règles. Cela augmente également le nombre de paquets qui peuvent être traités à l’intérieur de la machine virtuelle.

  • Instabilité réduite : Le temps de traitement des commutateurs virtuels dépend de la quantité de règles à appliquer et de la charge de travail de l'unité centrale qui effectue le traitement. L’application de la stratégie de déchargement sur le matériel supprime cette variabilité en livrant des paquets directement à la machine virtuelle. Le déchargement supprime également la communication entre l’hôte et la machine virtuelle, toutes les interruptions logicielles et tous les changements de contexte.

  • Utilisation réduite du processeur : en contournant le commutateur virtuel de l'hôte, le processeur utilise moins de ressources pour traiter le trafic réseau.

Limitations et contraintes

  • Les avantages de Performances réseau accélérées s’appliquent uniquement à la machine virtuelle qui l’active.

  • Pour obtenir de meilleurs résultats, vous devez activer Performances réseau accélérées sur au moins deux machines virtuelles du même réseau virtuel Azure. Cette fonctionnalité a un effet minimal sur la latence lorsque vous communiquez sur plusieurs réseaux virtuels ou que vous vous connectez localement.

  • Vous ne pouvez pas activer Performances réseau accélérées dans une machine virtuelle en cours d’exécution. Vous pouvez activer Performances réseau accélérées sur une machine virtuelle prise en charge uniquement lorsque la machine virtuelle est arrêtée et libérée.

  • Vous ne pouvez pas déployer de machines virtuelles (classiques) avec Performances réseau accélérées via Azure Resource Manager.

  • La plateforme Azure ne met pas à jour les pilotes de carte réseau Mellanox dans la machine virtuelle. Pour les machines virtuelles exécutant Linux et FreeBSD, nous recommandons aux clients de rester à jour avec les dernières mises à jour du noyau proposées par la distribution. Pour les machines virtuelles exécutant Windows, les clients doivent appliquer des pilotes mis à jour à partir de la page de support Nvidia s’ils rencontrent ultérieurement des problèmes avec le pilote fourni avec l’image de la Place de marché ou appliqué à une image personnalisée.

Régions prises en charge

Performances réseau accélérées est disponible dans toutes les régions Azure globales et Azure Government Cloud.

Systèmes d’exploitation pris en charge

Les versions suivantes de Windows prennent en charge Performances réseau accélérées :

  • Windows Server 2022
  • Windows Server 2019 Standard ou Datacenter
  • Windows Server 2016 Standard ou Datacenter
  • Windows Server 2012 R2 Standard/Datacenter
  • Windows 10, version 21H2 ou ultérieure, y compris Windows 10 Entreprise multisession
  • Windows 11, y compris Windows 11 Entreprise multisession

Les distributions Linux et FreeBSD suivantes, disponibles sur Azure Marketplace, prennent en charge la mise en réseau accélérée dès le départ :

  • Ubuntu 14.04 avec le noyau linux-azure
  • Ubuntu 16.04 ou version ultérieure
  • SLES12 SP3 ou version ultérieure
  • RHEL 7.4 ou version ultérieure
  • CentOS 7.4 ou version ultérieure
  • CoreOS Linux
  • Debian « Stretch » with backports kernel
  • Debian « Buster » ou une version ultérieure
  • Oracle Linux 7.4 et versions ultérieures avec Red Hat Compatible Kernel (RHCK)
  • Oracle Linux 7.5 et versions ultérieures avec UEK version 5
  • FreeBSD 10.4, 11.1, 12.0 & 12.0 ou versions ultérieures

Instances de machines virtuelles prises en charge

La plupart des tailles d’instances de machines virtuelles d’usage général et optimisées pour le calcul (avec deux processeurs virtuels ou plus) prennent en charge Performances réseau accélérées. Dans des instances qui acceptent l’hyperthreading, les instances de machines virtuelles comptant au minimum quatre processeurs virtuels prennent en charge Performances réseau accélérées.

Pour vérifier si une taille de machine virtuelle prend en charge Performances réseau accélérées, consultez Tailles des machines virtuelles dans Azure.

Vous pouvez interroger directement la liste des références SKU de machine virtuelle qui prennent en charge Performances réseau accélérées à l’aide de la commande Azure CLI az vm list-skus.

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

Notes

Bien que les tailles NC et NV apparaissent dans la sortie de commande, ces tailles ne prennent pas en charge Performances réseau accélérées. L’activation de Performances réseau accélérées sur les machines virtuelles NC ou NV n’a aucun effet.

Images de machine virtuelle personnalisées

Si vous utilisez une image personnalisée qui prend en charge les performances réseau accélérées, veillez à respecter les exigences suivantes.

Prise en charge des appareils et des pilotes

Toute image personnalisée prenant en charge les performances réseau accélérées doit inclure des pilotes qui activent la virtualisation d’E/S d’une racine unique pour les cartes réseau utilisées sur des plateformes Azure. Cette liste de matériel comprend NVIDIA ConnectX-3, ConnectX-4 Lx, ConnectX-5 et la carte réseau MANA (Microsoft Azure Network Adapter).

Liaison dynamique et révocation de la fonction virtuelle

Les performances réseau accélérées nécessitent que les images du système d’exploitation invité gèrent correctement la fonction virtuelle supprimée ou ajoutée de manière dynamique. Les scénarios tels que la maintenance de l’hôte ou la migration dynamique entraînent la révocation dynamique de la fonction virtuelle et sa restauration après l’événement de maintenance. En outre, les applications doivent s’assurer qu’elles sont liées à l’appareil synthétique, et non à la fonction virtuelle, afin de maintenir la connectivité réseau pendant ces événements.

Pour plus d’informations sur les exigences de liaison d’application, consultez l’article Fonctionnement des performances réseau accélérées dans les machines virtuelles Linux et FreeBSD.

Configurer les pilotes en tant que pilotes non gérés

Les performances réseau accélérées nécessitent des configurations réseau qui marquent les pilotes NVIDIA comme appareils non gérés. Les images avec cloud-init version 19.4 ou ultérieure ont un réseau correctement configuré pour prendre en charge Performances réseau accélérées pendant l’approvisionnement. Nous vous conseillons vivement de ne pas utiliser de logiciels d'interface réseau concurrents (tels que ifupdown et networkd) sur des images personnalisées, et de ne pas exécuter dhcpclient directement sur des interfaces multiples.

L’exemple suivant montre un exemple de liste déroulante de configuration pour NetworkManager sur RHEL ou 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

Le trafic utilise le chemin d’accès aux données des performances réseau accélérées

Pour les pilotes NVIDIA : vérifier que les paquets transitent via l’interface VF

Pour le pilote MANA : vérifier que le trafic transite via MANA