APP下载

基于PKS 体系的国产智能网卡现状研究分析

2023-11-10李亮陈茹萍方鲁杰韩宇峥姜冰徐志亮袁泉

电子技术应用 2023年10期
关键词:网卡智能网架构

李亮,陈茹萍,方鲁杰,韩宇峥,姜冰,徐志亮,袁泉

(1.中电(海南)联合创新研究院有限公司,海南 澄迈 571924;2.海南省 PK 体系关键技术研究重点实验室,海南 澄迈 571924;3.中软信息系统工程有限公司,中国 北京 102209)

0 引言

国产化网络技术创新和应用已经成为国内发展的主流趋势,互联网数据和信息安全问题也越来越得到国家的重视。为了我国互联网络技术的不断发展壮大,构造我国自主创新的网信产业体系,使国产信息化产品更好地与国产计算机体系进行适配,中国电子信息产业集团于2019 年发布了完全独立自主研发的国产化计算机软硬件基础体系—PKS 体系[1],它具有自主、安全、可控的特性。

在这个大背景下,国家网信产业的发展也带动了国产智能网卡的发展。国产智能网卡相较于普通网卡,在业务卸载、基于硬件级别的网络虚拟化和网络安全等方面都有较大优势。将国产智能网卡加入PKS 体系中,可以进一步加强计算机底层软硬件的网络自主安全能力。

本文研究了基于 PKS 体系下国产智能网卡在不同场景的性能规律,发现现阶段国产智能网卡在实际应用中存在的问题,为用户选择国产智能网卡提供数据参考,同时推动国产智能网卡厂商对其进行优化,加速PKS 体系对网络自主安全可控的研究。

1 研究内容

1.1 研究背景

PKS 体系是由中国电子自主研发的绿色、开放、共享、安全的数字原生态架构体系。其中P 代表Phytium飞腾处理器,K 代表Kylin 麒麟操作系统,S 代表Security注入安全能力[2]。PKS 体系将国产化操作系统和CPU(Central Processing Unit)处理器进行整合,并将安全注入到最底层,形成一条完整的国产化计算机产业链。PKS 体系代表国家自主网信产业的主流趋势,也被称为“中国架构”。

PKS 体系的架构优势总结为以下三点[3-5]:

(1) 国际首次采用CPU 的内置可信技术:将可信计算融入到飞腾CPU中,并且通过可信任白名单嵌入到麒麟操作系统,实现可信计算和安全防护的双体系结构。

(2) 国际首次采用内存内置物理防护技术:在内存控制层内置硬件防护芯片,对关键代码和数据进行实时的权限管理。

(3)终端统一安全中心、云端统一安全管控:在终端统一安全防护软件接口、在云端统一安全管控接口,使常规安全软件与PKS 底层核心一体化来提升安全防护效果和效率。

PKS 体系加强了网络安全防护,通过处理器内核间物理隔离和物理安全防护,将可信计算3.0 主动免疫隔离出可信核用于可信计算、内存隔离、I/O 隔离等,并通过将白名单机制嵌入到麒麟操作系统中进行全流程监控管理。可信计算3.0 技术将可信计算融入到处理器进行安全防护,为网络信息系统培养主动免疫能力,形成操作系统和存储控制器多级最底层的体系防护。

PKS 体系的网络安全防护[3]如图1 所示。

图1 PKS 可信双体系防护

目前PKS 体系已经在数据库、云计算等方面得到应用,形成一条完整安全的国产化计算机产业链,但是随着我国互联网技术不断发展壮大,在云存储和虚拟化平台网络数据和信息安全等方面的问题也在不断显露出来,因为大量的业务需求致使网络数据流量快速增长,加重了宿主机的硬件负担,虽然软件优化可以增强转发性能[6],但是仍然存在以下几个问题:

(1)虚拟交换机在使用时会占用服务器的多个CPU核,大量消耗宿主机的计算资源,造成企业的成本增加和资源浪费。

(2)随着服务器网口带宽的提升,到了25 Gb/s 甚至100 Gb/s 之后,服务器用于处理数据报文的开销越来越大,软件优化方案无法解决面临的性能瓶颈,无法满足高速增长的高网络带宽的需求。

1.2 国产智能网卡

国产智能网卡的出现是为了实现对各种虚拟化网络的支持,并将网络、存储和系统需要利用宿主机高资源的网络功能进行卸载,提升数据处理能力,释放硬件资源,并将其加入PKS 体系,提升网络的安全隔离能力。

国产智能网卡架构技术特点:

(1)国产智能网卡可以实现对部分网络功能的卸载,提高网络吞吐量,减少宿主机的负载。

(2)国产智能网卡具有独立的计算单元,能够完成特定的重组加速和安全加速等功能。

