• 登录
社交账号登录

XSMARTNIC智能网卡OVS OFFLOAD

作者:小编 更新时间:2022-03-31 点击数:

一、方案概述

近年来,随着云计算技术的飞速发展,云规模的不断扩大,业务层面对网络延迟、带宽的要求越来越高;在虚拟网络中采用OvS-DPDK方式来加速网络报文处理,相对于OvS kernel datapath确实能够带来明显的性能提升,但是此方式在性能扩展及成本效益间存在局限性,已经不能满足越来越高的性能需求。

行业内将虚拟网络的加速功能聚焦到硬件层面来实现,如ASIC、智能网卡、DPU等方案,利用网卡更接近网络数据的特点,实现网卡内完成网络转发及动作的

RAYMAX紧跟行业发展,在多年的技术积累下快速实现了xSmartNIC智能网卡产品落地。其中,xSmartNIC HWAS是一款基于FPGA的网卡且支持OvS data plane offload功能,使用自研的xSmartNIC HWAS技术能显著提升虚拟机网络性能。

二、方案架构

xSmartNIC HWAS方案是基于开源项目Open vSwitch和DPDK来实现的,总体实现架构如下图1所示。

在虚拟化环境下,OvS使用DPDK来加速,其data plane都在用户态实现,QEMU虚拟机使用xSmartNIC SR-IOV特性配置成VF直通模式。当使能HWAS特性后,DPDK驱动与xSmartNIC PF交互数据,从物理口进来的会话首包进入OvS后会触发流表 Offload流程(红色箭头表示),最终在xSmartNIC HWAS模块中会维护所有流表规则,该会话的后续数据帧则直接在网卡硬件中处理并转发给指定VF,对应的虚拟机就能接收到数据包。从虚拟机发出的会话包也是相同的处理流程。

xOVS.png

图1:xSmartNIC HWAS构架


三、方案特性

xSmartNIC HWAS方案主要特性如下:

★2个物理端口,每个端口最大带宽为10Gbps (可升级至25Gbps)

★支持OvS offload基本功能(vlan/L2/L3/L4匹配及动作)

★支持流表规则模糊匹配

★支持OvS group offload

★流表规格:2K/PF x 2

★VF规格:6/PF x 2


四、方案优势

目前传统的虚拟化环境下QEMU虚拟机的网络使用VirtIO方式与OvS连通,数据收发过程中有内存拷贝;且在HOST有多虚拟机的场景下,虚拟网络性能会受服务器系统资源(如内存总线带宽、cache等)负荷而波动,整体网络带宽和时延性能较差。xSmartNIC HWAS方案相对于传统方式性能有极大提升,以下是对比测试分析。

1.OvS直接转发

测试方法及环境搭建如下图2a所示,OvS 从Port0接收数据,处理后仍从Port0口转发出去。图2b为当xSmartNIC开启HWAS模式后(即Offload模式),将流表规则从OvS offload到网卡后,数据在xSmartNIC处理完后直接完成转发,不再进入OvS软件数据平面。


xovs1.jpg


在进行如上所述的对比测试后,xSmartNIC offload功能对64B小包带宽性能提升1倍多,延迟显著下降,数据如表1。

表1:xSmartNIC OvS HWAS 对比测试结果

Type

Single-Port Bandwidth

(Gbps)

Dual-Port Bandwidth

(Gbps)

Delay

(us)

非offload模式

3.6

6.8

16

offload模式

7.6

14

2.5

2. OvS虚拟化环境下的数据转发

使用VirtIO 方式时如下图3a所示,port1为Vhost-user类型端口,QEMU虚拟机使用对应的VirtIO-Net驱动并且testpmd使用单核单队列方式转发数据。

当xSmartNIC开启HWAS模式(即OvS offload)时如下图3b所示,QEMU虚拟机的网络设备使用SR-IOV直通方式,OvS datapath处理直接在xSmartNIC网卡中实现。

xovs3.jpg

xovs4.jpg

按照上述两种方式,当PF0处理4台虚拟机时(每台虚拟机独立转发数据包),带宽和时延对比测试如下图4所示,结果表明xSmartNIC HWAS加速功能能极大提升虚拟机的网卡带宽和降低网络时延。

xovs5.jpg

分享按钮