NDIS 6.85 简介

本主题介绍 NDIS (NDIS) 6.85 的网络驱动程序接口规范,并介绍其主要设计新增内容。 NDIS 6.85 包含在 Windows 10 版本 21H2 和 Windows Server 2022 及更高版本中。

NDIS 6.85 是 NDIS 6.84 的次要版本更新。 有关将 NDIS 6.x 驱动程序移植到 NDIS 6.85 的详细信息,请参阅 将 NDIS 6.x 驱动程序移植到 NDIS 6.85

功能更新

NDIS 轮询模式

NDIS 6.85 引入了 NDIS 轮询模式,这是一种操作系统控制的轮询执行模型,用于驱动网络接口数据路径。 以前,NDIS 驱动程序通常依赖于延迟过程调用 (DPC) 来实现其执行模型。 NDIS 轮询模式将计划决策的复杂性从 NIC 驱动程序转移到 NDIS。 有关详细信息,请参阅 NDIS 轮询模式

使用泛型路由封装 (NVGRE) 的网络虚拟化与 UDP 分段卸载 (USO)

NDIS 6.85 引入了 在 UDP 分段卸载 (USO) 中支持 NVGRE 。 NDIS 微型端口、协议和筛选器驱动程序以及执行 USO 的 NIC 应支持 NVGRE 和 VXLAN 封装。

实现 NDIS 6.85 驱动程序

NDIS 6.85 驱动程序必须遵循 实现 NDIS 6.30 驱动程序中定义的要求。

此外,NDIS 6.85 驱动程序必须符合以下要求:

  • NDIS 6.85 驱动程序在注册到 NDIS 时必须报告正确的 NDIS 版本。

    • 必须更新 NDIS_Xxx_DRIVER_CHARACTERISTICS 结构中的主版本号和次要 NDIS 版本号以支持 NDIS 6.85。 MajorNdisVersion 成员必须包含 6,MinorNdisVersion 成员必须包含 85。 此要求适用于微型端口、协议和筛选器驱动程序。 还必须更新编译器的版本信息 (请参阅 编译 NDIS 6.85 驱动程序) 。

    • 微型端口驱动程序必须将“ 标头 ”成员设置为 “NDIS_MINIPORT_DRIVER_CHARACTERISTICS:将 ”修订 “设置为”NDIS_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3“,将 ”大小“ 设置为”NDIS_SIZEOF_MINIPORT_DRIVER_CHARACTERISTICS_REVISION_3”。

    • 筛选器驱动程序必须将标头 成员设置为NDIS_FILTER_DRIVER_CHARACTERISTICS:将 Revision 设置为 NDIS_FILTER_CHARACTERISTICS_REVISION_3, 将 Size 设置为 NDIS_SIZEOF_FILTER_DRIVER_CHARACTERISTICS_REVISION_3。

    • 协议驱动程序必须将标头 成员设置为NDIS_PROTOCOL_DRIVER_CHARACTERISTICS:将 Revision 设置为 NDIS_PROTOCOL_CHARACTERISTICS_REVISION_2, 将 Size 设置为 NDIS_SIZEOF_PROTOCOL _DRIVER_CHARACTERISTICS_REVISION_2。

  • 适用于 Windows 10版本 21H2 和 Windows Server 2022 及更高版本的 NDIS 6.85 微型端口驱动程序必须使用 NDIS 6.85 版本的数据结构。

编译 NDIS 6.85 驱动程序

Windows 10版本 21H2 的 WDK 支持标头版本控制。 标头版本控制可确保 NDIS 6.85 驱动程序在编译时使用适当的 NDIS 6.85 数据结构。

将以下编译器设置添加到驱动程序的 Visual Studio 项目:

  • 对于微型端口驱动程序,请添加 NDIS685_MINIPORT=1
  • 对于筛选器或协议驱动程序,请添加 NDIS685=1

有关使用 WDK Windows 10版本 21H2 生成驱动程序的信息,请参阅生成驱动程序