Wie verbessert Hyper-V VMQ die Netzwerkleistung?

Erfahren Sie, wie Hyper-V VMQ den Netzwerkdatenverkehr optimiert, die Latenz verringert und die CPU-Effizienz in virtualisierten Umgebungen verbessert.

download-icon
Kostenloser Download
für VM, Betriebssystem, DB, Datei, NAS usw.
maximilian

Updated by Maximilian on 2025/11/21

Inhaltsverzeichnis
  • Traditionelle RSS-Technologie für physische Server-NICs

  • So funktioniert Hyper-V VMQ

  • Welche Funktionen hat VMQ?

  • Dynamisches VMQ vs. Statisches VMQ

  • Wie verwaltet man virtuelle Maschinenwarteschlangen?

  • Hyper-V-VM mit Vinchin-Lösung sichern

  • Hyper-v Virtual Machine Queue FAQs

  • Fazit

In der modernen Netzwerkarchitektur von Rechenzentren waren die effiziente Nutzung von Mehrkern-CPU-Systemen und die Optimierung der Netzwerkleistung in virtualisierten Umgebungen stets zentrale technologische Herausforderungen. Traditionelle physische Server nutzen RSS-Technologie auf Netzwerkkarten, um den Netzwerkdatenverkehr intelligent auf mehrere CPU-Kerne zu verteilen, wodurch die Netzwerkdurchsatzleistung und die CPU-Auslastung deutlich verbessert werden. Doch durch die Einführung der Virtualisierung wurden die Datenverkehrswege komplexer – physische Netzwerkkarten müssen gleichzeitig den Host und mehrere virtuelle Maschinen bedienen, was es für die herkömmliche RSS-Technologie erschwert, sich direkt an die hierarchische Struktur virtueller Switches anzupassen. Um dieses Problem zu lösen, führte die Hyper-V-Virtualisierungsplattform die Virtual Machine Queue (VMQ)-Technologie ein, die das Konzept des Mehrkern-Lastausgleichs von RSS übernimmt und gleichzeitig für Szenarien der Virtualisierung optimiert.

Traditionelle RSS-Technologie für physische Server-NICs  

Bevor wir auf VMQ eingehen, betrachten wir zunächst, wie eine NIC Netzwerkdaten auf einem herkömmlichen physischen Server empfängt. Als Mehrkern-CPU eingeführt wurden, unterstützten NICs anfangs nicht die Verteilung von Netzwerkunterbrechungen auf mehrere logische Kerne, sondern verarbeiteten diese stattdessen auf einem einzigen logischen Kern. Dies führte zu einer unausgeglichenen CPU-Auslastung und verringerte Effizienz bei der Verarbeitung des Netzwerkverkehrs. Heutzutage unterstützen die meisten NICs RSS, wodurch NICs mit mehreren Hardware-Empfangswarteschlangen empfangene Daten auf mehrere Warteschlangen verteilen können. Auf Mehrkern-Physischen Servern leitet die RSS-Technologie Unterbrechungen dieser Warteschlangen an verschiedene logische CPU-Kerne weiter, wodurch die Effizienz beim Datenerhalt verbessert wird. Ziel von RSS ist es, Warteschlangen dem optimalen logischen CPU-Kern zuzuweisen, um die CPU-Belastung durch den Netzwerkverkehr auszugleichen.  

So funktioniert Hyper-V VMQ 

Die Situation in einer virtualisierten Umgebung ist komplexer als in einer physischen Umgebung. Erstens verliert eine physische Netzwerkkarte (NIC), wenn sie in einen virtuellen Switch umgewandelt wird, ihre RSS-Funktionalität. Zweitens laufen auf dem physischen Host mehrere virtuelle Maschinen (VMs), die sich die gleiche NIC teilen, um Pakete zu empfangen. Daher wird eine ebenso effektive Methode benötigt, um die netzwerkbedingten CPU-Kosten auszugleichen und gleichzeitig die Netzwerkleistung der VMs sicherzustellen. Hier kommt VMQ ins Spiel. VMQ ist eine spezielle Warteschlange, die ähnlich wie Hardware-Warteschlangen auf Netzwerkkarten funktioniert und einen ähnlichen Mechanismus wie RSS verwendet, um Warteschlangen-Interrupts auf verschiedene logische CPU-Kerne zu verteilen. Die Logik für die Paketfilterung und -zuweisung in VMQ unterscheidet sich jedoch von der bei Hardware-Warteschlangen. In einer rein physischen Umgebung berücksichtigt die physische Netzwerkkarte nur ihre eigene Datenwarteschlange, während im virtualisierten Szenario der virtuelle Switch die Warteschlangen sowohl für den physischen Host als auch für die virtuellen Maschinen ausbalancieren muss. 

