Omówienie przyspieszonej sieci

Uwaga

W tym artykule odwołuje się do systemu CentOS — dystrybucji systemu Linux, która zbliża się do stanu zakończenia życia (EOL). Rozważ odpowiednie użycie i zaplanuj. Aby uzyskać więcej informacji, zobacz wskazówki dotyczące zakończenia życia systemu CentOS.

W tym artykule opisano zalety, ograniczenia i obsługiwane konfiguracje przyspieszonej sieci. Przyspieszona sieć umożliwia wirtualizację we/wy pojedynczego katalogu głównego (SR-IOV) w obsługiwanych typach maszyn wirtualnych, co znacznie poprawia wydajność sieci. Ta ścieżka danych o wysokiej wydajności pomija hosta, co zmniejsza opóźnienia, zakłócenia i wykorzystanie procesora CPU dla najbardziej wymagających obciążeń sieciowych.

Uwaga

Aby uzyskać więcej informacji na temat wersji zapoznawczej karty sieciowej platformy Microsoft Azure (MANA), zapoznaj się z dokumentacją usługi Azure MANA

Na poniższym diagramie pokazano, jak dwie maszyny wirtualne komunikują się z przyspieszoną siecią i bez tej funkcji.

Zrzut ekranu przedstawiający komunikację między maszynami wirtualnymi platformy Azure i bez przyspieszonej sieci.

Bez przyspieszonej sieci cały ruch sieciowy w i poza maszyną wirtualną przechodzi przez hosta i przełącznik wirtualny. Przełącznik wirtualny zapewnia wszystkie wymuszanie zasad do ruchu sieciowego. Zasady obejmują sieciowe grupy zabezpieczeń, listy kontroli dostępu, izolację i inne usługi zwirtualizowane sieci.

W przypadku przyspieszonej sieci ruch sieciowy docierający do interfejsu sieciowego maszyny wirtualnej jest przekazywany bezpośrednio do maszyny wirtualnej. Przyspieszona sieć odciąża wszystkie zasady sieciowe zastosowane przez przełącznik wirtualny i stosuje je na sprzęcie. Ponieważ sprzęt stosuje zasady, karta sieciowa NIC może przekazywać ruch sieciowy bezpośrednio do maszyny wirtualnej. Karta sieciowa NIC pomija hosta i przełącznik wirtualny, zachowując wszystkie zasady, które zostały zastosowane na hoście.

Świadczenia

Przyspieszona sieć zapewnia następujące korzyści:

  • Mniejsze opóźnienia i większe pakietów na sekundę (pps). Usunięcie przełącznika wirtualnego ze ścieżki danych eliminuje czas, który pakiety spędzają na hoście na potrzeby przetwarzania zasad. Zwiększa również liczbę pakietów, które może przetworzyć maszyna wirtualna.

  • Zmniejszona liczba wstrząsów. Czas przetwarzania przełączników wirtualnych zależy od liczby zasad do zastosowania i obciążenia procesora CPU, który przetwarza. Odciążanie wymuszania zasad w sprzęcie usuwa tę zmienność, dostarczając pakiety bezpośrednio do maszyny wirtualnej. Odciążanie powoduje również usunięcie komunikacji typu host-maszyna wirtualna, wszystkich przerw oprogramowania i wszystkich przełączników kontekstowych.

  • Zmniejszone wykorzystanie procesora CPU. Pominięcie przełącznika wirtualnego na hoście prowadzi do mniejszego wykorzystania procesora CPU na potrzeby przetwarzania ruchu sieciowego.

