Symmetrische und asymmetrische Zuweisung von Warteschlangenpaaren
Ein Warteschlangenpaar besteht aus einer separaten Sende- und Empfangswarteschlange auf dem Netzwerkadapter. Warteschlangenpaare werden auf einem virtuellen Port (VPort) konfiguriert, wenn der VPort erstellt wird. Warteschlangenpaare, die dem Standard-VPort zugeordnet sind, werden zum Zeitpunkt der Switcherstellung über eine OID-Methodenanforderung von OID_NIC_SWITCH_CREATE_SWITCH konfiguriert. Ein oder mehrere Warteschlangenpaare werden auf einem nicht standardmäßigen VPort über eine OID-Methodenanforderung von OID_NIC_SWITCH_CREATE_VPORT konfiguriert.
Jeder nicht standardmäßige VPort kann so konfiguriert werden, dass er eine andere Anzahl von Warteschlangenpaaren aufweist. Dies wird als asymmetrische Zuordnung von Warteschlangenpaaren bezeichnet. Wenn der Miniporttreiber keine asymmetrischen Zuordnungen unterstützt, wird jeder nicht standardmäßige VPort so konfiguriert, dass er eine gleiche Anzahl von Warteschlangenpaaren aufweist. Dies wird als symmetrische Zuordnung von Warteschlangenpaaren bezeichnet.
Der Miniporttreiber kündigt seine Funktionen für VPort- und Warteschlangenpaare während MiniportInitializeEx mithilfe einer NDIS_NIC_SWITCH_CAPABILITIES-Struktur an. Der Treiber kündigt seine Unterstützung für die asymmetrische Zuordnung von Warteschlangenpaaren an, indem er das flag NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED im NicSwitchCapabilities-Member dieser Struktur festlegt.
Wenn der Miniporttreiber die Zuordnung asymmetrischer Warteschlangenpaare unterstützt, konfiguriert der Virtualisierungsstapel jeden nicht standardmäßigen VPort mit einer unterschiedlichen Anzahl von Warteschlangenpaaren. Wenn der Miniporttreiber die Zuordnung symmetrischer Warteschlangenpaare unterstützt, konfiguriert der Virtualisierungsstapel jeden VPort mit der gleichen Anzahl von Warteschlangenpaaren.
Hinweis Ein Miniporttreiber, der die Zuordnung von symmetrischen oder asymmetrischen Warteschlangenpaaren auf nicht standardmäßigen VPorts unterstützt, muss eine andere Anzahl von Warteschlangenpaaren unterstützen, die auf dem Standard-VPort zugewiesen werden sollen. Der Standard-VPort ist immer an die PF des Netzwerkadapters angefügt.
Die Warteschlangenpaarkonfiguration wird angegeben, wenn der nicht standardmäßige VPort durch OID-Anforderungen von OID_NIC_SWITCH_CREATE_VPORT und OID_NIC_SWITCH_VPORT_PARAMETERS erstellt oder aktualisiert wird. Die Konfigurationsparameter werden in einer NDIS_NIC_SWITCH_VPORT_PARAMETERS-Struktur angegeben, die beiden OID-Anforderungen zugeordnet ist.
Angenommen, der Miniporttreiber kündigt die Konfiguration für VPorts- und Warteschlangenpaare auf dem NIC-Switch an, indem er die folgenden Elemente der NDIS_NIC_SWITCH_CAPABILITIES-Struktur festlegt:
MaxNumQueuePairs ist auf 128 festgelegt.
MaxNumVPorts ist auf 64 festgelegt.
MaxNumQueuePairsPerNonDefaultPort ist auf 4 festgelegt.
Wenn der Miniporttreiber keine asymmetrische Konfiguration von Warteschlangenpaaren auf nicht standardmäßigen VPorts unterstützt, kann der Virtualisierungsstapel beim Erstellen von VPorts die folgende Warteschlangenpaarkonfiguration angeben:
- 63 nicht standardmäßige VF-VPorts mit jeweils zwei Warteschlangenpaaren, zusammen mit dem Standard-PF-VPort mit einem Warteschlangenpaar.
- 31 nicht standardmäßige VF-VPorts mit jeweils vier Warteschlangenpaaren, zusammen mit dem Standard-PF-VPort mit einem Warteschlangenpaar.
Hinweis Ab Windows Server 2012 wird nur ein Standard-VPort unterstützt und immer an die PF des Netzwerkadapters angefügt.