estructura DOT11_EXTSTA_RECV_CONTEXT (windot11.h)

Importante La interfaz LAN inalámbrica nativa 802.11 está en desuso en Windows 10 y versiones posteriores. En su lugar, use la interfaz del controlador de dispositivo WLAN (WDI). Para obtener más información sobre WDI, consulta Modelo de controlador de Windows universal WLAN.

La estructura de DOT11_EXTSTA_RECV_CONTEXT define los atributos Native 802.11 de un paquete recibido por la estación 802.11 e indicado por el controlador de minipuerto que opera en modos extensible station (ExtSTA) o Network Monitor (NetMon). Para obtener más información sobre estos modos de operación, vea Native 802.11 Operation Modes.

Sintaxis

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;

Miembros

Header

Tipo, revisión y tamaño de la estructura DOT11_EXTSTA_RECV_CONTEXT. Este miembro tiene el formato de estructura NDIS_OBJECT_HEADER .

El controlador de minipuerto debe establecer los miembros de Header en los valores siguientes:

Tipo

Este miembro debe establecerse en NDIS_OBJECT_TYPE_DEFAULT.

Revisión

Este miembro debe establecerse en DOT11_EXTSTA_RECV_CONTEXT_REVISION_1.

Size

Este miembro debe establecerse sizeof(DOT11_EXTSTA_RECV_CONTEXT)en .

Para obtener más información sobre estos miembros, vea NDIS_OBJECT_HEADER.

uReceiveFlags

Atributos de los datos de paquete recibidos especificados a través de una máscara de bits.

Si el controlador de minipuerto funciona en modo ExtSTA, el controlador siempre debe establecer uReceiveFlags en cero.

Los siguientes valores de marca son válidos para el controlador de minipuerto si funciona en modo NetMon.

DOT11_RECV_FLAG_RAW_PACKET

Si se establece este bit, el paquete contiene los datos que recibió originalmente la estación 802.11. Para obtener más información sobre los paquetes sin procesar, vea Indicar paquetes sin procesar 802.11.

DOT11_RECV_FLAG_RAW_PACKET_FCS_FAILURE

Si se establece este bit, los datos de paquetes sin procesar se recibieron con errores de secuencia de comprobación de fotogramas (FCS).

Nota El controlador de minipuerto debe establecer DOT11_RECV_FLAG_RAW_PACKET al establecer DOT11_RECV_FLAG_RAW_PACKET_FCS_FAILURE.

DOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP

Si se establece este bit, la NIC establece la información de marca de tiempo en el miembro ullTimestamp .

uPhyId

El identificador (ID) del PHY en el que la estación 802.11 recibió el paquete.

uChCenterFrequency

La frecuencia del centro del canal, en unidades de megahercios (MHz), de la banda de frecuencia en la que la estación 802.11 recibió el paquete.

usNumberOfMPDUsReceived

El número de fragmentos de unidad de datos de protocolo (MPDU) de control de acceso multimedia (MAC) recibidos y reensamblados por la estación 802.11 para el paquete. El valor de usNumberOfMPDUsReceived debe ser del uno al valor de DOT11_MAX_NUM_OF_FRAGMENTS.

lRSSI

Valor de indicación de intensidad de señal recibida (RSSI) para el último fragmento MPDU recibido del paquete 802.11. El valor RSSI está en unidades de decibelios a los que se hace referencia a 1,0 miliwatts (dBm).

ucDataRate

Velocidad de datos a la que la estación 802.11 recibió el paquete. El valor de ucDataRate es el valor del miembro ucDataRateIndex de la velocidad de datos de la tabla de asignación de velocidad de datos de la estación 802.11. Para más información sobre la tabla de asignación de velocidad de datos, consulte OID_DOT11_DATA_RATE_MAPPING_TABLE.

uSizeMediaSpecificInfo

Tamaño, en bytes, de la información específica del medio en el miembro pvMediaSpecificInfo . uSizeMediaSpecificInfo admite la copia de la información específica del medio y su paso a una extensión IHV.

Nota Este miembro está reservado actualmente para uso futuro y debe contener cero.

pvMediaSpecificInfo

Puntero a un búfer que contiene información específica del medio. El controlador de minipuerto puede establecer este miembro si el controlador de minipuerto pasa datos OOB específicos del medio a un controlador de protocolo 802.3 específico de IHV.

El marco nativo 802.11 copia este puntero a la entrada MediaSpecificInformation en el miembro NetBufferListInfo de las estructuras de NET_BUFFER_LIST 802.3 en NDIS reciben indicaciones.

Nota Las extensiones de IHV no pueden recibir mediaSpecificInformation.

ullTimestamp

Valor del temporizador de la función de sincronización de tiempo (TSF) 802.11, en microsegundos, que especifica la hora en que se recibió el paquete. Este miembro se proporciona para admitir que indica paquetes 802.11 sin formato.

Si una NIC no admite ullTimestamp, no debe establecer la marca DOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP en el miembro uReceiveFlags .

Comentarios

Al realizar una operación de recepción nativa 802.11, el controlador de minipuerto debe dar formato a cada paquete 802.11 como una estructura de NET_BUFFER_LIST , con los datos de paquete con formato de estructura NET_BUFFER y vinculados a la estructura de NET_BUFFER_LIST. Cada estructura de NET_BUFFER_LIST debe incluir datos fuera de banda (OOB). Los datos OOB especifican los atributos del paquete recibido que son específicos de los medios inalámbricos LAN (WLAN).

El controlador de minipuerto accede a los datos OOB nativos 802.11 a través de la macro NET_BUFFER_LIST_INFO con los parámetros siguientes:

  • El parámetro _NBL , que se pasa el puntero a la estructura NET_BUFFER_LIST utilizada para el paquete 802.11 recibido.
  • El parámetro _ id , que se pasa el valor de identificador (ID) de MediaSpecificInformation.
Si el controlador de minipuerto establece DOT11_RECV_FLAG_RAW_PACKET en el miembro uReceiveFlags , el controlador debe seguir estas instrucciones al preparar la estructura de DOT11_EXTSTA_RECV_CONTEXT:
  • Establezca el valor de usNumberOfMPDUsReceived en uno.
  • Establezca el valor de lRSSI en el valor RSSI del propio paquete sin formato.
  • Establezca el valor de ucDataRate en el valor ucDataRateIndex del propio paquete sin formato.
  • Establezca el valor de ucRSSI en el valor RSSI normalizado para el propio paquete sin procesar.
Para obtener más información sobre los paquetes sin procesar, vea Indicar paquetes sin procesar 802.11.

Para obtener más información sobre las operaciones de recepción de Native 802.11, consulte Operaciones de recepción de Native 802.11.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Encabezado windot11.h (incluye Ndis.h)

Consulte también

NdisMIndicateReceiveNetBufferLists

NET_BUFFER_LIST

NET_BUFFER

NET_BUFFER_LIST_INFO

OID_DOT11_DATA_RATE_MAPPING_TABLE

NDIS_OBJECT_HEADER