NDIS_NIC_SWITCH_CAPABILITIES-Struktur (ntddndis.h)

Die NDIS_NIC_SWITCH_CAPABILITIES-Struktur gibt die Funktionen eines NIC-Switches auf dem Netzwerkadapter an.

Syntax

typedef struct _NDIS_NIC_SWITCH_CAPABILITIES {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              NdisReserved1;
  ULONG              NumTotalMacAddresses;
  ULONG              NumMacAddressesPerPort;
  ULONG              NumVlansPerPort;
  ULONG              NdisReserved2;
  ULONG              NdisReserved3;
  ULONG              NicSwitchCapabilities;
  ULONG              MaxNumSwitches;
  ULONG              MaxNumVPorts;
  ULONG              NdisReserved4;
  ULONG              MaxNumVFs;
  ULONG              MaxNumQueuePairs;
  ULONG              NdisReserved5;
  ULONG              NdisReserved6;
  ULONG              NdisReserved7;
  ULONG              MaxNumQueuePairsPerNonDefaultVPort;
  ULONG              NdisReserved8;
  ULONG              NdisReserved9;
  ULONG              NdisReserved10;
  ULONG              NdisReserved11;
  ULONG              NdisReserved12;
  ULONG              MaxNumMacAddresses;
  ULONG              NdisReserved13;
  ULONG              NdisReserved14;
  ULONG              NdisReserved15;
  ULONG              NdisReserved16;
  ULONG              NdisReserved17;
  ULONG              MaxNumRssCapableNonDefaultPFVPorts;
  ULONG              NumberOfIndirectionTableEntriesForDefaultVPort;
  ULONG              NumberOfIndirectionTableEntriesPerNonDefaultPFVPort;
  ULONG              MaxNumQueuePairsForDefaultVPort;
} NDIS_NIC_SWITCH_CAPABILITIES, *PNDIS_NIC_SWITCH_CAPABILITIES;

Member

Header

Der Typ, die Revision und die Größe der NDIS_NIC_SWITCH_CAPABILITIES Struktur. Dieses Element ist als NDIS_OBJECT_HEADER-Struktur formatiert.

Der Miniporttreiber muss das Type-Element von Header auf NDIS_OBJECT_TYPE_DEFAULT festlegen. Um die Version der NDIS_NIC_SWITCH_CAPABILITIES-Struktur anzugeben, muss der Treiber das Revisionselement des Headers auf einen der folgenden Werte festlegen:

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_3

Die MEMBER der RSS-Schnittstelle für NDIS 6.60 wurden hinzugefügt.

Hinweis Revision 3 dieser Struktur wird nur unter Windows Server 2016 und höheren Versionen von Windows Server unterstützt.

 

Legen Sie das Element Größe auf NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_3 fest.

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_2

Die Sr-IOV-Schnittstellenelemente (Single Root E/O Virtualization) für NDIS 6.30 wurden hinzugefügt.

Hinweis Revision 2 dieser Struktur wird nur unter Windows Server 2012 und höheren Versionen von Windows Server unterstützt.

 

Legen Sie das Element Größe auf NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_2 fest.

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_1

Ursprüngliche Version für NDIS 6.20.

Legen Sie das Element Größe auf NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_1 fest.

Flags

Ein ULONG-Wert, der ein bitweises OR von Flags enthält. Dieses Element ist für NDIS reserviert.

NdisReserved1

Reserviert für NDIS.

NumTotalMacAddresses

Ein ULONG-Wert, der die Gesamtanzahl von MAC-Adressen (Media Access Control) enthält, die der Netzwerkadapter unterstützt.

Hinweis Treiber müssen diesen Member für Revision 2 und höhere Überarbeitungen dieser Struktur auf Null festlegen.
 

NumMacAddressesPerPort

Ein ULONG-Wert, der die Anzahl der MAC-Adressen enthält, die für jeden Port unterstützt werden.

Hinweis Treiber müssen diesen Member für Revision 2 und höhere Überarbeitungen dieser Struktur auf Null festlegen.
 

NumVlansPerPort

Ein ULONG-Wert, der die Anzahl der VLANs enthält, die für jeden Port unterstützt werden.

Hinweis Treiber müssen diesen Member für Revision 2 und höhere Überarbeitungen dieser Struktur auf Null festlegen.
 

