次の方法で共有


DOT11_EXTSTA_RECV_CONTEXT構造体 (windot11.h)

重要Native 802.11 ワイヤレス LAN インターフェイスは、Windows 10 以降では非推奨です。 代わりに WLAN デバイス ドライバー インターフェイス (WDI) を使用してください。 WDI の詳細については、WLAN ユニバーサル Windows ドライバー モデル を参照してください。

DOT11_EXTSTA_RECV_CONTEXT構造体は、802.11 ステーションによって受信されたパケットのネイティブ 802.11 属性を定義し、拡張可能なステーション (ExtSTA) またはネットワーク モニター (NetMon) モードで動作しているミニポート ドライバーによって示されます。 これらの操作モードの詳細については、「Native 802.11 操作モードの」を参照してください。

構文

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;

メンバーズ

Header

DOT11_EXTSTA_RECV_CONTEXT構造体の型、リビジョン、およびサイズ。 このメンバーは、NDIS_OBJECT_HEADER 構造体として書式設定されます。

ミニポート ドライバーは、ヘッダー のメンバーを次の値に設定する必要があります。

種類

このメンバーは、NDIS_OBJECT_TYPE_DEFAULTに設定する必要があります。

改定

このメンバーは、DOT11_EXTSTA_RECV_CONTEXT_REVISION_1に設定する必要があります。

大きさ

このメンバーは、sizeof(DOT11_EXTSTA_RECV_CONTEXT)に設定する必要があります。

これらのメンバーの詳細については、NDIS_OBJECT_HEADERを参照してください。

uReceiveFlags

ビットマスクを介して指定された受信パケット データの属性。

ミニポート ドライバーが ExtSTA モードで動作している場合、ドライバーは常 uReceiveFlags 0 に設定する必要があります。

次のフラグ値は、NetMon モードで動作している場合、ミニポート ドライバーに対して有効です。

DOT11_RECV_FLAG_RAW_PACKET

このビットが設定されている場合、パケットには、802.11 ステーションが最初に受信したデータが含まれます。 生パケットの詳細については、「生 802.11 パケットを示す」を参照してください。

DOT11_RECV_FLAG_RAW_PACKET_FCS_FAILURE

このビットが設定されている場合、生パケット データはフレーム チェック シーケンス (FCS) エラーで受信されました。

ミニポート ドライバーは、DOT11_RECV_FLAG_RAW_PACKET_FCS_FAILUREを設定するときにDOT11_RECV_FLAG_RAW_PACKETを設定する必要があります。

DOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP

このビットが設定されている場合、NIC は、ullTimestamp メンバーのタイムスタンプ情報を設定します。

uPhyId

802.11 ステーションがパケットを受信した PHY の識別子 (ID)。

uChCenterFrequency

802.11 ステーションがパケットを受信した周波数帯域のチャネル 中心周波数 (メガヘルツ (MHz) 単位)。

usNumberOfMPDUsReceived

パケットの 802.11 ステーションによって受信および再構成されたメディア アクセス制御 (MAC) プロトコル データ ユニット (MPDU) フラグメントの数。 usNumberOfMPDUsReceived 値は、DOT11_MAX_NUM_OF_FRAGMENTSの値から 1 つまでの値である必要があります。

lRSSI

802.11 パケットの最後に受信した MPDU フラグメントの受信信号強度表示 (RSSI) 値。 RSSI 値は、1.0 ミリワット (dBm) に参照されるデシベルの単位です。

ucDataRate

802.11 ステーションがパケットを受信したデータ レート。 ucDataRate の値は、802.11 ステーションのデータ レート マッピング テーブルのデータ レートの ucDataRateIndex メンバーの値です。 データ レート マッピング テーブルの詳細については、次を参照してください。 OID_DOT11_DATA_RATE_MAPPING_TABLE.

uSizeMediaSpecificInfo

pvMediaSpecificInfo メンバーのメディア固有の情報のサイズ (バイト単位)。 uSizeMediaSpecificInfo では、メディア固有の情報のコピーと IHV 拡張機能への渡しがサポートされています。

このメンバーは現在、今後使用するために予約されており、ゼロを含める必要があります。

pvMediaSpecificInfo

メディア固有の情報を含むバッファーへのポインター。 ミニポート ドライバーは、ミニポート ドライバーが IHV 固有の 802.3 プロトコル ドライバーにメディア固有の OOB データを渡す場合は、このメンバーを設定できます。

ネイティブ 802.11 フレームワークは、このポインターを、NDIS の 802.3 NET_BUFFER_LIST 構造体の NetBufferListInfo メンバーにある MediaSpecificInformation エントリにコピーします。

IHV 拡張機能 現在、MediaSpecificInformationを受け取ることができません。

ullTimestamp

パケットが受信された時刻を指定する 802.11 タイミング同期関数 (TSF) タイマー値 (マイクロ秒単位)。 このメンバーは、生の 802.11 パケット を示すをサポートするために提供されます。

NIC が ullTimestamp サポートしていない場合は、uReceiveFlags メンバーにDOT11_RECV_FLAG_RAW_PACKET_TIMESTAMP フラグを設定しないでください。

備考

ネイティブ 802.11 受信操作を実行する場合、ミニポート ドライバーは、NET_BUFFER 構造体として書式設定され、NET_BUFFER_LIST構造体にリンクされたパケット データを使用して、受信した各 802.11 パケットを NET_BUFFER_LIST 構造として書式設定する必要があります。 各NET_BUFFER_LIST構造体には、帯域外 (OOB) データを含める必要があります。 OOB データは、ワイヤレス LAN (WLAN) メディアに固有の受信パケットの属性を指定します。

ミニポート ドライバーは、次のパラメーターを使用して、NET_BUFFER_LIST_INFO マクロを介してネイティブ 802.11 OOB データにアクセスします。

  • _NBL パラメーター。このパラメーターは、受信した 802.11 パケットに使用される NET_BUFFER_LIST 構造体へのポインターを渡します。
  • _ id パラメーター。MediaSpecificInformation の識別子 (ID) 値渡されます。
ミニポート ドライバーが uReceiveFlags メンバーにDOT11_RECV_FLAG_RAW_PACKETを設定する場合、ドライバーは、DOT11_EXTSTA_RECV_CONTEXT構造を準備するときに、次のガイドラインに従う必要があります。
  • usNumberOfMPDUsReceived の値 1 に設定します。
  • lRSSI の値を、生パケット自体の RSSI 値に設定します。
  • ucDataRate の値を、生パケット自体の ucDataRateIndex 値に設定します。
  • ucRSSI の値を、生パケット自体の正規化された RSSI 値に設定します。
生パケットの詳細については、「生 802.11 パケットを示す」を参照してください。

Native 802.11 の受信操作の詳細については、「Native 802.11 Receive Operations」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
ヘッダー windot11.h (Ndis.h を含む)

関連項目

NdisMIndicateReceiveNetBufferLists

NET_BUFFER_LIST

NET_BUFFER

NET_BUFFER_LIST_INFO

OID_DOT11_DATA_RATE_MAPPING_TABLE

NDIS_OBJECT_HEADER