收藏 分销(赏)

2023年中国移动云计算通用可编程DPU发展白皮书.pdf

上传人:Stan****Shan 文档编号:1275269 上传时间:2024-04-19 格式:PDF 页数:60 大小:2.15MB
下载 相关 举报
2023年中国移动云计算通用可编程DPU发展白皮书.pdf_第1页
第1页 / 共60页
2023年中国移动云计算通用可编程DPU发展白皮书.pdf_第2页
第2页 / 共60页
2023年中国移动云计算通用可编程DPU发展白皮书.pdf_第3页
第3页 / 共60页
2023年中国移动云计算通用可编程DPU发展白皮书.pdf_第4页
第4页 / 共60页
2023年中国移动云计算通用可编程DPU发展白皮书.pdf_第5页
第5页 / 共60页
点击查看更多>>
资源描述

1、 云计算通用可编程 DPU 发展白皮书(2023 年)中移(苏州)软件技术有限公司 中国信息通信研究院云计算与大数据研究所 深圳云豹智能有限公司 2023 年 3 月 云计算通用可编程 DPU 发展白皮书(2023 年)I 目 录 1.前言.1 2.DPU 行业的机遇与挑战.3 2.1 DPU 的发展历程.3 2.1.1 NIC 的发展和应用.4 2.1.2 SmartNIC 的发展和应用.5 2.1.3 DPU 发展和应用.6 2.2 DPU 的现状.7 2.2.1 海外 DPU 的现状.7 2.2.2 国内 DPU 的现状.10 2.3 DPU 行业的挑战.12 3.DPU 核心特性.13

2、 3.1 层级化可编程.14 3.1.1 层级 1 通用可编程.17 3.1.2 层级 2 嵌入引擎可编程.17 3.1.3 层级 3 领域可编程.18 3.2 低时延网络.19 3.3 统一资源管控.21 3.3.1 统一的计算资源管控.22 3.3.2 统一的网络资源管控.24 3.3.3 统一的存储资源管控.25 3.4 持续发展的加速卸载.27 4.DPU 应用场景分析.28 4.1 云计算卸载.28 4.1.1 网络功能卸载.28 4.1.1.1 虚拟交换机功能的卸载.28 4.1.1.2 虚拟主机接口的硬件加速.29 4.1.1.3 RDMA 协议的硬件卸载.30 4.1.2 存储

3、功能卸载.31 4.1.2.1 NVMe-oF 存储协议的卸载.31 4.1.2.2 存储接口的硬件加速.32 4.1.2.3 存储应用的卸载.32 4.1.3 Service Mesh 的卸载.33 4.2 统一的存储.35 4.3 5G/UPF 卸载.38 4.3.1 UPF 简介.38 4.3.2 UPF 卸载和加速.40 云计算通用可编程 DPU 发展白皮书(2023 年)II 4.3.3 UPF DPU 管控方案.42 4.4 零侵入管控.42 4.5 零信任安全.44 4.5.1 基于信任根的安全启动.44 4.5.2 分布式可编程防火墙.45 4.5.3 数据安全传输.46 4.

4、5.3.1 虚拟机数据传输加密.46 4.5.3.2 RPC 调用数据传输加密.47 4.5.4 数据安全存储.48 4.6 ChatGPT 训练加速.49 5.DPU 行业发展展望.52 5.1 国内外 DPU 发展格局.52 5.1.1 技术路径.52 5.1.2 商业化布局.52 5.1.3 长期战略规划.53 5.2 DPU 在算网融合发展战略中的价值.54 附录.56 插图目录.56 术语与缩略语.57 云计算通用可编程 DPU 发展白皮书(2023 年)1 1.前言“十四五”数字经济发展规划中指出数字经济是继农业经济、工业经济之后的主要经济形态,是以数据资源为关键要素,以现代信息网

5、络为主要载体,以信息通信技术融合应用、全要素数字化转型为重要推动力,促进公平与效率更加统一的新经济形态。随着数字经济的持续发展,算力需求呈爆发性增长,算力正在逐步成为新时代的核心生产力。算力的发展同步带动了网络的变革,构建高效、灵活、敏捷的算力基础设施底座,成为数据中心网络新型基础设施基于数据算力驱动和演进的关键。中国移动云能力中心 IaaS 产品部总经理刘军卫谈到:“随着人类生产力进入算力时代,传统以 CPU 为核心的架构正在遭受算力瓶颈考验,多样化算力需求亟需软硬件架构全面变革,算力技术发展必将遵循软件定义一切,硬件加速一切的理念,重构算力基础设施,通用可编程加速单元 DPU 将成为新的算

