IP Library Granted Patent US 10,673,947
Granted Patent B2
US 10,673,947 · App. 16/282,629 · Granted Jun 2, 2020

System and method for providing a client device seamless access to a plurality of remote storage devices presented as a virtual device

Inventors: Yaniv Romem (Jerusalem, IL); Omri Mann (Jerusalem, IL); Ofer Oshri (Kfar Saba, IL)
Assignee: Excelero Storage Ltd.
H04L67/1097G06F3/061G06F3/067G06F3/0665G06F12/109G06F16/00G06F16/30G06F2212/1024G06F2212/154G06F2212/163G06F2212/657
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,673,947
App. No.
16/282,629
Granted
Jun 2, 2020
Kind
B2
Abstract

A computerized method for enabling a client device seamless access to a plurality of remote storage devices connected to the client device via a communication network. The method comprises receiving a plurality of physical addresses by a controller communicatively coupled to the client device and to a plurality of storage servers, each of the plurality of storage servers communicatively coupled to at least one storage device, the plurality of physical addresses enabling access by the controller to the remote storage devices. A single virtual storage device having a logical address space is generated on the device, wherein each of the plurality of physical addresses is mapped by the controller to a unique logical address of the virtual storage device.

Claims (27)

1. A system for enabling a client device seamless access to a plurality of remote storage devices connected to the client device via a communication network, comprising:

a network interface controller (NIC);

a processing circuitry; and

a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:

receive a plurality of physical addresses by the network interface controller communicatively coupled to the client device and to a plurality of storage servers, each physical address, when received, not being associated with any logical address of the client device, each of the plurality of storage servers communicatively coupled to at least one storage device, the plurality of physical addresses enabling access by the NIC to the remote storage devices; and

generate for the client device by the network interface controller a single virtual storage device having a logical address space by mapping, by the network interface controller, each of the plurality of received physical addresses to at least a unique logical address of the virtual storage device; and

present, by the network interface controller, the single virtual storage device to the client to be used as a local storage device by the client.

2. The system of claim 1 , wherein the system is further configured:

receive a first access instruction having a first logical address within the logical address space, the first access instruction according to a first communication protocol;

convert by the controller the first address to a second access instruction according to a second communication protocol, wherein the first logical address is mapped to a physical address of the plurality of physical addresses; and

send the second access instruction over the second communication protocol to at least a storage server of the plurality of storage servers corresponding to the physical address.

3. The system of claim 2 , wherein the first communication protocol is NVMExpress.

4. The system of claim 2 , wherein the second communication protocol is an implementation of remote direct memory access (RDMA).

5. The system of claim 4 , wherein the implementation is any of: iWARP, Infiniband, or RDMA over Converged Ethernet (RoCE).

6. The system of claim 1 , wherein the system is further configured to:

send a request for an additional physical address; and

map a received additional physical address to a unique logical address of the logical address space.

7. The system of claim 1 , wherein the system is further configured to:

send a request for a plurality of additional physical addresses;

map a virtual address of the plurality of virtual addresses to a secondary virtual address of a secondary plurality of virtual addresses; and

map each additional physical layer to a unique secondary virtual address.

8. The system of claim 1 , wherein the single virtual storage is generated using input/output (I/O) virtualization.

9. The system of claim 1 , wherein the I/O virtualization is Single Root I/O Virtualization (SR-IOV).

10. The system of claim 9 , wherein the I/O virtualization generates a plurality of single virtual storages.

11. The system of claim 1 , wherein the system is further configured to:

receive a second plurality of physical addresses by the controller, the second plurality of physical addresses enabling access by the NIC to a local storage device communicatively coupled to the client device; and

map the second plurality of physical addresses to the logical address space.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2022
From: EXCELERO STORAGE LTD.
To: NVIDIA CORPORATION
Reel/Frame 059249/0950 →
Continuity (3)
Continuation 14934830 · Nov 6, 2015
Provisional Application 62172265 · Jun 8, 2015
Related Publication 20190190989A1 · Jun 20, 2019