欢迎光临深圳市联瑞电子有限公司官网!
全国服务热线 : 4000-588-108 | 网站地图 | English 京东店铺 淘宝店铺1688店铺天猫店铺 关注LR-LINK官方微博
LR-LINK联瑞电子官网
[返回上一页]您现在的位置:首页 > 新闻中心 > 选型指导
选型指导

虚拟化网卡怎么选?SR-IOV直通和半虚拟化对比

2026-07-17 选型指导SR-IOV直通网卡,virtio半虚拟化网卡,KVM网卡直通,VMware ESXi网卡,25G SFP28网卡 浏览: 21

搭建虚拟化平台时,网卡接入模式的选择直接影响虚拟机网络性能。SR-IOV直通能绕过Hypervisor降低延迟,virtio半虚拟化在兼容性和性能之间取得平衡,而模拟网卡虽然通用但开销巨大。3种模式各有适用场景,选错了会导致吞吐量腰斩、CPU占用飙升。

先搞清楚:虚拟化环境里网卡是怎么工作的

物理服务器跑虚拟化之后,虚拟机并不能直接使用物理网卡。Hypervisor需要在物理网卡和虚拟网卡之间加一层抽象——问题就出在这一层怎么处理。

处理方式的差异,决定了网络性能的上限。目前主流有3种模式:

虚拟化网卡3种接入模式 · 数据路径对比 模拟模式 Guest VM 虚拟网卡驱动(模拟) QEMU全栈模拟 Hypervisor 软件交换+协议转换 物理网卡(PF) CPU开销: 高 每次I/O经完整协议栈 延迟: 50-200μs 半虚拟化(virtio) Guest VM Virtio前端驱动 Virtqueue共享环形缓冲 Hypervisor Virtio后端处理 物理网卡(PF) CPU开销: 中 Virtqueue减少上下文切换 延迟: 15-50μs SR-IOV直通 Guest VM VF直通驱动 绕过Hypervisor数据面 Hypervisor(仅管理) 不参与数据转发 物理网卡(VF) CPU开销: 极低 硬件级数据面旁路 延迟: 2-8μs
3种虚拟化网卡模式的数据路径差异:模拟模式经过完整软件栈,virtio通过共享环形缓冲优化,SR-IOV直通让VM直接访问物理网卡VF

模拟模式:Hypervisor用软件完整模拟一块网卡的行为。Guest OS以为自己在操作一块真实的Intel或Realtek网卡,实际上每次收发数据包都要经过QEMU用户态进程和Hypervisor内核态的多次上下文切换。性能损耗最大,但兼容性最好——几乎所有操作系统无需安装额外驱动。

半虚拟化(virtio):Guest OS知道自己跑在虚拟化环境里,安装virtio前端驱动后,通过Virtqueue共享环形缓冲区与Hypervisor的virtio后端通信。数据不需要经过完整的协议栈模拟,减少了上下文切换次数。KVM和Proxmox VE默认使用virtio。

SR-IOV直通:物理网卡通过SR-IOV(Single Root I/O Virtualization)技术将自身拆分为多个虚拟功能单元(VF),每个VF直接分配给一个虚拟机。数据面完全绕过Hypervisor,虚拟机中的驱动直接操作硬件寄存器。这是目前延迟最低、吞吐量最接近裸金属的方案。

SR-IOV的前提条件

SR-IOV需要3个条件同时满足:物理网卡支持SR-IOV、主板BIOS开启VT-d/IOMMU、Hypervisor版本支持VF分配。缺一不可。

3种网卡接入模式的技术差异

从性能角度看,3种模式的差距不是"略有不同",而是数量级的差别。

~95%
SR-IOV直通可达裸金属吞吐量的95%以上
2-8μs
SR-IOV直通模式下的网络延迟
<5%
virtio模式CPU开销占比(单核)
对比维度模拟模式半虚拟化(virtio)SR-IOV直通
吞吐量1-3Gbps8-20Gbps接近裸金属线速
延迟50-200μs15-50μs2-8μs
CPU开销高(30-50%单核)低(<5%单核)极低(接近0)
Guest驱动要求无需额外驱动需安装virtio驱动需VF直通驱动
热迁移支持支持支持受限(需特殊处理)
隔离性软件隔离软件隔离硬件级隔离
适用场景测试/管理网络通用业务/存储网络高性能计算/低延迟
核心结论

