RDMA Memory Key Structure for Secure Remote Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current remote direct memory access (RDMA) communication systems rely solely on standard memory key verification, which is insecure and vulnerable to unauthorized access, particularly in internet-based communication environments.

Innovation Solution

A memory key structure that includes a standard memory key, an endpoint network address identifier, and an endpoint transport identifier is used for authentication, with the memory key being randomly generated and optimized in size to prevent unauthorized access, ensuring additional verification layers beyond standard memory key verification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If standard memory key verification is used for RDMA access, then the authentication process is simple and fast, but the security is weak and vulnerable to unauthorized access

Engineering Contradiction:
ImprovesecurityVSAvoidauthentication structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the authentication process into multiple independent verification steps: first verifying the memory key, then verifying the endpoint network address identifier, and finally verifying the endpoint transport identifier. This segmentation transforms a single weak authentication mechanism into a multi-layered security system where each layer provides an additional barrier against unauthorized access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds new dimensions to the authentication process by introducing network layer identifiers (endpoint network address identifiers) and transport layer identifiers (endpoint transport identifiers) beyond the traditional memory key. This multi-dimensional approach ensures that even if one authentication factor is compromised, unauthorized access remains blocked by verification in other dimensional layers.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If memory key size is increased to prevent guessing, then security is improved, but the time required for verification increases

Engineering Contradiction:
ImprovesecurityVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the security verification into three separate validation operations rather than using one large memory key. Each identifier (memory key, endpoint network address identifier, endpoint transport identifier) is verified independently and sequentially. This segmentation allows each verification step to remain computationally efficient while the cumulative effect of multiple verifications provides strong security against guessing attacks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the authentication parameters from a single large key to multiple smaller identifiers. Instead of increasing the size of one memory key, the system uses several smaller identifiers (memory key, network address identifier, transport identifier) that are each quick to verify but collectively provide strong security through their combination.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7971236B1Method and system for secure remote direct memory access
Publication Date: 2011.06.28 NETAPP INC
  • US7971236B1 patent drawing
  • US7971236B1 patent drawing
  • US7971236B1 patent drawing

AI summary

Method and system are provided where a memory key structure is used for authenticating access to a memory location that is registered for a remote direct memory access (RDMA) operation. The memory key structure not only includes a standard memory key that is expected by an RDMA enabled network interface card (RNIC), but also includes an endpoint network address identifier and a transport identifier. The endpoint network address identifier and the transport identifier are verified before an entity is granted access to the registered memory location.