派生NET_BUFFER_LIST结构

NDIS 提供了驱动程序可用于管理派生自其他NET_BUFFER_LIST结构 NET_BUFFER_LIST 结构的函数。 这些函数通常由中间驱动程序使用。

以下 NDIS 函数可以从现有NET_BUFFER_LIST结构创建派生NET_BUFFER_LIST结构:

NdisAllocateCloneNetBufferList

NdisAllocateFragmentNetBufferList

NdisAllocateReassembledNetBufferList

这些函数提高了系统性能,因为 NDIS 在不复制网络数据的情况下创建派生结构。 有三种类型的 NET_BUFFER_LIST 结构可以从现有NET_BUFFER_LIST结构派生:

克隆
克隆的NET_BUFFER_LIST结构是引用原始数据的副本。 驱动程序可以使用这种类型的结构有效地将相同的数据传输到多个路径。

片段
片段 NET_BUFFER_LIST 结构包括一组引用原始数据的 NET_BUFFER 结构;但是,数据划分为不超过最大大小的单位。 驱动程序可以使用这种类型的结构有效地将大型缓冲区分解为较小的缓冲区。

重新组装
重新组合NET_BUFFER_LIST结构包含引用来自多个源NET_BUFFER结构的原始数据的NET_BUFFER结构。 驱动程序可以使用这种类型的结构有效地将许多较小的缓冲区合并到单个大型缓冲区中。

以下主题提供有关派生NET_BUFFER_LIST结构的详细信息: