802.11 无线诊断可扩展帮助程序类
内置的无线诊断基础结构有两个扩展点。
父帮助程序类 | 目的 |
---|---|
已修订的 Native Wifi (RNWF) Extensible Helper 类 | 诊断与 802.11 连接扩展相关的问题。 |
L2Security Extensible Helper 类 | 诊断与第 2 层安全协议扩展相关的问题。 |
注意
第三方帮助程序类应向两个父帮助程序类注册,以确保调用第三方类。 有关注册的详细信息,请参阅 注册 NDF 帮助程序类扩展。
RNWF 可扩展帮助程序类
父帮助程序类名称
Parent = L"RNWF Extensible Helper Class";
修订后的 Native Wifi (RNWF) 可扩展帮助程序类是诊断与扩展 Native Wifi 使用的 802.11 协议相关的问题的第三方帮助程序类的父类。
RNWF 帮助程序类提供的两个关键属性是发生问题的接口的 GUID 和连接上下文。
接口 GUID:此属性名为“接口 ID”,类型 为 AT_GUID。
连接上下文:此属性名为“网络 ID”,类型为 AT_OCTET_STRING。 此字符串实际上是 wlanihv.h 中定义的WDIAG_IHV_WLAN_ID结构的缓冲区。 此结构定义如下。
#define WDIAG_IHV_WLAN_ID_FLAG_SECURITY_ENABLED 0x00000001 typedef struct _WDIAG_IHV_WLAN_ID { WCHAR strProfileName [MS_MAX_PROFILE_NAME_LENGTH];DOT11_SSID Ssid;DOT11_BSS_TYPE BssType;DWORD dwFlags;在 DWORD dwReasonCode 上定义的标志;仅在适用原因代码可用时设置 } WDIAG_IHV_WLAN_ID, *PWDIAG_IHV_WLAN_ID;```
注意
WDIAG_IHV_WLAN_ID_FLAG_SECURITY_ENABLED 是唯一可能的 dwFlags 值。
第三方帮助程序类的匹配属性应与其相应的软件模块的服务 ID 相同。 这也是第三方应在注册表中注册的相同名称。 无线诊断将在发生问题的无线会话期间查询服务 ID。 该信息将返回到 NDF,NDF 将确定是否存在并注册了第三方帮助程序类,然后调用它。
下表列出了 RNWF 可扩展帮助程序类的匹配属性。
名称 | 类型 | 值 |
---|---|---|
DiagnosticsID | REG_SZ | [DiagnosticsID_GUID_String |
L2Security Extensible Helper 类
父帮助程序类名称
Parent = L"Extensible L2Sec Helper Class";
第 2 层安全 (L2Security) 可扩展帮助程序类是第三方帮助程序类的父类,用于诊断与替换第 2 层安全功能的相应服务和软件模块相关的问题。
第 2 层安全帮助程序类提供的两个关键属性是发生问题的接口的 GUID 和连接上下文。
接口 GUID:此属性名为“接口 ID”,类型 为 AT_GUID。
连接上下文:此属性名为“网络 ID”,类型为 AT_OCTET_STRING。 此字符串实际上是 wlanihv.h 中定义的WDIAG_IHV_WLAN_ID结构的缓冲区。 此结构定义如下。
#define WDIAG_IHV_WLAN_ID_FLAG_SECURITY_ENABLED 0x00000001 typedef struct _WDIAG_IHV_WLAN_ID { WCHAR strProfileName [MS_MAX_PROFILE_NAME_LENGTH];DOT11_SSID Ssid;DOT11_BSS_TYPE BssType;DWORD dwFlags;在 DWORD dwReasonCode 上定义的标志;仅在适用原因代码可用时设置 } WDIAG_IHV_WLAN_ID, *PWDIAG_IHV_WLAN_ID;```
注意
WDIAG_IHV_WLAN_ID_FLAG_SECURITY_ENABLED 是唯一可能的 dwFlags 值。
第三方帮助程序类的匹配属性应与其相应的软件模块的服务 ID 相同。 这也是第三方应在注册表中注册的相同名称。 无线诊断将在发生问题的无线会话期间查询服务 ID。 该信息将返回到 NDF,NDF 将确定是否存在并注册了第三方帮助程序类,然后调用它。
下表列出了第 2 层安全性可扩展帮助程序类的匹配属性。
名称 | 类型 | 值 |
---|---|---|
DiagnosticsID | REG_SZ | [DiagnosticsID_GUID_String |
匹配属性
DiagnosticsID
802.11 无线诊断将从核心 Native Wifi 服务查询 DiagnosticsID ,以确定连接中是否安装了任何第三方无线扩展或安全模块并涉及其中。 然后,无线诊断将使用 DiagnosticsID 作为匹配属性向这些第三方帮助程序类提供假设。 任何第三方帮助程序类都应包含在关联的驱动程序包中并随其安装。 DiagnosticsID 将在微型端口 INF 文件中定义为 AddReg 指令中的注册表项。
HKR,Ndi\IHVExtensions, DiagnosticsID,0, "<Diagnostics ID GUID>"
此密钥定义第三方软件模块的无线帮助程序类的 ID。 对于扩展性框架,此密钥是可选的,但如果实现包含插入 NDF 的 IHV 无线帮助程序类并可以诊断与 RNWF 无线或安全扩展相关的连接问题,则需要此密钥。 安装 IHV 模块时,MS WLAN 诊断帮助程序类将从无线自动配置服务查询此 ID,并将在诊断会话期间将此 ID 作为引用或匹配属性提供给 NDF,以便 NDF 可以在必要时调用相应的第三方无线帮助程序类。
[DiagnosticsID_GUID_String]
此值必须是包含所有大写字母的字符串。 例如,“{12345678-9ABC-DEF0-1234-56789ABCDEF0}”。
802.11 无线诊断帮助程序类的范围
802.11 无线诊断帮助程序类当前诊断以下方面的无线问题。
- 任何 802.11 连接问题,包括 802.11 关联、802.11 身份验证、与操作系统原生支持的 802.11 标准 & 协议相关的 802.11 安全设置,以及性能问题。
- 与 802.1x 配置相关的第 2 层安全问题,以及与使用 Windows Vista 和 Windows Server 2008 本机支持的方法进行第 2 层身份验证相关的任何问题。
- 客户端与接入点或网络基础结构与服务之间的配置文件设置中的配置不匹配。
802.11 无线诊断帮助程序类目前不诊断以下方面的无线问题。
- 与第三方 802.11 扩展相关的问题,包括与这些扩展相关的任何配置文件或驱动程序设置。
- 与第三方 EAP 方法相关的问题。
- 无线微型端口驱动程序问题。
- 本机不支持的任何 802.11 和第 2 层安全协议或标准相关问题。
- 可能影响无线连接的系统或组件级别问题,例如电源管理、磁盘空间不足、内存状况和硬件问题。
此外,802.11 无线诊断不会分析 HighUtilization 案例。 已识别的无线性能问题将被分析并报告为 LowHealth 案例。