IP Library Granted Patent US 12663940
Granted Patent B2
US 12663940 · App. 18/423,480 · Granted Jun 23, 2026

SDS local data path optimization system

Inventors: Xiangping Chen (Sherborn, MA); Andrew Butcher (Cedar Park, TX); Shyamkumar T. Iyer (Cedar Park, TX); Xunce Zhou (Shrewsbury, MA)
Assignee: Dell Products L.P.
G06F3/0659G06F3/0604G06F3/067
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12663940
App. No.
18/423,480
Granted
Jun 23, 2026
Kind
B2
Abstract

A Software Defined Storage (SDS) system includes a memory system, an SDS client subsystem that is coupled to the memory system, and an SDS server subsystem that is coupled to the memory system. The SDS server subsystem establishes a first Transmission Control Protocol/Internet Protocol (TCP/IP) connection with the SDS client subsystem, and determines that the SDS client subsystem and the SDS server subsystem share the memory system. The SDS server subsystem then receives a first data read request via the first TCP/IP connection from the SDS client subsystem, determines the first data read request is associated with data stored in the memory system, and provides a first data read response via the first TCP/IP connection, that is configured to cause the SDS client subsystem to read the data from the memory system.

Claims (61)

1 . A Software Defined Storage (SDS) system, comprising:

a memory system;

a Software Defined Storage (SDS) client subsystem that is coupled to the memory system; and

an SDS server subsystem that is coupled to the memory system and that is configured to:

establish a first Transmission Control Protocol/Internet Protocol (TCP/IP) connection with the SDS client subsystem;

determine that the SDS client subsystem and the SDS server subsystem share the memory system;

receive, via the first TCP/IP connection, a first data read request from the SDS client subsystem;

determine the first data read request is associated with data stored in the memory system; and

provide, via the first TCP/IP connection, a first data read response that is configured to cause the SDS client subsystem to read the data from the memory system.

2 . The system of claim 1 , wherein the SDS server subsystem is configured to:

receive, via the first TCP/IP connection, a first data write request from the SDS client subsystem; and

provide, via the first TCP/IP connection, a first data write response that is configured to cause the SDS client subsystem to write the data to the memory system.

3 . The system of claim 2 , wherein the SDS server subsystem is configured to:

write, via a second TCP/IP connection subsequent to the SDS client subsystem writing the data to the memory system, the data from the memory system to a storage system that is coupled to the SDS server subsystem via the second TCP/IP connection.

4 . The system of claim 1 , wherein the SDS server subsystem is configured to:

receive, via the first TCP/IP connection and prior to receiving the first data read request, a second data read request from the SDS client subsystem;

determine the second data read request is associated with the data that is stored in a storage system that is coupled to the SDS storage server via a second TCP/IP connection;

retrieve, via the second TCP/IP connection, the data from the storage system; and

store the data in the memory system.

5 . The system of claim 1 , wherein the memory system is located in a device that includes the SDS client subsystem and the SDS server subsystem.

6 . The system of claim 1 , wherein the memory system is coupled to each of the SDS client subsystem and the SDS server subsystem via a network.

7 . An Information Handling System (IHS), comprising:

a Software Defined Storage (SDS) processing system; and

an SDS memory system that is coupled to the SDS processing system and that includes instructions that, when executed by the SDS processing system, cause the SDS processing system to provide an SDS server engine that is configured to:

establish a first Transmission Control Protocol/Internet Protocol (TCP/IP) connection with an SDS client subsystem;

determine that the SDS client subsystem and the SDS server engine share a data storage memory system;

receive, via the first TCP/IP connection, a first data read request from the SDS client subsystem;

determine the first data read request is associated with data stored in the data storage memory system; and

provide, via the first TCP/IP connection, a first data read response that is configured to cause the SDS client subsystem to read the data from the data storage memory system.

8 . The IHS of claim 7 , wherein the SDS server engine is configured to:

receive, via the first TCP/IP connection, a first data write request from the SDS client subsystem; and

provide, via the first TCP/IP connection, a first data write response that is configured to cause the SDS client subsystem to write the data to the data storage memory system.

9 . The IHS of claim 8 , wherein the SDS server engine is configured to:

write, via a second TCP/IP connection subsequent to the SDS client subsystem writing the data to the data storage memory system, the data from the data storage memory system to a storage system that is coupled to the SDS server subsystem via the second TCP/IP connection.

10 . The IHS of claim 7 , wherein the SDS server engine is configured to:

receive, via the first TCP/IP connection and prior to receiving the first data read request, a second data read request from the SDS client subsystem;

determine the second data read request is associated with the data that is stored in a storage system that is coupled to the SDS processing system via a second TCP/IP connection;

retrieve, via the second TCP/IP connection, the data from the storage system; and

store the data in the data storage memory system.

11 . The IHS of claim 7 , wherein the data storage memory system is located in a device that includes the SDS client subsystem and the SDS server engine.

12 . The IHS of claim 7 , wherein the data storage memory system is coupled to each of the SDS client subsystem and the SDS server engine via a network.

13 . The IHS of claim 7 , wherein the first data read response is configured to cause the SDS client subsystem to perform a Direct Memory Access (DMA) operation to read the data from the data storage memory system.

14 . A method for optimizing Software Defined Storage (SDS) using a local data path, comprising:

establishing, by an Software Defined Storage (SDS) server subsystem, a first Transmission Control Protocol/Internet Protocol (TCP/IP) connection with an SDS client subsystem;

determining, by a server subsystem, that the SDS client subsystem and the SDS server subsystem share a memory system;

receiving, by the SDS server subsystem via the first TCP/IP connection, a first data read request from the SDS client subsystem;

determining, by the SDS server subsystem, the first data read request is associated with data stored in the memory system; and

providing, by the SDS server subsystem via the first TCP/IP connection, a first data read response that is configured to cause the SDS client subsystem to read the data from the memory system.

15 . The method of claim 14 , further comprising:

receiving, by the SDS server subsystem via the first TCP/IP connection, a first data write request from the SDS client subsystem; and

providing, by the SDS server subsystem via the first TCP/IP connection, a first data write response that is configured to cause the SDS client subsystem to write the data to the memory system.

16 . The method of claim 15 , further comprising:

write, by the SDS server subsystem via a second TCP/IP connection subsequent to the SDS client subsystem writing the data to the memory system, the data from the memory system to a storage system that is coupled to the SDS server subsystem via the second TCP/IP connection.

17 . The method of claim 14 , further comprising:

receiving, by the SDS server subsystem via the first TCP/IP connection and prior to receiving the first data read request, a second data read request from the SDS client subsystem;

determining, by the SDS server subsystem, the second data read request is associated with the data that is stored in a storage system that is coupled to the SDS server subsystem via a second TCP/IP connection;

retrieving, by the SDS server subsystem via the second TCP/IP connection, the data from the storage system; and

storing, by the SDS server subsystem, the data in the memory system.

18 . The method of claim 14 , wherein the memory system is located in a device that includes the SDS client subsystem and the SDS server subsystem.

19 . The method of claim 14 , wherein the memory system is coupled to each of the SDS client subsystem and the SDS server subsystem via a network.

20 . The method of claim 14 , wherein the first data read response is configured to cause the SDS client subsystem to perform a Direct Memory Access (DMA) operation to read the data from the memory system.