Skip to content

Posts Tagged ‘RDMA ’

In the last few posts, I explained how to install the RDMA stack in several ways (inbox, OFED and manually). In this post, I'll describe how to verify that the RDMA stack is working properly. Verify that RDMA kernel part...

By default, all Work Requests generate Work Completions when their processing is finished. However, Send Request may or may not generate Work Completions when their processing is finished - this is fully controllable by the application and this is called...

Sometimes, within an InfiniBand fabric (i.e. a set of endnodes physically connected by cables to switches and routers) there is a need to provide an isolation between specific nodes and create "virtual fabrics" that only they will be able to...

What is RDMA? Direct memory access (DMA) is an ability of a device to access host memory directly, without the intervention of the CPU(s). RDMA (Remote DMA) is the ability of accessing (i.e. reading from or writing to) memory on...

Introduction to Endianness Let's start by answering the first question: "what is machine Endianness"? Machine Endianness refer to the way that bytes (i.e. 8 bit values) of word are ordered within memory. Bit Endian - the lower bits are saved...

General In RDMA there are two options for establishing a connection between two sides: Changing the QP state explicitly in the application by calling ibv_modify_qp() Using librdmacm (in iWARP this is the only way to do it) In this post,...

What is Fence? In the Send Queue there are operations that only send data from a local host to a remote one and there are operations that read data from a remote host and store it locally. Sometimes, there is...

Since in RDMA any UD QP can send/receive a packet to/from any other UD QP in the subnet, there is a need for a protection mechanism to allow a UD QP to specify from which other UD QPs it wishes...

The InfiniBand spec defines several features and verbs that the verbs implementation (i.e. RDMA stack in the Linux kernel and libibverbs) didn't implement or implemented in a different way. In this post I will cover missing verbs and functionality that...

RDMA supports zero byte messages, and this can be done by posting a Send Request without a scatter/gather list (i.e. a list with zero entries). Zero byte messages can be done with the following opcodes: Send Send with immediate RDMA...