Re: Rgerading RDMA/SDP and traditional socket apps

Caitlin Bestler <[email protected]>
Newsgroups gmane.ietf.rddp
Message-ID <[email protected]>
On Oct 1, 2004, at 7:58 AM, 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.
>
> Regards,
> Mohan
>
>
The purpose of SDP is to identify when zero-copy transfers
can be done, directly using either the ULP source or destination
buffer directly, without requiring a fundamental change in the
how the application uses the network.

Without SDP a stack can only identify zero-copy opportunities
locally, without collaborating with the peer's stack.  However,
an optimized local stack can identify many zero-copy opportunities,
and when it does it is without the overhead and latency of
additional  wire traffic.  The tradeoff between local-stack-only
optimization and SDP-enabled optimization is complex
and dependent on the application and deployment environment.

Obviously an RDMA aware application that explicitly posts
receive operations and explicitly exports STags to advertise
buffers is going to avoid intermediate copying *all* of the
time, something that SDP can only hope to approach.

Both an optimized local stack, such as a TOE, and SDP
are valuable tools to achieve partial zero-copy without
requiring program redesign.  Achieving the full potential
of RDMA requires designing the Upper Layer Protocol
and its implementation on both peers to be RDMA aware.

The SDP specification is an excellent source on when and
how SDP identifies zero-copy opportunities. The Applicability
Statement discusses the impact of RDMA on application design.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.