6、力核心,重新定义算力时代云计算技术新标准,构建算力时代新技术曲线。”面向数据中心基础设施的通用数据处理芯片(Data Processing Unit,以下简称 DPU),是新近发展起来的一种通用数据处理器,是底层架构和上层服务相互作用的产物。同时,DPU 也是支撑各平台间互联互通的关键节点。DPU 要解决的不仅是基础设施“降本增效”的问题,也要解决现有数据中心网络基础设施架构不能满足飞速增长的数据算力需求的问题。随着数据中心应用部署的复杂度持续增高和数据中心规模的不断扩展,不但各个数据中心之间,而且数据中心内部之间数据交换的需求也呈倍数的增长。当前在数据中心的应用中,数据交换不仅仅是简单的服务

7、器之间的数据搬运,还需要对数据进行有效的智能化处理。传统基础网卡(NIC)以及后续的智能网卡(SmartNIC)由于本身技术结构的限制,无法在飞速发展的数据中心技术演进中承担起对数据交换和智能处理的需求,它们正在被 DPU 这种通用数据处理器所取代。着眼于数据中心的技术发展和演进,DPU 作为通用的数据处理器,它不是对 NIC/SmartNIC 的简单替代,云计算通用可编程 DPU 发展白皮书(2023 年)2 而是对网络基础架构的本质改变。DPU 本身所具有的通用层级化可编程性、低时延网络、统一管控的特性使得 DPU 正在促进新一代数据中心从架构上实现优化和重构。DPU 作为通用数据处理的基

8、础部件,将卸载原本运行在CPU、GPU中的通用数据处理任务,释放CPU、GPU 的算力,支撑 CPU、GPU 发挥更大的效能。本白皮书通过阐明和分析 DPU 发展的过程与现状,指出哪些 DPU 特性是解决上述核心问题的关键点,从而推动 DPU 技术的深入发展,助力实现完整的生态链建设和产业落地。云计算通用可编程 DPU 发展白皮书(2023 年)3 2.DPU 行业的机遇与挑战 随着云计算、物联网、大数据和人工智能等产业的飞速发展,数据中心网络正在向高带宽和新型传输体系发展,网络带宽逐步从 10Gbps、25Gbps 向 100Gbps、200Gbps、400Gbps 乃至更高的带宽演进。数据

9、中心网络带宽与 CPU 算力的增长速度差距逐渐增大,网络数据处理占用的 CPU 资源在不断地增大,迫切需要一种新型处理器来减少对 CPU 的消耗。在这种背景下,DPU 技术应运而生。DPU 是以数据处理为中心的芯片,是继 CPU、GPU 之后的“第三颗主力芯片”。DPU 是一种提供数据中心基础设施服务的通用处理器,可以卸载及加速网络、存储、安全和管控等基础功能,释放更多的 CPU 算力供客户使用。2.1 DPU 的发展历程 随着云计算虚拟化技术的发展,网卡的发展基本可以分为三个阶段:1.传统基础网卡 NIC:负责用户数据交互的网络设备,具有较少的硬件卸载能力;2.智能网卡 SmartNIC:具

10、备丰富的数据平面硬件卸载能力;3.数据处理器 DPU:兼具智能网卡功能的同时,又可以卸载控制平面业务,实现了控制平面与数据平面的通用可编程加速。DPU 作为软件定义芯片的典型代表,完美诠释了“软件定义、硬件加速”的理念,是集数据中心基础架构于芯片的通用处理器。DPU 通用处理单元用来处理控制平面业务,专用处理单元保证了数据平面的处理性能,从而达到了性能与通用性的平衡。DPU 专用处理单元用来解决数据中心通用基础设施虚拟化的性能瓶颈,通用处理单元则保证 DPU 的通用性,使得 DPU 能够广泛适用于各家云厂商的基础设施,实现了数据中心虚拟化软件框架向 DPU的平滑迁移。云计算通用可编程 DPU

11、发展白皮书(2023 年)4 2.1.1 NIC 的发展和应用 传统基础网卡 NIC,又称网络适配器,是构成计算机网络系统中最基本、最重要的连接设备,它的主要工作是将用户需要传输的数据转换为网络设备能够识别的格式。HOST虚拟机虚拟机虚拟机PCIe总线以太网口网络存储安全管控NIC 图 1 NIC 在虚拟化中应用 在网络技术发展的带动下,传统基础网卡的功能也更加丰富,已经初步具备了一些简单的硬件卸载能力,如 CRC 校验、TSO/UFO、LSO/LRO、VLAN 等,支持 SR-IOV 和流量管理 QoS,传统基础网卡的网络接口带宽也由原来的百兆、千兆发展到 10G、25G 乃至 100G。在

