NDIS_QOS_CLASSIFICATION_ELEMENT Struktur (ntddndis.h)
Die NDIS_QOS_CLASSIFICATION_ELEMENT-Struktur gibt eine NDIS Quality of Service (QoS)-Datenverkehrsklassifizierung für einen Netzwerkadapter an, der die IEEE 802.1 Data Center Bridging (DCB)-Schnittstelle unterstützt.
Jede Datenverkehrsklassifizierung gibt Folgendes an:
-
Eine Klassifizierung Bedingung, die auf einem Datenmuster innerhalb der Ausgangspaketdaten basiert.
Ab NDIS 6.30 basieren Klassifizierungsbedingungen auf einem 16-Bit-Wert, z. B. einem UDP- oder TCP-Zielport oder einer Medienzugriffskontrolle (MAC) EtherType.
-
Eine Klassifizierung Aktion, die die Datenverkehrsklasse definiert, die zum Behandeln des Ausgangspakets verwendet werden soll.
Ab NDIS 6.30 geben Klassifizierungsaktionen eine Prioritätsstufe 802,1p an.
Syntax
typedef struct _NDIS_QOS_CLASSIFICATION_ELEMENT {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
USHORT ConditionSelector;
USHORT ConditionField;
USHORT ActionSelector;
USHORT ActionField;
} NDIS_QOS_CLASSIFICATION_ELEMENT, *PNDIS_QOS_CLASSIFICATION_ELEMENT;
Angehörige
Header
Der Typ, die Überarbeitung und die Größe der NDIS_QOS_CLASSIFICATION_ELEMENT Struktur. Dieses Element ist als NDIS_OBJECT_HEADER Struktur formatiert.
Der Miniporttreiber muss den Type Member von Header- auf NDIS_OBJECT_TYPE_QOS_CLASSIFICATION_ELEMENT festlegen. Um die Version der NDIS_QOS_CLASSIFICATION_ELEMENT-Struktur anzugeben, muss der Treiber das element RevisionHeader- auf den folgenden Wert festlegen:
NDIS_QOS_CLASSIFICATION_ELEMENT_REVISION_1
Originalversion für NDIS 6.30.
Legen Sie das Size Member auf NDIS_SIZEOF_QOS_CLASSIFICATION_ELEMENT_REVISION_1 fest.
Flags
Ein ULONG--Wert, der einen bitweisen OR-Flags enthält, der den Status der NDIS-QoS-Datenverkehrsklassifizierungen angibt, die ein Miniporttreiber unterstützt. Die folgenden Flags sind definiert:
NDIS_QOS_CLASSIFICATION_ENFORCED_BY_MINIPORT
Wenn dieses Kennzeichen festgelegt ist, akzeptiert der Miniporttreiber die Parameter für die Datenverkehrsklassifizierung, die in der NDIS_QOS_CLASSIFICATION_ELEMENT-Struktur angegeben sind. Wenn der Treiber die Parameter akzeptiert, muss er den Netzwerkadapter so konfigurieren, dass die Datenverkehrsklassifizierung gemäß den Parametern ausgeführt wird.
ConditionSelector
Ein USHORT--Wert, der den Typ des Datenmusters angibt, das im ConditionField Member enthalten ist. Beispielsweise könnte der Datentyp einen ZIEL-UDP-Port angeben, dessen Wert durch das ConditionField Member angegeben wird.
Weitere Informationen finden Sie unter Richtlinien zum Festlegen der ConditionSelector- und ConditionField-Member.
ConditionField
Ein USHORT--Wert, der das Datenmuster enthält, dessen Typ durch das ConditionSelector-Element-Element angegeben wird.
Weitere Informationen finden Sie unter Richtlinien zum Festlegen der ConditionSelector- und ConditionField-Member.
ActionSelector
Ein USHORT--Wert, der den Typ der Aktionsdaten angibt, die im ActionField Member enthalten sind. Ab NDIS 6.30 gibt der Aktionsdatentyp eine 802,1p-Prioritätsebene an, deren Wert durch das ConditionField Member angegeben wird.
Weitere Informationen finden Sie unter Richtlinien zum Festlegen der"ActionSelector" und "ActionField".
ActionField
Ein USHORT--Wert, der einen Aktionswert enthält, dessen Typ vom ActionSelector Member angegeben wird.
Weitere Informationen finden Sie unter Richtlinien zum Festlegen der"ActionSelector" und "ActionField".
Bemerkungen
Eine Datenverkehrsklassifizierung gibt eine Bedingung und eine Aktion an, die der Netzwerkadapter auf Ausgehende Paketdaten anwendet. Wenn der Adapter die Ausgangspaketdaten prüft und eine übereinstimmende Klassifizierungsbedingung findet, wendet er die entsprechende Aktion auf das Ausgangspaket an.
- OID-Abfrageanforderungen von OID_QOS_OPERATIONAL_PARAMETERS und OID_QOS_REMOTE_PARAMETERS.
- OID-Methodenanforderungen von OID_QOS_PARAMETERS.
Richtlinien zum Festlegen der ConditionSelector- und ConditionField-Elemente
In der folgenden Tabelle werden der Wertebereich für die elemente ConditionSelector und ConditionField definiert.ConditionSelector-Wert | ConditionField-Wert |
---|---|
NDIS_QOS_CONDITION_RESERVED |
Das ConditionField Member muss auf Null festgelegt werden.
Hinweis Diese Bedingung ist für die zukünftige Verwendung reserviert.
|
NDIS_QOS_CONDITION_DEFAULT | Das ConditionField Member muss auf Null festgelegt werden. |
NDIS_QOS_CONDITION_TCP_PORT | Das ConditionField Member enthält einen 16-Bit-TCP-Zielportwert. |
NDIS_QOS_CONDITION_UDP_PORT | Das ConditionField Member enthält einen 16-Bit-UDP-Zielportwert. |
NDIS_QOS_CONDITION_TCP_OR_UDP_PORT | Das ConditionField Member enthält einen 16-Bit-ZIEL-TCP- oder UDP-Portwert. |
NDIS_QOS_CONDITION_ETHERTYPE |
Das ConditionField Member enthält einen 16-Bit-IEEE-EtherType-Wert.
Hinweis Der Netzwerkadapter muss das Framelayout des Pakets bestimmen, um den EtherType zu prüfen. Beispielsweise unterscheidet sich die Position des EtherType-Felds zwischen einem Ethernet II- und 802.3-Frame.
|
NDIS_QOS_CONDITION_NETDIRECT_PORT | Das ConditionField Member enthält einen 16-Bit-NetworkDirect-Portwert. |
Wenn das ConditionSelector Member einen Wert von NDIS_QOS_CONDITION_DEFAULT enthält, muss die zugeordnete Klassifizierungsaktion auf alle Ausgängepakete angewendet werden, die keiner anderen Klassifizierungsbedingungen entsprechen. Wenn die DCB-Komponente eine OID-Methodenanforderung von OID_QOS_PARAMETERSausgibt, kann die ConditionSelector- nur in der ersten NDIS_QOS_CLASSIFICATION_ELEMENT Struktur im NDIS_QOS_PARAMETERS Array auf NDIS_QOS_CONDITION_DEFAULT festgelegt werden.
Wenn das ConditionSelector Member einen Wert von NDIS_QOS_CONDITION_NETDIRECT_PORT enthält, muss der Miniporttreiber mit dem ConditionField Member mit dem Quell- oder Zielport einer NetworkDirect-Verbindung übereinstimmen. Wenn der Miniporttreiber eine NetDirect-Verbindung akzeptiert, muss der Treiber mit dem ConditionField Member mit dem Quellport eines Pakets übereinstimmen, das über diese Verbindung gesendet wird. Wenn der Miniporttreiber eine NetDirect-Verbindung initiiert, muss er mit dem ConditionField Member mit dem Zielport eines Pakets übereinstimmen, das über diese Verbindung gesendet wird.
Weitere Informationen zur DCB-Komponente finden Sie unter NDIS QoS Architecture for Data Center Bridging.
Richtlinien zum Festlegen der Elemente "ActionSelector" und "ActionField"
In der folgenden Tabelle werden der Wertebereich für die elemente ActionSelector und ActionField definiert.ActionSelector-Wert | ActionField-Wert |
---|---|
NDIS_QOS_ACTION_PRIORITY | Das ActionField Member enthält einen 3-Bit IEEE 802.1p-Prioritätsebenenwert. Weitere Informationen zu diesen Prioritätsstufen finden Sie unter IEEE 802.1p Priority Levels. |
Ab NDIS 6.30 definieren Datenverkehrsklassifizierungsaktionen eine IEEE 802.1p-Prioritätsstufe, der das Ausgangspaket zugewiesen ist. Wenn der Netzwerkadapter einem Ausgangspaket eine Prioritätsstufe zuweist, wendet der Adapter auch die Parameter für die NDIS QoS-Datenverkehrsklasse an, die der angegebenen Prioritätsstufe zugeordnet ist. Diese Parameter bestimmen, wie der Netzwerkadapter das Paket überträgt, und umfassen Bandbreitenzuweisungs- und Übertragungsauswahlalgorithmus (TSA).
Weitere Informationen zu NDIS-QoS-Datenverkehrsklassen finden Sie unter NDIS QoS Traffic Classes.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.30 und höher. |
Header- | ntddndis.h (include Ndis.h) |
Siehe auch
NDIS_STATUS_QOS_OPERATIONAL_PARAMETERS_CHANGE
NDIS_STATUS_QOS_REMOTE_PARAMETERS_CHANGE