NdisReserved2

Reserviert für NDIS.

NdisReserved3

Reserviert für NDIS.

NicSwitchCapabilities

Ein ULONG-Wert, der ein bitweises OR der folgenden Flags enthält, die die Funktionen des NIC-Switches angeben:

NDIS_NIC_SWITCH_CAPS_RSS_ON_PF_VPORTS_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt an, dass die NIC VMMQ für PF-VPorts unterstützt.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt bei Festlegung auf 1 an, dass die NIC in der Lage ist, Pro-PF-VPort-Indirektionstabellen zu verwalten.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt bei Festlegung auf 1 an, dass die NIC das Festlegen einer anderen Hashfunktion pro PF-VPort unterstützt. Wenn dieses Flag festgelegt ist, muss auch NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED festgelegt werden.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_TYPE_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt bei Festlegung auf 1 an, dass die NIC das Festlegen verschiedener Hashtypen pro PF-VPort unterstützt.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt bei Festlegung auf 1 an, dass die NIC das Festlegen eines anderen Hashschlüssels pro PF-VPort unterstützt. Dieses Flag muss festgelegt werden, wenn NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED festgelegt ist.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SIZE_RESTRICTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt. Es wurde in NDIS 6.60 eingeführt.

Gibt bei Festlegung auf 1 an, dass die NIC eine Einschränkung für die Größe der Indirektionstabelle für PF-VPorts aufweist. Dieses Flag zwingt den Aussteller einer RSS-OID, eine Größe pro PF-VPort-Indirektionstabelle zu verwenden, die der Anzahl von VPort-Warteschlangen entspricht, die auf die nächste Leistung von zwei aufgerundet sind. Dies gilt nur für PF-VPorts und nicht für VF-VPorts. Dieses Flag kann mit dem NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED-Flag kombiniert werden (verschiedene PF-VPorts können eine unterschiedliche Anzahl von Warteschlangen aufweisen). Dieses Flag verhindert, dass VMMQ-Benutzer eine differenzierte Warteschlangensteuerung ausführen.

NDIS_NIC_SWITCH_CAPS_NIC_SWITCH_WITHOUT_IOV_SUPPORTED

Hinweis Dieses Flag wird in Windows Server 2016 und höher unterstützt.

Dieses Flag, das mit NDIS 6.60 eingeführt wurde, gibt an, dass ein NIC-Switch ohne die Verwendung von SR-IOV erstellt werden kann. Dieses Flag ermöglicht das Trennen eines NIC-Switches vom *SRIOV-Schlüsselwort (keyword), was bedeutet, dass ein NIC-Switch über OID_NIC_SWITCH_CREATE_SWITCH erstellt werden kann, auch wenn *SRIOV = 0.

Weitere Informationen zum Melden von NIC-Switch-Funktionen für NDIS 6.60- und höher-Miniporttreiber finden Sie unter Ermitteln der NIC Switch-Funktionen.

NDIS_NIC_SWITCH_CAPS_VLAN_SUPPORTED

Dieses Flag gibt an, dass der NIC-Switch die Hardwarepaketfilterung basierend auf dem VLAN-Bezeichner (Virtual Local Area Network) unterstützt.

Hinweis Dieses Flag sollte nur festgelegt werden, wenn der NIC-Switch die VLAN-ID-Filterung für einzelne virtuelle SR-IOV-Ports (VPorts) unterstützt.
 

NDIS_NIC_SWITCH_CAPS_PER_VPORT_INTERRUPT_MODERATION_SUPPORTED

Dieses Flag gibt an, dass der NIC-Switch die Konfiguration der Unterbrechungsmoderation für einzelne VPorts unterstützen kann.

NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED

Dieses Flag gibt an, dass der NIC-Switch eine andere Anzahl von Warteschlangenpaaren für jeden nicht standardmäßigen VPort konfigurieren kann. Dies bedeutet, dass jeder nicht standardmäßige VPort asymmetrisch so konfiguriert werden kann, dass er eine unterschiedliche Anzahl von Warteschlangenpaaren aufweist.

Wenn dieses Flag nicht festgelegt ist, müssen alle nicht standardmäßigen VPorts symmetrisch so konfiguriert werden, dass sie die gleiche Anzahl von Warteschlangenpaaren aufweisen.

