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

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

3天内不再提示

RDMA技术简介

Linux阅码场 ? 来源:Linux阅码场 ? 2023-04-13 10:48 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

13.3 RDMA 协议

RDMA 指的是一种远程直接存储器访问技术。具体到协议层面,它主要包含 InfiniBand、RoCE 和 iWARP 三种协议。三种协议都符合 RDMA 标准,共享相同的上层用户接口(Verbs),只是在不同层次上有一些差别。图 13-6 对比了这几个协议在不同层次上的差异。

ce00fcdc-d92f-11ed-bfe3-dac502259ad0.png

RDMA 技术简介

13.3.1 InfiniBand

InfiniBand(直译为“无限带宽”,缩写为 IB)是一个用于高性能计算的计算机网络通信标准,它具有极高的吞吐量和极低的时延,在 2000 年由 IBTA(InfiniBand TradeAssociation)提出。IBTA 是 RDMA 技术最主要的倡导者和先行者,其规定了一整套完整的链路层到传输层(和传统 OSI 七层模型的传输层不同)规范,如图 13-7 所示。但是 InfiniBand无法兼容现有以太网,如果企业想部署的话,除了需要专用网卡之外,还要重新购买配套的网络交换设备

ce333404-d92f-11ed-bfe3-dac502259ad0.png

13.3.2 RoCE

基于融合以太网的 RDMA(RDMA over Converged Ethernet,RoCE)也是由 IBTA 定义的。InfiniBand 架构规范定义了如何通过 InfiniBand 网络执行 RDMA,而 RoCE 则定义了如何通过以太网网络执行 RDMA。RoCE 有 RoCEv1 和 RoCEv2 两个版本。如图 13-6 所示,RoCE v1 的网络层使用了InfiniBand 规范,链路层使用以太网协议,因此允许同一个以太网广播域中的两台主机进行通信。RoCEv2 使用了“UDP+IP”作为网络层,是一个“网络层+链路层”协议,因此 RoCE v2网络中的数据包可以被路由。RoCE 被认为是 InfiniBand 的“低成本解决方案”,将 InfiniBand传输层的报文封装成以太网数据包进行收发(也就是说 RoCE 仍然使用 InfiniBand 传输层,见图 13-6)。由于 RoCE 可以使用以太网交换设备,因此在企业中的应用比较多,但是其在相同场景下相比 InfiniBand 会有一些性能方面的损失。

RoCE 与 InfiniBand 有如下几个技术差异。

? 链路级流量控制。InfiniBand 使用基于信用(credit-based)的算法来保证无损的网络通信。RoCE 的实现需要无损以太网网络,以达到类似 InfiniBand 的性能。无损以太网通常通过以太网流量控制或优先级流量控制(PFC)进行配置,配置一个无损以太网网络比配置一个 InfiniBand 网络复杂。

? 阻塞控制。InfiniBand 定义了基于 FECN/BECN 标记的阻塞控制协议。RoCEv2 定义了一种使用 ECN 进行标记、CNP 帧进行反馈的阻塞控制协议,网络中的交换机中需要支持 ECN 功能。

? InfiniBand 交换机的时延通常低于以太网交换机。在以太网链路层上使用 RDMA 应用程序时,应注意以下几点。

? 网络中不需要子网管理器。对于那些需要与子网管理器通信的操作,在 RoCE 网络中会以不同的方式进行管理。

? 由于 LID 是 InfiniBand 协议栈链路层的属性,其在 RoCE 网络中无效,因此在查询RoCE 网卡的端口时,LID 显示为零。

? 因为子网管理器不存在,所以无法查询路径。因此,在建立连接之前,必须将相关的值填充进路径记录结构。建议使用 RDMA CM 建立连接,因为它可以负责填充路径记录结构。

? RoCE 设备的流量不显示在相关以太网设备的计数器(比如 ifconfig 命令的输出中可以看到的收发包计数)中,因为它的数据收发不通过以太网设备驱动程序。RoCE 设备 和 InfiniBand 设备的流量统计都在 /sys/class/infiniband//ports//counters/目录下。作者使用的 Mellanox ConnectX-5 100G 网卡就是一种 RoCE 设备。在安装了该设备的机器上,执行 ibv_devinfo 命令可以获取如下比较详细的设备信息,如下所示。

ce4bca96-d92f-11ed-bfe3-dac502259ad0.png

从其中的 transport: InfiniBand 可以看出其传输层为 InfiniBand 传输层,link_layer: Ethernet表示它支持以太网链路层,再结合图 13-6,就可以确认这是一种符合 IBTA 定义的 RoCE 类型的 RDMA 设备。另外,port_lid: 0 表示其 LID 为 0(LID 对 RoCE 无意义)。执行 cma_roce_mode 命令可以获知此网卡当前支持的 RoCE 版本为 RoCEv2。

ce63af12-d92f-11ed-bfe3-dac502259ad0.png

审核编辑:汤梓红

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

    关注

    41

    文章

    5758

    浏览量

    176844
  • 存储器
    +关注

    关注

    39

    文章

    7663

    浏览量

    168398
  • 接口
    +关注

    关注

    33

    文章

    9069

    浏览量

    154278
  • InfiniBand
    +关注

    关注

    1

    文章

    31

    浏览量

    9439
  • RDMA
    +关注

    关注

    0

    文章

    85

    浏览量

    9348

