【infiniband】ibdump抓包

ibdump用于捕获和转储InfiniBand网络的流量。

这种工具通常用于调试和分析InfiniBand网络问题,包括性能瓶颈和配置错误。`ibdump`工具在Mellanox InfiniBand环境中较为常用,现由NVIDIA提供支持。

使用`ibdump`的基本步骤

请注意,您需要在安装了InfiniBand驱动和相应软件包的系统上运行`ibdump`:

1. 确保安装了相关软件:

`ibdump`可能需要特定的软件和驱动程序才能正常工作。这通常会包括Mellanox OFED (MOFED) 驱动。您可以从Mellanox/NVIDIA的官方网站下载并安装适合您系统的MOFED版本。

2. 获取适当的权限:

使用`ibdump`可能需要root权限,或者您可能需要将当前用户添加到具有相应权限的用户组中。

3. 找到想要监听的端口:

您可以使用如`ibstat`或`ibv_devinfo`之类的命令获取InfiniBand端口的状态和详细信息。

4. 使用ibdump命令:

   - 基本的命令格式通常如下:`ibdump -p PORT_NUMBER`
     这里`PORT_NUMBER`是您想要监听和捕获数据包的InfiniBand端口号。
   - 如果您想要将输出保存到文件中,可以使用 -o FILE_NAME 选项:`ibdump -p PORT_NUMBER -o dump_file`

5. 运行ibdump并分析转储数据:

一旦您运行了`ibdump`,它将开始捕获流过指定端口的数据包,并根据您的指定将其输出到屏幕或文件中。您可以使用Wireshark或其他分析工具来查看和分析这些转储文件。使用示例:

sudo ibdump -p 1 -o ib_traffic.dump
这将捕获端口1的InfiniBand流量,并将输出保存到`ib_traffic.dump`文件中。

如果只运行ibdump

ibdump

默认的第一个设备, 端口1,保存到文件sniffer.pcap。

错误信息的解决:

出现的错误信息 "-E- Failed to set sniffer mode. ibv_create_flow failed: Invalid argument" 表示系统在尝试设置网络嗅探模式时失败了,因为执行 ibv_create_flow 这一操作时传入了无效的参数。嗅探模式通常用于监控网络接口的数据流,这在使用 Mellanox 驱动的网络设备中是一个重要的功能。

这个错误提示可能表明你的系统未启用 Flow Steering(流量引导)功能。Flow Steering 可以帮助网络驱动将数据包分流到特定的队列中,这对于数据包嗅探等应用来说是很有用的。在 Mellanox 驱动中,你可以通过修改驱动的参数来启用这个功能。

根据提供的错误解决建议,你可以按照以下步骤解决该问题:

1. 编辑 mlnx.conf 文件

需要向 Mellanox 驱动的设置中添加一条配置。在终端中运行以下命令:

sudo nano /etc/modprobe.d/mlnx.conf

这条命令使用 nano 文本编辑器打开配置文件,你也可以使用其他文本编辑器,如 vi 或 vim

