rdma基础

网卡管理

lspci -v | grep Mellanox
ibstatus
ibv_devinfo
mlnx_tune
ibdev2netdev -v 查看网卡映射

协议

image
链路层主要分为两类:InfiniBand 和 Ethernet,区别:

  • InfiniBand 模式的延时更低,带宽更高
  • InfiniBand 采用 Cut-Through 转发模式,减少转发时延,基于 Credit 流控机制,保证无丢包。RoCE 性能与 IB 网络相当,DCB 特性保证无丢包,需要网络支持 DCB 特性,但时延比 IB 交换机时延稍高一些
  • Ethernet 模式可能存在丢包,而导致数据重传的延时
  • 可通过ibstat ibstatus等查看

概念

  • WQ是一个储存工作请求的队列
  • QP就是一个发送工作队列SQ和一个接受工作队列RQ的组合
  • SQ和RQ都是WQ,WQ只是表示一种可以存储WQE的单元,SQ和RQ才是实例。SQ专门用来存放发送任务,RQ专门用来存放接收任务
  • 在RDMA技术中通信的基本单元是QP,而不是节点。如下图所示,对于每个节点来说,每个进程都可以使用若干个QP,而每个本地QP可以“关联”一个远端的QP。我们用“节点A给节点B发送数据”并不足以完整的描述一次RDMA通信,而应该是类似于“节点A上的QP3给节点C上的QP4发送数据”
  • 每个节点的每个QP都有一个唯一的编号,称为QPN(Queue Pair Number)
  • WR全称为Work Request,意为工作请求;WC全称Work Completion,意为工作完成。这两者其实是WQE和CQE在用户层的“映射”。因为APP是通过调用协议栈接口来完成RDMA通信的,WQE和CQE本身并不对用户可见,是驱动中的概念。用户真正通过API下发的是WR,收到的是WC。WR/WC和WQE/CQE是相同的概念在不同层次的实体,他们都是“任务书”和“任务报告”。

参考

https://zhuanlan.zhihu.com/p/141267386

posted @ 2024-01-16 11:54  LdreamerD  阅读(36)  评论(0编辑  收藏  举报