OID_SWITCH_PORT_TEARDOWN
Hyper-V 可延伸交換器的通訊協定邊緣會發出物件識別碼 (OID) 設定OID_SWITCH_PORT_TEARDOWN要求,以通知基礎可延伸交換器延伸模組,可延伸交換器埠將會開始刪除程式。 當通訊協定驅動程式發出 OID_SWITCH_PORT_DELETE的 OID 集合要求時,就會啟動此程式。
NDIS_OID_REQUEST結構的InformationBuffer成員包含NDIS_SWITCH_PORT_PARAMETERS結構的指標。
備註
NDIS_SWITCH_PORT_PARAMETERS結構的PortId成員會指定進行連線通知的可延伸交換器埠。 可延伸交換器擴充功能必須更新其以下列方式取得之埠的任何快取資訊:
藉由發出 OID_SWITCH_PORT_ARRAY的 OID 查詢要求。 只有在OID_SWITCH_PARAMETERS傳回IsActive設定為 TRUE的NDIS_SWITCH_PARAMETERS結構時,擴充功能才會在FilterAttach上發出此 OID。 如果 IsActive 為 FALSE,擴充功能會在擴充功能迷你埠發出 NetEventSwitchActivateNET_PNP_EVENT 時發出 OID。
藉由檢查 OID_SWITCH_PORT_CREATE 和 OID_SWITCH_PORT_DELETE的各種 OID 集合要求。
可延伸交換器的通訊協定邊緣發出OID_SWITCH_PORT_TEARDOWN的 OID 集合要求,以通知延伸模組埠正在從可延伸交換器中刪除。 發出此 OID 要求之前,如果埠具有作用中網路介面卡連線,可延伸交換器的通訊協定邊緣先前已發出下列 OID:
OID_SWITCH_NIC_DISCONNECT,通知基礎延伸模組網路介面卡不再連線到 NDIS_SWITCH_PORT_PARAMETERS 結構中指定的埠。
OID_SWITCH_NIC_DELETE,通知基礎延伸模組網路介面卡與可延伸交換器埠之間的網路連線已刪除。
通訊協定邊緣會在已取消或完成指定可延伸交換器埠的所有擱置封包之後,發出此 OID 集合要求。
擴充功能完成此 OID 集合要求,且可延伸交換器埠的參考計數器為零之後,可延伸交換器的通訊協定邊緣會發出 OID 集合要求 OID_SWITCH_PORT_DELETE。 此 OID 要求會從可延伸交換器中刪除埠。
注意 擴充功能會呼叫 ReferenceSwitchPort,以遞增可延伸交換器埠的參考計數器。 擴充功能會藉由呼叫 DereferenceSwitchPort來遞減參考計數器。
此延伸模組必須遵循下列指導方針來處理OID_SWITCH_PORT_TEARDOWN的 OID 集合要求:
延伸模組必須一律將此 OID 集合要求轉送至基礎延伸模組。 延伸模組不得讓要求失敗。
注意 延伸模組不得修改與 OID 要求相關聯的 NDIS_SWITCH_PORT_PARAMETERS 結構。
擴充功能轉送此 OID 要求之後,就無法將封包轉送至已刪除的埠。 擴充功能也無法發出 OID 要求,也無法針對已刪除的埠呼叫 ReferenceSwitchPort 函式。
注意 擴充功能不得發出OID_SWITCH_PORT_TEARDOWN的 OID 集合要求。
如需可延伸交換器埠和網路介面卡線上狀態的詳細資訊,請參閱 Hyper-V 可延伸交換器埠和網路介面卡狀態。
傳回狀態碼
可延伸交換器的基礎迷你埠邊緣會完成OID_SWITCH_PORT_TEARDOWN的 OID 集合要求,並傳回下列狀態碼。
狀態碼 | 描述 |
---|---|
NDIS_STATUS_SUCCESS |
OID 要求已成功完成。 |
規格需求
版本 |
NDIS 6.30 和更新版本支援。 |
標頭 |
Ntddndis.h (包括 Ndis.h) |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應