Basics
What is RDMA?
How remote direct memory access moves data between machines without CPU copies or kernel round-trips.
4 min read
The problem with the classic path
On a normal TCP socket, data crosses the kernel boundary several times: the NIC interrupts the CPU, the kernel copies the packet into socket buffers, and user space copies it again into the application. Every hop costs latency and burns CPU cycles that your workload could use.
At 25–400 Gb/s those copies become the bottleneck — the network can move bits faster than the host can copy them.
Kernel bypass and zero copy
RDMA lets a NIC write directly into a registered memory region in the peer's address space. The application posts a work request to a queue pair; the NIC performs the transfer entirely in hardware and reports a completion. No kernel, no copies, no interrupts per packet.
The result is single-digit microsecond latency and near-zero CPU overhead — which is why AI training clusters and NVMe-oF storage fabrics are built on it.
The verbs
RDMA exposes a small set of operations:
- Send/Receive — two-sided messaging, like a socket.
- Write — push data into a remote memory region.
- Read — pull data out of a remote memory region.
- Atomic — compare-and-swap style operations on remote memory.