模拟模式只适合管理网络和测试环境;virtio是大多数生产场景的默认选择;SR-IOV直通用于对延迟和吞吐量有硬性要求的场景。

LR-LINK哪些网卡支持SR-IOV

SR-IOV是网卡硬件层面的能力。不是所有网卡都支持——需要网卡控制器本身具备VF拆分功能。LR-LINK基于Intel主控的10G/25G/100G网卡系列普遍支持SR-IOV。

接口 2×10G RJ45
PCIe 3.0 x8
功耗 9.6W
SR-IOV 支持
查看详情

LRES1012PT 是双口10G电口网卡,基于Intel X710主控,PCIe 3.0 x8接口,功耗9.6W。适合已有Cat6a铜缆布线的虚拟化环境,100米内稳定传输。Intel X710支持最多64个VF,意味着单张网卡可以为64个虚拟机各自分配独立的VF实例。

接口 2×25G SFP28
PCIe 3.0 x8
功耗 8.9W
SR-IOV 支持
查看详情

LRES1001PF-2SFP28 是双口25G光口网卡,基于Intel XXV710主控,PCIe 3.0 x8,单口功耗8.9W。25G速率在虚拟化场景中性价比突出——相比10G提升2.5倍带宽,而网卡和交换机成本远低于100G方案。

接口 4×25G SFP28
PCIe 4.0 x8
功耗 22.0W
SR-IOV 支持
查看详情

LRES1027PF-4SFP28 是四口25G光口网卡,基于Intel E810主控,PCIe 4.0 x8,支持SR-IOV。同时支持iWARP和RoCE v2 RDMA。4个物理端口(PF)各自可以独立创建VF,VF总数可达128个以上。RDMA支持使其在分布式存储(Ceph)和AI推理集群中表现突出。

接口 1×100G QSFP28
PCIe 4.0 x16
功耗 19.2W(DAC)
SR-IOV 支持
查看详情

LRES1019PF-QSFP28 是单口100G网卡,基于Intel E810主控,PCIe 4.0 x16,支持SR-IOV。100G单端口在SR-IOV模式下可以为多个虚拟机提供接近线速的带宽,适合大数据和AI训练场景中的参数同步需求。

VF数量不是越多越好

虽然一张网卡可以创建几十个VF,但所有VF共享物理端口的总带宽。如果64个VM同时跑满流量,每个VM分到的实际带宽会大幅下降。建议根据实际VM数量和带宽需求规划VF分配,通常每个物理端口分配8-16个VF即可覆盖大多数场景。

主流虚拟化平台的配置要点

VMware ESXi

ESXi对SR-IOV的支持从6.0版本开始引入。在vSphere Client中,进入"主机 → 配置 → 网络 → 物理适配器",选择支持SR-IOV的网卡,启用SR-IOV并设置VF数量。之后在虚拟机的网络适配器设置中选择"SR-IOV直通"类型,绑定到指定VF。

ESXi的SR-IOV直通网卡不支持vMotion热迁移——这是VMware的已知限制(参见VMware官方文档:SR-IOV配置)。如果虚拟机需要热迁移能力,管理网络和管理VMkernel适配器必须走标准虚拟交换机(vSwitch或vDS),只有业务数据网络才用SR-IOV直通。

Proxmox VE (PVE)

PVE基于KVM,天然支持virtio和SR-IOV。virtio是默认网卡模式,安装Guest OS时选择"VirtIO (paravirtualized)"即可。

SR-IOV直通需要额外几步:在PVE宿主机的 /etc/default/grub 中添加 intel_iommu=on,更新grub后重启。然后在网卡配置界面将物理网卡启用SR-IOV,创建VF后通过PCI直通(PCI Passthrough)分配给虚拟机。

