共用方式為


列舉網路介面卡上的虛擬埠

過度配置驅動程式或使用者應用程式可以在支援單一根目錄 I/O 虛擬化 (SR-IOV) 之網路介面卡的 NIC 交換器上,取得 VPort) s (VPorts 的所有虛擬埠清單。 驅動程式或應用程式會發出物件識別碼, (OID) 方法要求 OID_NIC_SWITCH_ENUM_VPORTS 以取得此清單。

從這個 OID 查詢要求成功傳回之後,NDIS_OID_REQUEST結構的InformationBuffer成員會包含緩衝區的指標,其中包含下列專案:

在過度處理驅動程式或使用者應用程式發出 OID_NIC_SWITCH_ENUM_VPORTS 要求之前,它必須先初始化與要求一起傳遞 的NDIS_NIC_SWITCH_VPORT_INFO_ARRAY 結構。 初始化 NDIS_NIC_SWITCH_VPORT_INFO_ARRAY 結構時,驅動程式或應用程式必須遵循下列指導方針:

  • 如果在 Flags 成員中設定NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH旗標,則會針對在指定的 NIC 交換器上建立的所有 VPort 傳回信息。 NIC 參數是由該結構的 SwitchId 成員所指定。

    注意從 Windows Server 2012 開始,SR-IOV 介面僅支援網路介面卡上的一個 NIC 交換器。 此參數稱為 預設 NIC 參數,並由NDIS_DEFAULT_SWITCH_ID識別碼參考。 不論 Flags 成員中設定的旗標為何, SwitchId 成員都必須設定為 NDIS_DEFAULT_SWITCH_ID。

  • 如果在 Flags 成員中設定NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_FUNCTION旗標,則會傳回附加至指定 PCI Express (PCIe) 實體函式 (PF) 或虛擬函式 (網路介面卡上 VF) 的所有 VPorts 資訊。 PF 或 VF 是由該結構的 AttachedFunctionId 成員所指定。

    如果 AttachedFunctionId 成員設定為 NDIS_PF_FUNCTION_ID,則會傳回所有 VPorts 的資訊。 這包括連結至 PF 的預設 VPort。 如果 AttachedFunctionId 成員設定為有效的 VF 識別碼,則會針對附加至指定 VF 的所有 VPort 傳回信息。

    注意從 Windows Server 2012 開始,只有一個非預設 VPort 可以附加至 VF。 不過,多個 VPorts (包括預設 VPort) 可以附加至 PF。

  • 如果 Flags 成員設定為零,則會針對連接至網路介面卡上 PF 或 VF 的所有 VPort 傳回信息。 在此情況下, 會忽略 SwitchIdAttachedFunctionId 的值。

NDIS 會處理迷你埠驅動程式 的OID_NIC_SWITCH_ENUM_VPORTS 要求。 NDIS 會從其維護之資料的內部快取傳回信息,以檢查下列來源: