ucmatose - RDMA CM connection and simple ping-pong test.
ucmatose [-s server_address] [-b bind_address] [-f address_format] [-P port_space] [-c connections] [-C message_count] [-S message_size] [-a ack_timeout] ucmatose -s server_address [-b bind_address] [-f address_format] [-P port_space] [-c connections] [-C message_count] [-S message_size] [-t tos] [-a ack_timeout]
Establishes a set of reliable RDMA connections between two nodes using the librdmacm, optionally transfers data between the nodes, then disconnects.
- -s server_address
- The network name or IP address of the server system listening for connections. The used name or address must route over an RDMA device. This option must be specified by the client.
- -b bind_address
- The local network address to bind to. To bind to any address with IPv6 use -b ::0 .
- -f address_format
- Specifies the format of the server and bind address. Be default, the format is determined by getaddrinfo() as either being a hostname, an IPv4 address, or an IPv6 address. This option may be used to indicate that a specific address format has been provided. Supported address_format values are: name, ip, ipv6, and gid.
- -P port_space
- Specifies the port space for the connection. Be default, the port space is the RDMA TCP port space. (Note that the RDMA port space may be separate from that used for IP.) Supported port_space values are: tcp and ib.
- -c connections
- The number of connections to establish between the client and server. (default 1)
- -C message_count
- The number of messages to transfer over each connection. (default 10)
- -S message_size
- The size of each message transferred, in bytes. (default 100)
- -t tos
- Indicates the type of service used for the communication. Type of service is implementation dependent based on subnet configuration.
- -a ack_timeout
- Indicates the QP ACK timeout value that should be used. The value calculated according to the formula 4.096 * 2^(ack_timeout) usec.
- Tests event channel migration. Migrates all communication identifiers to a different event channel for disconnect events.
Basic usage is to start ucmatose on a server system, then run ucmatose -s server_name on a client system.
Because this test maps RDMA resources to userspace, users must ensure that they have available system resources and permissions. See the libibverbs README file for additional details.