共用方式為


管理 Hyper-V 可延伸交換器轉送內容

注意 此頁面假設您已熟悉 Hyper-V 可延伸交換 器和 混合式轉送概觀中的資訊和圖表。

周遊 Hyper-V 可延伸交換器資料路徑的每個封包 NET_BUFFER_LIST 結構包含頻外 (OOB) 資料。 此資料會指定來自封包的來源埠,以及一或多個目的地埠來進行封包傳遞。 此 OOB 資料稱為 可延伸交換器轉送內容

注意 可延伸的交換器轉送內容與 NET_BUFFER_LIST_CONTEXT 結構不同。 這可讓延伸模組配置自己的內容結構,而不會影響轉送內容。

可延伸交換器轉送內容會以下列方式配置和釋放:

所有可延伸交換器延伸模組都可以呼叫下列可延伸交換器處理常式函式,以存取封包轉送內容中的資料:

AllocateNetBufferListForwardingCoNtext
配置可延伸交換器轉送內容,並為可延伸交換器內的傳送或接收作業準備 NET_BUFFER_LIST 結構。

CopyNetBufferListInfo
將轉送內容從來源封包 的NET_BUFFER_LIST 結構複製到目的地封包 的NET_BUFFER_LIST 結構。 此資料包含可延伸交換器來源埠和網路介面卡資訊。 可延伸交換器目的地埠資訊也可以複製到目的地封包。

FreeNetBufferListForwardingCoNtext
釋放 NET_BUFFER_LIST 結構的可延伸切換轉送內容中的資源。 此資料用於 Hyper-V 可延伸交換器中的傳送或接收作業,而且先前是藉由呼叫 AllocateNetBufferListForwardingCoNtext 函式來配置。

GetNetBufferListDestinations
從封包 NET_BUFFER_LIST 結構的轉送內容傳回目的地埠。

除非封包是 NVGRE 封包,否則轉送延伸模組會負責新增封包的目的地埠。 (如需詳細資訊,請參閱 混合式轉送.) 擴充功能會呼叫下列可延伸交換器處理常式函式,以新增或更新封包轉送內容中的目的地埠:

AddNetBufferListDestination
針對 NET_BUFFER_LIST 結構所指定的封包,將單一目的地新增至可延伸交換器轉送內容區域。

注意 此呼叫會將變更認可至轉送內容區域。 在此情況下,轉送延伸模組不需要呼叫 UpdateNetBufferListDestinations

GrowNetBufferListDestinations
在封包 NET_BUFFER_LIST 結構的轉送內容區域中,增加目的地埠陣列的大小。

UpdateNetBufferListDestinations
認可延伸模組對封包之一或多個可延伸交換器目的地埠所做的修改。 此函式會使用這些變更來更新封包 NET_BUFFER_LIST 結構的轉送內容。

注意在轉送延伸模組將目的地埠的變更認可至轉送內容之後,無法移除目的地埠,而且只能變更目的地埠NDIS_SWITCH_PORT_DESTINATION結構的IsExcluded成員。 如需詳細資訊,請參閱 排除封包傳遞至可延伸交換器目的地埠

Hyper-V 可延伸交換器轉送內容

Hyper-V 可延伸交換器轉送內容資料類型