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

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

3天内不再提示

InfiniBand和远程直接访问是什么,如何进行配置

sakobpqhz 来源:算力基建 作者:算力基建 2022-11-25 14:26 次阅读

本文简单描述了InfiniBand 和远程直接访问(RDMA)是什么,以及在实践中如何配置InfiniBand网络硬件。另外,本文档解释了如何配置与 InfiniBand 相关的服务。

01InfiniBand 和 RDMA 介绍

InfiniBand代表两个不同的因素:

1、InfiniBand网络的物理链路协议

2、InfiniBand Verbs API,这是RDMA(remote direct memory access)威廉希尔官方网站 的一个实现。

RDMA 可在不涉及计算机操作系统的情况下,从一个计算机访问另一台计算机的内存。此威廉希尔官方网站 启用了高吞 吐量和低延迟联网,且 CPU 使用率较低。 在典型的 IP 数据传输中,当机器中的某个应用程序向另一台机器上的应用程序发送数据时,在接收层时会出现以下情况:

1、内核必须接收数据。

2、内核必须确定该数据是否属于该应用程序。

3、内核唤醒应用程序。

4、内核会等待应用程序执行系统调用到内核。

5、应用程序将内核本身的内部内存空间数据复制到应用程序提供的缓冲中。

这个过程意味着,如果主机适配器使用直接内存访问(DMA),或者至少两次,则大多数网络流量会被复制 到系统的主内存中。另外,计算机执行很多上下文开关以在内核和应用程序上下文间进行切换。这些上下 文切换都可能造成高流量率的 CPU 负载,并可能造成其他任务的性能下降。 RDMA 通讯会绕过内核在沟通过程中的干预,这和普通的 IP 通讯不同这可减少 CPU 开销。RDMA 协议 让主机适配器知道数据包何时来自网络,应用程序应该接收它,并在应用程序的内存空间中保存数据包。对于 InfiniBand,主机适配器不将数据包发送到内核,然后将其复制到用户应用程序的内存中,而是,主机适 配器将数据包的内容直接放置在应用程序的缓冲中。此过程需要单独的 API、InfiniBand Verbs API,应用 程序必须支持这个API才能使用 RDMA。 Red Hat Linux同时支持 InfiniBand 硬件和 InfiniBand Verbs API。另外,Red Hat Enterprise Linux 支持以下威廉希尔官方网站 ,以便在非 InfiniBand 硬件中使用 InfiniBand Verbs API:

互联网广域 RDMA 协议(iWARP):通过 IP 网络实施 RDMA 的网络协议。

RDMA over Converged Ethernet(RoCE),也称为以太网的 InfiniBand(IBoE):通过以太网实现 RDMA 的网络协议。

02配置 ROCE

比如 Mellanox、Broadcom 和 QLogic 都提供 RoCE 硬件。 RoCE 是一种网络协议,可实现通过以太网的远程直接访问(RDMA)。以下是不同的 RoCE 版本:

RoCE v1

RoCE 版本 1 协议是带有 ethertype 0x8915 的以太网链路层协议,它允许同一以太网广播域中任何两个主机之间进行通信。 默认情况下,在使用 Mellanox ConnectX-3 网络适配器时,Red Hat Enterprise Linux 使用 RoCE v1 作为 RDMA 连接管理器(RDMA_CM)。

RoCE v2

RoCE 版本 2 协议在 IPv4 或 IPv6 协议的 UDP 上存在。RoCE v2 保留 UDP 目标端口号 4791。默认情况下,在使用 Mellanox ConnectX-3 Pro、ConnectX-4 Lx 或 ConnectX-5 网络适配器时,Red Hat Enterprise Linux将RoCE v2 用于 RDMA_CM,但硬件支持 RoCE v1 和 RoCE v2。 RDMA_CM 设置客户端和服务器之间用来传输数据的可靠连接。RDMA_CM 为建立连接提供了一个与 RDMA 传输相关的接口。该通信使用特定的 RDMA 设备,数据传输是基于消息的。 在客户端使用 RoCE v2,在服务器使用 RoCE v1 不被支持。在这种情况下,将服务器和客户端都配置为通过 RoCE v1 进行通信。 不支持在客户端和服务器上的 RoCE v1 使用 RoCE v2 协议。如果您的服务器中硬件只支持 RoCE v1,请将 您的客户端配置为使用 RoCE v1 与服务器通信。这部分论述了如何在将 mlx5_0驱动程序用于 Mellanox ConnectX-5 Infiniband 设备的客户端上强制实施 RoCE v1。 Soft-RoCE 是 RDMA over Ethernet 的一个软件实现,它也称为 RXE。在没有 RoCE 主机频道适配器(HCA)的主机上使用 Soft-RoCE。 Soft-RoCE 功能仅作为威廉希尔官方网站 预览提供。红帽产品服务级别协议(SLA)不支持威廉希尔官方网站 预览功 能,且其功能可能并不完善,因此红帽不建议在生产环境中使用它们。