12、云计算虚拟化网络中,传统基础网卡向虚拟机提供网络接入的方式主要分为以下三种:网卡接收流量经操作系统内核协议栈转发至虚拟机 由 DPDK 用户态驱动接管网卡,让数据包绕过操作系统内核协议栈直接拷贝到虚拟机内存 使用 SR-IOV 技术,将物理网卡 PF 虚拟化成多个具有网卡功能的虚拟 VF,再将VF 直通到虚拟机中 云计算通用可编程 DPU 发展白皮书(2023 年)5 随着 VXLAN 等隧道协议以及 OpenFlow、OVS 等虚拟交换技术的应用,网络处理的复杂度在逐渐增大,需要消耗更多的 CPU 资源,因此智能网卡 SmartNIC 诞生了。2.1.2 SmartNIC 的发展和应用 智能

13、网卡 SmartNIC 除了具备传统基础网卡的网络传输功能外,还提供丰富的硬件卸载加速能力,能够提升云计算网络的转发速率,释放主机 CPU 计算资源。HOST虚拟机虚拟机虚拟机SmartNIC高速以太网口网络数据面加解密RDMAPCIe总线网络控制面存储安全管控 图 2 SmartNIC 在虚拟化中应用 智能网卡 SmartNIC 上没有通用处理器 CPU,需要主机 CPU 进行控制面管理。智能网卡 SmartNIC 主要卸载加速对象是数据平面,如虚拟交换机 OVS/vRouter 等数据面Fastpath 卸载、RDMA 网络卸载、NVMe-oF 存储卸载以及 IPsec/TLS 数据面安全

14、卸载等。但是随着数据中心网络速率的不断提高,主机仍会消耗大量宝贵的 CPU 资源对流量进行分类、跟踪和控制,如何实现主机 CPU 的“零消耗”成了云厂商下一步的研究方向。云计算通用可编程 DPU 发展白皮书(2023 年)6 2.1.3 DPU 发展和应用 相比智能网卡 SmartNIC,DPU 在硬件架构上增加了通用处理单元 CPU 和丰富的硬件加速单元。从而便于实现对网络、存储、安全和管控等通用基础设施的加速和卸载。HOST虚拟机虚拟机虚拟机DPU高速以太网口网络虚拟机虚拟机虚拟机PCIe总线存储安全管控 图 3 DPU 在虚拟化中应用 DPU的产品形态主要有NP/MP+CPU,FPGA+

15、CPU和ASIC+CPU。基于NP/MP+CPU和FPGA+CPU硬件架构的DPU具有良好的软硬件可编程性,在DPU发展初期大部分DPU厂商都选择了这个方案。该方案开发时间相对较短且迭代快速,能够迅速完成定制化功能开发,便于 DPU 厂商快速推出产品,抢占市场。但是随着网络带宽的快速增长,基于NP/MP+CPU 和 FPGA+CPU 硬件架构的 DPU 在性能上将难以满足,功耗控制方面也会存在很大的挑战。基于 ASIC+CPU 的硬件架构结合了 ASIC 和 CPU 的优势,兼顾了专用加速器的优异性能和通用处理器的可编程灵活性,成了 DPU 产品的发展趋势。云计算通用可编程 DPU 发展白皮书

16、(2023 年)7 2.2 DPU 的现状 早在 2016 年,美国 Fungible 就已经提出了 DPU 的概念,它也是第一家专注于设计DPU 的创业公司。2020 年,Nvidia 在其 GTC 大会上隆重介绍了数据中心网络领域新产品BlueField DPU。自此,DPU 的概念开始逐渐活跃起来,引起了国内外众多厂商密切关注。目前,国内外已经有很多云厂商和芯片巨头布局 DPU 产业,如国外有 AWS、Nvidia、Intel、AMD 和 Marvell 等,国内有阿里、腾讯、中国移动、中国电信和云豹智能等。2.2.1 海外 DPU 的现状 本章主要介绍一些海外 DPU 厂商的发展情况和

17、其产品。1.AWS Nitro DPU AWS 是全球领先的云计算服务和解决方案提供商,AWS Nitro DPU 系统已经成为了AWS 云服务的技术基石。AWS 借助 Nitro DPU 系统把网络、存储、安全和监控等功能分解并转移到专用的硬件和软件上,将服务器上几乎所有资源都提供给服务实例,极大地降低了成本。图 4 AWS Nitro DPU(来源 AWS 官网)云计算通用可编程 DPU 发展白皮书(2023 年)8 Nitro DPU 系统主要分为以下几个部分:Nitro 卡:一系列用于网络、存储和管控的专用硬件,以提高整体系统性能 Nitro 安全芯片:将虚拟化和安全功能转移到专用的硬

