NDIS_QOS_PARAMETERS-Struktur (ntddndis.h)

Die NDIS_QOS_PARAMETERS-Struktur gibt die QoS-Parameter (Quality of Service) von NDIS an, die auf einem Netzwerkadapter aktiviert sind, der die DCB-Schnittstelle (IEEE 802.1 Data Center Bridging) unterstützt.

Syntax

typedef struct _NDIS_QOS_PARAMETERS {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              NumTrafficClasses;
  UCHAR              PriorityAssignmentTable[NDIS_QOS_MAXIMUM_PRIORITIES];
  UCHAR              TcBandwidthAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  UCHAR              TsaAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES];
  ULONG              PfcEnable;
  ULONG              NumClassificationElements;
  ULONG              ClassificationElementSize;
  ULONG              FirstClassificationElementOffset;
} NDIS_QOS_PARAMETERS, *PNDIS_QOS_PARAMETERS;

Member

Header

Typ, Revision und Größe der NDIS_QOS_PARAMETERS-Struktur . Dieser Member ist als NDIS_OBJECT_HEADER-Struktur formatiert.

Der Miniporttreiber muss das Type-Element von Header auf NDIS_OBJECT_TYPE_QOS_PARAMETERS festlegen. Um die Version der NDIS_QOS_PARAMETERS-Struktur anzugeben, muss der Treiber den Revisionsmember von Header auf den folgenden Wert festlegen:

NDIS_QOS_PARAMETERS_REVISION_1

Originalversion für NDIS 6.30 und höher.

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

Flags

Ein ULONG-Wert, der ein bitweises OR von Flags enthält, die die status der NDIS-QoS-Parameter für den Netzwerkadapter angeben. Weitere Informationen zu diesem Member finden Sie unter Übersicht über das Flags-Element.

NumTrafficClasses

Ein ULONG-Wert , der die Anzahl der NDIS QoS-Datenverkehrsklassen angibt, die auf dem Netzwerkadapter aktiviert sind. Auf jede Datenverkehrsklasse wird über einen Bezeichner im Bereich von null bis (NumTrafficClasses–1) verwiesen.

Hinweis Der Wert des NumTrafficClasses-Elements muss kleiner oder gleich min(NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES, MaxNumTrafficClasses) sein, wobei MaxNumTrafficClasses der Wert des MaxNumTrafficClasses-Elements ist, das in der NDIS_QOS_CAPABILITIES-Struktur angegeben wurde.
 

PriorityAssignmentTable[NDIS_QOS_MAXIMUM_PRIORITIES]

Ein Array von UCHAR-Elementen , bei dem jedes Element die Datenverkehrsklasse darstellt, die einer IEEE 802.1p-Prioritätsebene zugeordnet ist. Das PriorityAssignmentTable-Array wird durch die Prioritätsstufe 802.1p (0–7) indiziert.

Jedes Element enthält den Datenverkehrsklassenbezeichner. Dieser Bezeichner ist der Index der NDIS_QOS_CLASSIFICATION_ELEMENT-Struktur für die Datenverkehrsklasse innerhalb des Klassifizierungsarrays.

Hinweis Jedem Element im PriorityAssignmentTable-Array muss ein gültiger Datenverkehrsklassenbezeichner zugewiesen werden. Ein Datenverkehrsklassenbezeichner kann mehreren Elementen im PriorityAssignmentTable-Array zugewiesen werden.
 

TcBandwidthAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Ein Array von UCHAR-Elementen , das den Prozentsatz der Bandbreitenzuweisung angibt, die jeder Datenverkehrsklasse zugewiesen ist. Das TcBandwidthAssignmentTable-Array wird vom Datenverkehrsklassenbezeichner indiziert.

Jedes Element des TcBandwidthAssignmentTable-Arrays gibt die Bandbreitenzuordnung für die Datenverkehrsklassen an. Der Gesamtwert aller Bandbreitenzuweisungen im TcBandwidthAssignmentTable-Array muss gleich 100 sein.

Hinweis Die Bandbreitenzuordnung wird nur für die TSA der erweiterten Übertragungsauswahl (Enhanced Transmission Selection, ETS) unterstützt. Wenn das Element für die Datenverkehrsklasse im TsaAssignmentTable-Array nicht auf NDIS_QOS_TSA_ETS festgelegt ist, muss das Element für die Datenverkehrsklasse im TcBandwidthAssignmentTable-Array auf Null festgelegt werden.
 

