I am trying to figure out how does the RDMA - INFINIBAND understands and sends the message by just using the traditional POSIX API.
I looked over every documents and paper related to INFNIBAND but failed to answer my question.
Would it be possible to know how INFINIBAND understands and gets the message from POSIX? because I have tried directly using the verb interface or using libvma library which intercepts the data from socket API and uses verb interface.
Obviously, both of this method has much higher performance compared to just using POSIX socket API with INFINIBAND.
The results from the Mellanox libvma also indicates the same
My suspicion is when userspace application sends data using socket API, the process goes to the kernel space to use the POSIX TCP stack and then somehow RDMA gets the data from it, but I really wish to know exactly how.
Would anyone familiar with RDMA can answer my question? Thanks