18、件和软件上,减少攻击面,实现安全的云平台 Nitro 控制卡:一种轻量型 Hypervisor 管理程序,可以管理内存和 CPU 的分配,并提供与裸机无异的性能 Nitro DPU 系统提供了密钥、网络、安全、服务器和监控等功能支持,释放了底层服务资源供客户的虚拟机使用。2.Nvidia DPU Nvidia 是一家以设计和销售图形处理器 GPU 为主的半导体公司,GPU 产品在 AI 和高性能计算 HPC 领域被广泛应用。2020 年 4 月,Nvidia 以 69 亿美元的价格收购了网络芯片和设备公司 Mellanox,随后陆续推出 BlueField 系列 DPU。图 5 Nvidia

19、BlueField-3 DPU 介绍(来源 Nvidia 官网)Nvidia BlueField-3 DPU 延续了 BlueField-2 DPU 的先进特性,是首款为 AI 和加速计算而设计的 DPU。BlueField-3 DPU 提供了最高 400Gbps 网络连接,可以卸载、加速和隔离软件定义网络、存储、安全和管控功能,从而提高数据中心性能、效率和安全性。云计算通用可编程 DPU 发展白皮书(2023 年)9 3.Intel IPU Intel IPU 是一种具有硬化加速器和以太网连接的高级网络设备,可使用紧密耦合的专用可编程内核来加速和管理基础设施功能。IPU 提供完整的基础设施卸

20、载,并充当运行基础设施应用的主机控制点,以提供额外的安全层1。使用 Intel IPU,可以将全部基础设施业务从服务器卸载到 IPU 上,释放服务器 CPU 资源,也为云服务提供商提供了一个独立且安全的控制点。图 6 Intel IPU 产品 roadmap(来源 Intel 官网)2021 年,Intel 在 Intel Architecture Day 上发布了 Oak Springs Canyon 和 Mount Evans IPU 产品。其中,Oak Springs Canyon 是基于 FPGA 的 IPU 产品,Mount Evans IPU 是基于 ASIC 的 IPU 产品。I

21、ntel Oak Springs Canyon IPU 配备了 Intel Agilex FPGA 和 Xeon-D CPU。Intel Mount Evans IPU 是 Intel 与 Google 共同设计的 SoC(System-on-a-Chip),Mount Evans 主要分为 IO 子系统和计算子系统两个部分。网络部分用 ASIC 进行数据包处理,性能相比 FPGA 高很多,且功耗更低。计算子系统使用了 16 个 ARM Neoverse N1 核心,拥有极强的计算能力。1 Intel 云服务提供商基础设施处理单元 IPU 白皮书 云计算通用可编程 DPU 发展白皮书(2023

22、 年)10 2.2.2 国内 DPU 的现状 随着 DPU 产业的快速发展,国内也涌现出了一大批 DPU 公司,本章主要介绍了一些国内 DPU 厂商和其产品。1.中国移动 HyperCard DPU 2020 年中国移动发布 HyperCard DPU,将软件的灵活与硬件的高效有机结合,承载网络、存储及虚拟化设备管理,在释放 CPU 资源的同时,HyperCard 基于硬件卸载技术全面加速 IO 性能,实现了虚拟 IO“零”损耗,突破了传统技术架构性能极限。移动云同时着手构建 DPU 的软硬件生态系统,通过算力卸载/算力解耦/无损网络三大关键技术,实现以 DPU 为中心的计算、网络、存储的云化

23、加速,规范 xPU 异构硬件接入标准,统一算力 API,构建高性能云化基础设施生态关键底座。打造磐石算力架构:结合 HyperCard DPU 与定制化磐石服务器,实现对 HyperCard DPU 的全生命周期管理和最优适配,为“大云”的裸金属、云主机、容器等算力载体提供统一的算力底座 打造 COCA(Compute On Chip Architecture)算力框架:构建算力的标准化接入生态,构建算力与应用间的灵活接入介质,未来做到包括自有 HyperCard 在内的业界 DPU 硬件在数据中心的即插即用 2.阿里云 CIPU 2022 年阿里云峰会上,阿里云正式发布了云基础设施处理器 C

24、IPU,CIPU 的前身是MoC 卡(Micro Server on a Card),MoC 卡是神龙架构的灵魂所在。MoC 卡拥有独立的I/O、存储和处理单元,承担了网络、存储和设备虚拟化的工作。第一代和第二代 MoC 卡解决了狭义上的计算虚拟化零开销的问题,网络和存储部分的虚拟化仍由软件实现。第三代MoC 卡实现了部分网络转发功能硬化,网络性能大幅提升。第四代 MoC 卡实现了网络、存储全硬件卸载,还支持了 RDMA 能力。云计算通用可编程 DPU 发展白皮书(2023 年)11 阿里云 CIPU 作为一颗为飞天系统设计的数据中心处理器系统,对于阿里云构建新一代完整的软硬件云计算架构体系有

