IP Library › Granted Patent US 10,031,872
Granted Patent B1
US 10,031,872 · App. 15/847,992 · Granted Jul 24, 2018

Storage in multi-queue storage devices using queue multiplexing and access control

Inventor: Alex Friedman (Hadera, IL)
Assignee: E8 STORAGE SYSTEMS LTD.
G06F13/287G06F3/0601G06F3/067G06F3/0613G06F3/0659H04L63/20H04L67/1097
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 10,031,872
App. No.
15/847,992
Granted
Jul 24, 2018
Kind
B1
Abstract

A method for data storage includes, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, running, in a server among the servers, multiple data-path instances (DPs) that operate independently of one another and issue storage commands for execution in the multi-queue storage devices. The storage commands, issued by the multiple DPs running in the server, are multiplexed using an Input-Output Multiplexer (I/O MUX) process. The multiplexed storage commands are executed in the multi-queue storage devices.

Claims (18)

1. A method for data storage, comprising:

in a system that comprises multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, running, in a server among the servers, multiple data-path instances (DPs) that operate independently of one another and issue storage commands for execution in the multi-queue storage devices;

using an Input-Output Multiplexer (I/O MUX) process, multiplexing the storage commands issued by the multiple DPs running in the server; and

executing the multiplexed storage commands in the multi-queue storage devices, including, in a given multi-queue storage device, queuing the storage commands issued by the multiple DPs running in the server in a single queue pair (QP) associated with the I/O MUX process.

2. The method according to claim 1 , wherein multiplexing the storage commands comprises running the I/O MUX process in the server.

3. The method according to claim 1 , wherein multiplexing the storage commands comprises running the I/O MUX process in a gateway separate from the server.

4. The method according to claim 3 , further comprising running in the gateway an access-control process that enforces an access-control policy on the storage commands.

5. The method according to claim 1 , wherein multiplexing and executing the storage commands comprises accessing the multi-queue storage devices using remote direct memory access, without running code on the at least one storage controller.

6. A computing system, comprising:

multiple multi-queue storage devices;

at least one storage controller;

multiple servers, wherein a server among the servers is configured to run multiple data-path instances (DPs) that operate independently of one another and issue storage commands for execution in the multi-queue storage devices; and

a processor configured to multiplex the storage commands issued by the multiple DPs running in the server using an Input-Output Multiplexer (I/O MUX) process, so as to execute the multiplexed storage commands in the multi-queue storage devices,

wherein a given multi-queue storage device is configured to queue the storage commands issued by the multiple DPs running in the server in a single queue pair (QP) associated with the I/O MUX process.

7. The system according to claim 6 , wherein the processor, which is configured to multiplex the storage commands, is a processor in the server.

8. The system according to claim 6 , wherein the processor, which is configured to multiplex the storage commands, is a processor in a gateway separate from the server.

9. The system according to claim 8 , wherein the processor in the gateway is further configured to run an access-control process that enforces an access-control policy on the storage commands.

10. The system according to claim 6 , wherein the server and the processor are configured to multiplex and execute the storage commands by accessing the multi-queue storage devices using remote direct memory access, without running code on the at least one storage controller.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: E8 STORAGE SYSTEMS LTD.
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 051014/0168 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2017
From: FRIEDMAN, ALEX
To: E8 STORAGE SYSTEMS LTD.
Reel/Frame 044443/0730 →
Continuity (1)
Provisional Application 62449131 · Jan 23, 2017