[RDMA] RDMA 初步使用操作
本小节只适用于 InfiniBand 设备。因为 iWARP 和 RoCE/IBoE 设备是基于 IP
的设备,用户应在配置 IPoIB 且设备有 IP
地址后,按照执行 RDMA 测试操作一节的内容进行测试。
1. InfiniBand 设备信息
启用 rdma
服务和 opensm 服务(若需要),并为具体硬件安装适当的用户空间库后,就可以进行用户空间 rdma
操作。
service opensmd start
libibverbs-utils 软件包中的简单测试程序可帮助您确定 RDMA 操作是否正常。ibv_devices 程序显示该系统中目前所有设备,而 ibv_devinfo
命令会给出每个设备的具体信息。例如:
[root@node24 ~]# ibv_devices device node GUID------ ----------------mlx4_0 46d2c92000004820
[root@node25 ~]# ibv_devices device node GUID------ ----------------mlx4_0 46d2c92000003500
使用ibstat命令显示InfiniBand的具体信息:
[root@node24 ~]# ibstat
CA 'mlx4_0'CA type: MT4099Number of ports: 1Firmware version: 2.30.3000Hardware version: 0Node GUID: 0x46d2c92000004820System image GUID: 0x46d2c92000004823Port 1:State: ActivePhysical state: LinkUpRate: 56Base lid: 72LMC: 0SM lid: 49Capability mask: 0x02514868Port GUID: 0x46d2c92000004821Link layer: InfiniBand
[root@node24 ~]#
[root@node25 ~]# ibstat
CA 'mlx4_0'CA type: MT4099Number of ports: 1Firmware version: 2.30.3000Hardware version: 0Node GUID: 0x46d2c92000003500System image GUID: 0x46d2c92000003503Port 1:State: ActivePhysical state: LinkUpRate: 56Base lid: 53LMC: 0SM lid: 49Capability mask: 0x0251486aPort GUID: 0x46d2c92000003501Link layer: InfiniBand
ibv_devinfo
和 ibstat
命令输出信息稍有不同(比如端口 MTU 信息是在 ibv_devinfo
而不是 ibstat
输出中显示,而端口 PUID 信息是在 ibstat
而不是 ibv_devinfo
输出中显示。同时有些信息的命名方式也不同,例如:ibstat
输出中的基础本地标识符(LID)与 ibv_devinfo
输出中的 port_lid
是相同的信息。
2. ibping程序 实现客户端/服务器模式
可使用简单的 ping 程序,比如 infiniband-diags 软件包中的 ibping 测试 RDMA 连接性。ibping 程序采用客户端/服务器模式。必须首先在一台机器中启动 ibping 服务器,然后再另一台机器中将 ibping 作为客户端运行,并让它与 ibping 服务器相连。因为我们是要测试基础 RDMA 功能,因此需要用于 RDMA 的地址解析方法,而不是使用 IP
地址指定服务器。
在服务器机器中,用户可使用 ibv_devinfo
和 ibstat
命令输出 port_lid
(或基础 lid)以及所要测试端口的端口 GUID(假设是上述接口的端口 1,则 port_lid
/基础 LID
是 49,而端口 GUID 是 0x46d2c92000004821
)。然后使用所需选项启动 ibping 捆绑至要测试的网卡和端口,同时还要指定 ibping 以服务器模式运行。使用 -?
或者 --help
选项即可查看 ibping的所有可用选项,但在这个实例中可使用 -S
或 --Server
选项,同时在绑定到具体网卡和端口时可使用 -C
或者 --Ca
以及 -P
或者 --Port
选项。注:这个实例中的端口不会指示端口号,但会在使用多端口网卡时指示物理端口号。要测试所使用 RDMA 结构的连接性,比如多端口网卡的第二端口,则需要让 ibping 捆绑至网卡的端口 49。使用单一端口网卡时不需要这个选项。例如:
[root@node25 ~]# ibping -S -C mlx4_0 -P 1
然后切换至客户端机器并运行 ibping。记录 ibping 程序所绑定端口的端口 GUID 或者 ibping程序所绑定服务器端口的 本地标识符(LID)。另外,还需要记录客户端机器中与服务器为所捆绑网卡和端口连接网络相同的网卡和端口。例如:如果服务器中第一网卡的第二端口所捆绑的网络是辅 RDMA 结构,那么就需要在客户端中指定一个也连接到第二结构的网卡和端口。完成配置后,请作为客户端运行 ibping 程序,使用在服务器中找到的端口 LID 或者 GUID 作为地址连接到服务器。例如:
[root@node24 ~]# ibping -c 10000 -f -C mlx4_0 -P 1 -L 49
[root@node24 ~]# ibping -c 10000 -f -C mlx4_0 -P 1 -L 49--- (Lid 49) ibping statistics ---
10000 packets transmitted, 0 received, 100% packet loss, time 398 ms
rtt min/avg/max = 0.000/0.000/0.000 ms
这个结果会验证端到端 RDMA 通讯是否在用户空间应用程序中正常工作。
[RDMA] RDMA 初步使用操作相关推荐
- linux 代码 rdma,RDMA 相关 简要摘录
本文将要为您介绍的是RDMA 相关 简要摘录,具体实现方法: RDMA (Remote Direct Memory Access) 全称为 远程直接内存访问 其出现的目的:为了解决网络传输中服务端数据 ...
- P200(PX4)初步校准操作
新遥控器应该是需要对码(而且遥控器要先进行一些设置,阿木的视频里面有,这里我暂时就先用设置好的遥控器吧,就只进行一个对码操作) 按照阿木的视频教程前应该需要先刷好相应固件和导入参数表. https:/ ...
- 一周一论文(翻译 总结)— [SOCC 13] jVerbs Ultra-Low Latency for Data Center Applications 在JVM虚拟机上构建RDMA的verbs操作
目录 Abstract 1. Introduction 2. Motivation 3. Background 4. Challenges 5.Desgin of jVerbs 5.1 Full RD ...
- 【RDMA】infiniband网卡安装|ib网卡命令|ibdump 用法说明
目录 1. 基础知识 2. 驱动安装 3.配置IP 4. 性能测试 5. 其他问题 RDMA .InfiniBand.IB卡.IB驱动的关系 ibdump 用法说明 原文:https://www.cn ...
- 【RDMA】infiniband网卡安装|InfiniBand 连接和状态诊断工具|测试RDMA网卡是否正常工作...
目录 1. 基础知识 一.诊断工具--翻译中 2. 驱动安装 3.配置IP 4. 性能测试 5. 其他问题 RDMA .InfiniBand.IB卡.IB驱动的关系 问题记录 原文:infiniban ...
- 【RDMA】RDMA 学习资料总目录
目录 RDMA技术分享 RDMA技术分享 RDMA技术详解 RDMA编程 RDMA 网络 ROCE|iWarp 性能优化 配置和特性优化 Qos流控 命令和测试 官网.文档和资料 作者:bandaoy ...
- 《FreeFlow: Software-based Virtual RDMA Networking for Containerized Clouds》
FreeFlow: Software-based Virtual RDMA Networking for Containerized Clouds Abstract 1 Introduction 背景 ...
- 深入浅出全面解析RDMA
RDMA(RemoteDirect Memory Access)技术全称远程直接内存访问,就是为了解决网络传输中客户端与服务器端数据处理的延迟而产生的.它将数据直接从一台计算机的内存传输到另一台计算机 ...
- RDMA技术详解(三):理解RDMA Scatter Gather List
1. 前言 在使用RDMA操作之前,我们需要了解一些RDMA API中的一些需要的值.其中在ibv_send_wr我们需要一个sg_list的数组,sg_list是用来存放ibv_sge元素,那么什么 ...
最新文章
- C和C++安全编码笔记:总结
- 在Flutter中嵌入Native组件的正确姿势
- iphone 一些小游戏.
- 一些小团队的自动化运维实践经验
- 《系统集成项目管理工程师》必背100个知识点-69简述合同管理的主要内容
- Oracle11g新特性注意事项
- python模式选择符,Python设计模式之修饰器模式
- 吉林大学计算机英语成绩,吉林大学复试出结果,初试分差84分,复试成绩却相差无几!...
- linux打开anaconda的jupyter_Linux Centos7安装anaconda3和jupyter
- 遂冀机器人_409支队伍1006名选手角逐第12届河北省青少年机器人竞赛
- Windows同步对象Event和Linux的条件变量
- 【面试题】机器学习与深度学习常见面试题
- nodejs通过later实现定时执行任务
- 数据库分页LIMIT
- Vue3动态加载图片
- word双栏左右不能对齐
- 遥控汽车网页小游戏源码
- Docker基础、利用Docker Compose部署Vue项目
- 影响蓝牙耳机音质的是什么因素?拒绝踩雷,这五款蓝牙耳机赶紧收藏
- 有12个小球,外形相同,其中一个小球的质量与其他11个不同
热门文章
- 用ajax向后台传递数组参数
- javascript中最最最常用的方法封装
- 继续说一下2016里面的json功能(1)
- java个人学习笔记:javaBean
- 修复SQL Server Compact数据库时遇到找不到指定的模块的异常
- Java8新特性:接口的默认方法与接口的静态方法
- 中汽协谈芯片短缺:芯片价格或上涨,部分车企在明年会受较大影响
- linux c语言定时任务crontab,linux 定时任务 crontab相关(一)
- pdo mysql 建库_一帖让PHP小白彻底了解PDO操作数据库的方法
- 谷歌浏览器禁止右滑返回历史_移动端h5禁用浏览器左滑右滑的前进后退功能