NDIS 6.89 简介

本主题介绍网络驱动程序接口规范 (NDIS) 6.89,并描述其主要设计新增功能。 NDIS 6.89 包含在 Windows 11 版本 24H2 和 Windows Server 2022 及更高版本中。

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

功能更新

NDIS 6.89 增加了对 UDP 接收段合并卸载 (URO) 的支持。 此硬件卸载使 NIC 能够合并 UDP 接收段。 NIC 可以将来自同一流且符合一组规则的 UDP 数据报组合到逻辑上连续的缓冲区中。 然后,这些组合数据报将作为单个大型数据包指示给 Windows 网络堆栈。 合并 UDP 数据报可降低在高带宽流中处理数据包的 CPU 成本,从而提高吞吐量并减少每个字节的周期数。

实现 NDIS 6.89 驱动程序

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

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

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

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

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

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

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

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

编译 NDIS 6.89 驱动程序

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

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

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

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