Unabhängig davon, ob dieses Flag festgelegt ist, muss der NIC-Switch die Möglichkeit unterstützen, die Anzahl der Warteschlangenpaare auf dem Standard-VPort festzulegen. Diese können von der Anzahl der Warteschlangenpaare abweichen, die für die nicht standardmäßigen VPorts festgelegt sind.

Hinweis Ein Warteschlangenpaar besteht aus einer Sende- und Empfangswarteschlange. 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.
 
Weitere Informationen finden Sie unter Symmetrische und asymmetrische Zuweisung von Warteschlangenpaaren.

NDIS_NIC_SWITCH_CAPS_VF_RSS_SUPPORTED

Dieses Flag gibt an, dass Warteschlangenpaare von nicht standardmäßigen VPorts, die an eine PCI Express (PCIe) Virtual Function (VF) angefügt sind, für die empfangsseitige Skalierung (RSS) verwendet werden können. Der VF-Miniporttreiber wird im Gastbetriebssystem einer untergeordneten Hyper-V-Partition ausgeführt.

Wenn dieses Flag festgelegt ist, unterstützt der Miniporttreiber RSS für eine VF und kann eines oder mehrere der Warteschlangenpaare aus dem nicht standardmäßigen VPort für RSS verwenden.

Hinweis Ab Windows Server 2012 kann nur ein nicht standardmäßiger VPort an eine VF angefügt werden.
 

NDIS_NIC_SWITCH_CAPS_SINGLE_VPORT_POOL

Dieses Flag gibt an, dass die nicht standardmäßigen VPorts auf nicht reservierte Weise aus dem VPort-Pool auf dem Netzwerkadapter erstellt werden können. Dadurch können verfügbare nicht standardmäßige VPorts nach Bedarf erstellt und der PF und den zugeordneten VFs zugewiesen werden. Wenn der Netzwerkadapter die VMQ-Schnittstelle (VMQ) unterstützt, können nicht standardmäßige VPorts, die der PF zugewiesen sind, auch für VM-Empfangswarteschlangen verwendet werden.

Hinweis Der Standard-VPort ist immer für die Zuweisung an die PF reserviert.
 
Wenn dieses Flag festgelegt ist, werden verfügbare nicht standardmäßige VPorts erstellt und der PF und den zugeordneten VFs zugewiesen. Dieser Mechanismus reserviert jedoch keine nicht standardmäßigen VPorts für die Vf-Erstellung und -Zuweisung. Daher können Situationen auftreten, in denen einem VF möglicherweise kein VPort zugewiesen wird, wenn der Pool mit verfügbaren VPorts erschöpft wurde.
Hinweis Wenn einem VF kein VPort zugewiesen werden kann, erfolgt Paketdatenverkehr über den VF über den synthetischen SR-IOV-Datenpfad. Weitere Informationen zu diesem Datenpfad finden Sie unter SR-IOV-Datenpfade.
 
Wenn dieses Flag nicht festgelegt ist, ist die Erstellung und Zuweisung nicht standardmäßiger VPorts für die VF-Zuweisung reserviert. Zusätzliche nicht standardmäßige VPorts können erstellt und der PF zugewiesen werden.

Weitere Informationen zu VMQ finden Sie unter VmQ-Warteschlange (VMQ).

Weitere Informationen zu VPorts finden Sie unter Verwalten virtueller Ports.

MaxNumSwitches

Ein ULONG-Wert, der die maximale Anzahl von Switches angibt, die für die PCI Express (PCIe) Physical Function (PF) des Netzwerkadapters erstellt werden können.

Hinweis Ab Windows Server 2012 unterstützt Windows nur den Standard-NIC-Switch auf dem Netzwerkadapter. Daher muss dieses Element immer auf ein Element festgelegt werden.
 

MaxNumVPorts

Ein ULONG-Wert, der die maximale Anzahl von VPorts angibt, die auf einem Netzwerkadapter erstellt werden können. Dies schließt den Standard-VPort ein, der immer an die PF angefügt ist.

Hinweis Der NIC-Switch muss mindestens (MaxNumVFs + 1) VPorts unterstützen.
 

NdisReserved4

Reserviert für NDIS.

MaxNumVFs

Ein ULONG-Wert, der die maximale Anzahl von VFs angibt, die auf dem NIC-Switch erstellt werden können.

