DOT11_EXTSTA_RECV_CONTEXT Struktur (windot11.h)
Die DOT11_EXTSTA_RECV_CONTEXT-Struktur definiert die Native 802.11-Attribute eines empfangenen Pakets durch die Station 802.11 und wird vom Miniporttreiber im Extensible Station-Modus (ExtSTA) oder Netzwerkmonitor (NetMon) angegeben. Weitere Informationen zu diesen Betriebsmodi finden Sie unter Native 802.11-Betriebsmodi.
Syntax
typedef struct DOT11_EXTSTA_RECV_CONTEXT {
NDIS_OBJECT_HEADER Header;
ULONG uReceiveFlags;
ULONG uPhyId;
ULONG uChCenterFrequency;
USHORT usNumberOfMPDUsReceived;
LONG lRSSI;
UCHAR ucDataRate;
ULONG uSizeMediaSpecificInfo;
PVOID pvMediaSpecificInfo;
ULONGLONG ullTimestamp;
} DOT11_EXTSTA_RECV_CONTEXT, *PDOT11_EXTSTA_RECV_CONTEXT;
Member
Header
Der Typ, die Revision und die Größe der DOT11_EXTSTA_RECV_CONTEXT Struktur. Dieses Element ist als NDIS_OBJECT_HEADER-Struktur formatiert.
Der Miniporttreiber muss die Member von Header auf die folgenden Werte festlegen:
Typ
Dieser Member muss auf NDIS_OBJECT_TYPE_DEFAULT festgelegt werden.
Revision
Dieser Member muss auf DOT11_EXTSTA_RECV_CONTEXT_REVISION_1 festgelegt werden.
Size
Dieses Element muss auf sizeof(DOT11_EXTSTA_RECV_CONTEXT)
festgelegt werden.
Weitere Informationen zu diesen Membern finden Sie unter NDIS_OBJECT_HEADER.
uReceiveFlags
Die Attribute der empfangenen Paketdaten, die über eine Bitmaske angegeben werden.
Wenn der Miniporttreiber im ExtSTA-Modus arbeitet, muss der Treiber uReceiveFlags immer auf 0 festlegen.
Die folgenden Flagwerte sind für den Miniporttreiber gültig, wenn im NetMon-Modus ausgeführt wird.
DOT11_RECV_FLAG_RAW_PACKET
Wenn dieses Bit festgelegt ist, enthält das Paket die Daten, die ursprünglich von der 802.11-Station empfangen wurden. Weitere Informationen zu unformatierten Paketen finden Sie unter Angeben von Unformatierten 802.11-Paketen.
DOT11_RECV_FLAG_RAW_PACKET_FCS_FAILURE
Wenn dieses Bit festgelegt ist, wurden die unformatierten Paketdaten mit FCS-Fehlern (Frame Check Sequence) empfangen.
DOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP
Wenn dieses Bit festgelegt ist, legt die NIC die Zeitstempelinformationen im Element ullTimestamp fest.
uPhyId
Der Bezeichner (ID) des PHY, für den die 802.11-Station das Paket empfangen hat.
uChCenterFrequency
Die Kanalzentrfrequenz in Einheiten von Megahertz (MHz) des Frequenzbereichs, auf dem die 802.11-Station das Paket empfangen hat.
usNumberOfMPDUsReceived
Die Anzahl der MPDU-Fragmente (Media Access Control), die von der 802.11-Station für das Paket empfangen und neu zusammengesetzt werden. Der Wert von usNumberOfMPDUsReceived muss von 1 bis zum Wert von DOT11_MAX_NUM_OF_FRAGMENTS sein.
lRSSI
Der RSSI-Wert (Received Signal Strength Indication) für das letzte empfangene MPDU-Fragment des Pakets 802.11. Der RSSI-Wert ist in Einheiten von Dezibel, die auf 1,0 Milliwatt (dBm) verwiesen werden.
ucDataRate
Die Datenrate, mit der die 802.11-Station das Paket empfangen hat. Der Wert von ucDataRate ist der Wert des ucDataRateIndex-Members der Datenrate aus der Datenratenzuordnungstabelle der 802.11-Station. Weitere Informationen zur Datenratenzuordnungstabelle finden Sie unter OID_DOT11_DATA_RATE_MAPPING_TABLE.
uSizeMediaSpecificInfo
Die Größe der medienspezifischen Informationen im pvMediaSpecificInfo-Element in Bytes. uSizeMediaSpecificInfo unterstützt das Kopieren der medienspezifischen Informationen und die Übergabe an eine IHV-Erweiterung.
pvMediaSpecificInfo
Ein Zeiger auf einen Puffer, der medienspezifische Informationen enthält. Der Miniporttreiber kann diesen Member festlegen, wenn der Miniporttreiber medienspezifische OOB-Daten an einen IHV-spezifischen 802.3-Protokolltreiber übergibt.
Das native 802.11-Framework kopiert diesen Zeiger auf den Eintrag MediaSpecificInformation im NetBufferListInfo-Member der 802.3 NET_BUFFER_LIST-Strukturen in NDIS-Empfangsindikationen.
ullTimestamp
Ein TSF-Timerwert (802.11 timing synchronization function, TSF) in Mikrosekunden, der den Zeitpunkt angibt, zu dem das Paket empfangen wurde. Dieses Element wird bereitgestellt, um unformatierte 802.11-Pakete anzugeben.
Wenn eine NIC ullTimestamp nicht unterstützt, darf sie das DOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP-Flag im uReceiveFlags-Element nicht festlegen.
Hinweise
Beim Ausführen eines Native 802.11-Empfangsvorgangs muss der Miniporttreiber jedes empfangene 802.11-Paket als NET_BUFFER_LIST-Struktur formatieren, wobei die Paketdaten als NET_BUFFER-Struktur formatiert und mit der NET_BUFFER_LIST-Struktur verknüpft sind. Jede NET_BUFFER_LIST-Struktur muss Out-of-Band-Daten (OOB) enthalten. Die OOB-Daten geben die Attribute des empfangenen Pakets an, die für die WLAN-Medien (Wireless LAN) spezifisch sind.
Der Miniporttreiber greift über das Makro NET_BUFFER_LIST_INFO mit den folgenden Parametern auf die Native 802.11-OOB-Daten zu:
- Der _NBL-Parameter , der den Zeiger auf die NET_BUFFER_LIST-Struktur übergeben wird, die für das empfangene 802.11-Paket verwendet wird.
- Der _ id-Parameter , der den ID-Wert von MediaSpecificInformation übergeben wird.
- Legen Sie den Wert von usNumberOfMPDUsReceived auf eins fest.
- Legen Sie den Wert von lRSSI auf den RSSI-Wert für das Rohpaket selbst fest.
- Legen Sie den Wert von ucDataRate auf den ucDataRateIndex-Wert für das Rohpaket selbst fest.
- Legen Sie den Wert von ucRSSI auf den normalisierten RSSI-Wert für das Rohpaket selbst fest.
Weitere Informationen zu Native 802.11-Empfangsvorgängen finden Sie unter Native 802.11-Empfangsvorgänge.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme. |
Kopfzeile | windot11.h (include Ndis.h) |