readme.txt
1Testing rdma-core userspace tools
2=================================
3
4Testing rdma-core using Linux software RoCE implementation:
5https://en.wikipedia.org/wiki/RDMA_over_Converged_Ethernet
6
7Using two systems with working TCP/IP configuration, for example:
8- Server IP: 192.168.123.10
9- Client IP: 192.168.123.20
10
11Make sure firewall configurations are appropriate. Routable RoCE v2
12uses udp/4791. ibv_rc_pingpong uses tcp/18515 for initial
13synchronization.
14
15Note: this test can be executed in two qemu virtual machines with
16bridged networking.
17
18
19Kernel configuration
20--------------------
21
22The Linux Kernel needs some InfiniBand configuration. In this example
23the kernel "rdma_rxe" driver is needed (CONFIG_RDMA_RXE=y). The Kernel
24config fragment file used for package test can be used as a starting
25point. See:
26
27 support/testing/tests/package/test_rdma_core/linux-rdma.fragment
28
29
30Buildroot package configuration
31-------------------------------
32
33For setting up a software RoCE link, the "rdma" program is needed. It
34is provided by the "iproute2" package, when "libmnl" is also
35selected. Make sure to have in your Buildroot configuration:
36
37 BR2_PACKAGE_IPROUTE2=y
38 BR2_PACKAGE_LIBMNL=y
39 BR2_PACKAGE_RDMA_CORE=y
40
41
42Setting up the rdma link
43------------------------
44
45On both server and client:
46
47 modprobe rdma_rxe
48 rdma link add rxe0 type rxe netdev eth0
49
50
51Testing with rping
52------------------
53
54On the server side, run the command:
55
56 rping -s -v
57
58On the client side, run the command:
59
60 rping -c -v -a 192.168.123.10
61
62
63Testing with ibv_rc_pingpong
64----------------------------
65
66To test with the pingpong example using the reliable connected (RC)
67transport:
68
69On the server side, run the command:
70
71 ibv_rc_pingpong -d rxe0 -g 1
72
73On the client side, run the command:
74
75 ibv_rc_pingpong -d rxe0 -g 1 192.168.123.10
76