(3)国产智能网卡具备可定制功能,根据需求灵活定制新的功能特性,可以执行特定的网络和数据功能,增加一定的逻辑后还可以实现部分vSwitch 的功能[7]。

目前国内流行的国产智能网卡主要分为三类:基于ASIC(Application Specific Integrated Circuit)架构、基于FPGA(Field-Programmable Gate Array)架构、基于SoC(System on Chip)架构。

基于ASIC 架构使用专用网络通道,通过多线程微处理器加速内核为用户提供最高使用性能,同时降低CPU 负担。ASIC 架构的智能网卡成本低,性能优,但其开发周期长,设计完成后逻辑固化不可更改。

基于FPGA 架构通过使用FPGA 编程对智能网卡的通用逻辑和可重构处理逻辑进行重新编辑,编程后可以满足不同要求的使用需求。FPGA 智能网卡灵活性高,但是其成本较高,难编译。

基于SoC 架构设计是集合ASIC 和FPGA 编程的集成CPU 处理器,它拥有前两种的所有优势,可以零消耗实现虚拟化层。SoC 智能网卡的实用性强,易操作,更具有实际应用价值。

本文所研究的国产智能网卡是采用国产多核处理器+FPGA 的协同架构,提供高性能和可编程能力。FPGA 可编程能力可以根据需求灵活定制新的功能特性,并且内置国产CPU 也可加强网络传输的安全性,起到网络安全隔离的作用[8],国产智能网卡是国产化网络安全体系不可或缺的构件。其架构原理图如图2所示。

图2 国产智能网卡架构原理图

为了满足国产计算机对实际业务的需求,将国产智能网卡的特点与PKS 体系的特性相结合,从而增强网络安全、提升网络性能。

1.2.1 国产智能网卡与普通网卡的区别

普通网卡仅实现物理层和数据链路层的功能[9],但是服务器CPU 则负责处理上层逻辑的网络协议。CPU根据上层的逻辑对数据包进行封装和解封,而网卡根据更下层的逻辑仅对帧进行封装和解封。

国产智能网卡卸载了部分传输层和路由层的处理逻辑[10],并将有线网络和计算资源整合在一张可以编程的网卡上,以减少硬件的开销,提高服务器运行关键程序和操作系统的效率。智能网卡还具备计算能力,可以将服务器端的网络功能、安全功能和储存功能等卸载到网卡的硬件上,完全释放服务器的运算处理能力,使宿主机有更多资源去和现有的高速网络进行匹配。

1.2.2 国产智能网卡应用特征

(1) 网络虚拟化。将Open vSwitch 等常见流量处理工作卸载到智能网卡中,构建基于硬件性能级别的OverLay 网络和VxLAN/Geneve 网络,优化网络转发性能。

(2) 存储优化。国产智能网卡提供标准化接口机制,操作系统可以直接访问存储资源池,减少对特定外部设备驱动的依赖。

(3) 加速功能。国产智能网卡支持卸载部分传输层和路由层的处理逻辑,降低服务器的资源开销,提高网络吞吐量。

(4) 架构灵活。FPGA 架构灵活开放,软硬件都具备可编程能力,支持扩展网卡特性和应用功能。并且提供Virtio 虚拟化原生接口,减少对外部驱动的依赖,即插即用灵活部署。

(5)芯片安全。采用国产 CPU 芯片,安全可控,为用户网络安全提供基础保障。

2 测试实验

为了使国产智能网卡更好地与国产化服务器进行适配,本文在PKS 体系下对智能网卡的不同应用场景进行验证,从而发现现阶段国产智能网卡的实际应用问题,为国产智能网卡下阶段优化提供实际数据和优化建议。本节针对国产智能网卡和普通网卡在PKS 体系下的应用场景进行研究和分析,主要从基准性能、HTTP 应用场景、特性场景(iSCSI 存储场景、VxLAN 网络场景)三个方面开展性能对比。

2.1 测试环境

结合实际的应用场景,本文共设计了两套对比环境,即长城S2500+普通网卡和长城S2500+国产智能网卡(CPU+FPGA),根据实际时间周期计划,每套环境设计四组对比样本,并行开展对比工作。具体环境如表1所示。

表1 环境配置信息

2.2 数据分析

2.2.1 基准性能

国产智能网卡和普通网卡的基准性能对比主要从带宽、时延、请求应答响应效率、丢包率、网络抖动、中断数等方面开展,具体数据如表2 所示。

表2 网络基准性能

通过对表中数据进行分析,在TCP 性能方面(包括带宽、时延、TCP_RR)国产智能网卡与普通网卡的性能相差幅度不大,仅在2%~15%。在UDP_RR 性能方面,智能网卡相较于普通网卡性能差异达到252.6%,其主要原因是FPGA 对于UDP(User Datagram Protocol)报文的处理逻辑存在问题。在网卡中断方面,国产智能网卡由于未实现中断聚合功能,且中断向量的数量较少,因此产生的中断数量和CPU 利用率相较于普通网卡差异较大。