Hinweis Abhängig von den verfügbaren Hardwareressourcen auf dem Netzwerkadapter kann der Miniporttreiber den MaxNumVFs-Member auf einen Wert festlegen, der kleiner als sein *NumVFs-Schlüsselwort (keyword) ist. Weitere Informationen zu diesem Schlüsselwort (keyword) finden Sie unter Standardisierte INF-Schlüsselwörter für SR-IOV.
 

MaxNumQueuePairs

Ein ULONG-Wert, der die maximale Anzahl von Warteschlangenpaaren angibt, die allen VPorts zugewiesen werden können. Dies schließt den Standard-VPort ein, der an die PF angefügt ist.

Hinweis Dieser Wert muss größer oder gleich dem Wert von MaxNumVPorts sein.
 

NdisReserved5

Reserviert für NDIS.

NdisReserved6

Reserviert für NDIS.

NdisReserved7

Reserviert für NDIS.

MaxNumQueuePairsPerNonDefaultVPort

Ein ULONG-Wert, der die maximale Anzahl von Warteschlangenpaaren angibt, die einem nicht standardmäßigen VPort zugewiesen werden können.

Dieser Wert wird in der Potenz 2 angegeben und ermöglicht eine asymmetrische Konfiguration und Zuweisung von Warteschlangenpaaren zu VPorts. Weitere Informationen finden Sie unter Symmetrische und asymmetrische Zuweisung von Warteschlangenpaaren.

NdisReserved8

Reserviert für NDIS.

NdisReserved9

Reserviert für NDIS.

NdisReserved10

Reserviert für NDIS.

NdisReserved11

Reserviert für NDIS.

NdisReserved12

Reserviert für NDIS.

MaxNumMacAddresses

Ein ULONG-Wert, der die maximale Anzahl von Unicast-MAC-Adressfiltern angibt, die auf dem NIC-Switch verfügbar sind.

Hinweis Dieser Wert muss größer oder gleich dem Wert von MaxNumVPorts sein. Dadurch kann jeder VPort (einschließlich des Standard-VPorts) für mindestens einen Unicast-MAC-Adressfilter konfiguriert werden.
 

NdisReserved13

Reserviert für NDIS.

NdisReserved14

Reserviert für NDIS.

NdisReserved15

Reserviert für NDIS.

NdisReserved16

Reserviert für NDIS.

NdisReserved17

Reserviert für NDIS.

MaxNumRssCapableNonDefaultPFVPorts

Ein ULONG-Wert, der die maximale Anzahl von RSS-fähigen nicht standardmäßigen PFVPorts angibt.

NumberOfIndirectionTableEntriesForDefaultVPort

Ein ULONG-Wert, der die Anzahl der Indirektionstabelleneinträge für den Standard-VPort angibt.

NumberOfIndirectionTableEntriesPerNonDefaultPFVPort

Ein ULONG-Wert, der die Anzahl der Indirektionstabelleneinträge für jeden nicht standardmäßigen PFVPort angibt.

MaxNumQueuePairsForDefaultVPort

Ein ULONG-Wert, der die maximale Anzahl von Warteschlangenpaaren angibt, die dem Standard-VPort zugewiesen werden können.

Dieser Wert wird in der Potenz 2 angegeben und ermöglicht eine asymmetrische Konfiguration und Zuweisung von Warteschlangenpaaren zu VPorts. Weitere Informationen finden Sie unter Symmetrische und asymmetrische Zuweisung von Warteschlangenpaaren.

Hinweise

Die NDIS_NIC_SWITCH_CAPABILITIES-Struktur wird in den Membern der folgenden Strukturen verwendet:

OID-Abfrageanforderungen von OID_NIC_SWITCH_CURRENT_CAPABILITIES und OID_NIC_SWITCH_HARDWARE_CAPABILITIES geben eine NDIS_NIC_SWITCH_CAPABILITIES-Struktur zurück.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 6.20 und höher.
Kopfzeile ntddndis.h (include Ndis.h)

Weitere Informationen

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OBJECT_HEADER

OID_NIC_SWITCH_CREATE_VPORT

OID_NIC_SWITCH_CURRENT_CAPABILITIES

OID_NIC_SWITCH_HARDWARE_CAPABILITIES