Skip to main content
HomeAgent portalContact support

Concepts

DMA vs RDMA: Local Device Access and Remote Data Placement

DMA and RDMA can both reduce CPU involvement in moving data, but their system boundaries differ. DMA usually describes transfers between a device and memory inside one computer. Remote Direct Memory Access is a network capability through which RDMA adapters exchange data with registered, permission-controlled memory on another host.

Last reviewed: 2026-09-05Published by Heino HMA Hardware Lab

One letter changes the boundary

The R in RDMA means Remote. RDMA commonly relies on a local NIC DMA engine, but adds network transport, memory registration, queues, and remote protection semantics. An arbitrary PCIe DMA device is not therefore an RDMA device.

DMA scopeLocal device ↔ memory
RDMA scopeHost ↔ network ↔ host
Shared goalFewer copies / lower CPU
RDMA boundaryRegistered memory

DMA is a local I/O mechanism

Storage controllers, network adapters, and graphics devices can use DMA to exchange data with memory in one host. The operating-system driver prepares buffers, creates device mappings, submits descriptors, and reclaims resources.

IOMMU and DMA remapping can confine that device to approved address ranges. No second computer is required, and local DMA does not define a network protocol for remote access.

What RDMA adds across a network

RDMA targets high-throughput, low-latency communication with low CPU utilization. An RDMA-capable NIC exposes an RDMA interface, allowing data to be placed directly into registered application buffers with fewer intermediate copies.

Common transports include iWARP, InfiniBand, and RoCE. Their network requirements differ, but each relies on explicit connection, queue, memory-registration, and protection state.

Comparing the two data paths

A conventional NIC DMA path connects local memory, the PCIe adapter, and network frames; the remote host then processes those frames through its networking stack. RDMA lets an adapter place data into a remote registered region according to protocol and authorization state.

An RDMA adapter can still use DMA internally for local memory, so the terms are related rather than interchangeable: DMA is a lower-level data-movement capability, while RDMA is a communication model with network and memory-protection semantics.

RDMA still requires memory protection

Direct does not mean permission-free. Applications register memory for RDMA use, and adapters plus software maintain access keys, queues, and connection state that constrain operations to authorized regions.

Network access control, identity, and encryption requirements also remain. Microsoft SMB Direct can combine RDMA with SMB encryption on supported systems, showing that a performance path and data protection must be designed together.

Choosing the correct term

If the question is how a local PCIe device reaches host buffers, discuss DMA addresses, descriptors, mappings, and IOMMU. If it is how servers transfer into registered memory at low latency, discuss RDMA, RNICs, queues, and network transport.

A 10GbE link, fiber cable, or two computers does not prove RDMA is active. Hardware capability, driver support, operating-system interfaces, and an end-to-end supported configuration are all required.

Frequently asked questions

01Does RDMA use no CPU at all?

No. It greatly reduces CPU work for copying and protocol processing, but CPUs still manage connections, submit work, process completions, and run application logic.

02Does every high-speed Ethernet adapter support RDMA?

No. Link speed does not establish RDMA capability; verify the adapter, driver, and operating-system support.

03Does RDMA bypass the IOMMU?

It should not be understood that way. An RNIC's local device access remains part of the platform DMA security model and requires valid mappings and permissions.

04How does SMB Direct relate to regular SMB?

SMB Direct lets SMB use RDMA for lower latency, lower CPU use, and high throughput when supported; Windows retains protocol negotiation and fallback behavior.

Official references

  1. Microsoft: Windows Kernel-Mode DMA Library
  2. Microsoft: Windows Server RDMA overview
  3. Microsoft: SMB Direct
  4. RFC Editor: RDMA Protocol Specification (RFC 5040)
Heino HMA · Approved hardware validation and support
HMA installation support