共用方式為


SR-IOV 資料路徑概觀

當 Hyper-V 子分割啟動且客體作業系統正在執行時,虛擬化堆疊會啟動網路虛擬網路用戶端 (NetVSC) 。 NetVSC 會將虛擬機器公開 (VM) 網路介面卡,方法是將迷你埠驅動程式邊緣提供給客體作業系統中執行的通訊協定堆疊。 此外,NetVSC 提供通訊協定驅動程式邊緣,可讓它系結至基礎迷你埠驅動程式。

NetVSC 也會與在 Hyper-V 父分割區管理作業系統中執行的 Hyper-V 可延伸交換器通訊。 可延伸交換器元件會以網路虛擬服務提供者的形式運作, (NetVSP) 。 NetVSC 與 NetVSP 之間的介面提供軟體資料路徑,稱為 綜合資料路徑。 如需此資料路徑的詳細資訊,請參閱 SR-IOV 綜合資料路徑

如果實體網路介面卡支援單一根目錄 I/O 虛擬化 (SR-IOV) 介面,它可以啟用一或多個 PCI Express (PCIe) Virtual Functions (VFs) 。 每個 VF 都可以附加至 Hyper-V 子分割區。 發生這種情況時,虛擬化堆疊會執行下列步驟:

  1. 虛擬化堆疊會公開客體作業系統中 VF 的網路介面卡。 這會導致客體作業系統中執行的 PCI 驅動程式啟動 VF 迷你埠驅動程式。 此驅動程式是由 SR-IOV 網路介面卡的獨立硬體廠商 (IHV) 提供。

  2. 載入並初始化 VF 迷你埠驅動程式之後,NDIS 會將客體作業系統中 NetVSC 的通訊協定邊緣系結至驅動程式。

    注意 NetVSC 只會系結至 VF 迷你埠驅動程式。 客體作業系統中沒有其他通訊協定堆疊可以系結至 VF 迷你埠驅動程式。

在 NetVSC 成功系結至驅動程式之後,客體作業系統中的網路流量會透過 VF 資料路徑發生。 封包是透過網路介面卡的基礎 VF 傳送或接收,而不是綜合資料路徑。

如需 VF 資料路徑的詳細資訊,請參閱 SR-IOV VF 資料路徑

下圖顯示透過 SR-IOV 網路介面卡支援的各種資料路徑。

此圖顯示 SR-IOV 配接器具有管理父分割區,以及包含客體作業系統的兩個子分割區。

在啟動 Hyper-V 子分割區並建立 VF 資料路徑之前,網路流量會流經綜合資料路徑。 建立 VF 資料路徑之後,如果下列條件成立,網路流量可以還原為綜合資料路徑:

  • VF 會變成未連結至 Hyper-V 子分割區。 例如,虛擬化堆疊可以將 VF 與某個子分割區中斷連結,並將它附加至另一個子分割區。 當基礎 SR-IOV 網路介面卡上有 VF 資源執行時,可能會發生此情況。

    從 VF 資料路徑容錯移轉至綜合資料路徑的程式稱為 VF 容錯移轉

  • Hyper-V 子分割區正在即時移轉至不同的主機。

如需 VF 容錯移轉和即時移轉的詳細資訊,請參閱 SR-IOV VF 容錯移轉和即時移轉