TsaAssignmentTable[NDIS_QOS_MAXIMUM_TRAFFIC_CLASSES]

Ein Array von UCHAR-Elementen , das die TSA angibt, die jeder Datenverkehrsklasse zugewiesen ist. Das TsaAssignmentTable-Array wird vom Datenverkehrsklassenbezeichner indiziert.

Jedes Element des TsaAssignmentTable-Arrays enthält einen der folgenden Werte:

NDIS_QOS_TSA_STRICT

Der Algorithmus für strenge Priorität muss als TSA für die Datenverkehrsklasse verwendet werden. Weitere Informationen zu dieser TSA finden Sie unter Strict Priority Algorithm.

NDIS_QOS_TSA_CBS

Der CBS-Algorithmus (Credit-Based Shaper) von IEEE 802.1Qav muss als TSA für die Datenverkehrsklasse verwendet werden.

Hinweis Ab Windows Server 2012 unterstützt die DCB-Komponente (Msdcb.sys) die CBS-TSA nicht und aktiviert diesen Parameter nicht über OID-Methodenanforderungen (Object Identifier) von OID_QOS_PARAMETERS. Weitere Informationen zur DCB-Komponente finden Sie unter NDIS QoS Architecture for Data Center Bridging.
 

NDIS_QOS_TSA_ETS

Der IEEE 802.1Qaz Enhanced Transmission Selection(ETS)-Algorithmus muss als TSA für die Datenverkehrsklasse verwendet werden. Weitere Informationen zu diesem TSA finden Sie unter Enhanced Transmission Selection (ETS)-Algorithmus.

PfcEnable

Eine Bitmap von 32 Bits. Die wichtigsten 24 Bits sind für die zukünftige Verwendung reserviert. Die geringsten 8 Bits werden verwendet, um anzugeben, ob PFC auf der IEEE 802.1p-Prioritätsebene aktiviert ist. Wenn das Bit auf 1 festgelegt ist, wird PFC für die Prioritätsebene aktiviert.

Bitbereich Bedeutung
31:24 Für die zukünftige Verwendung reserviert.
7 Wenn dies auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsebene 7 (Netzwerksteuerung) aktiviert.
6 Wenn dieser Wert auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsebene 6 (Internetwork-Steuerung) aktiviert.
5 Wenn dies auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsebene 5 (Stimme) aktiviert.
4 Wenn dies auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsebene 4 (Video) aktiviert.
3 Wenn dies auf 1 festgelegt ist, wird PFC für 802.1p-Prioritätsstufe 3 (kritische Anwendungen) aktiviert.
2 Wenn dieser Wert auf 1 festgelegt ist, wird PFC auf 802,1p-Prioritätsstufe 2 (hervorragender Aufwand) aktiviert.
1 Wenn dies auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsebene 1 (Hintergrund) aktiviert.
0 Wenn dies auf 1 festgelegt ist, wird PFC auf 802.1p-Prioritätsstufe 0 (best effort) aktiviert.
 
Hinweis Die Gesamtzahl der 802,1p-Prioritätsstufen, für die PFC aktiviert ist, muss kleiner oder gleich dem Wert des MaxNumPfcEnabledTrafficClasses-Elements in der NDIS_QOS_CAPABILITIES-Struktur sein.
 
Weitere Informationen zu Prioritätsstufen finden Sie unter IEEE 802.1p-Prioritätsstufen.

NumClassificationElements

Ein ULONG-Wert , der die Anzahl der Elemente im Datenverkehrsklassifizierungsarray angibt. Der Offset zum ersten Element in diesem Array wird vom FirstClassificationElementOffset-Element angegeben.

Hinweis Jedes Element im Array ist als NDIS_QOS_CLASSIFICATION_ELEMENT-Struktur formatiert.
 

ClassificationElementSize

Ein ULONG-Wert , der die Größe jedes Elements im Datenverkehrsklassifizierungsarray in Byte angibt.

