SR-IOV 体系结构
本部分简要概述了单根 I/O 虚拟化 (SR-IOV) 接口及其组件。
下图显示了 Windows Server 2012 中从 NDIS 6.30 开始的 SR-IOV 组件。
SR-IOV 接口由以下组件组成:
Hyper-V 可扩展交换机模块
可扩展交换机模块,用于配置 SR-IOV 网络适配器上的 NIC 交换机,以提供与 Hyper-V 子分区的网络连接。
注意 Hyper-V 子分区称为 虚拟机 (VM) 。
如果子分区连接到 PCI Express (PCIe) Virtual Function (VF) ,则可扩展交换机模块不会参与 VM 与网络适配器之间的数据流量。 相反,数据流量直接在 VM 与其附加到的 VF 之间传递。
有关可扩展交换机的详细信息,请参阅 Hyper-V 可扩展交换机。
物理函数 (PF)
PF 是支持 SR-IOV 接口的网络适配器的 PCI Express (PCIe) 功能。 PF 在 PCIe 配置空间中包含 SR-IOV 扩展功能。 该功能用于配置和管理网络适配器的 SR-IOV 功能,例如启用虚拟化和公开 VF。
有关详细信息,请参阅 SR-IOV 物理函数 (PF) 。
PF 微型端口驱动程序
PF 微型端口驱动程序负责管理一个或多个 VF 使用的网络适配器上的资源。 因此,在为 VF 分配任何资源之前,PF 微型端口驱动程序将加载到管理操作系统中。 释放为 VF 分配的所有资源后,PF 微型端口驱动程序将停止。
有关详细信息,请参阅 编写 SR-IOV PF 微型端口驱动程序。
虚拟函数 (VF)
VF 是支持 SR-IOV 接口的网络适配器上的轻型 PCIe 函数。 VF 与网络适配器上的 VF 相关联,表示网络适配器的虚拟化实例。 每个 VF 都有自己的 PCI 配置空间。 每个 VF 还与 PF 和其他 PF 共享网络适配器上的一个或多个物理资源,例如外部网络端口。
有关详细信息,请参阅 SR-IOV Virtual Functions (VFs) 。
VF 微型端口驱动程序
VF 微型端口驱动程序安装在 VM 中以管理 VF。 VF 微型端口驱动程序执行的任何操作不得影响同一网络适配器上的任何其他 VF 或 PF。
有关详细信息,请参阅 编写 SR-IOV VF 微型端口驱动程序。
网络接口卡 (NIC) 交换机
NIC 交换机是支持 SR-IOV 接口的网络适配器的硬件组件。 NIC 交换机在适配器上的物理端口与内部虚拟端口之间转发网络流量, (VPorts) 。 每个 VPort 都附加到 PF 或 VF。
有关详细信息,请参阅 NIC 开关。
虚拟端口 (VPort)
VPort 是一个数据对象,表示支持 SR-IOV 接口的网络适配器的 NIC 交换机上的内部端口。 与物理交换机上的端口类似,NIC 交换机上的 VPort 向/从该端口连接到的 PF 或 VF 传递数据包。
有关详细信息,请参阅 NIC 开关。