Limity i ograniczenia

  • Zalety przyspieszonej sieci mają zastosowanie tylko do maszyny wirtualnej, która ją włącza.

  • Aby uzyskać najlepsze wyniki, włącz przyspieszoną sieć na co najmniej dwóch maszynach wirtualnych w tej samej sieci wirtualnej platformy Azure. Ta funkcja ma minimalny wpływ na opóźnienie podczas komunikacji między sieciami wirtualnymi lub nawiązywania połączenia lokalnego.

  • Nie można włączyć przyspieszonej sieci na uruchomionej maszynie wirtualnej. Przyspieszona sieć można włączyć na obsługiwanej maszynie wirtualnej tylko wtedy, gdy maszyna wirtualna zostanie zatrzymana i cofnięto przydział.

  • Nie można wdrażać maszyn wirtualnych (klasycznych) z przyspieszoną siecią za pośrednictwem usługi Azure Resource Manager.

  • Platforma Azure nie aktualizuje sterowników karty sieciowej Mellanox na maszynie wirtualnej. W przypadku maszyn wirtualnych z systemami Linux i FreeBSD klienci są zachęcani do pozostania na bieżąco z najnowszymi aktualizacjami jądra oferowanymi przez dystrybucję. W przypadku maszyn wirtualnych z systemem Windows klienci powinni zastosować zaktualizowane sterowniki ze strony pomocy technicznej firmy Nvidia, jeśli jakiekolwiek problemy zostaną później napotkane z sterownikiem dostarczonym z obrazem witryny Marketplace lub zastosowanymi do obrazu niestandardowego.

Obsługiwane regiony

Przyspieszona sieć jest dostępna we wszystkich regionach globalnych platformy Azure i w chmurze Azure Government.

Obsługiwane systemy operacyjne

Następujące wersje systemu Windows obsługują przyspieszoną sieć:

  • Windows Server 2022
  • Windows Server 2019 Standard/Datacenter
  • Windows Server 2016 Standard/Datacenter
  • Windows Server 2012 R2 Standard/Datacenter
  • System Windows 10 w wersji 21H2 lub nowszej, w tym wielosesja systemu Windows 10 Enterprise
  • Windows 11, w tym wieloseksja systemu Windows 11 Enterprise

Następujące dystrybucje systemów Linux i FreeBSD z witryny Azure Marketplace obsługują gotowe przyspieszone sieci:

  • Ubuntu 14.04 z jądrem linux-azure
  • Ubuntu 16.04 lub nowszy
  • SLES12 SP3 lub nowszy
  • RHEL 7.4 lub nowszy
  • CentOS 7.4 lub nowszy
  • CoreOS Linux
  • Debian "Stretch" z jądrem backports
  • Debian "Buster" lub nowszy
  • Oracle Linux 7.4 lub nowszy z jądrem zgodnym z systemem Red Hat (RHCK)
  • Oracle Linux 7.5 lub nowszy z UEK w wersji 5
  • FreeBSD 10.4, 11.1, 12.0 lub nowszy

Obsługiwane wystąpienia maszyn wirtualnych

Większość rozmiarów wystąpień maszyn wirtualnych ogólnego przeznaczenia i zoptymalizowanych pod kątem obliczeń z co najmniej dwoma procesorami wirtualnymi obsługuje przyspieszoną sieć. W wystąpieniach obsługujących funkcję hyperthreading wystąpienia maszyn wirtualnych z co najmniej czterema procesorami wirtualnymi obsługują przyspieszoną sieć.

Aby sprawdzić, czy rozmiar maszyny wirtualnej obsługuje przyspieszoną sieć, zobacz Rozmiary maszyn wirtualnych na platformie Azure.

Listę jednostek SKU maszyn wirtualnych obsługujących przyspieszoną sieć można wykonać bezpośrednio za pomocą polecenia az vm list-skus interfejsu wiersza polecenia platformy 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

Uwaga

Mimo że rozmiary NC i NV są wyświetlane w danych wyjściowych polecenia, te rozmiary nie obsługują przyspieszonej sieci. Włączenie przyspieszonej sieci na maszynach wirtualnych NC lub NV nie ma wpływu.

Niestandardowe obrazy maszyn wirtualnych

Jeśli używasz obrazu niestandardowego obsługującego przyspieszoną sieć, upewnij się, że masz wymagane sterowniki do pracy z platformą Mellanox Połączenie X-3, Połączenie X-4 Lx i Połączenie X-5 kart sieciowych na platformie Azure. Przyspieszona sieć wymaga również konfiguracji sieci, które wykluczają konfigurację funkcji wirtualnych w sterownikach mlx4_en i mlx5_core.

Obrazy z wersją cloud-init w wersji 19.4 lub nowszej mają poprawnie skonfigurowaną sieć do obsługi przyspieszonej sieci podczas aprowizacji.

W poniższym przykładzie przedstawiono przykładowy spadek konfiguracji dla NetworkManager systemu RHEL lub 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

Następne kroki