1.1.9 RDMA

Remote Direct Memory Access (RDMA) is a feature that allows direct memory access between two systems that are connected by a network. RDMA facilitates high-throughput and low-latency networking in clusters.

Unbreakable Enterprise Kernel Release 5 includes RDMA features that are provided in the upstream kernel, with the addition of Ksplice and DTrace functionality, along with Oracle's own RDMA features, including support for RDS and Shared-PD.

The following RDS protocols are enabled with UEK R5:

  • Reliable Datagram Sockets (RDS) is a high-performance, low-latency, reliable connectionless protocol for datagram delivery

  • Internet Protocol over InfiniBand (IPoIB)

Note

Ethernet tunneling over IPoIB (eIPoIB) is not supported with UEK R5.

The following RDS features are enabled with UEK R5:

  • Quality of Service (QoS)

  • Active Bonding (AB)

  • Netfilter (NF)

Oracle provides support for RDMA on InfiniBand on the following Oracle-branded HCAs:

  • Sun InfiniBand Dual Port 4x QDR Host Channel Adapters M2

  • Oracle Dual Port QDR InfiniBand Adapter M3

New RDMA features implemented in UEK R5 include:

  • Mellanox HCA drivers updated.  The Mellanox mlx4 HCA driver has been updated for Ethernet and InfiniBand. The Mellanox mlx5 HCA driver has been updated for future functionality.

  • RDMA subsystem updated.  The RDMA subsystem has been updated. This includes an update to ib_core and new user land based on upstream RDMA Core libraries.

  • QoS features added.  Quality-of-Service (QoS) technologies such as PFC and CNP Counters and DSCP (including DSCP-to-Priority Mapping) have been added to facilitate QoS.

  • resilient_rdmaip module added.  The Active-Active Bonding feature that was previously available in the RDS driver module is moved into a new independent driver module, resilient_rdmaip, in UEK R5. This change acknowledges that the Active-Active Bonding feature is more generic and applies more widely to RDMA, as a whole. It also helps to reduce code complexity within the RDS module and brings the UEK RDS driver closer to matching the upstream RDS implementation. Finally, this change facilitates further improvement to the Active-Active Bonding code.