Bevor wir das Funktionsprinzip von VMQ erklären, sollten wir zunächst den Routing-Pfad von Paketen innerhalb eines virtuellen Switches verstehen. Der Hyper-V-Virtual-Switch verfügt über zwei Arten von Warteschlangen – VMQ und die Standardwarteschlange. Daten in der Standardwarteschlange durchlaufen mehrere Stufen, einschließlich Routing im virtuellen Switch, Filterung, Erweiterungen, Zugriffssteuerungslisten und Weiterleitungswege, bevor sie schließlich über den virtuellen Maschinenbus verteilt werden.

VMQ erfasst zunächst die MAC-Adressen virtueller Netzwerkkarten (vNICs) in virtuellen Maschinen, bevor diese mithilfe eines VMQ-MAC-Filters für VMs mit aktiviertem VMQ auf Warteschlangen verteilt werden. VMs ohne aktiviertes VMQ oder deren Datenverkehr nicht dem VMQ-MAC-Filter entspricht, verbleiben in der Standardwarteschlange. Im Gegensatz zur Standardwarteschlange, die den vollständigen Pfad von Routing, Filterung, Erweiterung, Zugriffskontrolle und Weiterleitung durchläuft, umgeht VMQ einige dieser Schritte und überträgt Daten mit minimalem Routingaufwand an den VM-Bus. Sobald die Daten den VM-Bus erreichen, verwendet die vNIC in der VM die Technologie des virtuellen RSS (vRSS), um Warteschlangeninterrupts auf virtuelle CPUs zu verteilen.

Welche Funktionen hat VMQ?

Wenn VMQ auf der vNIC aktiviert ist, umgeht der virtuelle Switch mehrere Ebenen von Routing-Code, wodurch sichergestellt wird, dass Daten schnell und genau an die VM weitergeleitet werden. Im Vergleich zu einem Szenario ohne VMQ reduziert dies nicht nur den CPU-Ressourcenverbrauch für das Routing, sondern verringert auch die Latenz bei der Datenübertragung. 

VMQ bietet folgende Funktionen:  

  • Verbessert den Netzwerkdurchsatz, indem der Netzwerkverkehr mehrerer VMs auf mehrere Prozessoren verteilt wird.

Hinweis: In Hyper-V werden Subpartitionen auch als VMs bezeichnet.  

  • Senkt die CPU-Auslastung, indem Paketfilteraufgaben auf die NIC-Hardware ausgelagert werden.  

  • Verhindert die Verdopplung von Netzwerkdaten, indem DMA verwendet wird, um Daten direkt in den VM-Speicher zu übertragen. 

  • Segmentiert Netzwerkdaten, um eine sichere Umgebung bereitzustellen.  

  • Unterstützt Live-Migration.

Dynamisches VMQ vs. Statisches VMQ  

VMQ kann entweder als dynamisch oder statisch klassifiziert werden. Statisches VMQ bedeutet, dass die Zuordnung zwischen VMQ und CPU-Logikkernen festgelegt ist. Zum Beispiel wird das VMQ, das VM1 zugewiesen ist, auf den logischen CPU-Kern 1 abgebildet, während das VMQ, das VM2 zugewiesen ist, auf den logischen CPU-Kern 2 abgebildet wird. Diese Zuordnung bleibt während des gesamten Lebenszyklus von VM1 und VM2 unverändert, was bedeutet, dass die Daten von VM1 immer vom logischen CPU-Kern 1 verarbeitet werden und die Daten von VM2 vom logischen CPU-Kern 2. Allerdings kann im Fall einer hohen Auslastung der CPU, die den Netzwerkverkehr einer VM bearbeitet, die statische VMQ-Verarbeitung die Netzwerkleistung dieser VM verlangsamen.  

Um dieses Problem zu beheben, wurde ab Windows Server 2012 R2 die dynamische VMQ eingeführt. Die dynamische VMQ ist intelligenter – im Gegensatz zur statischen VMQ ermöglicht sie eine dynamische Anpassung der VM-Netzwerkverarbeitung basierend auf der Auslastung und der zugehörigen logischen CPU. Wenn die logische CPU2 relativ wenig ausgelastet ist, können sowohl die Warteschlangen von VM1 als auch von VM2 mit der logischen CPU2 verknüpft werden.

Wie verwaltet man virtuelle Maschinenwarteschlangen?

Das Aktivieren oder Deaktivieren von VMQ für eine VM ist einfach. Standardmäßig aktiviert Hyper-V VMQ. Es kann jedoch je nach Anforderungen der VM und der tatsächlichen Leistung der Netzwerkkarte aktiviert oder deaktiviert werden. In einigen Fällen kann VMQ zu einer erheblichen Beeinträchtigung der Netzwerkleistung der VM führen. Wenn solche Probleme auftreten, kann VMQ auf der Host-NIC anhand der folgenden Schritte deaktiviert werden: 

1. Öffnen Sie das Verwaltungstool des Hosts – Computer Management, navigieren Sie zu Device Manager und erweitern Sie die Liste der Network Adapters.  

