Требования к функциям Wi-Fi 7 Wi-Fi
WiFiCx поддерживает функции Wi-Fi 7, обеспечивая более быстрые скорости подключения, низкую задержку и улучшенную безопасность. WiFiCx позволяет многоуровневой операции (MLO) использовать несколько одновременных каналов к точке доступа Wi-Fi и расширенные возможности проверки подлинности WPA3-SAE и оппортунистического беспроводного шифрования (OWE) с шифром GCMP-256.
В этой статье описаны изменения драйвера, необходимые для поддержки этих функций.
Обнаружение возможностей Wi-Fi 7
Драйвер должен поддерживать настройку подключения WDI версии 2.0.12 для Wi-Fi 7.
Чтобы указать поддержку подключений Wi-Fi MLO, драйвер должен задать следующие возможности в структуре WIFI_STATION_CAPABILITIES:
- Количество записей в MLOAddressesList должно соответствовать MaxMLOLinksSupported, которое указывает, может ли драйвер настраивать ссылки MLO.
- Число записей в AkmsList должно соответствовать NumAkmsSupported. Этот список должен включать все наборы AKM, поддерживаемые драйвером, и должен включать AKM 24, если ос, как ожидается, поддерживает SAE с 384-разрядным PMK.
Чтобы поддерживать подключения SAE с помощью AKM 24 или AKM 8 с шифром GCMP-256, драйвер должен добавить следующие пары auth-cipher при вызове WifiDeviceSetStationCapabilities:
- В UnicastAlgorithmsList: DOT11_AUTH_ALGO_WPA3_SAE + DOT11_CIPHER_ALGO_GCMP_256
- В MulticastMgmtAlgorithmsList: DOT11_AUTH_ALGO_WPA3_SAE + DOT11_CIPHER_ALGO_GCMP_256
Чтобы поддерживать подключения OWE с шифром GCMP-256, драйвер должен добавить следующую пару auth-шифр при вызове WifiDeviceSetStationCapabilities:
- В UnicastAlgorithmsList: DOT11_AUTH_ALGO_OWE + DOT11_CIPHER_ALGO_GCMP_256
Кадр MAC-адресов
Если драйвер указывает кадры управления, используйте MAC-адрес ссылки. Для кадров данных, включая 4-путь подтверждения и кадры проверки подлинности 802.1x, используйте MAC-адрес MLD.
Для кадров данных, включая 4-путь подтверждения и кадры проверки подлинности 802.1x, MAC-адрес — это MAC-адрес MLD Mac.
Если Windows использует случайные MAC-адреса, он предоставляет набор случайных адресов в WDI_TLV_CONFIGURED_MLO_LINK_MAC_ADDRESS при отправке задачи OID_WDI_TASK_DOT11_RESET.
Обнаружение AP
Windows анализирует ip-адреса маяков для многоуровневых и RNR IEs. Если он присутствует, он помечает AP как поддерживающий MLO.
Настройка подключения с несколькими ссылками
Windows предоставляет параметр в задаче OID_WDI_TASK_CONNECT , которая указывает, может ли драйвер подключиться с помощью MLO. Этот параметр представлен флагом Mlo Подключение ionSupported в WDI_TLV_CONNECTION_SETTINGS. Если Mlo Подключение ionSupported имеет значение true, драйвер может использовать только пары AKM и шифров, указанные WDI_TLV_RSNA_AKM_CIPHER_SUITE в запросах OID_WDI_TASK_CONNECT и OID_WDI_TASK_ROAM. Единственное исключение заключается в том, что проверка подлинности или шифр не является частью RSNA IE.
Для подключений на основе SAE Windows задает AKM и шифр в запросе фиксации SAE, который сообщает драйверу, который AKM и шифр будут использоваться позже в запросе на связь.
Проверка подлинности
Для проверки подлинности SAE с помощью Wi-Fi 7 MLO Windows задает AKM и шифр в WDI_TLV_SAE_COMMIT_PARAMS при вызове OID_WDI_SET_SAE_AUTH_PARAMS. Эти значения указываются в WDI_TLV_RSNA_AKM_SUITE и WDI_TLV_CIPHER_ALGORITHM TLV. Драйвер использует эти значения позже в запросе на связь.
В NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED признаке драйвер должен:
- Задайте BSSID (WDI_TLV_BSSID) на MAC-адрес ссылки AP.
- Задайте для локального MAC-адреса LocalMloLinkBssId (WDI_TLV_MLO_LINK_BSSID).
Включите соответствующие многоуровневые IE в кадры проверки подлинности при подключении к MLO.
Связь
Когда Windows отправляет OID_WDI_TASK_CONNECT и OID_WDI_TASK_ROAM задачи, драйвер должен подключаться только к APS с помощью Wi-Fi 7 MLO, если AP поддерживает подключение с несколькими ссылками с akMs, перечисленными в WDI_TLV_RSNA_AKM_CIPHER_SUITE в WDI_TLV_CONNECT_PARAMETERS TLV.
Драйвер включает соответствующие многоуровневые IE в кадры связи при подключении для MLO. При завершении ассоциации Windows проверка интерфейсы многоуровневых подключений в кадрах запросов и ответов ассоциации в NDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT, чтобы определить, использовался ли MLO в соединении.
Для Windows требуется, чтобы драйвер указывал кадры запросов и ответов ассоциации в WDI_TLV_ASSOCIATION_RESULT при указании NDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT .
Для сопоставления с помощью Wi-Fi 7 MLO драйвер должен задать следующие значения в NDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT:
- Задайте BSSID (WDI_TLV_BSSID) в WDI_TLV_ASSOCIATION_RESULT на MAC-адрес ссылки AP. В NDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT должен быть только один экземпляр записи AssociationResultsContainer .
- Задайте localLinkBssId (WDI_TLV_MLO_LINK_BSSID) в WDI_TLV_ASSOCIATION_RESULT локальный MAC-адрес канала.
Примечание. Если localLinkBssId не задан, Windows не может использовать MLO для подключения.
4-путь подтверждения
Windows поддерживает GCMP-256 в 4-пути подтверждения. Он также обновил интерфейс WDI, чтобы предоставить сведения о ссылке при настройке ключей GTK/IGTK/BIGTK.
При настройке ключей группы (GTK/IGTK/BIGTK) для подключений MLO Windows вызывает команду OID_WDI_SET_ADD_CIPHER_KEYS с массивом элементов, по одному для каждого добавленного ключа.
Указание состояния связи
Теперь указание NDIS_STATUS_WDI_INDICATION_LINK_STATE_CHANGE предоставляет следующие сведения для каждой ссылки в WDI_TLV_LINK_INFO:
- Идентификатор ссылки
- Подключение полоса или канал
- Полученный индикатор надежности сигнала (RSSI)
- Текущая пропускная способность
- Текущий Tx MCS
- Текущий Rx MCS
Для подключений MLO индикатор состояния ссылки предоставляет сведения для каждой ссылки. Для подключений, отличных от MLO, он предоставляет сведения для одной ссылки.
Отсоединение
Драйвер отправляет NDIS_STATUS_WDI_INDICATION_DISASSOCIATION указание только в том случае, если все ссылки были отсоединены. Если драйвер подключается к новой ссылке или отключен от текущей подключенной ссылки, драйвер просто отправляет уведомление NDIS_STATUS_WDI_INDICATION_LINK_STATE_CHANGE , чтобы обновить набор ссылок, с которым он связан в данный момент.
Когда драйвер отправляет указание NDIS_STATUS_WDI_INDICATION_DISASSOCIATION, он должен задать MAC-адрес в WDI_TLV_DISASSOCIATION_INDICATION_PARAMETERS в качестве MAC-адреса MLD AP.
Изменения проверки подлинности SAE
Отправка кадра проверки подлинности SAE
Для команды OID_WDI_SET_SAE_AUTH_PARAMS переименованы следующие типы и TLV:
- Переименован WDI_SAE_REQUEST_TYPE_COMMIT_REQUEST на WDI_SAE_REQUEST_TYPE_COMMIT_PARAMS в перечислении WDI_SAE_REQUEST_TYPE.
- Переименован WDI_SAE_REQUEST_TYPE_CONFIRM_REQUEST на WDI_SAE_REQUEST_TYPE_CONFIRM_PARAMS в перечислении WDI_SAE_REQUEST_TYPE.
- Переименовано WDI_TLV_SAE_COMMIT_REQUEST в WDI_TLV_SAE_COMMIT_PARAMS. Этот TLV используется для отправки кадров фиксации-запроса и отклика фиксации.
- Переименован WDI_TLV_SAE_CONFIRM_REQUEST в WDI_TLV_SAE_CONFIRM_PARAMS. Этот TLV используется для отправки кадров подтверждения и подтверждения ответа.
Указание кадра проверки подлинности SAE
Для указания NDIS_STATUS_WDI_INDICATION_SAE_AUTH_PARAMS_NEEDED были переименованы следующие типы и TLV:
- Переименован WDI_SAE_INDICATION_COMMIT_RESPONSE, чтобы WDI_SAE_INDICATION_COMMIT_FRAME в перечислении WDI_SAE_INDICATION_TYPE.
- Переименован WDI_SAE_INDICATION_CONFIRM_RESPONSE на WDI_SAE_INDICATION_CONFIRM_FRAME в перечислении WDI_SAE_INDICATION_TYPE.
- Переименован WDI_TLV_SAE_COMMIT_RESPONSE в WDI_TLV_SAE_COMMIT_FRAME.
- Переименован WDI_TLV_SAE_CONFIRM_RESPONSE в WDI_TLV_SAE_CONFIRM_FRAME.
В вызове WDI_SET_SAE_AUTH_PARAMS ОС предоставляет AKM и шифр в качестве необязательных параметров, которые драйвер будет использовать при отправке запроса на связь. Сочетание AKM/шифра будет определяться во время обмена SAE.
ПОДКЛЮЧЕНИЕ OWE
Для подключений OWE windows проверка, если AP поддерживает шифр GCMP-256. Если поддерживается, Windows изначально пытается использовать группу 20 для сопоставления. Если ap завершается сбоем запроса на сопоставление с ошибкой DOT11_FRAME_STATUS_UNSUPPORTED_FINITE_CYCLIC_GROUP (77), ОС возвращается к использованию группы 19 для сопоставления.
Изначально ОС задает параметры DH для OWE в OID_WDI_TASK_CONNECT группу 20. Если AP завершается ошибкой сопоставления с ошибкой неподдерживаемой группы, ОС отправляет OID_WDI_SET_OWE_DH_IE OID драйверу с обновленными сведениями ОУ ДЛЯ группы 19. Драйвер должен использовать обновленные сведения ОУЭ для следующего запроса связи.
Примечание. Чтобы ОС правильно обработала ошибку DOT11_FRAME_STATUS_UNSUPPORTED_FINITE_CYCLIC_GROUP, драйвер также должен задать состояние WDI вNDIS_STATUS_WDI_INDICATION_ASSOCIATION_RESULT указание WDI_ASSOC_STATUS_ASSOC_FAILED_BY_PEER.