SR-IOV是什么

2022-6-21 356 6/21

SR-IOV

即Single Root I/O Virtualization,微软VT-D(英特尔支持直接 I/O 访问的 VT虚拟化技术)的扩展,允许虚拟化OS对物理服务器的磁盘I/O设备进行封装,管理甚至共享。

原理

在虚拟机中,一切皆虚拟。比如网卡,虚拟机看来好像有一个真实网卡,但是这个网卡是宿主机虚拟出来的硬件,也就是一堆软件代码而已,没有真实硬件。虚拟虽然万能,但是通过一堆代码执行是需要CPU去执行的,会拖累宿主机的性能。

VT-D这个功能可以将物理的PCI-e设备直接分配给虚拟机,让虚拟机直接控制硬件,但是,虚拟机会独占这个直通的PCI-e设备,一台宿主机可能有成百上千个虚拟机,但不可能有成百上千个PCI-e设备,为此,Intel提出来SR-IOV,SR-IOV最初应用在网卡上,简单的说,就是一个物理网卡可以虚拟出来多个轻量化的PCI-e物理设备,从而可以分配给虚拟机使用。

SR-IOV是什么

优点

SR-IOV是虚拟化的一个重要功能,启用SR-IOV的这个功能,将SR-IOV网卡直接加载给虚拟机使用,将大大减轻宿主机的CPU负荷,提高网络性能,降低网络时延等。

实现

首先需要开启Intel VT-D功能,若为ADM则需修改IOMMU选项,SR-IOV网卡可以理解为将物理网卡做切割,分割成多个虚拟网卡,它需要物理机IOMMU支持,同理还有GPU卡透传、vGPU虚拟化,都需要IOMMU支持。

IOMMU:Input/Output Memory Management Unit,传统的内存管理单元会把CPU访问的虚拟地址转化成实际的物理地址,而IOMMU则是把设备(device)访问的虚拟地址转化成物理地址。在虚拟化平台中,IOMMU维持guest-physical和host-physical内存地址之间的转换表,这样虚拟机就知道它所访问的物理机实际的内存地址了。

并非所有的网卡都支持SR-IOV功能,Inter官网查看地址:支持SR-IOV网卡列表

- THE END -
Tag:

Tenkms

12月01日00:05

最后修改:2023年12月1日
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论