衍生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結構的詳細資訊:
- NET_BUFFER_LIST世代 之間的 關聯性
- 複製的NET_BUFFER_LIST結構
- 支離破碎的NET_BUFFER_LIST結構
- 重新組合NET_BUFFER_LIST結構