标头数据拆分的接收指示

支持标头数据拆分的微型端口驱动程序必须以标头数据拆分所需的格式指示接收的数据。 例如,标头缓冲区应全部位于连续的存储块中,并且数据缓冲区必须包含回填空间。

拆分帧中的标头信息不得包含虚拟 LAN (VLAN) 标记。 标头数据拆分需要硬件中对 VLAN 的支持,并且需要从传入帧中删除 VLAN 标记,并将其放置在 NET_BUFFER_LIST 结构中的 Ieee8021QNetBufferListInfo OOB 信息中。 微型端口驱动程序必须在 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构的 MacOptions 成员中指定对 VLAN 的支持,并响应OID_GEN_MAC_OPTIONS OID 查询。

NDIS 和覆盖驱动程序或用户模式应用程序使用 OID_GEN_HD_SPLIT_PARAMETERS OID 设置微型端口适配器的当前标头数据拆分设置。 如果设置了 NDIS_HD_SPLIT_PARAMETERS 结构的 HDSplitCombineFlags 成员中的 NDIS_HD_SPLIT_COMBINE_ALL_HEADERS 标志,则微型端口适配器必须合并所有拆分帧。 如果在硬件中启用了标头数据拆分,微型端口驱动程序必须在将帧指示为 NDIS 之前合并标头和数据。 有关OID_GEN_HD_SPLIT_PARAMETERS和其他管理和配置问题的详细信息,请参阅 标头数据拆分管理和配置

本节包括:

分配标头缓冲区

为数据缓冲区分配回填

设置 NET_BUFFER_LIST 信息