2.2.2 HTTP 应用场景

国产智能网卡和普通网卡的HTTP 应用场景对比主要从QPS(Query Per Second)指标开展,具体数据如表3所示。

表3 HTTP 应用场景性能

HTTP 应用场景方面,国产智能网卡相较于普通网卡的性能差异较明显,主要原因有以下三点:

(1)国产智能网卡目前仅支持单队列,在多连接并发场景下,单队列无法及时处理多个网络包。

(2)国产智能网卡的slow path 慢路径下的并发处理能力有限。在较大并发场景下,大量首个网络包同时走slow path 慢路径,导致无法及时处理网络首包。国产智能网卡的报文处理分为fast path 快路径和slow path 慢路径,快路径是报文与硬件流表进行匹配后直接转发,慢路径是报文在硬件流表中匹配失败,需要到软件流表进行二次匹配再更新硬件流表进行转发,智能网卡的流表流向原理图如图3 所示。

图3 智能网卡流表流向原理图

(3)国产智能网卡的FPGA 上的硬件流表有限。在较大并发场景下,大量未被FPGA 及时处理的非首包流向CPU 的慢路径,造成性能损耗。

2.2.3 特性场景

特性场景对国产智能网卡和普通网卡的性能对比,主要从iSCSI 存储场景和VxLAN 网络场景两方面开展。

(1)iSCSI 储存场景

国产智能网卡和普通网卡的iSCSI 储存场景对比主要从IOPS((Input Operations Per Second)和带宽两项指标开展,具体数据如表4 所示。

表4 iSCSI 存储性能

在iSCSI 存储场景下,国产智能网卡的各项存储性能指标均低于普通网卡,主要原因有以下两点:

①国产智能网卡内部流控机制待优化,未对突发的连续读请求进行缓存和调度,造成了请求堵塞阻塞,导致读性能较低。

②国产智能网卡内部逻辑已经启用了网络通道发送校验和计算的卸载,但接收方向暂时还不支持校验和计算卸载,导致写性能较低。

(2)VxLAN 网络场景

VxLAN(Virtual eXtensible Local Area Network,虚拟可扩展的局域网)是一种OverLay 技术,通过三层网络搭建虚拟的二层网络。将VxLAN 部署在互通IP 的三层网络,使用隧道端点VTEP(VxLAN Tunnel End Point)封装相应VxLAN 数据的IP 地址,然后在物理网络上创建多个VxLAN 网络形成传输隧道,最后通过VxLAN 隧道来实现VTEP 之间的数据传输。

国产智能网卡和普通网卡的VxLAN 网络场景对比主要从带宽、时延、请求应答响应效率、包转发效率四个方面开展,具体数据如表5 所示。

表5 VxLAN 网络性能

在VxLAN 网络场景下,国产智能网卡利用FPGA硬件进行OVS 流表转发,对于云网络的加速具有一定效果,国产智能网卡的时延、响应效率和包转发效率均优于普通网卡,但其带宽仍低于普通网卡带宽。

3 结论

目前由于国内对于国产智能网卡的研究仍处于初级研制阶段,因此与普通网卡相比仍有一定的劣势,虽然在基准性能方面相差不大,但是在HTTP 应用场景下差距较为明显,相比较于目前市面上的主流网卡,我们的优点在于:构建基于硬件性能级别的网络虚拟化;硬软件具备可编程能力,基于Virtio 虚拟化接口的开放架构;采用国产CPU 芯片,安全可控。

未来随着业务数据流量不断增加,对虚拟化网络性能的提高迫在眉睫,所以国产智能网卡实现硬件卸载功能,为服务器硬件释放资源,提高网络性能变得十分重要。因此国产智能网卡在未来的发展中,要提高其硬件的稳定性,使其在环境恶劣的条件下依然保持一种高稳定性;加强硬件性能的业务卸载能力,增强其可拓展性与适配性;内部嵌入计算性能较优的芯片增强其计算性能,从而使国产智能网卡适配对网络带宽要求更高的网络环境。

随着PKS 体系的快速发展,国产智能网卡也需增加对应的API(Application Program Interface)接口以适应PKS 体系下的软件适配,同时也需要加紧研制对应的监控软件,以能对其进行实时监控。

猜你喜欢

网卡智能网架构
在DDS 中间件上实现双冗余网卡切换的方法
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
5G赋能智能网联汽车
Server 2016网卡组合模式
智能网联硬实力趋强
迎战智能网联大爆发
LSN DCI EVPN VxLAN组网架构研究及实现
基于SJA1000的CAN总线智能网桥设计
挑战Killer网卡Realtek网游专用Dragon网卡