Session-Based RoCE Protocol for Network Service Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing RDMA over Converged Ethernet (RoCE) protocols, such as RoCE v2, are limited by the use of a fixed destination port number, which restricts the application of network services like NAT, firewalls, and multipath routing to RoCE packets.

Innovation Solution

The introduction of a session-based protocol, referred to as session-based RoCE (SRoCE), which uses unique IP 5-tuples for each RDMA session, allowing for dynamic assignment of UDP source ports and enabling network services to be applied to SRoCE packets like any other UDP/IP packet flow.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fixed destination port number is used in RoCE protocols, then RDMA communication efficiency is maintained, but network services like NAT, firewalls, and multipath routing cannot be applied to RoCE packets

Engineering Contradiction:
Improvecompatibility with network servicesVSAvoidprotocol structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the RDMA communication into multiple sessions, each identified by a unique IP 5-tuple including a unique source port. This segmentation allows different sessions to be handled differently by network services while maintaining efficient RDMA communication within each session, resolving the contradiction between protocol simplicity and network service compatibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic source port assignment for each RDMA session, making the port number variable rather than fixed. This dynamic approach enables network services to differentiate and process different RDMA sessions appropriately, achieving compatibility with NAT, firewalls, and multipath routing without sacrificing RDMA communication efficiency.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If unique IP 5-tuples are assigned to each RDMA session, then network services can be applied to RDMA traffic, but protocol complexity increases

Engineering Contradiction:
Improvenetwork service applicabilityVSAvoidsession management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements self-service mechanisms where the network interface controller automatically manages session identification and routing based on the IP 5-tuples in packet headers. Network services can process packets independently using standard UDP/IP handling, while the RDMA session context is automatically maintained, reducing the perceived complexity for both the protocol and network services.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes the RDMA protocol universal by using standard UDP/IP packet structures that can be processed by any network service. The same packet format serves both RDMA communication and network service processing needs, eliminating the need for special-case handling and reducing overall system complexity despite the added session management capability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If dynamic UDP source ports are assigned to RDMA sessions, then encryption of entire UDP payloads becomes feasible, but processing overhead increases

Engineering Contradiction:
Improvedata securityVSAvoidencryption processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions by establishing session context and encryption parameters before data transmission begins. The network interface controller pre-configures encryption keys and session identifiers for each RDMA session, allowing encryption to be applied efficiently to entire UDP payloads without per-packet setup overhead, thus improving security while managing processing complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent merges the session identification and encryption key management into a unified structure based on the IP 5-tuple. By combining session context, encryption parameters, and packet routing information into a single lookup key, the system can apply encryption to entire UDP payloads efficiently without separate processing steps, reducing overall processing overhead while maintaining strong security.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12244670B2Session-based remote direct memory access
Publication Date: 2025.03.04 MELLANOX TECHNOLOGIES LTD(IL)
  • US12244670B2 patent drawing
  • US12244670B2 patent drawing
  • US12244670B2 patent drawing

AI summary

Apparatus for data communication includes a network interface for connection to a packet data network and a host interface for connection to a host computer, which includes a central processing unit (CPU) and a host memory. Packet processing circuitry receives, via the host interface, from a kernel running on the CPU, associations between multiple remote direct memory access (RDMA) sessions and multiple different User Datagram Protocol (UDP) 5-tuple, which are assigned respectively to the RDMA sessions, and receives from an application running on the CPU a request to send an RDMA message, using a selected group of one or more of the RDMA sessions, to a peer application over the packet data network, and in response to the request, transmits, via the network interface, one or more data packets using a UDP 5-tuple that is assigned to one of the RDMA sessions in the selected group.