PCIe SR-IOV与虚拟化:单根I/O虚拟化深度解析
摘要:SR-IOV(Single Root I/O Virtualization)是PCIe规范定义的硬件级虚拟化技术,允许单个物理设备(PF)虚拟出多个虚拟功能(VF),每个VF可独立分配给不同虚拟机。本文从SR-IOV架构出发,详解PF/VF的关系、VF的资源分配机制、Migration与Live Migration的实现挑战,以及在NFV/云场景下的实际应用案例。────────────────────────────────────────────────────────────1. SR-IOV核心概念传统虚拟化中,VM访问PCIe设备需要Hypervisor介入(软件模拟或直通),存在性能开销。SR-IOV通过硬件虚拟化,让VM直接访问设备,接近原生性能。1.1 PF与VF的关系实体全称数量功能PFPhysical Function1个管理设备、配置VF、全局控制VFVirtual Function1~数百个独立的数据通路,可直通给VMPF拥有完整的配置空间和管理能力,负责创建/销毁VFVF是轻量级功能单元,拥有独立的配置空间(但能力受限)VF之间硬件隔离,互不影响每个VF有独立的BDF号,可被系统独立枚举1.2 SR-IOV Extended CapabilitySR-IOV通过PCIe Extended Capability结构暴露能力(Capability ID = 0x10):