PVE的混合方案

在Proxmox VE中,推荐管理网络使用virtio(支持热迁移),存储网络(Ceph/iSCSI)和业务高性能网络使用SR-IOV直通。两种模式可以在同一台宿主机上共存,只要物理网卡有足够的VF。

KVM/libvirt

原生KVM环境下,SR-IOV的配置通过virsh或libvirt XML完成(参见libvirt官方文档:PCI Passthrough)。使用vfio-pci驱动将VF绑定到虚拟机:

<interface type='hostdev'>
  <source>
    <address type='pci' domain='0x0000' bus='0x03' slot='0x02' function='0x1'/>
  </source>
  <mac address='52:54:00:xx:xx:xx'/>
</interface>

KVM环境下virtio和SR-IOV的灵活性最高——virtio支持热迁移、快照、带宽QoS限制;SR-IOV提供最佳性能但牺牲部分管理灵活性。

什么时候用什么模式

场景推荐模式推荐网卡理由
管理网络/VMkernelvirtioLRES1012PT 10G需要热迁移支持,带宽需求低
通用业务VMvirtioLRES1001PF-2SFP28 25G性能足够,管理灵活
分布式存储(Ceph)SR-IOVLRES1027PF-4SFP28 25G×4低延迟+RDMA减少存储同步开销
AI训练/推理集群SR-IOVLRES1019PF-QSFP28 100G参数同步需要高带宽低延迟
开发测试环境模拟/virtioLRES1012PT 10G兼容性优先,性能要求不高
选型建议

生产环境默认选virtio,只在有明确性能瓶颈时才上SR-IOV。SR-IOV不是"更先进所以更好",而是"牺牲管理灵活性换取极致性能"——只有当virtio的性能确实不够用时,才值得承担热迁移受限、配置复杂度增加的代价。

常见问题

SR-IOV直通和PCI直通有什么区别?

PCI直通(Passthrough)是将整块物理网卡分配给一个虚拟机,一张网卡只能给一个VM用。SR-IOV通过网卡硬件将一块物理网卡拆分为多个VF,每个VF可以独立分配给不同的虚拟机,大幅提高了网卡利用率。一张四口25G网卡通过SR-IOV可以同时服务几十个虚拟机,而PCI直通模式下只能服务4个。

virtio网卡需要Guest OS安装额外驱动吗?

需要。Linux内核从2.6.25版本开始内置virtio驱动,大部分现代Linux发行版开箱即用。Windows系统需要安装VirtIO-Windows驱动包(通常由虚拟化平台提供ISO镜像)。如果Guest OS没有virtio驱动,只能回退到模拟模式。

SR-IOV模式下虚拟机还能热迁移吗?

受限。VMware ESXi不支持SR-IOV直通网卡的vMotion。KVM环境下可以通过先取消VF绑定、迁移、再重新绑定的方式实现,但过程中网络会短暂中断。如果热迁移是硬性需求,建议管理网络走virtio,只在不需要迁移的固定VM上使用SR-IOV。

虚拟化环境选10G还是25G网卡?

如果从零开始搭建,推荐25G方案。25G相比10G带宽提升2.5倍,而SFP28端口和线缆成本与10G SFP+接近,交换机端口密度更高。对于已有10G布线的存量环境,升级到25G需要更换线缆和交换机,可以继续使用10G网卡并通过SR-IOV优化性能。

一张网卡能同时跑virtio和SR-IOV吗?

可以。物理网卡的管理功能(PF)由Hypervisor使用,可以创建虚拟交换机走virtio模式;同时网卡创建多个VF分配给特定VM走SR-IOV直通。两种模式在同一张网卡上共存,这也是生产环境的推荐做法——管理网络走virtio保证灵活性,业务网络走SR-IOV保证性能。

本文涉及产品

粤ICP备18078389号      Copyright © All Rights Reserved. 深圳市联瑞电子有限公司 版权所有
网安备案标识

粤公网安备 44030602003563号

产品咨询
关注官方微信
技术支持
关注官方微信
客服电话服务电话

服务热线:
4000-588-108