支持标头数据拆分的微型端口驱动程序必须以标头数据拆分所需的格式指示收到的数据。 例如,标头缓冲区应全部位于连续的存储块中,并且数据缓冲区必须包含回填空间。
拆分帧中的标头信息绝不能包含虚拟 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和其他管理和配置问题的详细信息,请参阅 Header-Data 拆分管理和配置。
本部分包括: