测试环境信息
在ubuntu20.04.6 LTS (Focal Fossa)上建立RXE学习环境。
安装工具和依赖
sudo apt install automake libtool
sudo apt install libibverbs-dev libibmad-dev librdmacm-dev libibumad-dev libpci-dev
sudo apt-get install libibverbs1 ibverbs-utils librdmacm1 libibumad3 ibverbs-providers rdma-core perftest infiniband-diags
创建RXE RDMA设备
RXE是RoCEv2的软件实现,它基于UDP协议,使用普通网卡收发IB报文,所以IB设备需要和网卡绑定。首先确认网卡名字,这里使用enp3s0这张网卡,执行如下命令建立RXE设备连接。
sudo rdma link add rxe_0 type rxe netdev enp3s0
测试RXE设备
server执行:
$ ib_send_bw -d rxe_0
client执行:
$ ib_send_bw -d rxe_0 localhost
总结
RXE的RDMA实现很早就开源在内核主线,想要深入理解RDMA工作原理结合测试用例分析内核代码实现,