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.
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.
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.
NumMacAddressesPerPort
Ein ULONG-Wert, der die Anzahl der MAC-Adressen enthält, die für jeden Port unterstützt werden.
NumVlansPerPort
Ein ULONG-Wert, der die Anzahl der VLANs enthält, die für jeden Port unterstützt werden.
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
Gibt an, dass die NIC VMMQ für PF-VPorts unterstützt.
NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SUPPORTED
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
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
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
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
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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:
- Die HardwareNicSwitchCapabilities - und CurrentNicSwitchCapabilities-Member der NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES Struktur.
- Das NicSwitchCapabilities-Element des NDIS_FILTER_ATTACH_PARAMETERS und NDIS_BIND_PARAMETERS Strukturen.
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_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES