Pseudo cut-through architecture between non-volatile memory storage and remote hosts over a fabric
An example method of exchanging data between a remote host and a target system includes receiving at least one remote descriptor from the remote host over a front-end fabric at a controller, the at least one remote descriptor specifying a remote buffer in a remote memory of the remote host that is larger than a page size. The method includes adding entries to a table that map the remote buffer to a plurality of page-sized virtual buffers in a virtual address space managed by the controller, generating local descriptors referencing the plurality of paged-sized virtual buffers, receiving a sequence of page-sized direct memory access (DMA) requests at the controller, generating a sequence remote DMA (RDMA) requests from the sequence of DMA requests based on the entries in the table, and sending the sequence of RDMA requests to the remote host over the front-end fabric.