2. Klicken Sie mit der rechten Maustaste auf die physische NIC, die mit Hyper-V verknüpft ist, und wählen Sie anschließend Properties.  

3. Wechseln Sie im Dialogfeld „Eigenschaften der Netzwerkkarte“ zur Registerkarte Advanced, suchen Sie in der Eigenschaftsliste nach der Option Virtual Machine Queue, ändern Sie deren Wert auf Disabled und klicken Sie auf OK.

Wenn zu viele VMs vorhanden sind und nicht genügend VMQ-Warteschlangen auf der NIC zur Verfügung stehen, können VMQ-Gewichtungen zugewiesen werden, um die Netzwerkdatenverarbeitung zu priorisieren. VMs mit höheren Gewichtungen erhalten Vorrang im VMQ, andernfalls umgekehrt. Standardmäßig ist die VMQ-Gewichtung auf 100 festgelegt, wie im folgenden Beispiel gezeigt:  

PS C:\> Get-VMNetworkAdapter -VMName VM01 | fl VMQweight  VMQWeight  : 100

Um das VMQ-Gewicht für eine VM zu ändern, verwenden Sie den folgenden PowerShell-Befehl:  

PS C:\> Get-VMNetworkAdapter -VMName vmname -VMQweight 50

Hyper-V-VM mit Vinchin-Lösung sichern

In bestimmten Szenarien kann professionelle Backup-Software wie Vinchin Backup & Recovery eine optimiertere Leistung und fortschrittlichere Funktionen bieten.

Vinchin Backup & Recovery ist eine fortschrittliche Datensicherungslösung, die eine breite Palette an gängigen Virtualisierungsplattformen unterstützt, darunter VMware, Hyper-V, XenServer, Red Hat Virtualization, Oracle, Proxmox, etc., sowie Datenbanken, NAS, Dateiserver, Linux- und Windows-Server. Sie bietet erweiterte Funktionen wie agentenlose Sicherung, forever-incrementelle Sicherung, V2V-Migration, sofortige Wiederherstellung, granulare Wiederherstellung, Sicherungsverschlüsselung, Komprimierung, Deduplizierung und Ransomware-Schutz. Dies sind entscheidende Faktoren, um die Datensicherheit zu gewährleisten und die Nutzung von Speicherressourcen zu optimieren.

Es dauert nur 4 Schritte, um Ihre Hyper-V-VMs mit Vinchin Backup & Recovery zu sichern:

1. Wählen Sie das Sicherungsobjekt aus.

Sichern von Hyper-V-VMs

2. Sichern Sie das Sicherungsziel aus.

Sichern von Hyper-V-VMs

3. Sichern Sie die Sicherungsstrategien.

Sichern von Hyper-V-VMs

4. Überprüfen und Einreichen des Auftrags.

Sichern von Hyper-V-VMs

Entdecken Sie die Leistungsfähigkeit dieses umfassenden Systems kostenlos 60 Tage lang! Hinterlassen Sie Ihre spezifischen Anforderungen, und Sie erhalten eine maßgeschneiderte Lösung, die perfekt zu Ihrer IT-Umgebung passt.

Hyper-v Virtual Machine Queue FAQs

1. Was ist VMMQ?

Durch die virtuelle Maschinen-Mehrfachwarteschlange (VMMQ) wird VMQ verbessert, indem der Netzwerkverkehr auf mehrere CPU-Kerne verteilt wird, wodurch die Leistung bei Bandbreitenintensiven Workloads auf 10-GbE+-Netzwerkkarten gesteigert wird.

2. Wie viele RSS-Warteschlangen sollte ich verwenden?

Die Anzahl der verwendeten Receive Side Scaling (RSS)-Warteschlangen hängt von Ihrem Netzwerkadapter, den CPU-Kernen und der Arbeitslast ab. Verwenden Sie gleich viele oder weniger RSS-Warteschlangen als verfügbare CPU-Kerne, um übermäßigen Kontextwechsel zu vermeiden.

Fazit  

Die VMQ-Technologie erweitert die Hardware-Warteschlangelogik physischer Netzwerkkarten in die Virtualisierungsebene und ermöglicht eine effiziente Verteilung des Netzwerkverkehrs von virtuellen Maschinen sowie eine Auslastung des CPU-Aufkommens. Ihr Kernnutzen besteht darin, den komplexen Weiterleitungsprozess virtueller Switches zu umgehen und gleichzeitig dynamische Warteschlangenzuweisungsmechanismen zu nutzen, um die Netzwerklatenz zu verringern und den Durchsatz in Umgebungen mit mehreren gleichzeitig aktiven virtuellen Maschinen zu verbessern. Obwohl eine fehlerhafte Konfiguration von VMQ in bestimmten Szenarien zu Leistungsproblemen führen kann, machen ihre Eigenschaften sie zu einer Schlüsseltechnologie für den Aufbau leistungsfähiger virtualisierter Netzwerke.

Teilen auf:

Categories: VM Tips