《数据处理单元DPU简介及发展.docx》由会员分享,可在线阅读,更多相关《数据处理单元DPU简介及发展.docx(9页珍藏版)》请在第一文库网上搜索。
1、数据处理单元DPU简介及发展目录1 .前言12 .基本概念13 .网卡及智能网卡技术简介23. 1.网卡架构技术特点24. 2.智能网卡架构技术特点35. DPU技术特点及发展56. DPU产品61 .前言面对数据处理需求的增长,CPU的算力已经达到瓶颈,无法跟上数据中心网络传输的增长速度,且在高带宽和新型的传输体系下,网络功能处理也越发复杂,通信能力和计算能力成为数据中心基础设施中的两个重要的发展方向。同时,随着网络传输带宽的增加,数据中心的计算资源被愈加复杂的基础设施操作所占据,使得业务处理遭遇瓶颈。DPU的提出背景就是应对数据中心的数据量和复杂性的指数级增长带来的性能瓶颈。DPU对数据中
2、心来说,是通过更明细的分工来实现效率的提升、实现总体系统的成本最优化。2 .基本概念网卡(NetWOrk1nterfaCeCard,简称N1C)是将电脑接入局域网的设备,网卡插在计算机主板的总线插槽中,负责将用户要传递的数据转换为网络设备能够识别的格式,通过网络介质传输,是计算机系统的标准组件,也可以作为扩展卡插入到计算机的PC1插槽中,它的主要作用是将计算机的数据转换为可在网络上传输的数据包,并将接收到的数据包转换为计算机可以理解的数据。智能网卡(SmartNIC),也称智能网络适配器,除了能完成标准网卡所具有的网络传输功能之外,还提供内置的可编程、可配置的硬件加速引擎,提升应用的性能和大幅
3、降低CPU在通信中的消耗,为应用提供更多的CPU资源。例如,在高度虚拟化的环境中,主机CPU需要运行OVS(OPenVirtUaISWitCh)相关任务,同时CPU还要处理存储、数据包的在线加解密或离线加解密、数据包深度检查、防火墙、复杂路由等操作,这些操作不仅消耗大量的CPU资源,同时由于不同业务之间的CPU资源争夺,导致业务的性能不能发挥到最佳。网卡作为连接各种业务的枢纽,在网卡上对于上述业务进行加速,成为了最理想的场所。智能网卡的出现,为解决这个问题提供了新的思路,我们可以通过智能网卡来将OVS操作从CPU卸载下来,并完成存储加速、数据加密、深度包检测和复杂路由等各种功能,将花费在处理这
4、些工作负载上的大量的CPU周期返回给主机CPU,同时解决了不同业务之间的冲突问题,大幅提升了各项业务的性能,也确保了服务器CPU能为应用提供最大的处理能力或者提供更多的虚拟机(VM)服务,创造更大的价值。DPU(DataProcessingUnit,DPU)是一种专用的处理器,用于加速数据中心和云计算应用中的网络、存储和安全任务。DPU通常包括高速网络接口、专用处理器和内存等组件,可以在数据中心中执行高速数据传输、网络安全和数据处理等任务。其市场仍处于百家争鸣的早期发展阶段,各家厂商定义略有不同。目前市场上主流的DPU定义是NV1D1A提出的,即DPU是集数据中心基础架构于芯片的通用处理器。它
5、结合了:1)行业标准的、高性能及软件可编程的多核CPU,通常基于已应用广泛的ARM架构,与其它的SoC组件密切配合;2)高性能网络接口,能以线速或网络中的可用速度解析、处理数据,并高效地将数据传输到GPU和CPU;3)各种灵活和可编程的加速引擎,可以卸载AI、机器学习、安全、电信和存储等应用,并提升性能;4)具备开放性集成功能,未来支持更多功能集成。例如NV1DIA计划未来在B1Uefiek1-4产品中,将GPU集成至DPU中以完成数据中心的架构的终极整合;5) NV1D1ADPU的软件开发包DoCA,提供了统一的面向各种应用的编程接口,让用户可以不用关注DPU的底层硬件接口而直接对硬件进行编
6、程。DPU的出现实现了以数据为中心的业务和基础设施操作的分离,大幅降低了业务的长尾延时,对于实现安全的、裸性能的、云原生的下一代大规模计算至关重要。3 .网卡及智能网卡技术简介3. 1.网卡架构技术特点网卡的架构如图所示,一个典型的N1C由一个处理网络流量的处理器、一对处理数据移动的DMA引擎和一个用于缓冲区和Doorbe11的本地存储器(通常是RAM)组成。BufferArea(DRAM)sw-tchn4. 2.智能网卡架构技术特点智能网卡是具有独立的计算单元,能完成特定的基础设施功能操作的网卡,如智能网卡可完成特定的重组加速、安全加速等操作,相对于普通网卡可以带来较大的性能提升。智能网卡上
7、的可编程ASIC或FPGA单元有可以运行自定义软件的计算层,计算层可以为网络流量提供服务,并可以执行特定网络及数据中心基础设施功能,还为外部网络和服务器OS之间提供了额外的安全层(也就是将安全保障由ToR交换机转移向了该设备)。智能网卡SmartN1C主要解决的问题是网络传输上无法线性传输数据问题,以及卸载更适合在网络上执行的业务,采取的方法是在智能网卡添加相应业务的加速引擎,以释放服务器上昂贵的CPU算力,为计算任务提供更多的CPU算力。最初的智能网卡具有3个重要特征:1)释放CPU开销及可编程,通过FPGA或协处理器来本地化编程支持数据面和控制面的功能定制,卸载CPU网络负载;2)任务加速
8、,通过专用加速器实现特定功能并保证数据转发的线速;3)流量管理,监测和管理网络流量。Bootimageand1oca1StorageManagementEthernetSmartN1Cscanexposevirtua1devicestothe86server,enab1ingsupportforbaremeta1serversProgramab1eCPURunnetworkandstorageservicesontheNIC.savingx86CPUcyc1esandimprovingperformanceHighSpeedEthernetF1ashI1H基于AS1C高性价比基于FPGA性能好
9、,但价格昂贵编程难度大特定应用的优化基于SOC片上系统性价比较好可编程处理器最高灵;舌性最简单的可编程性virtua1izedDeviceFunctionsWme乐工浸必PaEI目前的智能网卡有ASIC、FPGA和片上系统(SOC)三种实现。不同实现方式的智能网卡在成本、编程的简易性和灵活性方面存在各种权衡。AS1C非常具有成本效益,可以提供最佳的性价比,但它的灵活性受AS1C中定义的功能的限制。基于FPGA智能网卡则可以在可用逻辑门约束范围内,花费足够的时间和成本来相对有效地支持几乎任何功能。但FPGA编程简易性较差且价格昂贵。对于更复杂的、更广泛的用例,基于SoC(如NV1DIA的B1Ue
10、FiekiDPU)提供了最佳的智能网卡实施选项:良好的性价比、易于编程且高度灵活。智能网卡不同技术实现示意图高厂商开发成本可编程和可扩展性:居于朝8,但弟Sn仅限于预定义功展智能网卡为数据中心网络提供了几项重要优势,包括:1)对于运营大型数据中心的公共云服务提供商而言,智能网卡可以释放CPU核来为最终用户运行业务应用程序,从而可能实现更高的服务器利用率;2)各种基础设施操作卸载。例如RDMA融合以太网(ROCE)、传输控制协议(TCP)、NVMe-OF(NVMe-Over-Fabrics),互联网安全协议(IPSec)、安全传输层协议(T1S)、深度报文检测(DPI)、0VS(0penVirt
11、UaISWitCh)等;3)某些类别的智能网卡是可编程的,可以针对广泛的应用程序进行定制,并且可以重新组装以满足新的要求。在智能网卡被更广泛的采用之前,需要解决以下问题:1)与标准网卡相比,智能网卡的价格显着溢价。考虑到相同的端口速度,溢价可能会影响智能网卡的普及,尤其是在批量生产时需要降低价格;2)智能网卡的功耗较普通网卡高,一般20W80W,随着更多功能的集成,功耗也会越来越IRJ;3)鉴于智能网卡上支持的功能越来越多,其可编程性和复杂性也越来越高,它们可能会消耗大量工程资源来进行开发和调试,从而导致实施时间长且成本高。4. DPU技术特点及发展DPU概念的确立是在2023年10月NV1D
12、IA将基于Me11anox的SmartNIC卡命名为“DPU”,可以认为DPU是智能网卡的升级,因此DPU延续了智能网卡“释放CPU开销”、“可编程”、“任务加速”、“流量管理”等功能,并实现了控制面和数据面的通用可编程加速。如今数据中心中的各项操作主要都在CPU上完成,包括计算任务和各项基础设施任务等,而面对数据处理需求的增长,CPU的算力已经达到瓶颈,摩尔定律逐渐失效,GPU的出现解决了CPU的算力问题,数据中心的瓶颈转向基础设施任务,如数据存储、数据验证、网络安全等。DPU的出现满足了这样的通用的基础设施任务加速的需求。由DPU构建强大的基础设施层,上层的CPU和GPU来完成计算任务。D
13、PU具有的特性为:1)行业标准、高性能、软件可编程的多核CPU,通常基于广泛使用的ARM架构,与其它SOC组件紧密耦合。2)高性能网络接口,能够以线速或网络其余部分的速度解析、处理和有效地将数据传输到GPU和CPUo3)丰富的灵活可编程加速引擎,可为A1和机器学习、安全、电信、存储和虚拟化等执行卸载并提高应用程序性能。DPU最核心的任务是数据的预处理和后处理,如网络类任务(包括A112A11、点对点等各种通信模式加速,IPSec,TCP连接跟踪,RDMA等)、存储类任务(分布式存储,数据落盘加解密,数据压缩,数据冗余算法等)、虚拟化加速(OVS及各种HyPerViSor的卸载,控制平面和业务平
14、面分离卜对硬件安全的保障(RootofTrust等)。从云计算业务的角度看,DPU是把整个IaaS的服务完整的卸载到硬件做加速。因此一线的云运营商对DPU的需求会更强烈,数据中心规模足够大时任何一个任务的Off1oad到硬件都意味着非常显著的性能提升和成本降低,带来最直接的利润。随着整个软硬件技术栈的演进,DPU的采用会逐步扩展到所有的云运营商,以及其它各类数据中心。目前DPU以数据为中心作为计算架构,能针对数据中心的安全、网络、存储、AKHPC等业务进行加速。从DPU概念的提出者-NVIDIA的现有技术发展趋势来看,未来的技术发展趋势将会是高度集成化的片上数据中心的模式(DataCenter
15、Infrastructureonachip),即一个GPUCPU、DPU共存的时代。NVIDIA布局的数据中心从核心到边缘(Edge)都采用了统一的一个计算架构一一CPU、GPU、DPU,如图所示,形成了“3U”一体架构。3U一体的统一计算单元架构将会让管理程序、调度程序都会变得非常容易。通过CPU、GPU、DPU之间的协调计算,可以在数据中心和边缘端都可以达到高性能与高安全性。数据中心成为了新的计算单元A1&AA1GPUDPUDataProcessingUnitAcce1eratedComputingSoftware-Defined,Hardware-Acce1eratedDPUAcce1eratesDataIntensiveTasksNetworking,Security,StorageGPUAcce1eratesA1&MaChine1earningEverywork1oadwi11becomeacce1eratedA1.ii5. DPU产品在智能网卡发展的过程中,NVIDIA将智能网卡升级为DPU(DataPrOCeSSingUnit)。现代超大规模云技术推动数据中心走向了新的架构,利用一种专门针对数据中心基础架构软件而设计的新型处理器,来卸载和加速由虚拟化、网络、存储、安全和其它云原生A1服务产生的巨大计算负荷,这种产品即