前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【实测】基于Corundum架构的100G RDMA网卡

【实测】基于Corundum架构的100G RDMA网卡

作者头像
网络交换FPGA
发布2023-10-25 09:20:21
2.2K0
发布2023-10-25 09:20:21
举报
文章被收录于专栏:网络交换FPGA网络交换FPGA

三年前的2020年5月12日,我们分享了一篇有关100G开源网卡的文章《业界第一个真正意义上开源100 Gbps NIC Corundum介绍》,随后又陆陆续续分享了多次有关Corundum上板测试及仿真环境搭建的文章:《揭秘:普通电脑换上Xilinx Alveo U50 100G网卡传文件会有多快?》,《开源100 Gbps NIC Corundum环境搭建介绍(一)》,《开源100 Gbps NIC Corundum环境搭建介绍(二)仿真及工程恢复》,【干货】寻找开源100G NIC Corundum中的隐藏BUG等。大概两年前,我们决定基于开源的Corundum架构研制100G RDMA网卡,终于目前有了稳定的一版,以下是详细介绍,欢迎大家留言讨论指导。

传统TCP/IP技术处理数据包需通过操作系统和其他软件层,导致数据在系统内存、处理器缓存和网络控制器缓存间频繁复制,增加了服务器CPU和内存的负担,特别是在网络带宽、处理器速度与内存带宽不匹配时,网络延迟会进一步加剧。RDMA技术通过将数据处理从CPU旁路并卸载到硬件上来实现低时延和高带宽特性。

基于这一研究背景,介绍一种具备RDMA功能的FPGA网卡实现方案—RNIC 。本方案以Corundum开源高性能原型平台为基础, 实现了100Gbps的RoCE v2网络协议栈卸载加速;在保留Corundum原生PCIe DMA引擎等组件的基础上,通过精准的拆分设计、逻辑耦合和路径复用,将RoCE v2网络协议栈嵌入以太网网卡设计。方案支持单边RDMA READ和RDMA WRITE操作、双边SEND/RECV操作以及立即数操作,提供Back-to-N的重传机制保障数据传输完整性的同时提供了可达256的Outstanding能力, 并支持基于DCQCN算法的拥塞控制机制为本方案在数据中心等场景的大规模部署提供保障。实测RNIC能够实现低至4us左右的硬件端到端延迟以及高达96Gbps的吞吐量。

我们实现的100G RDMA网卡具体指标和性能如下:

测试场景及拓扑连接图如下。

TCP测试结果如下。

TCP性能表现:实测在Linux系统环境下,端到端连接拓扑,当MTU=9214B,不进行多核优化时,本方案的iperf TCP带宽可达59.7G bps;CPU占用率为12%左右 ; TCP/IP协议普遍延迟在100–200微秒之间。

TCP测试分析:性能开销集中在内核协议栈的系统调用、内存拷贝、协议处理与中断处理等方面。这些开销占用了大量的CPU 资源,增加了数据延迟。

RDMA测试结果如下。

RDMA性能表现:在Linux系统环境下,相同测试拓扑,使用配套驱动程序和应用程序发送RDMA命令进行测试。本方案的RDMA网卡实测单边RDMA语义读写带宽可达96.28G bps;CPU占用率不超过0.3%;硬件端到端读写延迟低至4us左右。

RDMA测试分析:当消息大小大于8KB时,系统吞吐量可以逼近满带宽,当消息较小时,吞吐量会显著降低。原因一方面是数据帧帧头开销占比上升导致有效带宽下降,另一方面在于硬件设计无法支撑更高的消息速率。时延会随消息大小出现近似线性的增长,最大的延迟花费在PCIe链路和网络链路上,硬件的处理开销占比很小。

对比以太网和RDMA的测试结果可知,在相同的硬件条件下,使用RDMA技术的网卡可以拥有更高的网络带宽和更低的传输时延,对于云服务、数据中心等具有高吞吐量的网络业务需求场景,RDMA技术更能满足实际需要,能充分解放处理器资源,提高带宽,降低成本。

下面视频详细介绍实际测试情况: https://mpvideo.qpic.cn/0bc32yadgaaacqaeudjtpfsvbvwdgplaamya.f10002.mp4?

我们未来有很多工作要做,如添加我们之前做的P4可编程的工作(【Verilog开源】一种用于智能网卡或可编程交换机的,支持P4语言的高性能开源解析器的设计),突破Corundum架构限制支持百万QP对和提升小包性能,进一步优化流量控制、拥塞管理和负载均衡等问题,进一步的提高数据中心网络的数据传输速率和稳定性。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-10-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络交换FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档