0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

介绍一种具备RDMA功能的FPGA网卡实现方案—RNIC

网络交换FPGA 来源:网络交换FPGA 2023-10-22 09:42 次阅读

传统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的吞吐量。

c9de27e4-7004-11ee-939d-92fbcf53809c.png

c9f20796-7004-11ee-939d-92fbcf53809c.png

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

ca08de44-7004-11ee-939d-92fbcf53809c.png

ca17efb0-7004-11ee-939d-92fbcf53809c.png

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

ca26297c-7004-11ee-939d-92fbcf53809c.png

ca436622-7004-11ee-939d-92fbcf53809c.png

TCP测试结果如下。

ca51fe6c-7004-11ee-939d-92fbcf53809c.png

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

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

RDMA测试结果如下。

ca651ff6-7004-11ee-939d-92fbcf53809c.png

ca822600-7004-11ee-939d-92fbcf53809c.png

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

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

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

下面视频详细介绍实际测试情况:

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

ca95e032-7004-11ee-939d-92fbcf53809c.png  








审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    602970
  • 以太网
    +关注

    关注

    40

    文章

    5419

    浏览量

    171592
  • RDMA
    +关注

    关注

    0

    文章

    77

    浏览量

    8945
  • PCIe接口
    +关注

    关注

    0

    文章

    120

    浏览量

    9701
  • TCP通信
    +关注

    关注

    0

    文章

    146

    浏览量

    4221

原文标题:【实测】基于Corundum架构的100G RDMA网卡

文章出处:【微信号:gh_cb8502189068,微信公众号:网络交换FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    RDMA RNIC虚拟化方案

    主要包括Inifiband、RoCE以及iWARP。实现RDMA协议的I/O设备被称为RNIC。主流云服务提供商已经开始广泛部署RNIC,例如亚马逊云推出的弹性网络适配器(Elasti
    的头像 发表于 01-23 17:23 1960次阅读
    <b class='flag-5'>RDMA</b> <b class='flag-5'>RNIC</b>虚拟化<b class='flag-5'>方案</b>

    一种基于FPGA的多通道频率测量系统的实现方法介绍

    设计了一种多通道频率测量系统。系统由模拟开关、信号调理电路、FPGA、总线驱动电路构成,实现对频率信号的分压、放大、滤波、比较、测量,具备回路自测试
    发表于 06-27 07:23

    一种复数浮点协方差矩阵的实现方案

    本文介绍一种基于FPGA的复数浮点协方差矩阵实现方案
    发表于 04-29 06:01

    如何利用FPGA芯片去实现SEC功能

    本文介绍一种采用单片现场可编程门阵列(FPGA)芯片实现SEC功能方案
    发表于 04-29 06:21

    分享一种FPGA的动态配置方案

    本文提出了一种基于嵌入式系统和Internet的FPGA动态配置方案
    发表于 05-27 06:38

    RT-thread实现U盘升级的一种OTA方案

    我前面介绍过RT-thread的一种OTA方案,可以通过串口或者网络进行远程升级,那今天在原来的这套方案的基础上做些修改,
    发表于 01-20 06:17

    分享一种智能网卡对热迁移支持的新思路

    正因为它对VM呈现的是虚拟设备,即virtio设备,它可以很容易的支持热迁移的特性。对于智能网卡厂商,尤其面对人力资源投入有限的情况下,通过遵循vDPA的规范可以达到一种快速有效的支持热迁移的方案
    发表于 07-05 14:46

    一种基于FPGA的误码性能测试方案

    摘要:提出了一种基于FPGA的误码测试方案,并简要介绍了该方案的设计思想。 关键词:误码仪 数字微波传输 ACEX1K系列
    发表于 06-20 15:09 965次阅读
    <b class='flag-5'>一种</b>基于<b class='flag-5'>FPGA</b>的误码性能测试<b class='flag-5'>方案</b>

    一种通用SPI接口的FPGA设计与实现

    SPI 串行总线是一种常用的标准接口,其使用简单方便而且占用系统资源少,应用相当广泛。本文将介绍一种新的通用的SPI 总线的FPGA 实现
    发表于 09-09 11:58 67次下载
    <b class='flag-5'>一种</b>通用SPI接口的<b class='flag-5'>FPGA</b>设计与<b class='flag-5'>实现</b>

    一种基于FPGA的ZigBee物理层发射机的数字基带实现方案_陈

    一种基于FPGA的ZigBee物理层发射机的数字基带实现方案_陈迪平
    发表于 03-14 16:54 6次下载

    如何选择最适合自己的RDMA网卡

    近些年来,RDMA网卡的技术应用在全球以太网通讯市场上刮起股旋风,特别是阿里、腾讯、浪潮、超微、联想等些互联网巨头企业在服务器上大量部署RDMA
    发表于 10-21 15:35 715次阅读

    RDMA是什么?RDMA网卡有什么作用?

    近几年RDMA这个词在行业内炒的如火如荼,但是很多人表示RDMA具体是什么?主要应用在哪些领域,有什么作用?RDMA都有哪几种协议?今天小编就这几个问题给大家科普下。
    发表于 12-27 17:15 1.2w次阅读

    RDMA技术有助于实现网络和设备的性能提升

    RDMA作为一种远程直接内存访问技术,可以使数据通过应用程序绕过CPU直达网卡实现低延迟、低负载、高效率的数据传输。从而提升网络和设备性能。
    发表于 03-28 15:03 615次阅读

    NVIDIA ConnectX智能网卡驱动RDMA通讯技术在分布式存储的应用

    NVIDIA ConnectX 智能网卡及开源 UCX 框架帮助网易高性能 RDMA 网络通讯功能实现更优表现,助力网易通过 Curve 开源项目为 Apache BRPC 自主
    的头像 发表于 11-03 09:48 1083次阅读

    RDMA网卡相比以太网卡的优势在哪里呢?

    不过,相对于以太网方案RDMA 方案网卡提出了新的要求,主要有两点。
    的头像 发表于 04-11 10:36 3314次阅读