【微知】Mellanox网卡的硬件counter工具 show_counter使用方法?(show_counters mlx5_0 | grep -E “rx_write_requests|rx_r)

快速回忆

show_counters mlx5_0
# 查看几个关键值
show_counters mlx5_0 | grep -E "rx_write_requests|rx_read_requests|req|rep|rtu" #一般在执行数据前后分别执行

背景

对于RDMA运行过程中产生过多少次out of sequence,多少次rx_write_request,多少次rx_read_request这种信息一般没有关注,但是Mellanox的mlnx-tools工具中的show_counters能够查看这些信息。尤其是有些场景还需要类似查看req、resp、mra等报文统计,但是很遗憾,将两个口bond到一起之后少了很多信息,本文主要针对没有bond之前的一些counter的记录

用法

需要先安装mlnx-tools的rpm包,具体参考https://blog.youkuaiyun.com/essencelite/article/details/142036005

ibdev2netdev
show_counters mlx5_0 #指定一个mlx口

分为:
Port 1 hw counters
Port 1 cm counters:

实操

下面额数据包含执行过一次RDMA_CM建链的打流。
可以看到rdma_cm建链的数据:2次req和req以及dreq和dreq,还有rtu2次。
drep: 2
dreq: 2
lap: 0
mra: 0
rej: 0
rep: 2
req: 2
rtu: 2

关于RTU:当客户端(Client)向服务器(Server)发送连接请求(REQ)后,服务器会回复一个连接响应(REP)。客户端收到REP报文并校验通过后,会发送一个**RTU(Ready To Use)消息给服务器,表示客户端已经准备好,可以开始使用连接进行数据传输。RTU消息的发送标志着客户端的队列对(QP)状态从Ready To Receive(RTR,准备接收)转换为Ready To Send(RTS,准备发送)**状态。服务器端收到RTU消息后,也会将自身状态切换为IB_CM_ESTABLISHED,表示连接已经完全建立,可以进行数据传输。

并且也会看到这里发起过10000次的rx_write_requests。
counter数据:

[root@localhost ~]# show_counters mlx5_0
Port 1 hw counters:
duplicate_request: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值