NDIS_HD_SPLIT_CURRENT_CONFIG结构(ntddndis.h)

NDIS_HD_SPLIT_CURRENT_CONFIG结构提供微型端口适配器的当前标头数据拆分配置。

语法

typedef struct _NDIS_HD_SPLIT_CURRENT_CONFIG {
  NDIS_OBJECT_HEADER Header;
  ULONG              HardwareCapabilities;
  ULONG              CurrentCapabilities;
  ULONG              HDSplitFlags;
  ULONG              HDSplitCombineFlags;
  ULONG              BackfillSize;
  ULONG              MaxHeaderSize;
} NDIS_HD_SPLIT_CURRENT_CONFIG, *PNDIS_HD_SPLIT_CURRENT_CONFIG;

成员

Header

NDIS_HD_SPLIT_CURRENT_CONFIG结构的 NDIS_OBJECT_HEADER 结构。 驱动程序将 类型 成员设置为 标头 指定NDIS_OBJECT_TYPE_DEFAULT、修订 成员NDIS_HD_SPLIT_CURRENT_CONFIG_REVISION_1以及 大小 成员NDIS_SIZEOF_HD_SPLIT_CURRENT_CONFIG_REVISION_1。

HardwareCapabilities

微型端口适配器支持的标头数据拆分硬件功能。 这些功能应包括 INF 文件设置当前禁用的功能,或通过 高级 属性页禁用的功能。 HardwareCapabilities 的值是以下标志的按位 OR:

NDIS_HD_SPLIT_CAPS_SUPPORTS_HEADER_DATA_SPLIT

微型端口适配器可以将标头和数据拆分为单独的内存描述符列表(MDL),以满足标头数据拆分支持的要求。

NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV4_OPTIONS

微型端口适配器可以拆分包含 IPv4 选项的 IPv4 以太网帧。 微型端口适配器可以支持拆分某些 IPv4 选项,同时不拆分其他选项。

注意 NIC 不得拆分包含不受支持的 IPv4 选项的 IPv4 帧。 如果拆分了 IPv4 帧,则拆分帧的标头部分必须包含整个 IPv4 标头以及存在的所有 IPv4 选项。
 

NDIS_HD_SPLIT_CAPS_SUPPORTS_IPV6_EXTENSION_HEADERS

微型端口适配器可以拆分包含 IPv6 扩展标头的 IPv6 以太网帧。 微型端口适配器可以支持某些 IPv6 扩展标头,而不支持其他标头。

注意 NIC 不得拆分包含不支持的 IPv6 扩展标头的 IPv6 帧。 如果拆分了 IPv6 帧,则拆分帧的标头部分必须包含整个 IPv6 标头和所有存在的 IPv6 扩展标头。
 

NDIS_HD_SPLIT_CAPS_SUPPORTS_TCP_OPTIONS

微型端口适配器除了时间戳选项外,还可以使用其他 TCP 选项拆分 TCP 帧。 微型端口适配器可以支持某些 TCP 选项,不支持其他选项。

注意 如果帧中唯一的 TCP 选项是时间戳选项,则数据拆分提供程序必须能够拆分帧。
 
注意 如果 TCP 标头包含不受支持的 TCP 选项,NIC 必须在 TCP 标头开头拆分帧,或者不得拆分该帧。
 

CurrentCapabilities

微型端口适配器支持的当前标头数据拆分功能。 微型端口驱动程序使用为 HardwareCapabilities 成员定义的相同标志。 在这种情况下,标志设置为指示依赖于当前配置设置的当前功能。

HDSplitFlags

一组标志,用于报告微型端口适配器标头数据拆分的状态。 NDIS 使用以下标志按位 OR 设置此成员:

NDIS_HD_SPLIT_ENABLE_HEADER_DATA_SPLIT

微型端口驱动程序在硬件中启用了标头数据拆分。 否则,将禁用标头数据拆分。

HDSplitCombineFlags

一组标志,用于指定微型端口适配器的当前标头数据拆分设置。 HDSplitCombineFlags 的值可以是以下标志的按位 OR:

NDIS_HD_SPLIT_COMBINE_ALL_HEADERS

微型端口适配器正在组合拆分帧。 如果在硬件中启用了标头数据拆分,微型端口驱动程序应在向 NDIS 指示帧之前合并标头和数据。

BackfillSize

微型端口驱动程序用于拆分帧的数据部分的回填大小(以字节为单位)。

MaxHeaderSize

微型端口驱动程序用于拆分帧的标头部分的最大大小(以字节为单位)。

注意 如果标头的长度超过 MaxHeaderSize,因为存在 IPv4 选项、IPsec 标头或 IPv6 扩展标头,则不能拆分帧。 如果包含 TCP 或 UDP 标头的标头超过 MaxHeaderSize,因为存在 TCP 标头、TCP 选项或 UDP 标头,NIC 必须在上层协议标头的开头拆分帧,或者不得拆分帧。
 

言论

NDIS_HD_SPLIT_CURRENT_CONFIG结构用于 OID_GEN_HD_SPLIT_CURRENT_CONFIG OID 查询请求,以获取微型端口适配器的当前标头数据拆分配置。

要求

要求 价值
最低支持的客户端 NDIS 6.1 及更高版本中受支持。
标头 ntddndis.h (include Ndis.h)

另请参阅

NDIS_OBJECT_HEADER

NdisMSetMiniportAttributes

OID_GEN_HD_SPLIT_CURRENT_CONFIG