If we offload the TCP protocol to the NIC hardware, and both the sender and receiver support DMA, then what is the difference (regarding performace and other aspects) between the RDMA and DMA?
In the case of SEND/RECV verbs, RDMA and DMA is nearly the same thing to me. They both involve CPU in servers.
In the case of WRITE/READ verbs, RDMA will bypass the CPU in the receiver side, and receiver is no way to know the transmission is done in time, if the sender does not send further notification. But in the most of the time, we need to explicitly inform the receiver. Thus, still the same thing.