Re: Rgerading RDMA/SDP and traditional socket apps
Mohan Parthasarathy <[email protected]>
| Newsgroups | gmane.ietf.rddp |
|---|---|
| Message-ID | <[email protected]> |
Hi Mike/Caitlin, Thanks for the answers. So, what I understand is that my assumption that existing socket apps might not have ownership of the buffer when the send completes, was wrong. But, doesn't this mean that send calls will take more time to complete, if the RNIC has to DMA the buffers before control to the buffer is returned to the caller. Are there any potential performance issues here for existing synchronous sockets ? Regards, Mohan Michael Krause wrote: > At 09:58 PM 9/30/2004, Mohan Parthasarathy wrote: > >> Hi, >> >> I am new to RDMA and would appreciate if my questions are viewed >> with tolerance. >> I believe existing socket apps doing a send and reusing the buffer will >> not work with RDMA since the send might not have completed. >> Isn't it possible to copy the user buffer to another in the SDP library, >> to let the user app reuse the buffer ? I guess it might lead to increase >> in memory usage, but it will be only for legacy apps not using the >> RDMA capabilities, and will probbaly be no different from today's >> situation where often the user buffer gets copied to a kernel buffer. >> Also, are there any new socket APIs in SDP or variations in the current >> socket calls to distinguish if the caller can handle running over RDMA ? >> Another way to phrase that is if SDP will be aware of legacy apps >> versus new ones. > > > If the sockets call returns, then the ownership of the associated > buffer is also returned. SDP does not change this. Therefore, the > application can reuse the buffer. Today's network stacks do not > guarantee that a buffer has been sent when a sockets call returns. > All that is guaranteed is that the underlying implementation will > attempt to deliver the buffer to the remote. The same applies to RDMA > implementations. The implementation will attempt to deliver the > buffer. If the buffer is returned, then either it was successfully > sent or there is a local copy within the RNIC or a side buffer (e.g. a > local copy to host memory) that will be used to send the data. The > application does not need to worry about this. SDP does not have to > worry about this either. This is the RI / RNIC's responsibility. A > good explanation can be found in the verbs draft specification which > has been posted to this reflector / website. > > Mike _______________________________________________ rddp mailing list [email protected] https://www1.ietf.org/mailman/listinfo/rddp