Поделиться через


структура DOT11_EXTSTA_SEND_CONTEXT (windot11.h)

Важный

WiFiCx — это новая модель драйвера Wi-Fi, выпущенная в Windows 11. Мы рекомендуем использовать WiFiCx для использования новейших функций. Модель драйвера WDI теперь находится в режиме обслуживания и получит только исправления с высоким приоритетом.

Структура DOT11_EXTSTA_SEND_CONTEXT определяет атрибуты собственного пакета 802.11, которые будут отправляться мини-драйвером, работающим в режиме ExtSTA. Дополнительные сведения об этом режиме работы см. в режиме эксплуатации расширяемой станции.

Синтаксис

typedef struct DOT11_EXTSTA_SEND_CONTEXT {
  NDIS_OBJECT_HEADER Header;
  USHORT             usExemptionActionType;
  ULONG              uPhyId;
  ULONG              uDelayedSleepValue;
  PVOID              pvMediaSpecificInfo;
  ULONG              uSendFlags;
} DOT11_EXTSTA_SEND_CONTEXT, *PDOT11_EXTSTA_SEND_CONTEXT;

Члены

Header

Тип, редакция и размер структуры DOT11_EXTSTA_SEND_CONTEXT. Этот элемент отформатирован как структура NDIS_OBJECT_HEADER.

Минипорт-драйвер должен задать члены заголовка следующими значениями:

Тип

Этот элемент должен иметь значение NDIS_OBJECT_TYPE_DEFAULT.

Пересмотр

Этот элемент должен иметь значение DOT11_EXTSTA_SEND_CONTEXT_REVISION_1.

Размер

Этот элемент должен иметь значение sizeof(DOT11_EXTSTA_SEND_CONTEXT).

Дополнительные сведения об этих членах см. в NDIS_OBJECT_HEADER.

usExemptionActionType

Тип исключения шифрования для пакета. Определены следующие типы исключений:

DOT11_EXEMPT_NO_EXEMPTION

Пакет не исключается из каких-либо операций шифра, выполняемых станцией 802.11.

DOT11_EXEMPT_ALWAYS

Пакет освобождается от любых операций шифра, выполняемых станцией 802.11. Станция 802.11 должна передавать незашифрованный пакет.

DOT11_EXEMPT_ON_KEY_MAPPING_KEY_UNAVAILABLE

Пакет освобождается от любых операций шифра, выполняемых станцией 802.11, только если у станции нет ключа сопоставления ключей для адреса mac-адреса целевого пакета. Дополнительные сведения о ключах сопоставления ключей см. в типов ключей шифров 802.11.

uPhyId

Идентификатор типа PHY на станции 802.11. Станция 802.11 должна использовать указанный PHY для передачи пакета.

Значение uPhyId должно быть одним из следующих значений:

  • Значение записи в списке активных типов PHY, определенных объектом MIB msDot11ActivePhyList MIB. Драйвер минипорта задает этому объекту MIB список PHY, которые были активированы для использования по текущему базовому сетевому подключению (BSS). Дополнительные сведения об объекте MIB msDot11ActivePhyList см. в OID_DOT11_ACTIVE_PHY_LIST.
  • Значение DOT11_PHY_ID_ANY, в этом случае станция 802.11 может использовать любой PHY из списка активных PHY, определенных объектом MIB msDot11ActivePhyList MIB.
Минипорт-драйвер должен завершить запрос на отправку, если PHY, указанный uPhyId, не поддерживается или отключен через собственный механизм, реализованный независимым поставщиком оборудования (IHV). В этой ситуации драйвер минипорта устанавливает для элемента состояния в структуре NET_BUFFER_LIST значение NDIS_STATUS_UNSUPPORTED_MEDIA и вызовов. NdisMSendNetBufferListsComplete, чтобы завершить запрос на отправку.

uDelayedSleepValue

Время в микросекундах перед ожидаемым ответом на пакет. Элемент uDelayedSleepValue действителен только в том случае, если все следующие значения имеют значение true:

  • Пакет — это пакет управления доступом к носителям (MAC) service data unit (MSDU).
  • Станция 802.11 работает в режиме экономии питания (PS). В этой ситуации объект extensible Station (ExtSTA) msDot11PowerSavingLevel информационной базы управления (MIB) имеет любое значение, кроме DOT11_POWER_SAVING_NO_POWER_SAVING. Дополнительные сведения о значении MIB msDot11PowerSavingLevel MIB см. в статье OID_DOT11_POWER_MGMT_REQUEST.
На станции 802.11 используется значение uDelayedSleepValue для оптимизации производительности сети при работе в режиме PS. Например, в зависимости от режима PS станция 802.11 может сохранить переключатель после передачи пакета, если uDelayedSleepValue. Таким образом, задержка в сети будет сокращена для получения ответа.

pvMediaSpecificInfo

Указатель на буфер, содержащий сведения о носителях. Этот элемент должен быть null, если структура 802.11 NET_BUFFER_LIST, связанная с этой структурой, связана с собственной платформой 802.11 (включая любые структуры NET_BUFFER_LIST, поступающие из расширения IHV).

В противном случае pvMediaSpecificInfo указывает на данные вне полосы (OOB), связанные с записью MediaSpecificInformation в NetBufferListInfo члена исходной структуры 802.3 NET_BUFFER_LIST. pvMediaSpecificInfo позволяет драйверу мини-порта получить доступ к данным, зависящим от IHV, от драйвера протокола IHV 802.3.

uSendFlags

Набор флагов, определяющих атрибуты отправки. В настоящее время нет определенных флагов. Этот элемент должен быть нулевым.

Замечания

Минипорт-драйвер выполняет операцию отправки, когда она вызывается MiniportSendNetBufferLists. Каждый пакет, передаваемый драйверу через эту функцию, определяется структурой NET_BUFFER_LIST, которая содержит данные о выходе из 802.11.11. Данные OOB содержат параметры, зависящие от носителя, которые станция 802.11 использует при передаче пакета.

Драйвер минипорта обращается к данным OOB native 802.11 через макрос NET_BUFFER_LIST_INFO со следующими параметрами:

  • Параметр _NBL, который передает указатель на структуру NET_BUFFER_LIST, используемую для полученного пакета 802.11.
  • Параметр идентификатор _, который передает значение идентификатора MediaSpecificInformation.
Дополнительные сведения о операциях отправки Native 802.11 см. в разделе Native 802.11 Send Operations.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows Vista и более поздних версиях операционных систем Windows.
заголовка windot11.h (include Ndis.h)

См. также

NET_BUFFER_LIST

NET_BUFFER

OID_DOT11_ACTIVE_PHY_LIST

MiniportSendNetBufferLists

OID_DOT11_POWER_MGMT_REQUEST

NET_BUFFER_LIST_INFO

NdisMSendNetBufferListsComplete

NDIS_OBJECT_HEADER