VMQ-Empfangswarteschlangen
Ein VMQ-Dienstanbieter (VMQ) weist VMQ-Empfangswarteschlangen zu. Die Netzwerkadapterhardware weist einer Warteschlange ein eingehendes Netzwerkdatenpaket zu, wenn das Paket die Filtertests besteht, die für die Warteschlange festgelegt sind.
Eine VMQ-Empfangswarteschlange verfügt über die folgenden Eigenschaften:
Ein Warteschlangenbezeichner, der für den zugeordneten Netzwerkadapter eindeutig ist.
Prozessoraffinität für Interrupts.
Filter, die für die Warteschlange festgelegt sind.
Empfangen von Puffern, die der Warteschlange zugewiesen sind.
Es gibt auch eine Standardwarteschlange mit den folgenden Eigenschaften:
Die Standardwarteschlange ist immer vorhanden. Andere Warteschlangen müssen zugeordnet werden.
Die Standardwarteschlange empfängt Pakete, die die Filtertests für die anderen Warteschlangen nicht bestehen.
Miniporttreiber weisen freigegebenen Arbeitsspeicher für die Empfangspuffer zu, die einem VMQ zugeordnet sind. Abhängig von der Windows Server-Version müssen Miniporttreiber richtlinien für die Pufferzuordnung befolgen, die in den folgenden Abschnitten beschrieben werden:
Zuweisen von shared memory for VMQ Receive Buffers (Windows Server 2008 R2)
Zuweisung von Shared Memory für VMQ-Empfangspuffer (Windows Server 2012 und höhere Versionen)
VmQ-Shared Memory-Anforderungen sind so konzipiert, dass potenzielle Sicherheitsprobleme für virtuelle Computer (VMs) behoben werden. Weitere Informationen zu VMQ-Sicherheitsproblemen finden Sie unter Sicherheitsprobleme mit NDIS Virtual Machine (VM) Shared Memory.
Zuweisen von shared memory for VMQ Receive Buffers (Windows Server 2008 R2)
Wenn der Miniporttreiber für NDIS 6.20 in Windows Server 2008 R2 das Aufteilen von Paketdaten in separate Lookaheadpuffer unterstützt, kann er freigegebenen Arbeitsspeicher wie folgt zuordnen:
Der Miniporttreiber weist den freigegebenen Arbeitsspeicher für den Vorab-Lookahead-Puffer aus dem Adressraum des Verwaltungsbetriebssystems zu, das in einer übergeordneten Hyper-V-Partition ausgeführt wird. Der Pre-Lookahead-Puffer ist der Teil des Pakets, der vom Verwaltungsbetriebssystem überprüft wird.
Der Miniporttreiber weist den freigegebenen Arbeitsspeicher für den Post-Lookahead-Puffer aus dem Adressraum des Gastbetriebssystems zu, der in einer untergeordneten Hyper-V-Partition ausgeführt wird. Der Puffer nach dem Lookahead ist der Teil des Pakets, der vom Gastbetriebssystem überprüft wird.
Hinweis Die untergeordnete Hyper-V-Partition wird auch als VM bezeichnet.
Die folgende Abbildung zeigt den freigegebenen Arbeitsspeicher in den Warteschlangen, das Verwaltungsbetriebssystem und die Gastbetriebssysteme.
In der Abbildung wird jedes Paket in einer Warteschlange mit Kopfzeileninformationen angezeigt, die aus dem Adressraum des Verwaltungsbetriebssystems zugeordnet wurden, und Daten, die aus dem Adressraum des Gastbetriebssystems zugewiesen wurden.
Zuweisung von Shared Memory für VMQ-Empfangspuffer (Windows Server 2012 und höhere Versionen)
Ab NDIS 6.30 wird das Aufteilen von VMQ-Empfangspuffern in separate Lookaheadpuffer nicht mehr unterstützt. Der Miniporttreiber muss arbeitsspeicher für jeden Empfangspuffer aus dem Adressraum des Verwaltungsbetriebssystems zuordnen.