[原创] 英伟达另一大生态,DOCA正在崛起
BlueField DPU,被英伟达称之为是数据中心的第三大支柱。它是一款非常强大的片上数据中心基础设施,可用于卸载、加速、隔离 在主机CPU上运行的各种软件定义的基础设施服务,从而突破性能和可扩大性的一些瓶颈,可以消除现在数据中心的一些安全威胁。但要想充分发挥BlueField DPU这颗强大的片上数据中心基础设施的硬件能力,离不开其DOCA软件这个推手。DOCA是释放NVIDIA DPU潜力的关键。
DOCA 1.3发布
早在2020年GTC大会上,英伟达发布了BlueField-2 DPU,与之一同发布了DOCA 1.0。DOCA和BlueField DPU相结合,为开发者打造一个全面、开放的开发平台,能够开发具备突破性网络、安全和存储性能的应用。后来DOCA陆续演进,DOCA 1.1版本完善了整个DOCA软件栈,提供了DOCA SDK、运行时,以及相关的服务;DOCA 1.2版本则加强了在零信任 分布式安全解决方案上的支持;现在DOCA已经来到了1.3版本。
DOCA 1.3新增了121个API开发接口,也提供了一些全新和增强的功能,包括优化数据流插入的DOCA Flow库,通信通道库,正则表达式库、 App Shield的SDK,基于OVN的IPSec 加密的完全卸载,以及新增的一些DOCA服务,比如HBN,英伟达在DPU上实现了三层的路由功能。
具体来看,DOCA 1.3主要有3个增强功能:
首先是 正则表达式库 ,也称为Regular Expression(RegEx),它是许多脚本语言使用标准模式匹配的工具,有了它可以创建与文本模式匹配的一些过滤器,而不仅是单个单词或短语的匹配。正则表达式是专为高吞吐量、低延时、深度包检测的应用程序而设计,这些应用程序需要数据包,可以进行负载的检测和 异常的监测,通过正则表达式模式匹配字符串来实现相应的应用功能。这个正则表达式还可以做一个安全遥测的功能,可以在DOCA1.3上更好地提供一些安全方面的应用,比如可以去做一些应用的识别、 入侵防御的系统、 URL的过滤、 文件的扫描、 深度数据包检测以及App Shield的内存扫描。
第二个是基于 OVN的数据路径加密功能 。DOCA1.2版本能将 主机内的IPsec相应的功能卸载到DPU之上, 构建IPsec的控制平面,在vSwitch 控制平面上实现 IPsec加密和解密。DOCA 1.3版本把这个功能相当于扩展到整个OVN范畴之内,不同主机之间都可以用这个IPsec的方式来创建不同的通道,进行数据的加密。
最后是DOCA 基于主机的网络,简称为“HBN” 。该功能可以在NVIDIA BlueField DPU上基于主机的网络上进行管理和监控同一节点上虚拟机和容器之间的流量,而且它还可以分析进出节点的加密 流量 ,同时也会把一些原来依赖以TOR交换机上面的功能在DPU上面得到了实现,这种方式会彻底改变客户构建和思考整个数据中心网络构建的方式。随着BlueField DPU智能化程度的提高,未来会有越来越多的功能都会集中在DPU上去实现,以此来降低对TOR交换机的要求。
基于DOCA 1.3版本,开发者可以轻松地在本地 BlueField DPU或X86的开发容器上搭建开发环境,快速地开发自己想要实现的应有程序或服务。基本上DOCA是个即插即用的方式,DOCA框架能够给开发者提供一致的开发体验,既可以统一访问BlueField DPU上各种硬件资源,从而简化网络、存储、安全和基础设施管理服务相关的开发,开发者也不用担心开发环境 构建和 部署的复杂程度。
国内高校学生的DOCA开发体验
今年DPU中国黑客松大会的亚军团队代表者胡效赫分享了其团队基于DPU和DOCA开发的经历。
他们的开发项目是基础设施的业务可观测性,项目名为“DeepTrace”,主要面向DPU驱动的基础设施的网包级函数粒度业务可观测性。他们以DOCA提供的网流及粗粒度可观测性为基础,对应的是DOCA中的Netflow API库,结合DPU的高性能网络处理功能,对应的是DPU的ASAP2网包分类引擎,以及DOCA中的Flow API库,以及数据平面和控制平面的可编程能力,将可观测性的力度提升至网包级,并精确到每个函数功能,做到了几乎可以忽略不计的性能损耗。
下图是胡效赫团队DeepTrace项目的系统架构,据其介绍,业务流量首先经过DeepTrace预选器,再经由原始的D PU程序进行处理,在D PU程序中会调用DeepTrace的触发器来实现相应点位的观测,然后被观测的数据会被汇总收集至分析器,通过数据的重组和分析得到相应的结果,比如得到异常流量的检测以及业务问题的定位等。基于DOCA开发DeepTrace的整体编程模式和在CPU上进行DPDK网络功能的开发功能类似,这种模式提高了他们的开发效率。
胡效赫进一步指出,具体来看,其中触发器部分的挑战是如何以最小的代价收集链式函数和网包的信息,我们采用的方案是以统一化、轻量化的函数内触发器实现,具体在开发过程中,我们将DOCA的NetFlow库修改为网包粒度,而需要观测的函数以API的形式调用触发器即可。在预选器部分的挑战是如何处理大规模原始流量,并在函数链中记录网包。我们采用的方案是通过硬件卸载的预选器进行标记和过滤。具体在开发过程中我们调用DOCA的Flow库配置所需预选的颗粒 规则即可实现,因为预选功能实际由硬件卸载完成。所以,方案带来的性能损耗几乎可以忽略不计划。在分析器部分,我们由运行在ARM控制平面的开源开放工程实现。
胡效赫表示:“在开发过程中,通过专家的指导,我们团队充分地了解了DPU的硬件特性,DOCA良好的可编程性让我们可以快速实现并验证创新的想法,同时,我们也可以对DOCA的API进行深度、定制化开发,实现更好的性能和更丰富的功能。随着DPU在数据中心的地位越来越高,我们也会继续在DPU进行相关研究和研发。”
免费的DOCA开发环境启用
一个好消息是,首批运营NVIDIA授权合作伙伴 DPU & DOCA卓越中心 的合作伙伴 - 丽台(上海)信息科技有限公司和上海信弘智能科技有限公司, 从即日起向 整个中国的DOCA开发者提供一个免费的DOCA开发环境。现在,免费的开发环境是第一期试运营 状态,每一个卓越中心 在他们的数据中心里都会提供两套开发环境, 共启用四套开发环境,供DOCA开发者免费使用。其访问方式需要通过因特网远程登录访问的云端开发环境服务,DOCA 开发者需要自备远程登录终端设备及相关软硬件环境。
这个开发环境主要有三个特点:一是免费的DOCA开发环境 是远程服务的,近似于云服务方式来提供给开发者和科研人员,可以远程地登录到数据中心,来体验DOCA开发的环境,或者在上面跑一些他们已经做好的开发程序,做一些开发的工作。
二是这个远程的环境可以提供一个完整的开发平台,开发者可以在上面做他的程序编译、运行和相应的测试。
三是这个环境主要是来支持中国的DOCA开发者,去加速在应用方面的创新,来拓展开发者社区。
免费DOCA开发环境申请人必须已经成功注册 NVIDIA DOCA 开发者抢先体验计划,方可以申请免费开发环境。申请免费开发环境邮箱是,丽台(上海)科技有限公司:DOCA@leadtek.com;上海信弘智能科技有限公司:DOCA@zentek.com.cn ,开发者可以直接向两个邮箱申请免费开发软件。
作为DOCA开发者社区的一项福利,英伟达欢迎来自ISV 合作伙伴、云服务提供商、网络安全、电信、院校/科研或初创公司的软件开发者、软件架构师和软件开发运维工程师作为申请人申请使用,并基于此开发相关领域的数据中心或云计算基础设施软件,并通过NVIDIA DOCA 开发者论坛进行技术交流与问题解答。
写在最后
英伟达一直是开源领域的贡献者,近日宣布已成为Linux OPI项目创始 成员。随着DOCA新版本的发布,以及免费DOCA开发环境的开放,DOCA将为更多开发者提供便利,DOCA也或将续演CUDA生态的辉煌。
*免责声明:本文由作者原创。文章内容系作者个人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。
今天是《半导体行业观察》为您分享的第3098内容,欢迎关注。
推荐阅读
★ 一路狂跌的芯片巨头
★ 手机基带芯片往事
半导体行业观察
『 半导体第一垂直媒体 』
实时 专业 原创 深度
识别二维码 ,回复下方关键词,阅读更多
晶圆|集成电路|设备 |汽车芯片|存储|台积电|AI|封装
回复
投稿
,看《如何成为“半导体行业观察”的一员 》
回复 搜索 ,还能轻松找到其他你感兴趣的文章!
- 半导体行业观察
- 摩尔芯闻