03配置核心RDMA子系统

默认情况下,内核命名 IP over InfiniBand(IPoIB)设备,如 ib0,ib1 等。为避免冲突,红帽建议在 udev 设 备管理器中创建一条规则来创建持久且有意义的名称,如 mlx4_ib0。 RDMA 操作需要固定物理内存。这意味着内核不允许把内存写入到 swap 空间中。如果用户固定太多内 存,系统会耗尽内存,并且内核会终止进程来释放更多内存。因此,内存固定是一个特权操作。如果非 root 用户运行大型 RDMA 应用程序,则可能需要增加这些用户可在系统中的内存量。这部分论述 了如何为 rdma 组配置无限内存。 配置RDMA服务,rdma 服务在内核中管理RDMA堆栈。如果Red Hat Enterprise Linux 检测到 InfiniBand、iWARP 或 RoCE 设备,udev 设备管理器会指示 systemd 启动 rdma 服务。

04配置InfiniBand子网管理器

所有 InfiniBand 网络都必须运行子网管理器才能正常工作。即使两台机器没有使用交换机直接进行连接, 也是如此。有可能有一个以上的子网管理器。在那种情况下,当主子网管理器出现故障时,另外一个作为从网管理器 的系统会接管。大多数 InfiniBand 交换机都包含一个嵌入式子网管理器。 但是,如果您需要一个更新的子网管理器,需使用 Red Hat Enterprise Linux 提供的 OpenSM 子网管理器。

05配置 IPOIB

默认情况下,InfiniBand 不使用 IP 进行通信。但是,IP over InfiniBand(IPoIB)在 InfiniBand 远程直接访问(RDMA)网络之上提供一个 IP 网络interwetten与威廉的赔率体系 层。这允许现有未经修改的应用程序通过 InfiniBand 网络传输数 据,但性能低于应用程序原生使用 RDMA 时的数据。 互联网广域 RDMA 协议(iWARP)和 RoCE 网络已基于 IP。因此,您不能在 IWARP 或 RoCE 设备之上创建 IPoIB 设备。Mellanox 设备从 ConnectX-4 及更高版本开始,默认使用 Enhanced IPoIB 模式(仅限数 据报)。这些设备不支持连接的模式。 IPOIB通讯模式,在Datagram或Connected模式下配置 IPoIB 设备。不同之处在,IPoIB 层试图使用什么类型的队列对在通信的另一端的机器中打开: 在Datagram模式中,系统打开了一个不可靠、断开连接的队列对。这个模式不支持大于 InfiniBand link-layer 的最大传输单元(MTU)的软件包。IPoIB 层在传输的 IP 数据包之上添加了一个 4 字节 IPoIB 标头。因此,IPoIB MTU 需要比 InfiniBand link-layer MTU 小 4 字节。因为 2048 是一个常见的 InfiniBand 链路层 MTU,数据数报模式中常见的 IPoIB 设备 MTU 是 2044。 在Connected模式中,系统会打开一个可靠、连接的队列对。此模式允许大于 InfiniBand 链路层 MTU 的消息,主机适配器处理数据包分段和重新传输。因 此,InfiniBand 适配器以Connected模式发送的 IPoIB 信息大小没有限制。但是,IP 数据包会受size字段和 TCP/IP 标头的限制。因此,Connected模式中的 IPoIB MTU 最大为65520字节。 连接 模式模 的性能更高,但消耗的内核内存更多。 如果系统被配置为使用Connected模式,它仍然会以Datagram模式发送多播流量,因为 InfiniBand 交换机和光纤无法在Connected模式下传递多播流量。另外,当与任何未在Connected模式中配置的主 机通信时,系统将返回Datagram模式。 在运行将多播数据发送到接口上最大 MTU 的应用程序时,您必须将接口配置为Datagram模式,或者将应用程序配置为以数据包大小数据包的大小封顶数据包发送的大小。

审核编辑:郭婷

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

    关注

    19

    文章

    7489

    浏览量

    87868
  • 操作系统
    +关注

    关注

    37

    文章

    6808

    浏览量

    123289
  • RDMA
    +关注

    关注

    0

    文章

    77

    浏览量

    8945

原文标题:关于InfiniBand和RDMA网络配置实践

