CPC G06F 3/0613 (2013.01) [G06F 3/0604 (2013.01); G06F 3/064 (2013.01); G06F 3/067 (2013.01); G06F 3/0631 (2013.01); G06F 3/0659 (2013.01)] | 20 Claims |
1. A computer-implemented method for remote direct memory access (RDMA) by a distributed storage node, the method comprising:
receiving a request for an input/output (I/O) process associated with data;
in response to the request, allocating using an operating system driver of the distributed storage node, a memory segment shared between the operating system and a user process running on the distributed storage node, wherein:
the user process includes an I/O stack for processing the request;
the shared memory segment includes a context memory portion storing context information associated with the I/O stack, a header memory portion storing header information for the I/O process, and a data memory portion for storing the data; and
the shared memory segment is registered for RDMA access with a target storage node;
performing an RDMA transfer between the shared memory segment of the distributed storage node and the target storage node to complete the I/O process; and
deallocating the shared memory segment in response to receiving a status indicator of completion of the RDMA transfer.
|