25、着重大的意义。3.云豹智能 DPU SoC 云豹智能是一家专注于云计算和数据中心数据处理器芯片(DPU)和解决方案的领先半导体公司。云豹智能 DPU SoC 是国内第一颗通用可编程 DPU 芯片,具备丰富的可编程性和完备的 DPU 功能,支持不同云计算场景和资源统一管理,优化数据中心计算资源利用率。图 7 云豹智能 DPU SoC 整体架构 云豹智能 DPU SoC 提供最高 2*200G网络连接,搭载性能强劲的通用CPU处理单元,满足云基础设施层业务的卸载需求。云豹智能 DPU SoC 还配备众多的硬件处理引擎,实现网络、存储和安全的全面加速,具体情况如下:数据面处理引擎提供高性能数据处理,

26、具备灵活的软硬件可编程能力 RDMA 处理引擎支持 RoCE 和 iWARP 等主流协议和可编程拥塞控制算法 安全处理引擎提供 SM2/SM3/SM4 等国密和其他主流加密算法 支持安全启动、机密计算、加解密的零信任安全解决方案,保护系统、数据、应用的安全 支持 DDP(Data Direct Path)数据直通技术,加速数据处理,提高 AI 训练效率 云计算通用可编程 DPU 发展白皮书(2023 年)12 云豹智能DPU SoC支持裸金属、虚拟化和容器统一运维和管控,提供弹性网络和存储、虚拟化管理和安全等一站式解决方案,极大地提升云服务商的服务质量和业务灵活性,降低整体投入,引领数据中心新

27、趋势。云豹智能提供完整的软件开发平台,可以在云豹智能 DPU SoC 上开发网络、存储、安全和管控等应用。云豹智能软件开发平台全部采用数据中心主流的开源及标准化组件和接口,使得数据中心业务能够平滑迁移到云豹智能 DPU SoC 上。2.3 DPU 行业的挑战 纵观 DPU 在国内外数据中心应用中的发展历程,我们可以看到数据中心在商业化落地过程中面临着严峻的挑战,重点体现在以下几方面:数据中心业务复杂多变,既需要兼顾计算效率,又需要提供通用可编程能力,实现基础功能可定制化,保证业务的灵活性 随着大数据、AI 和机器学习等高性能计算需求在数据中心不断扩大,数据中心基础设施需要提供高吞吐、低时延的计

28、算网络 数据中心需要对计算、网络和存储资源进行统一智能管控 为了应对这些挑战,我们必须重新审视 DPU 架构应该具备哪些特性,以满足未来数据中心的发展需要。云计算通用可编程 DPU 发展白皮书(2023 年)13 3.DPU 核心特性 数据中心建设中,面临两个方向的挑战:1.从上向下,客户应用不断变化,业务的上线部署、离线卸载、未来新型业务的持续支撑等都向数据中心提出了通用并且灵活的需求。应用层希望对底层基础变化不感知,但却要求可以灵活扩展并直接使用底层基础设施的硬件性能;2.从下往上,数据中心基础设施需要提供最大化的数据处理能力,释放最大的算力资源,寻求最大的基础设施投资产出比。通用的 DP

29、U 在面对上述两个方向的挑战时,可以很好地做权衡,适配不同上层应用需求的变化。DPU 不仅仅是网络、存储、安全、加解密功能的简单卸载,作为未来数据中心的核心部件,将支撑 CPU、GPU 发挥更大的效能。总体上 DPU 应包含的功能组件如下图所示:符合Interconnection Networks片上互联总线CPU ClusterPipeline EngineStorage EngineCrypto/De-cryptoEnginePacket EngineSecurity BootUnitMCU ControllerUnitDDR ControllerPCIe Bus ControllerSy

30、stem Level CacheMAC PHY ControllerI/O ComponentHigh-speed Serdes 符合Interconnection Networks片上互联总线SPI Bus ControllerI2C/I3C ControllerGE/10GE InterfaceUART/USB InterfaceOthersDDRFLASHQSFP/QSFP-DDSSD/NVMeOthers 图 8 DPU 整体芯片参考架构 DPU 在新型数据中心的架构中,主要聚焦解决当前数据中心应用中消耗 CPU、GPU 算力资源的网络、存储、安全以及和应用相关的,诸如 AI、数据库等

