一、智能网口介绍
智能网卡(Smart NIC)是一种专用于网络数据处理的高性能网卡,采用了定制芯片、高速网络接口和强大的软件支持,可以为数据中心和企业网络提供更快、更安全、更可靠的网络连接和数据传输服务。
智能网卡的出现受到了业界的广泛关注和欢迎,因为它可以提供许多传统网卡无法达到的性能优势和功能增强,也可以应对越来越复杂的网络应用和业务需求。“智能网卡可以提高数据中心的吞吐量和效率,同时也可以降低能耗和成本。”云计算专家李欣说。据他介绍,智能网卡通常具有以下特点:
• 高性能:智能网卡通常采用专用芯片和高速网络接口,可以实现超高的数据处理速率、吞吐量和流量控制效率,从而提高网络性能和响应速度。
• 安全可靠:智能网卡不仅可以加速数据传输,还可以提供更好的安全功能和保护机制,如数据加密、访问控制、DDoS防御、防火墙等,从而增强网络的安全性和稳定性。
• 支持分布式存储和计算:智能网卡还可以与分布式存储、计算等技术结合,实现更高效的数据处理和分析,同时也可以降低网络延迟和负载压力,从而提高整体性能和效率。
智能网卡目前已成为数据中心、云计算、大数据、人工智能等领域的热点技术和解决方案。各大厂商也在加速推进智能网卡的设计、生产和销售,以满足客户日益增长的需求和期待。
例如,英特尔(Intel)公司推出了“英特尔以太网 800 系列智能网卡”(英特尔 Ethernet 800 Series Smart NIC),“能为众多的高端服务提供商和企业客户带来更高的网络性能和可靠性。”英特尔副总裁夏业良说。同时,博通(Broadcom)、马维尔(Marvell)、华为(Huawei)、戴尔(Dell)等公司也纷纷推出了自己的智能网卡产品线,并提供不同级别和价格的选择。
未来,智能网卡还将与5G、物联网、边缘计算等新兴技术结合,开拓更广泛的应用场景和市场机会。各方面的趋势和发展动向也表明,智能网卡已成为提高网络性能和保障安全的新选择,将逐渐成为网络交换机、路由器等核心设备的标配。总之,智能网卡的出现和应用将推动网络技术的创新和进步,为数字化社会和智能化未来带来更多的机遇和挑战
随着CPU 密度和数据中心网络带宽的进一步提升,用户对预期性能的需求,系统运行平稳性都会有更高的要求。云厂商一方面面临巨大的成本压力,另一方面面临巨大的运维压力。而智能网卡的出现,可以用来减轻网络功能虚拟化的负担。
二、智能网卡发展历程
(1)第一阶段:基础功能网卡
即普通网卡,能够提供2*10G带宽基本能力;硬件卸载能力较弱。
传统网卡在完成在完成数据收发工作外,不处理任何与云化、业务相关的计算任务。
(2)第二阶段:硬件卸载网卡(第一代智能网卡SNIC)
拥有丰富的硬件卸载能力;可以提供Virtio硬件加速;安全相关数据面卸载;无损网络能力。
不同于传统网卡,智能网卡卸载云化网络转发功能,提供高性能网络转发能力,释放CPU 通用计算资源。智能网卡可以满足各种offload需求(靠CPU来做的工作都移给了网卡),包括传输和存储协议。同时,提供网络可编程能力,实现网络转发逻辑的定制化,保证了功能的灵活性。
智能网卡提供了一种以更高性价比实现网络加速的技术方案,同时也提供了一种新的设计思想。
(3)第三阶段:DPU智能网卡
在第一代智能网卡基础上加入CPU而形成的第二代智能网卡:
除了包含第一代智能网卡的所有功能外,还可以实现安全相关功能全卸载(数据面+控制面)
为了解决I/O性能瓶颈和虚拟化技术发展限制等问题,DPU应运而生。
DPU(Data Processing unit,数据处理器)是一种围绕数据处理提供供网络、存储、安全、管理等数据中心基础设施虚拟化服务的专用处理器。基于 ARM/X86 等架构的 CPU 与 ASIC(Application Specific Integrated Circuit)/NP(Network Processor)/FPGA(Field Programmable Gate Array)等专用硬件加速引擎组成的计算架构,形成提供虚拟化功能的实体。
三、CPU/GPU/DPU关系和区别
CPU:中央处理器。GPU:图形处理器。DPU:数据处理器
CPU:“计算为中心”,DPU:“数据为中心”。
目前的时代从“计算为中心”转变为“数据为中心”,这也是越来越多公司关注大数据、云服务的原因。
三、DPU和智能网卡的区别
探究二者的区别,可先从概念入手,分别分析一下DPU与 Smart NIC的特点。智能网卡特点:智能网卡Smart NIC主要解决的问题是网络传输上无法线性传输数据问题,以及卸载更适合在网络上 执行的业务,采取的方法是在智能网卡添加相应业务的加速引擎,以释放服务器上昂贵的CPU算力,为计 算任务提供更多的CPU算力。
最初的智能网卡具有3个重要特征:
1)释放CPU开销及可编程,通过FPGA 或协处理器来本地化编程支持数据面和控制面的功能定制,卸载CPU网络负载;
2)任务加速,通过专用 加速器实现特定功能并保证数据转发的线速;
3)流量管理,监测和管理网络流量。
DPU特点:DPU概念的确立是在2020年10月NVIDIA将基于Mellanox的Smart NIC卡命名为“DPU”,可以认 为DPU是智能网卡的升级,因此DPU延续了智能网卡“释放CPU开销”、“可编程”、“任务加速”、 “流量管理”等功能,并实现了控制面和数据面的通用可编程加速。如今数据中心中的各项操作主要都在CPU上完成,包括计算任务和各项基础设施任务等,而面对数据处理需求的增长,CPU的算力已经达到瓶颈,摩尔定律逐渐失效,GPU的出现解决了CPU的算力问题,数据中心的瓶颈转向基础设施任务,如数据存储、数据验证、网络安全等。
DPU的出现满足了这样的通用的 基础设施任务加速的需求。由DPU构建强大的基础设施层,上层的CPU和GPU来完成计算任务。DPU具有的特性为:
1)行业标准、高性能、软件可编程的多核CPU,通常基于广泛使用的ARM架构,与其它SoC 组件紧密耦合。
2)高性能网络接口,能够以线速或网络其余部分的速度解析、处理和有效地将数据传输到 GPU和CPU。
3)丰富的灵活可编程加速引擎,可为AI和机器学习、安全、电信、存储和虚拟化等执行卸 载并提高应用程序性能。DPU最核心的任务是数据的预处理和后处理,如网络类任务(包括ALL2ALL、点对点等各种通信模式 加速,IPSec,TCP连接跟踪,RDMA等)、存储类任务(分布式存储,数据落盘加解密,数据压缩,数据 冗余算法等)、虚拟化加速(OVS及各种Hypervisor的卸载,控制平面和业务平面分离)、对硬件安全的 保障(Root of Trust等)。
从云计算业务的角度看,DPU是把整个IaaS的服务完整的卸载到硬件做加速。因此一线的云运营商对DPU的需求会更强烈,数据中心规模足够大时任何一个任务的Offload到硬件都意 味着非常显著的性能提升和成本降低,带来最直接的利润。随着整个软硬件技术栈的演进,DPU的采用会 逐步扩展到所有的云运营商,以及其它各类数据中心。智能网卡和DPU对比分析
智能网卡中包括FPGA型和ARM核心型,FPGA型难以处理控制平面任务;ARM型则会因处理其它任 务而负载过重,DPU包含数据平面和控制平面的双平面卸载及加速,可以解决以上问题。另外DPU与智能 网卡的最大区别是可作为数据中心的最小节点存在,拥有计算功能、网卡功能、加速计算引擎、安全引擎 等并可拓展,未来将成为数据中心的标配与三大核心之一(CPU、GPU、DPU)。
五 智能网卡的优势
网络接口卡大大提高了服务器连接到网络的速度 - 从 10 MB 增加到 100 GB。基于软件的网络(例如虚拟交换机和数据平面开发工具包)的出现对服务器CPU的使用提出了更多的数据包处理要求。典型的服务器可以运行软件定义的网络、负载平衡、加密、深度数据包检测和其他密集型输入输出软件。这种数据包处理需要大量的 CPU 容量,因此需要 CPU 内核来运行网络功能,而不是任务关键型应用程序处理。
可以对智能 NIC 进行编程以运行网络软件进程,并释放服务器处理以执行其主要应用程序任务。其他智能 NIC 应用可以包括数据包捕获、网络管理和网络可见性。
智能 NIC 的经济前提是它们的成本被让服务器执行其主要任务而不是花费大量时间运行网络应用程序的应用程序处理优势所抵消。
四、纯国产化 复旦微FM4550开发板(需要可私信)