原文标题:好书连载 | RDMA技术简介(3)

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入了解RDMA技术

    Explorer,专注于高性能网络、虚拟化网络及网卡的测试方案研究。熟悉dpdk,rdma,sdn等技术的应用与解决方案。
    的头像 发表于 12-26 09:23 ?3365次阅读
    深入了解<b class='flag-5'>RDMA</b><b class='flag-5'>技术</b>

    RDMA RNIC虚拟化方案

    远程直接内存访问(Remote Direct Memory Access,RDMA技术允许应用程序绕过操作系统内核,以零拷贝的方式和远程计算机进行网络通信,具有低延迟和高带宽的优势。RDMA协议
    的头像 发表于 01-23 17:23 ?3167次阅读
    <b class='flag-5'>RDMA</b> RNIC虚拟化方案

    利用CXL技术重构基于RDMA的内存解耦合

    本文提出了一种基于RDMA和CXL的新型低延迟、高可扩展性的内存解耦合系统Rcmp。其显著特点是通过CXL提高了基于RDMA系统的性能,并利用RDMA克服了CXL的距离限制。
    发表于 02-29 10:05 ?6013次阅读
    利用CXL<b class='flag-5'>技术</b>重构基于<b class='flag-5'>RDMA</b>的内存解耦合

    一文详解以太网RDMA技术

    在现代计算机网络中,传输效率和低时延是高性能计算、云计算、分布式存储等应用的关键需求。而远程直接内存访问(RDMA,Remote Direct Memory Access)技术因其高效的数据传输特性
    的头像 发表于 03-10 11:09 ?3147次阅读
    一文详解以太网<b class='flag-5'>RDMA</b><b class='flag-5'>技术</b>

    RDMA简介1之RDMA开发必要性

    总线或高速外设部件互连总线(PCIe)上,二者均为短距离连接总线,会导致数据采集系统的部署位置受限 。远程直接内存访问技术RDMA)是一种专为远距离网络通信设计的技术,其通常通过光纤进行设备间连接
    发表于 06-03 14:38

    RDMA简介2之A技术优势分析

    随着数据中心对于网络带宽和延迟的要求日益增长,传统的TCP/IP网络已无法满足性能要求,RDMA网络则凭借其高带宽、低延时的特性脱颖而出。相较于传统TCP/IP协议,RDMA具有零拷贝、不需要CPU
    发表于 06-04 11:35

    RDMA简介3之四种子协议对比

    RDMA协议共有四种子协议,分别为InfiniBand、iWARP、RoCE v1和RoCE v2协议。这四种协议使用统一的RDMA API,但在具体的网络层级实现上有所不同,如图1所示,接下来将
    发表于 06-04 16:05

    RDMA简介4之ROcE V2初析

    RoCE v2原语 (1)RDMA READ操作将远端主机内存中的数据读取到本地。具体流程为:本地主机将需要请求数据的地址、长度及对应的远程访问密钥发送给远程主机,远程主机比对密钥通过后,则将数据
    发表于 06-05 15:20

    基于RDMA技术的Spark Shuffle性能提升

    一篇文章教你使用RDMA技术提升Spark的Shuffle性能
    发表于 10-28 16:46

    技术盛宴 | 浅析RDMA网络下MMU水线设置

    了广泛应用。为保障RDMA的稳定运行,基础网络需要提供端到端无损零丢包及超低延时的能力,这也催生了PFC、ECN等网络流控技术RDMA网络中的部署。在RDMA网络中,如何合理设置MM
    发表于 11-22 12:44 ?1450次阅读

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

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

    RDMA技术简介 RDMA的控制通路和数据通路方案

    RDMA 技术基于传统以太网的网络概念,但与以太网网络中的同类技术存在差异。关键区 别在于,RDMA 提供了一种消息服务,应用程序可以使用该服务直接访问远程计算机上的虚拟内存。
    发表于 04-10 09:59 ?2446次阅读

    RDMA技术简介

    iWARP(Internet Wide Area RDMA Protocol)是 IETF 定义的基于 TCP 的 RDMA,它和RoCE v2 都可以路由。因为 TCP 是面向连接的可靠协议,这使
    的头像 发表于 04-20 09:49 ?3977次阅读
    <b class='flag-5'>RDMA</b><b class='flag-5'>技术</b><b class='flag-5'>简介</b>

    rdma网络是什么?RDMA网络有什么应用场景?

    RDMA(Remote Direct Memory Access)网络是一种技术,它通过网络直接在计算机之间传输数据,而无需双方操作系统的介入。这种技术可以允许高吞吐、低延迟的网络通信,尤其适合在大规模并行计算机集群中使用。
    的头像 发表于 12-22 09:30 ?2108次阅读

    以太网RDMA RoCE的技术局限

    上期我们讲到了RDMA的WHY,WHAT & HOW(AI网络背景下RDMA的Why,What & How),这一期我们来谈一谈RDMA的不足。
    的头像 发表于 10-22 10:02 ?1482次阅读
    以太网<b class='flag-5'>RDMA</b> RoCE的<b class='flag-5'>技术</b>局限