NVMe Discovery Controller Reconnection for Lower TCP Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining TCP connections between end nodes and discovery controllers in NVMe/TCP deployments is costly due to overheads like frequent 'keep alive' messages and underutilization of connections, especially when I/O operations are performed via other protocols like RDMA/ROCE.

Innovation Solution

Implementing a new DIM message for connection/re-connection functionality with timeouts, allowing end nodes to disconnect after initial operations and reconnect upon rediscovery, maintaining an 'inactive' status without triggering notifications, and using a rediscovery timeout to re-establish connections efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TCP connections are maintained between end nodes and discovery controllers, then notifications and information exchanges can be communicated, but network link costs and overhead costs increase

Engineering Contradiction:
Improvecommunication reliabilityVSAvoidnetwork overhead cost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies dynamics by transitioning from a static persistent connection model to a dynamic connection model where TCP connections are established only when needed (e.g., for notifications or information exchanges) and terminated when not needed. The discovery controller dynamically manages connection states based on operational requirements, creating connections on-demand rather than maintaining them continuously, thus reducing network overhead while preserving communication reliability when required.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If connections are maintained for notifications and information exchanges, then communication functionality is preserved, but frequent keep alive messages increase overhead

Engineering Contradiction:
Improvecommunication functionalityVSAvoidkeep alive message handling
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the keep alive message handling mechanism from the continuous connection maintenance approach. Instead of relying on frequent keep alive messages to sustain connections, the system uses event-driven connection establishment where connections are created only when specific events occur (such as needing to send notifications or exchange information). This eliminates the complexity of managing keep alive message timers and state machines while preserving full communication functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces periodic keep alive messages with event-triggered connection establishment. Rather than continuously pinging to maintain connection state, the system waits for specific events (notifications to send, information to exchange) and then establishes connections only when needed. This transforms periodic maintenance overhead into on-demand connection establishment, reducing overall system complexity.

Inventive Principle:
Principle #19Periodic action

3Productivity

If persistent connections are used for I/O operations, then data transfer can occur, but connections are underutilized when using other protocols like RDMA/ROCE

Engineering Contradiction:
ImproveI/O operation capabilityVSAvoidconnection underutilization cost
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies dynamics by making connection establishment adaptive to actual operational needs. When I/O operations require TCP connection (e.g., for NVMe/TCP workloads), connections are established and used efficiently. When I/O operations can use alternative protocols like RDMA/ROCE, the system avoids establishing unnecessary TCP connections to the discovery controller, thereby eliminating underutilization costs while preserving full I/O capability through protocol selection.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250362819A1Connecting and disconnecting a communication link between an end node and discovery controller in a non-volatile memory express environment
Publication Date: 2025.11.27 DELL PROD LP
  • US20250362819A1 patent drawing
  • US20250362819A1 patent drawing
  • US20250362819A1 patent drawing

AI summary

To more effectively and efficiently use connections in a Non-Volatile Memory Express (NVMe) environment, embodiments allow an end node to disconnect from a discovery controller (DC). For example, after an initial connection duration, the end node may disconnect from the DC. Once the end node disconnects, the DC may change the end node's status to an “INACTIVE” state. In one or more embodiments, the end node's status change from “ACTIVE” to “INACTIVE” does not trigger a notification to be sent to any end node interacting or related to that end node. Embodiments may also include one or more reconnecting processes such as a keep alive check and/or to communicate updates/changes. Additionally, or alternatively, a reconnection process (e.g., a kickstart process) may be initiated by the DC or the end node to cause the end node to reconnect so that updated/changed information may be shared with the end node.