ZStack实践汇 | SR-IOV实践指南

本文详细介绍了SR-IOV技术,包括原理、使用流程、场景实践和性能对比测试。通过ZStack平台,展示了如何在Linux和Windows系统中配置和使用SR-IOV,强调了其在网络性能提升和资源利用率方面的优势。测试结果显示,VF网卡相比普通vNIC在延迟和带宽上有显著优势。
摘要由CSDN通过智能技术生成

第一章 SR-IOV介绍

1.1 概述

SR-IOV(Single Root I/O Virtualization)是一种基于硬件的虚拟化解决方案,它允许多个云主机高效共享PCIe设备,且同时获得与物理设备性能媲美的I/O性能,能有效提高性能和可伸缩性。可适用于网络NFV、云游戏、视频流(UDP)等对网络性能、传输速度要求极高的应用场景。本文将以型号为Mellanox Technologies MT27710 Family [ConnectX-4 Lx]的物理网卡为例,详细介绍ZStack SR-IOV在Linux系统和Windows系统中的安装使用,以及带SR-IOV的VF云主机网络性能和普通虚拟机网卡网络性能之间的对比。

1.2 SR-IOV原理介绍

ZStack支持基于SR-IOV规范,通过硬件技术,将物理网卡(PF)虚拟化切割成多张虚拟(VF)类型网卡,直接分配给云主机使用的功能。与传统的KVM里数据包传输过程相比,VF网卡可越过虚拟化层,缩短数据传输路径,使云主机获得接近物理设备的I/O性能,明显减少数据传输对物理机CPU资源的消耗,即使物理机CPU压力较大,也能有效减少网络丢包,提高传输效率,如下图所示:
在这里插入图片描述

SR-IOV属于VT-d技术的一个分支,VT-d 的性能非常好,但是它的物理设备只能分配给一个虚拟机使用。为了实现多个虚拟机共享一个物理设备,并且达到直接分配的目的, SR-IOV以原生地支持实现多个客户机共享一个设备的效果,广泛应用在网卡上。

SR-IOV引入了两种功能类型:

1)物理功能(Physical Function,PF)

用于支持 SR-IOV 功能中的 PCI 功能,如 SR-IOV 规范定义。PF 包含 SR-IOV 功能结构,用于管理 SR-IOV 功能。PF 是全功能的 PCIe 功能,可以像其他任何 PCIe 设备一样对数据进行发现、管理和处理。PF 拥有完全的配置资源,可以用于配置或控制 PCIe 设备。

2)虚拟功能(Virtual Function,VF)

与物理功能关联的一种功能。VF 是一种轻量级 PCIe 功能,可以与物理功能以及同一物理功能关联的其他 VF 共享一个或多个物理资源。VF仅允许拥有用于其自身行为的配置资源。

每个SR-IOV设备都可有一个PF,并且每个PF有其关联的VF。PF可以通过寄存器创建VF,这些寄存器设计有专用于此目的的属性。

在PF中启用了SR-IOV,就可以通过PF的总线、设备和功能编号,访问各个VF的PCI配置空间,实现弹性灵活使用资源的同时,提高资源利用率、节约成本。如下图所示:
在这里插入图片描述

第二章 SR-IOV使用流程

2.1 准备工作
说明:本文档采用ZStack3.9.0版本,服务器网卡以Mellanox Technologies MT27710 Family [ConnectX-4 Lx]为例
1)配置物理机BIOS,打开SR-IOV功能,并打开Intel® VT。不同服务器的BIOS中启动IOMMU的方法有差别,可根据实际情况配置。
在这里插入图片描述
在这里插入图片描述

2)请确保物理网卡支持SR-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值