SMB Direct Protocol RDMA Fragmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing file access protocols like SMB2 do not effectively utilize Remote Direct Memory Access (RDMA) for high-throughput and low-latency data transfers, limiting their performance in performance-critical deployments.

Innovation Solution

The SMB Direct protocol is introduced to enable SMB2 operations over RDMA transports by defining new messages for connection negotiation and data transfer, allowing direct memory-to-memory data transfer between peers, and managing credits to accommodate varying message sizes and optimize resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If SMB2 operates over traditional TCP transports, then it provides general purpose remote file access, but it cannot achieve high throughput and low latency required for performance-critical deployments

Engineering Contradiction:
ImprovethroughputVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces RDMA-capable network adapters as an intermediary layer between the SMB2 protocol and the physical network. These adapters enable direct memory-to-memory data transfer between peers, bypassing the traditional TCP/IP stack and operating system involvement, thus achieving both high throughput and low latency simultaneously

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical system of traditional TCP-based data transfer (involving CPU processing, operating system context switches, and multiple protocol layers) with a more efficient RDMA-based mechanism that performs direct memory access at the network adapter level, eliminating the bottlenecks of the traditional approach

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Adaptability or versatility

If SMB2 uses variable message sizes to accommodate different data operations, then it provides flexibility for various file access patterns, but RDMA transports require fixed size messages which creates a constraint

Engineering Contradiction:
Improvemessage size flexibilityVSAvoidprotocol complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments variable-sized SMB2 messages into fixed-size RDMA messages by introducing a fragmentation mechanism. Large SMB2 messages are divided into multiple smaller RDMA-compatible messages, while small messages are padded to meet minimum size requirements, thus reconciling the flexibility of SMB2 with the fixed-size constraint of RDMA

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the size parameter of messages to be compatible with RDMA by implementing a fragmentation and padding strategy. This allows the protocol to maintain adaptability for different data operations while conforming to the fixed size requirements of the underlying RDMA transport

Inventive Principle:
Principle #35Parameter changes

3Productivity

If RDMA performs direct memory transfer without involving CPU or operating system, then it achieves low-latency and high-throughput transfers, but it requires precise control of message sizes and transfer parameters

Engineering Contradiction:
Improvedata transfer speedVSAvoidcontrol overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements preliminary actions by pre-registering memory regions and pre-establishing RDMA connections before actual data transfer. This includes setting up credit mechanisms in advance and pre-configuring the fragmentation strategy, which reduces the control overhead during the actual high-speed data transfer phase

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10284626B2Transporting operations of arbitrary size over remote direct memory access
Publication Date: 2019.05.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10284626B2 patent drawing
  • US10284626B2 patent drawing
  • US10284626B2 patent drawing

AI summary

The embodiments described herein generally relate to a protocol for implementing data operations, e.g., a version of SMB, atop RDMA transports. In embodiments, systems and methods use the protocol definition, which specifies new messages for negotiating an RDMA connection and for transferring SMB2 data using the negotiated communication. A new protocol message may include new header information to determine message size, number of messages, and other information for sending the SMB2 data over RDMA. The header information is used to accommodate differences in message size requirements between RDMA and SMB2. The SMB Direct protocol allows SMB2 data to be fragmented into multiple individual RDMA messages that a receiver may then logically concatenate into a single SMB2 request or SMB2 response. The SMB Direct protocol also may allow SMB2 to transfer application data via efficient RDMA direct placement and to signal the application data's availability when the transfer is complete.