文章出处:【微信号:算力基建,微信公众号:算力基建】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    P2link——强大的内网穿透和远程访问工具

    P2Link作为一款强大的内网穿透和远程访问工具,可以帮助用户轻松实现网络连接和数据传输。特别适用于在复杂网络环境中需要远程访问内网资源的场景,如
    的头像 发表于 11-01 14:21 344次阅读

    打破网络边界:P2Link助力实现高效远程访问与内网穿透

    (网络地址转换)之后,使得外网设备难以直接对这些内网设备进行访问。此时,内网穿透威廉希尔官方网站 应势而生,而 P2Link 作为一种极为高效的内网穿透解决方案,成功打破了网络边界,为人们带来了便捷且安全的
    发表于 10-31 11:54

    超好用的小白远程访问方案,远程办公、NAS访问,还能异地观看4K

    说起远程桌面、异地组网、内网穿透等等服务,现在市面上同类产品不少,但同时支持组网跟穿透的产品几乎没有。节点小宝作为一款创新型的远程访问工具,凭借其配置简单,高速传输和安全等特点, 帮我
    的头像 发表于 10-15 11:11 388次阅读
    超好用的小白<b class='flag-5'>远程</b><b class='flag-5'>访问</b>方案,<b class='flag-5'>远程</b>办公、NAS<b class='flag-5'>访问</b>,还能异地观看4K

    如何安全配置并使用境外SOCKS5代理进行网络访问

    配置和使用境外SOCKS5代理进行网络访问时,必须严格遵守法律法规,并确保个人信息安全。
    的头像 发表于 09-25 08:06 274次阅读

    远程桌面内网穿透是什么?有什么作用?

    的计算机或服务。内网穿透适合什么人?1、远程办公人员:当公司内部的办公网络无法直接访问时,远程办公人员需要通过内网穿透威廉希尔官方网站 从外部访问公司内部的电脑和服务器。2、技
    的头像 发表于 09-13 08:10 380次阅读
    <b class='flag-5'>远程</b>桌面内网穿透是什么?有什么作用?

    何进行电源供应设计

    电子发烧友网站提供《如何进行电源供应设计.pdf》资料免费下载
    发表于 09-09 10:33 0次下载
    如<b class='flag-5'>何进行</b>电源供应设计

    这个组网、内网穿透工具远程连接是真的牛!

    首先,我们来探讨一个 常见的疑问 :为什么远程无法直接访问你电脑或NAS上运行的网站和服务? 原因在于 ,多数情况下,这些设备都被安置在内网之中,缺乏一个可供外界直接访问的独立公网IP地址,为了打破
    的头像 发表于 08-19 16:08 362次阅读
    这个组网、内网穿透工具<b class='flag-5'>远程</b>连接是真的牛!

    求助,在IR615中可以选用哪种vpn协议?如何进行配置

    现有多台IR615路由器,希望将其配置为vpn客户端,连接云服务器的vpn服务端 工程师远程连接云服务器对IR615进行管理 在IR615中可以选用哪种vpn协议?如何进行
    发表于 07-25 07:53

    通过InConnect平台实现终端设备远程访问

    1.实现终端访问的原理示意图: 2.操作步骤简介: a.使用Inhand路由器/网关系列产品,产品配置中开启设备远程管理平台; b.注册并登录InConnect平台; c.下载并配置
    发表于 07-24 06:06

    为什么远程访问优于 VPN?

    本文将探讨 VPN 和远程访问软件之间的主要区别,并重点说明 Splashtop 为什么是更好的选择。我们将从性能、用户体验、安全性、成本等方面进行探讨,以阐明为什么当前有很多组织正在从传统的 VPN 解决方案过渡到更先进的
    的头像 发表于 06-27 16:09 411次阅读
    为什么<b class='flag-5'>远程</b><b class='flag-5'>访问</b>优于 VPN?

    远程访问电脑共享文件怎么设置

    。 2、在手机上进行远程访问配置: - 从Google Play商店下载并安装Remote Desktop(Microsoft远程桌面)应用
    的头像 发表于 06-18 10:44 686次阅读
    <b class='flag-5'>远程</b><b class='flag-5'>访问</b>电脑共享文件怎么设置

    鸿蒙OpenHarmony【 配置远程访问环境】

    在搭建了Windows和Ubuntu开发环境后,需要通过下述设置,使得Windows可以远程访问Ubuntu,为后续烧录文件的传输做好准备。
    的头像 发表于 04-19 20:08 478次阅读
    鸿蒙OpenHarmony【 <b class='flag-5'>配置</b><b class='flag-5'>远程</b><b class='flag-5'>访问</b>环境】

    使用stm32电机库配置电机启动,如何进行初始转子位置?

    使用stm32电机库配置电机启动,转速位置双闭环完成,但是初始存在电机轻微反转确定转子位置,我想知道如何进行初始转子位置的方法(有增量式编码器和绝对值编码器),还有如何通过算法获得转子初始位置并将其加入MCSDK生成的软件
    发表于 03-25 06:18

    PSoC双核架构中双核都可以访问全部外设吗?

    你好!如标题:PSoC 双核架构中两个内核对芯片的全部外设都有直接访问能力嘛?如果都可以直接访问,那IPC模块的主要应用场景是哪些呢?
    发表于 02-02 11:44

    CysecureTools如何直接访问外部存储设备内的密钥呢?

    显然不符合安全标准。 那么,如标题所示,CysecureTools应该如何直接访问外部存储设备内的密钥呢?\"
    发表于 01-31 08:08