(实际mlnx.conf提示:Please don't edit this file. Create a new file under # /etc/modprobe.d/ for your configurations. 所以在/etc/modprobe.d/下根据主机上的实际IB名称创建:mlx4_0.conf)

然后,将以下内容添加到该文件中:

options mlx4_core log_num_mgm_entry_size=-1

这行代码将 Mellanox 驱动内核模块(mlx4_core)的被管理入口大小的数目设置为最大值,允许使用全部的流量引导范围。

2. 重启驱动程序

为了让更改生效,你需要重启 Mellanox 驱动。这可以通过卸载并重新加载驱动模块或重启系统来完成。使用以下命令卸载并重新加载驱动模块:

sudo rmmod mlx4_ib mlx4_en mlx4_core
sudo modprobe mlx4_core
sudo modprobe mlx4_en
sudo modprobe mlx4_ib

rmmod 命令用于卸载驱动模块(如果它们没有在使用中),`modprobe` 命令用于重新加载它们。这里显示的顺序通常是正确的,因为 "ib" 和 "en" 模块依赖于 "core" 模块。另一种方式,重启计算机同样可以加载修改过的配置:

sudo reboot
重启或重新加载模块之后,尝试再次运行你的网络嗅探工具,看看问题是否已经解决。
请注意,根据您所使用的系统和 InfiniBand 卡的型号,具体的模块名称和步骤可能会有所不同。

参考:

【网络】TCP抓包|RDMA抓包|ibdump、tcpdump用法说明_rdma流量如何抓包-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/247055.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB六轴机械臂机器人的动力学分析

1、概述 动力学以牛顿第二定律为核心,这个定律指出了力、加速度、质量三者间的关系。 质点动力学有两类基本问题: 一是已知作用于质点上的力,求质点的运动,这个就是正动力学。 二是已知质点的运动,求作用于质点上的力…

SpringMVC-02

SpringMVC-02 SSM 框架集成与测试环境配置添加源代码 SSM 框架集成与测试 环境配置 IDEA 下创建项⽬ 创建Maven对应的Web项⽬ 配置 pom.xml 2.1. 修改 JDK 版本 <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mav…

【Matlab】如何使用MATLAB可视化二重积分(附完整MATLAB代码)

可视化二重积分 前言正文完整代码代码实现可视化结果 前言 二重积分是指在二维空间中对函数进行积分。二重积分的公式如下&#xff1a; ∫ a b ∫ c d f ( x , y ) d x d y ∫_a^b ∫_c^d f(x, y) dx dy ∫ab​∫cd​f(x,y)dxdy 其中&#xff0c; a a a 和 b b b 是 x x x…

maven打包插件maven-jar-plugin与spring-boot-maven-plugin

maven几种打包插件介绍 文章目录 &#x1f50a;1.spring-boot-maven-plugin打包后效果 &#x1f4d5;2.maven-jar-plugin打包后效果&#x1f58a;️最后总结 &#x1f50a;1.spring-boot-maven-plugin <plugins><plugin><groupId>org.springframework.boot&…

每日一题SQL

以下题目来源微信公众号【SQL数据库开发】 1、编写一个 SQL 查询来实现分数排名。如果两个分数相同&#xff0c;则两个分数排名&#xff08;Rank&#xff09;相同。请注意&#xff0c;平分后的下一个名次应该是下一个连续的整数值。换句话说&#xff0c;名次之间不应该有“间隔…

HTML5+CSS3+JS小实例:自适应瀑布流布局

实例:自适应瀑布流布局 技术栈:HTML+CSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content=&quo…

九、 SpringBoot项目部署、项目打包、运行

5.5.1 项目打包 步骤1&#xff1a; 添加项目的pom.xml插件&#xff1b;在pom.xml要显式的加入插件spring-boot-maven-plugin&#xff0c;否则无法产生 jar 清单文件&#xff0c;导致打出来的 jar 无法使用命令运行&#xff1b; <build> <plugins> <!-- 打j…

2023 re:Invent使用 PartyRock 和 Amazon Bedrock 安全高效构建 AI 应用程序

前言 本篇文章授权活动官方亚马逊云科技文章转发、改写权&#xff0c;包括不限于在 亚马逊云科技开发者社区, 知乎&#xff0c;自媒体平台&#xff0c;第三方开发者媒体等亚马逊云科技官方渠道 “Your Data, Your AI, Your Future.&#xff08;你的数据&#xff0c;你的AI&…

接口自动化测试框架搭建

一、原理及特点 参数放在XML文件中进行管理用httpClient简单封装一个httpUtils工具类测试用例管理使用了testNg管理&#xff0c;使用了TestNG参数化测试&#xff0c;通过xml文件来执行case。测试报告这里用到第三方的包ReportNG 项目组织用Maven 二、准备 使用工具&#xff1…

2023-12-14 使用Qt画一条曲线(AI辅助)

点击 <C 语言编程核心突破> 快速C语言入门 使用Qt画一条曲线 前言一、Qchart简介二、代码总结 前言 要解决问题: 有一个函数, 生成一些点, 想画一条曲线. 想到的思路: 这个用Qchart比较简单. 其它的补充: 需要稍许配置 一、Qchart简介 QChart是Qt中的一个图表控件&a…

小白菜QQ云端机器人源码-去除解密授权

小白菜QQ云端机器人源码分享&#xff1a;解密授权学习版已去除 这款源码是专为群机器人爱好者设计的&#xff0c;它基于挂机宝机器人框架构建的网页站点。 用户可以通过网页登录QQ账号至挂机宝框架中&#xff0c;无需通过机器人实现登录。 而且&#xff0c;该源码解决了一个…

力扣 | 437. 路径总和 III

437. 路径总和 III mport java.util.ArrayList; import java.util.List;/*** int的取值范围&#xff1a;* -2^31 ~ 2^31-1* <p>* -2147483648 ~ 2147483647&#xff08;约等于10的9次方&#xff09;* <p>* long long的取值范围&#xff1a;* -2^63 ~ (2^63-1&…

HBase 详细图文介绍

目录 一、HBase 定义 二、HBase 数据模型 2.1 HBase 逻辑结构 2.2 HBase 物理存储结构 ​2.3 数据模型 2.3.1 Name Space 2.3.2 Table 2.3.3 Row 2.3.4 Column 2.3.5 Time Stamp 2.3.6 Cell 三、HBase 基本架构 架构角色 3.1 Master 3.2 Region Server 3.3 Zo…

弹性搜索引擎Elasticsearch:本地部署与远程访问指南

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;网络奇遇记、Cpolar杂谈 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 &#x1f4cb;前言系统环境1. Windows 安装Elasticsearch2. 本地访问Elasticsearch3. Windows 安装…

有教师资格证就可以当老师吗

我是一名在教育事业中摸爬滚打了多年的老鸟&#xff0c;最近看到很多人在讨论一个话题&#xff1a;有教师资格证就能当老师吗&#xff1f;今天我就来给大家科普一下。 我们得明白教师资格证是什么。教师资格证是国家教育部门为了规范教育行业&#xff0c;提高教育质量而设立的一…

详解—C++右值引用

目录 一、右值引用概念 二、 左值与右值 三、引用与右值引用比较 四、值的形式返回对象的缺陷 五、移动语义 六、右值引用引用左值 七、完美转发 八、右值引用作用 一、右值引用概念 C98中提出了引用的概念&#xff0c;引用即别名&#xff0c;引用变量与其引用实体公共…

多线程 (下) - 学习笔记

常见锁策略 乐观锁和悲观锁 悲观锁 总是假设最坏的情况, 每次去拿数据的时候都会认为会被别人修改, 因此会上锁, 防止数据在使用过程中被别的线程修改, 乐观锁 假设数据一般情况下不会产生并发冲突,因此在拿数据,操作数据的过程中不加锁, 而在数据进行提交更新的时候, 才会正…

react经验7:高亮关键字

预期效果&#xff1a; 实现原理 将需要高亮的关键词做成正则表达式 new RegExp((${word}), "gi")使用上述正则表达式切割目标字符串 origin.split(new RegExp((${word}), "gi"))切割结果会包含正则匹配到的词 过滤掉空字符&#xff0c;并对关键词包裹…

使用代理IP时的并发请求是什么意思?

很多做过数据采集的技术们应该都有所了解&#xff0c;在选择代理IP时会有一个并发请求的参数&#xff0c;这个参数是什么意思呢&#xff1f;可能有很多新手不是很了解&#xff0c;其实代理IP的并发请求就是指同时发送多个请求到目标服务器&#xff0c;以提高请求的效率和速度。…

LeetCode刷题--- 二叉树的所有路径

个人主页&#xff1a;元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归算法题 【 http://t.csdnimg.cn/yUl2I 】 【C】 【 http://t.csdnimg.cn/6AbpV 】 数据结构与算法 【 http://t.csdnimg.cn/hKh2l 】 前言&…