Remote Direct Memory Access (RDMA)


What is RDMA?

The access of one computer's memory by another in a network without the involvement of any computer's operating system, processor, or cache is referred to as RDMA. Because many resources are freed up, it aids in improving system throughput and performance.

On a remote machine, read and write operations can be performed without being interrupted by the CPU of that machine. The data transfer rate is increased, and networking latency is reduced, thanks to this technology. It uses zero-copy networking for transferring data directly into system buffers by enabling network adapters.

RDMA was earlier used only in high-performance computing (HPC) environments. The cost of maintaining RDMA-capable network fabrics like InfiniBand was justified due to the importance of performance over cost.

Because RDMA may now be enabled on existing Ethernet fabrics for IP network communications, thanks to standards like RDMA over Converged Ethernet (RoCE), the cost of adopting RDMA is reduced. The RNIC adapters are configured using standard Ethernet management procedures.

Features of RDMA

  • Kernel bypass − Because the operating system is not engaged in data transfers, applications can send data directly from userspace, eliminating context switching and latency.

  • Zero-copy − Without copying data between network layers, applications can place data directly in the memory buffer of the destination application and receive data directly into the buffer. This will cut down on buffer transfers that aren't necessary.

  • CPU Involvement is Reduced − Applications can retrieve data from faraway servers without using CPU time on those servers. The accessed content will not fill the cache memory of the remote server's CPU.

  • Effective Transaction − Rather than sending and receiving data in streams, discrete messages can be sent and received, eliminating the requirement to separate messages.

RDMA-compatible Network Protocols

IWARP

It's an Internet Engineering Task Force (IETF) standard called iWARP. iWARP is a networking protocol that uses TCP/IP as its foundation. The iWARP packets can be routed.

Infiniband

It's an RDMA-compatible networking protocol. However, it requires hardware support, such as switches and network interface cards (NICs) that support this technology.

RoCE

It's a networking protocol that enables RDMA over Ethernet. Therefore, RoCE does not necessitate the conversion of Ethernet-based data centers to Infiniband. In general, RoCE is divided into two versions: RoCE v1 and RoCE v2.

RoCE v1 packets can be routed. However, RoCE v2 packets can communicate between two hosts in the same Ethernet broadcast. As a result, RoCE v1 refers to the Ethernet layer protocol, while RoCE v2 refers to the internet protocol.

Advantages of RDMA

A key advantage of RDMA is its amazing speed when compared to other data transfer technologies and protocols such as iSCSI (SCSI protocol via TCP), fiber channel (FC), or fiber channel over Ethernet (FCoE).

  • The RDMA variation has an impact on the final data transfer speed. Ethernet and Infini Band are particularly popular because they can carry data speed of up to 100 Gigabits per second.

  • This is especially useful for applications that demand computational capacities, such as distributed databases, big data analysis, and data center applications.

Disadvantages of RDMA

RDMA has some drawbacks too, when we compare it with fiber lines, which are still employed by many businesses.

  • Companies must plan large investments to use RDMA because the technology necessitates the purchase of new hardware and protocol components. As a result, Remote Direct Memory Access costs are far higher than those of FC or FCoE.

  • RDMA-based data transfer is only possible if all systems are compatible with the technology.

Updated on: 07-Sep-2021

761 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements