6个常见的IB网络不通问题

这篇具有很好参考价值的文章主要介绍了6个常见的IB网络不通问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

摘要:如果遇到IB网络不通,可以试着从高层往底层逐步分析看看。

本文分享自华为云社区《常见IB网络不通问题记录》,作者: tsjsdbd 。

如果遇到IB网络不通,可以试着从高层往底层逐步分析看看。仅记录下,供难友参考:

一、NCCL不通

报错:

machine-19: [0] transport/net_ib.cc:839 NCCL WARN NET/IB : Got completion with error 12, opcode 0, len 0, vendor err 129

原因:错误12,说明RDMA网络不通。

需要分析底层网络为什么不通。

比如:

  • 是否单纯网络不通
  • pfc流控不对导致丢包。

如果是(2)这种偶现不通的话,可以参考pfc设置规则:《为什么华为云上AI训练必须设置NCCL_IB_TC=128》

二、ib_write_bw不通

报错1:

root@tsjsdbd:~# ib_write_bw
----------------------------------------------------------
 RDMA_Write BW Test
 Dual-port      : OFFDevice         : mlx4_0
 Number of qps : 1Transport type : IB
 Connection type : RCUsing SRQ      : OFF
 CQ Moderation  : 100
 Mtu : 2048[B]
 Link type : IB
 Max inline data : 0[B]
 rdma_cm QPs : OFF
 Data ex. method : Ethernet
--------------------------------------------------------
 local address: LID 0x81 QPN 0x160b3 PSN 0xa072 RKey 0x68010802 VAddr 0x007f184171a000
 remote address: LID 0x35 QPN 0xc5a0b PSN 0xaa465a RKey 0x20010802 VAddr 0x007f3ca2b9c000
---------------------------------------------------------------------------------------
 #bytes     #iterations    BW peak[MB/sec]    BW average[MB/sec]   MsgRate[Mpps]
ethernet_read_keys: Couldn't read remote address
 Unable to read to socket/rdam_cm
 Failed to exchange data between server and clients

报错2:

root@tsjsdbd:~# ib_write_bw -F 29.26.130.185 -d mlx5_5
----------------------------------------------------------
 RDMA_Write BW Test
 Dual-port         : OFF                 Device         : mlx5_5
 Number of qps : 1                   Transport type : IB
 Connection type : RC                 Using SRQ      : OFF
 PCIe relax order: ON
 ibv_wr* API     : ON
 TX depth         : 128
 CQ Moderation  : 1
 Mtu : 2048[B]
 Link type : Ethernet
 GID index        : 3
 Max inline data : 0[B]
 rdma_cm QPs      : OFF
 Data ex. method : Ethernet
--------------------------------------------------------
 local address: LID 0x81 QPN 0x160b3 PSN 0xa072 RKey 0x68010802 VAddr 0x007f184171a000
 GID: 00:00:00:00:00:00:00:00:00:00:255:255:29:26:130:235
 remote address: LID 0x35 QPN 0xc5a0b PSN 0xaa465a RKey 0x20010802 VAddr 0x007f3ca2b9c000
 GID: 00:00:00:00:00:00:00:00:00:00:255:255:29:26:130:185
---------------------------------------------------------------------------------------
 #bytes     #iterations    BW peak[MB/sec]    BW average[MB/sec]   MsgRate[Mpps]
 Completion with error at client
 Failed status 12: wr_id 0 Syndrom 0x81
scnt=128, ccnt=0
 Failed to complete run_iter_bw function successfully

说明网络不通,需要继续分析RDMA链路。

三、ibv_rc_pingpong不通

报错:

ibv_rc_pingpong -d mlx5_bond_0 -g 3 29.28.195.228
 local address:  LID 0x0000, QPN 0x01417f, PSN 0x63d7fa, GID ::ffff:29.28.201.21
  remote address: LID 0x0000, QPN 0x00132d, PSN 0x8c0a5b, GID ::ffff:29.28.195.228
Failed status transport retry counter exceeded (12) for wr_id 2
parse WC failed 1

说明网络不通,需要分析IP网络为什么不通。

四、rping不通

报错1:

rping -c -a 29.28.195.228 -v -C 10
cma event RDMA_CM_EVENT_ADDR_ERROR, error -110
waiting for addr/route resolution state 1

说明地址连不上,需要继续判断IP链路是否通。

报错2:

rping -c -a 29.28.197.165 -C 10 -v
cma event RDMA_CM_EVENT_REJECTED, error 8
wait for CONNECTED state 4
connect error -1

这个Reject表示连接被拒绝了。只是单纯的因为 rping 工作时需首先启动一个 server side 进程,然后从 client side 试图向 server side 发起连接。

所以要先启动Server端。

rping -s 29.28.201.211 -v

五、ping不通

报错:

ping 29.28.195.228
PING 29.28.195.228 (29.28.195.228) 56(84) bytes of data.
From 29.28.204.80 icmp_seq=1 Destination Host Unreachable
From 29.28.204.80 icmp_seq=2 Destination Host Unreachable
From 29.28.204.80 icmp_seq=3 Destination Host Unreachable
From 29.28.204.80 icmp_seq=4 Destination Host Unreachable
^C
--- 29.28.195.228 ping statistics ---
5 packets transmitted, 0 received, +4 errors, 100% packet loss, time 4045ms

这个估计就快到根错误了,假设交换机连接都是OK的。那基本就是路由设置问题:

可以用

# ip route get 29.28.204.80 from 29.28.201.211
29.28.204.80 from 29.28.201.211 dev enp137s0f0 uid 0

来确认发送报文的网卡是否选择正确。

如果是「同网段多IB网卡」的情况,如A100 或者 A800服务,带8个IB网卡,并都在同一个网段。则需要通过策略路由设置「源地址路由」规则来解决各个IP互通的问题。见:《RoCE多网卡时,报文可以过去,但是回不来》

六、ARP表不对

如果ping是通的,但是rping又不通。 那就还要再底层看一看了(你也算天选之子了,跑这么底层定位错误)。

正常情况,学习到的arp表,一个IP地址对应一个网卡的MAC地址。

如下:

/home/tsj # arp -n | grep 29.28.201.211
29.28.201.211            ether  08:c0:eb:8c:10:6d   C                     enp137s0f1

两端同时查看,如果发现一个IP地址,学习到的arp记录有多条不一样的,说明arp设置不对。

需要

  • 先清空arp表
  • 设置arp应答规则

其中,

(1)清空arp表有2种方式:

  • 指定某个IP清空:
arp -d 192.168.1.1
  • 清空所有arp:(咱们直接执行这个就行)
ip -s -s neigh flush all

(2)设置arp应答规则:

sysctl -w net.ipv4.conf.all.arp_ignore=1
sysctl -w net.ipv4.conf.all.arp_announce=2

意思是只答复对应网卡的arp响应。

设置完后,再ping一次后,确认两边学习到的arp表是正确的。

 

点击关注,第一时间了解华为云新鲜技术~文章来源地址https://www.toymoban.com/news/detail-500790.html