31、性能要求敏感的数据处理任务。为了达到这个目标,DPU 必须具备:层级化可编程性、低延时网络、统一管控以及适应持续发展的加速卸载的关键特性。云计算通用可编程 DPU 发展白皮书(2023 年)14 3.1 层级化可编程 性能和可编程能力是一对紧密联系的组合体,既相辅相成,又相互制约。在追求卓越性能的时候,就要去除冗余部分完全聚焦在具体的任务上,必然导致灵活性/可编程能力的下降;反之,在追求通用性和灵活性的时候,不得不考虑增加额外的分支判断和预测的功能来保证最大的适应性,必然导致性能的下降。CPU、GPU 的发展演进过程是对这种关系的最好诠释。随着网络和算力需求的持续增加,以 CPU 为计算中心的

32、服务器架构越来越不能满足实际应用对性能的需求,整个服务器系统将逐渐演化为以 DPU 作为数据处理中心的架构,如下图所示:Network FabricDPUStorage EnginePCIe.CPU CoresCompute and Storage Resource Pool.CPUCPUGPUDSACompute and Storage Resource Pool.CPUCPUGPUDSAEthernet MACRMDAPacket EngineNVMeCryptoCPU CoresDPUEthernet MACRMDAPacket EngineNVMeCryptoStorage Engin

33、eCPU CoresPCIeDPUEthernet MACRMDAPacket EngineNVMeCryptoStorage EngineCPU CoresCompute and Storage Resource Pool.CPUCPUGPUDSAPCIeDPUEthernet MACRMDAPacket EngineNVMeCryptoStorage EngineCPU CoresCompute and Storage Resource Pool.CPUCPUGPUDSAPCIe.图 9 以 DPU 为中心的数据中心网络架构 云计算通用可编程 DPU 发展白皮书(2023 年)15 DPU

34、 将承担起对性能敏感的网络、存储、安全以及和应用相关的,诸如 AI、数据库等工作任务的加速处理工作,更好地支撑 CPU、GPU 的上层业务。在新型的云原生、算网融合的服务器架构中,DPU 的层级化可编程特性使得构建强大的算网融合的基础设施层成为可能。依据不同层次的应用需求,DPU 可编程性可划分为三个层级:层级 1 通用可编程 主要面对通用可编程处理需求,以及数据慢速路径的处理需求,极大的灵活性,满足灵活多变的场景需求。特点为:高灵活性,性能需求相对不高。层级 2 嵌入引擎可编程 嵌入引擎可编程介于通用可编程和下一个层级的领域可编程之间,主要针对 DPU具备的各种嵌入式微引擎(例如,RISC-

35、V core+增强的网络处理指令集的微引擎是实现层级 2 可编程能力的可行方案之一)。嵌入引擎可编程兼顾灵活性和数据处理性能,基于 C、汇编、P4 或其他编程语言,针对动态的业务加速和卸载需求,达到最佳的平衡点。特点为:均衡的灵活性/性能。层级 3 领域可编程 针对特定领域的可编程性,可以获得最佳的性能。特点为:极致性能、低灵活性。在领域可编程中,一种可行的方案是基于可编程的 Pipeline 架构,应用层采用基于 P4-Pipeline 的编程接口。例如在对快速路径中报文转发与处理的应用,领域可编程能力可以发挥巨大作用。云计算通用可编程 DPU 发展白皮书(2023 年)16 图 10 DP

36、U 层级化可编程架构 DPU 层级化编程架构使得面对不同的性能灵活性组合的需求时,DPU 可以采取不同的编程组合满足实际需求。如下图所示,可以灵活依据权衡曲线采取不同的编程策略。图 11 性能灵活性权衡曲线 云计算通用可编程 DPU 发展白皮书(2023 年)17 3.1.1 层级 1 通用可编程 DPU 在层级 1 中基于通用的多核处理器,提供强大的可编程能力和向前兼容性。在这个层级,为用户提供完全的可编程能力。以往,在以 CPU 为计算中心的服务器架构中面临两类矛盾:1、在虚机或容器场景中,云底座管理系统在完成主机计算网络存储等资源的虚拟化与切分以提高物理机的资源利用率的同时,组件本身也在

37、消耗着主机的资源,引入额外的开销;2、在裸金属场景中,须支持整机资源对外售卖给终端用户,传统的 IaaS 组件运行方式无立足之地,无法实现对裸金属的弹性管理和交付。针对上述两个矛盾,引入 DPU 后可以利用 DPU 在层级 1 中的可编程能力把主机上的基础设施服务完全从主机侧下沉到 DPU,不仅降低了主机侧 CPU 的算力资源开销,提高了系统的性能和稳定性,同时通过统一的基础设施底座实现对虚拟机、容器、裸金属实例的并池管理,还提升了系统的运维与管理的效率。层级 1 的通用可编程能力基于标准的 Linux 操作系统,传统的控制平面的应用,例如虚拟化管理、裸金属管理、监控脚本、系统日志等应用可以无

38、缝地移植到 DPU 的这个层级。除了传统的 CPU 的可编程性能力,在层级 1 中还包含了与其他可编程层级的交互通路,一方面支持由层级 1 向其他层级进一步的卸载与加速,另一方面也支持由其他层级向层级 1反馈上送事件,由运行在层级 1 的组件统筹管理,从而实现软硬一体化的设计,取得兼顾性能与灵活性的最优解。3.1.2 层级 2 嵌入引擎可编程 层级 2 的嵌入引擎可编程,不同于基于通用多核处理器的可编程层级 1,它是基于嵌入式微引擎,提供包含但不限于 C、P4、汇编语言的编程环境和接口,以满足灵活多变的网络处理需求。专用的 ASIC 逻辑的极致性能是毋庸置疑的,但是 DPU 要面对的是复杂多变

39、的业务场景以及向前兼容的可扩展性,同时要满足足够的性能吞吐能力,因此通用的 CPU 和云计算通用可编程 DPU 发展白皮书(2023 年)18 专用的 ASIC 都不是最佳的选择。一个可编程的 Micro-engine(例如 RISC-V core+增强的网络处理指令集)可以满足这个要求。在实践中,随着数据中心承担业务的不断扩展和日益复杂化,不仅标准的网络处理协议需要快速处理,而且大量的自定义的私有协议也需要快速处理。针对这些需求,依赖 CPU 由软件完成支持可以满足基本功能的需求,但无法兼顾性能和成本与功耗同时取得最优解。DPU 的 Micro-engine 结合定制化的专用加速指令以及流水

40、线的设计,可以在保证性能的前提下,完整地支持自定义协议的报文解析查找匹配以及报文编辑。Micro-engine Pool 具备的参考特性:增强的网络优化指令集 多线程 支持C、汇编、P4可编程DPUFully Programmable Data-plane Processing EnginesStorage EngineCPU CoresPCIe ControllerEP2x200G Ethernet MACSystem Level CacheManagement&BootLANEngineCrypto EngineMicro-engine Pool(e.g.Risc-V)ASIC(e.g.P

41、ipeline)Programmable Domain 图 12 可编程层级 2-Micro-engine 3.1.3 层级 3 领域可编程 DPU 在层级 3 中提供基于高度优化的硬件处理逻辑(ASIC)来完成对网络数据的快速处理,实现网络数据的低延时转发。在层级 3 中,同样需要提供相应的可编程接口对硬件逻辑进行编程。典型的应用中,例如针对流表规则/Action 配置、字段匹配、诸如 VXLAN、GRE 等等隧道协议的封装解封装、报文头编辑、流量统计、连接跟踪和 QoS 等等功能,通过基于 SDK/API 或 P4 的编程开发环境将功能卸载到相应的 ASIC 硬件加速逻辑中,在保证性能最优

42、的情况下,保留有限的可编程性,简化使用的复杂度。云计算通用可编程 DPU 发展白皮书(2023 年)19 Micro-engine Pool(e.g.Risc-V)ASIC(e.g.Pipeline)ASIC-Pipeline 具备的参考特性:流表规则/Action 字段匹配 隧道协议封装解封装 报文头编辑 流量统计 CT跟踪 QoS 支持P4可编程Programmable DomainDPUFully Programmable Data-plane Processing EnginesStorage EngineCPU CoresPCIe ControllerEP2x200G Etherne

43、t MACSystem Level CacheManagement&BootLANEngineCrypto Engine 图 13 可编程层级 3-ASIC-Pipeline 3.2 低时延网络 无论数据中心的发展如何演进,使用的技术如何复杂,有一点需要明确,那就是网络数据包最终都是在物理的网络中进行传输。DPU 作为数据中心的核心部件之一,承担着物理网络传输的重要责任,是衔接算力(包括 CPU+GPU)和网络两大领域的重要枢纽。因此,DPU 的网络特性,例如带宽、时延等直接或者间接决定了数据中心网络发展的上限。带宽的发展相对平稳,从当前的 10G、25G 网络逐步演进到未来的 100G、20

44、0G、400G 网络。随着带宽,数据吞吐需求的增长,物理网络时延极大地制约着数据中心上层应用的发展,例如虚机,裸金属的应用部署。在整体的数据中心网络中,网络包时延由 5 部分组成:链路传输时延 数据串行时延 设备转发时延 排队时延 节点处理时延 构建和优化低时延网络时,就是要分析和改善这些影响网络包传输时延的各个组成部分。云计算通用可编程 DPU 发展白皮书(2023 年)20 链路传输时延,具体指的是传输介质带来的时延,例如电缆、光纤,时延是固定值,不可改变,不用考虑。就 DPU 在数据中心的核心位置而言,其他几项都是 DPU 需要聚焦的点。数据串行时延和设备转发时延,在 DPU 中主要依赖

