擷取擴充功能
Hyper-V 可延伸交換器擷取擴充功能會檢查封包流量、物件識別碼 (OID) 要求,以及 NDIS 狀態指示。 這種類型的擴充功能無法修改或卸載封包,或排除封包無法傳遞至可延伸交換器埠。 不過,擷取延伸模組可能會產生封包流量,例如包含延伸模組傳送至主應用程式的流量統計資料的封包。
擷取延伸模組會在輸入資料路徑的開頭和輸出資料路徑結尾叫用。 如需這些資料路徑的詳細資訊,請參閱 Hyper-V 可延伸交換器資料路徑。
擷取延伸模組具有下列需求和限制:
擷取延伸模組必須開發為支援可延伸交換器介面的 NDIS 篩選驅動程式。
如需篩選驅動程式的詳細資訊,請參閱 NDIS 篩選驅動程式。
如需如何撰寫擷取延伸模組的詳細資訊,請參閱 撰寫 Hyper-V 可延伸交換器擴充功能。
擷取延伸模組提供與標準 NDIS 監視篩選驅動程式相同的功能。 不過,擷取延伸模組的 INF 檔案必須安裝為修改篩選驅動程式。
如需修改篩選驅動程式的詳細資訊,請參閱 篩選驅動程式的類型。
如需修改篩選驅動程式之 INF 需求的詳細資訊,請參閱 設定 INF 檔案以修改篩選驅動程式。
擷取延伸模組可以監視輸入和輸出可延伸交換器資料路徑上的封包。 不過,這種類型的擴充功能必須一律呼叫 NdisFSendNetBufferLists ,將封包轉送到可延伸交換器驅動程式堆疊中的基礎驅動程式,而不會完成它們。
擷取延伸模組不得修改封包內的資料,也不會將埠目的地新增至封包的頻外 (OOB) 資料。 擴充功能不得豁免將封包傳遞至任何可延伸交換器埠。
擷取延伸模組可能會產生封包。 例如,延伸模組可能會產生封包,以便向遠端監視應用程式報告流量狀況。
如需依延伸模組產生封包的詳細資訊,請參閱 原始封包流量。
注意 如同其他延伸模組,擷取延伸模組只能產生可延伸交換器輸入資料路徑中的封包流量。
擷取延伸模組可以監視透過可延伸交換器驅動程式堆疊發出的封包、OID 要求和 NDIS 狀態指示。 不過,這種類型的擴充功能必須透過可延伸交換器驅動程式堆疊轉送封包、OID 要求和 NDIS 狀態指示。 延伸模組不得修改其所監視封包、OID 要求或 NDIS 狀態指示內的資料。
副檔名的 INF 檔案中的 FilterClass 值必須設定為 ms_switch_capture。 如需詳細資訊,請參閱 Hyper-V 可延伸交換器擴充功能 INF 需求。
任何數目的擷取延伸模組都可以系結至可延伸交換器實例。 根據預設,多個擷取延伸模組會根據安裝時排序。 例如,多個擷取延伸模組會分層在可延伸交換器驅動程式堆疊中,且最近安裝的擴充功能分層于堆疊中的其他擷取延伸模組之上。
系結至可延伸交換器實例之後,即可重新排序可延伸交換器驅動程式堆疊中擷取延伸模組的分層。 如需詳細資訊,請參閱 重新排序 Hyper-V 可延伸交換器擴充功能。