Hinweis Ab NDIS 6.30 muss dieser Member auf sizeof(NDIS_QOS_CLASSIFICATION_ELEMENTfestgelegt werden.
 

FirstClassificationElementOffset

Ein ULONG-Wert , der den Offset in Bytes für das erste Element in einem Array von Datenverkehrsklassifizierungselementen angibt, die dieser Struktur folgen. Der Offset wird vom Anfang der NDIS_QOS_PARAMETERS-Struktur bis zum Anfang des ersten Elements gemessen. Jedes Element im Array ist eine NDIS_QOS_CLASSIFICATION_ELEMENT Struktur.

Hinweis Wenn NumClassificationElements auf 0 festgelegt ist, wird dieser Member ignoriert.
 

Hinweise

Die NDIS_QOS_PARAMETERS-Struktur gibt die Parameter an, die definieren, wie der Netzwerkadapter die Übertragung oder ausgehende Pakete priorisiert. Diese Struktur wird in den folgenden OID-Anforderungen verwendet:

  • OID-Abfrageanforderung von OID_QOS_OPERATIONAL_PARAMETERS. Diese OID-Anforderung gibt die operativen QoS-Parameter zurück, die derzeit auf dem Netzwerkadapter bereitgestellt werden.
  • OID-Abfrageanforderung von OID_QOS_REMOTE_PARAMETERS. Diese OID-Anforderung gibt die QoS-Remoteparameter zurück, die derzeit auf dem Netzwerkadapter bereitgestellt werden.
  • OID-Methodenanforderungen von OID_QOS_PARAMETERS. Diese OID-Anforderung stellt den Netzwerkadapter mit den lokalen QoS-Parametern bereit.
Der Miniporttreiber gibt auch eine NDIS_QOS_PARAMETERS-Struktur in den folgenden NDIS-status-Hinweisen zurück: Weitere Informationen zu den Typen von NDIS-QoS-Parametern finden Sie unter Übersicht über NDIS-QoS-Parameter.

Übersicht über das Flags-Element

Das Flags-Element enthält ein bitweises OR mit Flags, die die status der NDIS-QoS-Parameter für den Netzwerkadapter angeben.

Der Miniporttreiber legt das Flags-Element fest, wenn er die folgenden NDIS-status-Hinweise ausgibt:

Die DCB-Komponente legt den Flags-Member fest, wenn sie eine OID-Methodenanforderung von OID_QOS_PARAMETERS ausgibt.
Hinweis Nur die DCB-Komponente kann die OID-Anforderung ausgeben. Ein übermäßiger Protokoll- oder Filtertreiber darf diese OID nicht ausgeben. Weitere Informationen zur DCB-Komponente finden Sie unter NDIS QoS Architecture for Data Center Bridging.
 
Die folgenden Flags sind für das Flags-Element definiert.
Hinweis NDIS garantiert, dass die flags NDIS_QOS_PARAMETERS_ETS_CONFIGURED und NDIS_QOS_PARAMETERS_PFC_CONFIGURED zusammen festgelegt oder gelöscht werden.
 
Die Flags NDIS_QOS_PARAMETERS_Xxx_CHANGED bieten Hinweise darauf, ob sich die entsprechende Gruppe von Parametern gegenüber einer vorherigen OID_QOS_PARAMETERS-Methodenanforderung oder NDIS_QOS_PARAMETERS_Xxx_CHANGED status-Benachrichtigung geändert hat. Wenn der Miniporttreiber die NDIS_QOS_PARAMETERS_Xxx_CHANGED status-Benachrichtigungen ausgibt, kann er optional diese Flags festlegen.
Hinweis Wenn die flags NDIS_QOS_PARAMETERS_Xxx_CHANGED nicht festgelegt sind, dürfen überlastende Treiber nicht davon ausgehen, dass die entsprechende Gruppe von Parametern auf dem zugrunde liegenden Netzwerkadapter unterstützt oder aktiviert ist.
 

Anforderungen

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

Weitere Informationen

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OBJECT_HEADER

NDIS_QOS_CAPABILITIES

NDIS_QOS_CLASSIFICATION_ELEMENT

NDIS_STATUS_QOS_OPERATIONAL_PARAMETERS_CHANGE

NDIS_STATUS_QOS_REMOTE_PARAMETERS_CHANGE

NdisMSetMiniportAttributes

OID_QOS_CURRENT_CAPABILITIES

OID_QOS_HARDWARE_CAPABILITIES