Provided by: librdmacm-dev_1.0.16-1_amd64 bug

NAME

       rsocket - RDMA socket API

SYNOPSIS

       #include <rdma/rsocket.h>

DESCRIPTION

       RDMA socket API and protocol

NOTES

       rsockets  is  a  protocol  over  RDMA  that  supports a socket-level API for applications.
       rsocket APIs are intended to match the behavior  of  corresponding  socket  calls,  except
       where  noted.   rsocket  functions  match the name and function signature of socket calls,
       with the exception that all function calls are prefixed with an 'r'.

       The following functions are defined:

       rsocket

       rbind, rlisten, raccept, rconnect

       rshutdown, rclose

       rrecv, rrecvfrom, rrecvmsg, rread, rreadv

       rsend, rsendto, rsendmsg, rwrite, rwritev

       rpoll, rselect

       rgetpeername, rgetsockname

       rsetsockopt, rgetsockopt, rfcntl

       Functions take the same parameters as that use for sockets.  The follow  capabilities  and
       flags are supported at this time:

       PF_INET, PF_INET6, SOCK_STREAM, IPPROTO_TCP, TCP_MAXSEG

       MSG_DONTWAIT, MSG_PEEK

       SO_REUSEADDR, TCP_NODELAY, SO_ERROR, SO_SNDBUF, SO_RCVBUF

       O_NONBLOCK

       In addition to standard socket options, rsockets supports options specific to RDMA devices
       and protocols.  These options are accessible through  rsetsockopt  using  SOL_RDMA  option
       level.

       RDMA_SQSIZE - Integer size of the underlying send queue.

       RDMA_RQSIZE - Integer size of the underlying receive queue.

       RDMA_INLINE - Integer size of inline data.

       Note  that  rsockets fd's cannot be passed into non-rsocket calls.  For applications which
       must mix rsocket fd's with standard socket fd's or opened files, rpoll and rselect support
       polling both rsockets and normal fd's.

       Existing  applications  can  make  use  of  rsockets through the use of a preload library.
       Because rsockets implements an end-to-end protocol, both sides of a  connection  must  use
       rsockets.   The  rdma_cm library provides such a preload library, librspreload.  To reduce
       the chance  of  the  preload  library  intercepting  calls  without  the  user's  explicit
       knowledge, the librspreload library is installed into %libdir%/rsocket subdirectory.

       The  preload  library  can  be used by setting LD_PRELOAD when running.  Note that not all
       applications will work with rsockets.  Support is limited based on the socket options used
       by the application.  Additionally, applications which call fork are not supported.

       rsockets  uses  configuration  files  that  give an administrator control over the default
       settings used by rsockets.  Use files under %sysconfig%/rdma/rsocket as shown:

       mem_default - default size of receive buffer(s)

       wmem_default - default size of send buffer(s)

       sqsize_default - default size of send queue

       rqsize_default - default size of receive queue

       inline_default - default size of inline data

       If configuration files are not available, rsockets uses internal defaults.

SEE ALSO

       rdma_cm(7)