On servers handling heavy network traffic, a transport protocol stack with support for remote direct memory access (RDMA) can eliminate a bottleneck in network input/output (I/O) by avoiding data copies between the operating system and application buffers. The Internet Engineering Task Force (IETF) has defined a set of protocols for remote direct data placement over IP networks. The RDMA Consortium (RDMAC) has defined the semantics of an interface to an RDMA-capable network interface card (RNIC), the so-called RDMA protocol verbs. The IETF’s RDMA protocol stack, also known as the iWARP transport, is implemented on RNICs or, more generally, by verbs providers. The InfiniBand Trade Association (IBTA) is defining another transport providing RDMA services.
OS extensions and programming interfaces for RDMA represent a significant portion of the RDMA infrastructure, and their appropriate design is a key requirement for the success of RDMA technology.