20.16.9.7. PCI 透传
PCI 网络设备(由
源
元素指定)直接分配至使用通用设备透传的客户机虚拟机,然后首先将设备的 MAC 地址设置为配置的值,并将设备与 802.1Qbh 进行交换机关联,并使用可选的指定 虚拟端口
元素(请参阅上述为 type='direct 的网络设备提供的虚拟端口的示例)。请注意 - 由于标准单端口 PCI 以太网卡驱动程序设计的限制 - 只有 SR-IOV(Single Root I/O 虚拟化)虚拟功能(VF)设备可以采用这种方式分配;若要为客户机虚拟机分配一个标准单端口 PCI 或 PCIe 以太网卡,请使用传统的 hostdev
设备定义
请注意,网络设备的这种"智能直通"与标准
hostdev
设备的功能非常相似,这种方法的区别在于,这种方法允许为通过设备指定 MAC 地址 和虚拟端口
。如果没有需要这些功能,如果您有一个支持 SR-IOV 的标准单端口 PCI、PCIe 或 USB 网卡(因此,在分配到客户机虚拟机域后,任何时候都会丢失配置的 MAC 地址),或者如果您使用比 0.9.11 旧版本的 libvirt.9.11,您应该使用标准 hostdev
将设备分配给 guest 虚拟机而非 host/dev
。
图 20.44. devices - 网络接口 - PCI 透传
... <devices> <interface type='hostdev'> <driver name='vfio'/> <source> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </source> <mac address='52:54:00:6d:90:02'> <virtualport type='802.1Qbh'> <parameters profileid='finance'/> </virtualport> </interface> </devices> ...