The goal of the client is to copy a string buffer (give by the user using -s parameter) from a source buffer (identified by src) to a destination buffer (identified by dst) using a remote server buffer as a temporary buffer.
terms:
Queue Pair - the actual object that transfers data, it encapsulates both Send and Receive Queue.
Outstanding - Every Work Request that was posted is considered “outstanding” until it ends with Work completion.
//RDMA CAS
struct ibv_send_wr sr;
sr.opcode = IBV_WR_ATOMIC_CMP_AND_SWP;
/* sr.wr.atomic.remote_addr: remote start address (uint64_t)
* sr.wr.atomic.compare_add: value to compare (uint64_t)
* sr.wr.atomic.swap: value to swap if the comparison passed (uint64_t)
*/