45、芯片的硬件逻辑性能。随着网络流量的指数增长,基于硬件的数据面转发技术在交换机和路由器得到了发展和应用,这些技术(例如:NP 的 RTC 架构和 Pipeline 架构)也在新型数据中心网络架构中被应用到了 DPU上面。当前,经过实践的检验,最佳的数据面转发技术可编程的 Pipeline 技术在 DPU中被采纳。可编程的 Pipeline 技术,保留了硬化的 ASIC 实现的 Pipeline 在高业务吞吐和低时延的优势,同时可编程性兼顾了灵活性和可拓展性,支持未来新业务的兼容性。DPU 可编程的 Pipeline 技术有效地降低了数据串行操作和设备操作时延。另外,在排队时延和节点处理时延方面,

46、DPU 的层级化可编程特性可以发挥软硬协同的方式优化排队时延和节点处理时延的性能。在实践中,直接在 DPU 中以软硬协同的方式实现对 RDMA 和 RoCEv2 的支持是实现低延时网络的最佳技术选择之一。RDMA 的性能优势主要体现在零拷贝和 kernel bypass,零拷贝实际上减少了数据拷贝次数,没有数据拷贝到内核的操作,大大降低了数据处理的时延;另外,kernel bypass 之后去除了繁琐的报文头的处理逻辑,也进一步降低了时延。RoCEv2 是继 RoCEv1 之后更加成熟的 RDMA 承载协议。RoCEv2 网络在数据链路层支持标准以太网协议,在网络层支持 IP 协议,可以被当前

47、的数据中心网络直接采用和部署。通用 DPU 为了实现低时延网络,可以将 RDMA 和RoCEv2 卸载到 DPU 上,通过硬件逻辑加速报文的排队和处理时延。这样,一方面释放了CPU 算力资源,另外一方面将数据的处理转发操作尽量靠近网络侧。但是,在 DPU 卸载RDMA 和 RoCEv2 的实现中,RDMA 协议本身对网络丢包要求极高,因此如何减少和避免网络拥塞和丢包是一个非常重要的问题,处理不好,将会严重影响低时延网络的性能。目前,网络拥塞解决方案有 PFC、ECN、DCQCN、Timely 等方案。以 PFC 和 ECN 为例,PFC 是一种基于队列的反压协议,ECN 是一种基于流的端到端流

48、控协议。在数据中心的网络实践中,PFC 和 ECN 各有千秋,但是都不能独立解决当前的网络拥塞和丢包问题。如前文所述,通用 DPU 将以软硬协同的方式,来面对这个挑战。在 RDMA 和 RoCEv2 进行硬件卸载的同时,引入基于 C 的可编程单元(处于上一章节中描述的可编程层级 2),实现 PFC+ECN云计算通用可编程 DPU 发展白皮书(2023 年)21 拥塞控制算法的可编程性,增加对网络状态的智能感知能力。例如利用层级 2 中的可编程微引擎单元,实现对大量的、持续的数据传输流(俗称大象流)和少量的、短时间的数据传输流(俗称老鼠流)的动态感知和动态拥塞控制。总结,通用 DPU 中的可编程

49、 Pipeline、RDMA+RoCEv2 硬件逻辑模块、可编程拥塞控制单元共同作用,以软硬协同的方式保证低时延网络的实现。3.3 统一资源管控 DPU 在数据中心应用中将扮演着重要的角色,是衔接算力(包括 CPU+GPU)和网络两大领域的重要枢纽,是应用驱动下出现的异构计算设计的必然结果和实践。DPU 的体系架构解决了在数据中心应用中 CPU、GPU 很难或者不能完成的技术难点,在提升了整体数据中心运行效率的同时,也有效降低了数据中心基础设施的投资和运维成本。DPU 的体系架构真正实现了对计算资源、网络资源、存储资源的统一运维和管理,并且可以轻松地支持网络、存储和管控的卸载;支持裸金属应用模

50、式下的宕机迁移;支持虚拟机应用模式下的虚拟机热迁移。如下图所示,从资源的角度 DPU 作为统一的节点,实现统一的智能化资源管理。MAC InterfacePCIe运维管理DPU安全存储.Virtio-net/blk,NVMe,.网络.MAC InterfacePCIe运维管理DPU安全存储.Virtio-net/blk,NVMe,.网络.MAC InterfacePCIe运维管理DPU安全存储.Virtio-net/blk,NVMe,.网络.MAC InterfacePCIe运维管理DPU安全存储.Virtio-net/blk,NVMe,.网络.X86/Arm CPU容器容器容器容器容器容器.

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服