到了这里,关于6个常见的IB网络不通问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ros中常见问题处理:延迟问题解决方法、订阅的数据感觉比发布的数据要多;如果没有正在接收消息,那么状态如何获取?

    在ROS中,消息的发布和订阅是异步的,也就是说,当你调用pub.publish(output_msg)发布消息时,该函数会立即返回,并不会等待所有订阅者接收消息。因此,如果你的程序出现延迟,可能是由于某些原因导致消息被堵塞或丢失。 以下是几种可能导致延迟的原因和解决方法: 1,消

    2024年02月06日
    浏览(38)
  • 【0.1】lubancat鲁班猫4刷入debian网络ping 域名不通问题

    lubancat4鲁班猫4 (4G+0)不带emmc 系统镜像lubancat-rk3588-debian11-gnome-20230807_update.img 官方资料地址https://doc.embedfire.com/products/link/zh/latest/linux/ebf_lubancat.html 从官网给的百度网盘下载linux系统 全部文件鲁班猫3-Linux镜…LubanCat-rk3588 下载两个系统的压缩包,自行解压获取img文件 获取 SDDis

    2024年02月12日
    浏览(39)
  • 关于CLASH在共享网络和开启TUN后,出现网络不通的问题——“listen udp :0“

    TUN开启后等于做了一次网络共享,所以在非TUN虚拟网卡开启网络共享(ICS)后,再开启TUN会引起错误。正确的做法是开启TUN后,再在TUN的虚拟网卡上开启网络共享(ICS)。 \\\"listen udp :0\\\": bind: An attempt was made to access a socket in a way forbidden by its access permissions. DRIECT i/o timeout 以上错

    2024年02月08日
    浏览(48)
  • docker部署jenkins遇到常见问题

    最近在用docker搭建jenkins,来完成项目部署,过程中碰到的问题记录如下: 1、从git中拉去代码到jenkins中 2、将拉去的代码使用maven 构建 3、将maven生成的jar包推送到目标服务器 4、使用shell脚本在目标服务器上运行 配置目标服务器的环境变量时 系统配置中Publish over SSH模块下 使

    2024年02月05日
    浏览(62)
  • 小程序常见的问题你一定遇到过!

    小程序新手常见的问题 小程序发布这么久了,很多小伙伴们接触了不少的小程序,但是在使用过程中也会遇到一些十分尴尬的问题,今天我们就来一一列出并进行解答。 问题1:小程序是啥? 答:小程序是微信官方推出的,不用下载安装就能使用的迷你APP。 问题2:小程序在

    2024年02月13日
    浏览(34)
  • 【大数据】kubernetes(k8s)calico跨节点网络不通的问题及排错过程

    进入节点 k8s-node27 的pod,ping k8s-node28 节点上的pod的ip都不通,k8s-node28 节点ping k8s-node27 也不通,但是k8s-node27,k8s-node28 之间他们各自节点上的pod的ip之间是可以相互ping通。 排查过程: 这种情况让我们想起了当时设置路由转发时候的配置,主机上有多个网卡,而k8s的calico网络

    2024年02月11日
    浏览(53)
  • SSM框架训练 实现各个功能时遇到的常见问题

    快速复制当前代码到下一行:ctrl+D 格式化代码(快速整理代码):ctril+alt+L 一步一步来,后续会不停添加功能。 先创建项目结构:搭建框架 (36条消息) SSM框架模板(高配:一次性配完所有需要的配置文件)_one day321的博客-CSDN博客 登录与注册 功能实现 的问题: 登录很简单,

    2024年02月13日
    浏览(40)
  • 客户管理系统在选型过程中遇到一些常见的问题

      如今很多企业都搭上了客户管理系统这趟顺风车,将现有规范化取得了很大成果。而也有很多企业处在观望态度,主要原因还在于担心 客户管理系统在选型过程中遇到一些常见的问题。 接下来分享一些真实的客户需求: 部署系统后可以微调 “选型时,我们比较关注软件使

    2024年02月08日
    浏览(43)
  • 虚拟机挂起/重启后导致K8s网络不通或服务启动后主节点无法访问问题

    3台linux服务器搭建的一个 kubeadm-k8s 的集群环境,(1 Master 2 Worker),  当断电或者虚拟机挂起恢复后出现 service 访问不了,pod之间ping不通或者集群搭建失败问题,但是K8s集群还是正常可以创建 deployment 以及调度 pod 到各个 node 上, 并且 node都处于 ready 的状态。 找到其中的 kube

    2024年02月08日
    浏览(56)
  • RoCE、iWARP、IB和TCP等网络的基本知识及差异对比

    转至:RoCE、IB和TCP等网络的基本知识及差异对比 - 华为 在分布式存储网络中,我们使用的协议有RoCE、Infiniband(IB)和TCP/IP。其中RoCE和IB属于RDMA(RemoteDirect Memory Access)技术,他和传统的TCP/IP有什么区别呢,接下来我们将做详细对比。 面对高性能计算、大数据分析等IO高并发、低

    2024年02月03日
    浏览(65)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包