RDMA Read Destination Buffers Mapped to Single Representation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current RDMA systems face inefficiencies in handling non-contiguous RDMA Read destination buffers, resulting in increased overhead, larger link utilization, longer latency, and a more complex protocol due to the requirement of multiple RDMA read operations for each buffer element.

Innovation Solution

The implementation of a 'Shadow' Steering Tag (SSTag) that maps a set of memory buffers onto a single representation, allowing for the identification and assignment of data to multiple non-contiguous buffers with a single read request, thereby reducing the need for multiple RDMA read operations and enhancing data transfer efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple RDMA read operations are used to handle non-contiguous destination buffers, then data can be transferred to each buffer element, but overhead increases, link utilization increases, latency increases, and protocol complexity increases

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidprotocol complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple RDMA read operations into a single unified operation by introducing a scatter/gather list that describes multiple destination buffers. The RNIC uses a single steering tag (STag) pointing to a descriptor ring buffer that contains information about multiple destination buffers, allowing data to be transferred to multiple non-contiguous buffers in one operation rather than requiring separate RDMA reads for each buffer.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary data structure (scatter/gather list in the descriptor ring buffer) that mediates between the single RDMA read operation and multiple destination buffers. This intermediary structure allows the RNIC to interpret a single read operation as targeting multiple buffers, thereby reducing protocol complexity while maintaining the ability to handle non-contiguous buffers.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple RDMA read operations are used for non-contiguous buffers, then complete buffer coverage is achieved, but overhead and latency increase

Engineering Contradiction:
Improvebuffer coverage completenessVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges multiple sequential RDMA read operations into a single parallel operation by using a scatter/gather list that describes all destination buffers upfront. The RNIC processes all buffer descriptors in the list during one read operation, ensuring complete buffer coverage while eliminating the sequential overhead and latency associated with multiple separate operations.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If a single RDMA read operation is used, then overhead and latency are reduced, but the ability to handle non-contiguous destination buffers is limited

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidnon-contiguous buffer handling capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a scatter/gather list as an intermediary data structure that enables a single RDMA read operation to handle non-contiguous destination buffers. This list, stored in the descriptor ring buffer, contains descriptors for multiple buffers with their respective addresses and lengths, allowing the RNIC to interpret the single read operation as targeting multiple non-contiguous buffers, thus maintaining both efficiency and versatility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the destination buffer space into multiple discrete buffer elements described in the scatter/gather list. Each buffer element is described by a descriptor containing its address and length, allowing the system to handle non-contiguous buffers while using a single unified RDMA read operation. This segmentation approach maintains adaptability for non-contiguous buffers while achieving the efficiency of a single operation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8909727B2RDMA read destination buffers mapped onto a single representation
Publication Date: 2014.12.09 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8909727B2 patent drawing
  • US8909727B2 patent drawing
  • US8909727B2 patent drawing

AI summary

A computer-implemented method, system, and article of manufacture for data communication between a requester and a responder in a remote direct memory access (RDMA) network, where each of the requester and the responder is an RDMA-enabled host of the network. The method includes: sending a request for the responder to provide data, where the request includes a mapped steering tag that is obtained by mapping a set of memory buffers of the requester onto a single representation that allows for identifying each of the memory buffers of the set; and receiving the requested data together with the mapped steering tag and assigning the data being received to the memory buffers of the set consistently with the mapping.