IP Library › Granted Patent US 10,078,454
Granted Patent B2
US 10,078,454 · App. 15/183,107 · Granted Sep 18, 2018

Access to storage resources using a virtual storage appliance

Inventors: Gaurav Chawla (Austin, TX); Michael Karl Molloy (Round Rock, TX); Robert Wayne Hormuth (Cedar Park, TX)
Assignee: Dell Products L.P.
G06F3/0611G06F3/0665G06F3/0685G06F9/45533G06F9/45558G06F13/28G06F13/36G06F13/4282G06F21/00G06F2009/45579
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,078,454
App. No.
15/183,107
Granted
Sep 18, 2018
Kind
B2
Abstract

Methods and systems for improved access to storage resources include installing a virtual storage appliance as a virtual machine on a hypervisor. The virtual storage appliance installs itself as a virtual PCI-E device and communicates with guest operating systems of the hypervisor using direct memory access via a PCI-E non-transparent bridge. The storage virtual appliance provides access to local and external storage resources with very high performance to applications running under the guest operating system, thereby overcoming performance barriers associated with native hypervisor driver models.

Claims (61)

1. A method executed by at least one processor comprising:

requesting access to storage resources by an application executing on an operating system;

routing the request for access to a storage virtual appliance using a storage virtual appliance block device driver;

opening a logical connection between the storage resources and the operating system using a Peripheral Component Interconnect Express (PCI-E) non-transparent bridge (NTB); and

enabling data to be transferred between the operating system and the storage resources using direct memory access (DMA) over the logical connection, wherein the storage virtual appliance has access to a first port of the PCI-E non-transparent bridge and the storage virtual appliance block device driver has access to a second port of the PCI-E non-transparent bridge.

2. The method of claim 1 , wherein the storage virtual appliance is a virtual PCI-E device in a system address space of a hypervisor.

3. The method of claim 1 , wherein the operating system executes on a multiprocessor system, and wherein the PCI-E non-transparent bridge spans across at least two processors in the multiprocessor system.

4. The method of claim 1 , further comprising:

discovering, at the storage virtual appliance block device driver, the storage resources enabled for access by the storage virtual appliance, and

reporting the storage resources to the operating system.

5. The method of claim 1 , wherein the step of requesting access to storage resources further comprises a plurality of operating systems executing as respective virtual machines under a hypervisor requesting access to storage resources, and the step of enabling data to be transferred further comprises enabling data to be transferred between the plurality of operating systems and the storage resources.

6. The method of claim 1 , wherein the storage resources comprise at least one of:

a cache network shared among a plurality of multiprocessor servers;

a storage area network;

a flash memory solid state device; and

an array of storage devices.

7. An article of manufacture comprising a non-transitory computer-readable medium storing instructions, that, when executed by a processor subsystem, cause the processor subsystem to:

request access to storage resources using an application on an operating system;

route the request for access to a storage virtual appliance using a storage virtual appliance block device driver;

open a logical connection between the storage resources and the operating system using a Peripheral Component Interconnect Express (PCI-E) non-transparent bridge (NTB); and

enable data to be transferred between the operating system and the storage resources using direct memory access (DMA) over the logical connection, wherein the storage virtual appliance has access to a first port of the PCI-E non-transparent bridge and the storage virtual appliance block device driver has access to a second port of the PCI-E non-transparent bridge.

8. The article of manufacture in claim 7 , wherein the storage virtual appliance is a virtual PCI-E device in a system address space of a hypervisor.

9. The article of manufacture in claim 7 , wherein the operating system executes on a plurality of processors and the PCI-E non-transparent bridge spans across at least two processors in the plurality of processors.

10. The article of manufacture in claim 7 , wherein the non-transitory computer-readable medium further stores instructions that cause the processor subsystem to:

discover, at the storage virtual appliance device driver, the storage resources enabled for access by the storage virtual appliance; and

report the storage resources to the operating system.

11. The article of manufacture in claim 7 , wherein the instructions that cause the processor subsystem to request access to storage resources further causes the processor subsystem to request access to the storage resources for a plurality of operating systems executing as respective virtual machines under a hypervisor, and wherein the instructions that cause the processor subsystem to enable data to be transferred further causes the processor subsystem to enable data to be transferred between the plurality of operating systems and the storage resources.

12. The article of manufacture in claim 7 , wherein the storage resources comprise at least one of:

a cache network shared among a plurality of multiprocessor servers;

a storage area network;

a flash memory solid state device (SSD); and

an array of storage devices.

13. The article of manufacture in claim 7 , wherein the storage resources comprise a cache network shared among a plurality of multiprocessor servers, wherein the cache network is accessed using at least one of:

a flash memory solid state device (SSD);

remote direct memory access (RDMA);

an internet small computer system interface (iSCSI);

a fibre channel (FC); and

an ethernet.

14. An information handling system comprising:

a processor subsystem having access to a memory subsystem, wherein the memory subsystem stores instructions executable by the processor subsystem, that, when executed by the processor subsystem, cause the processor subsystem to:

request access to storage resources using an application on an operating system;

route the request for access to a storage virtual appliance using a storage virtual appliance block device driver;

open a logical connection between the storage resources and the operating system using a Peripheral Component Interconnect Express (PCI-E) non-transparent bridge (NTB); and

enable data to be transferred between the operating system and the storage resources using direct memory access (DMA) over the logical connection, wherein the storage virtual appliance has access to a first port of the PCI-E non-transparent bridge and the storage virtual appliance block device driver has access to a second port of the PCI-E non-transparent bridge.

15. The information handling system of claim 14 , wherein the storage virtual appliance is a virtual PCI-E device in a system address space of a hypervisor.

16. The information handling system of claim 14 , wherein the operating system executes on a plurality of processors and the PCI-E non-transparent bridge spans across at least two processors in the plurality of processors.

17. The information handling system of claim 14 , wherein the memory subsystem further stores instructions that cause the processor subsystem to:

discover, at the storage virtual appliance device driver, the storage resources enabled for access by the storage virtual appliance; and

report the storage resources to the operating system.

18. The information handling system of claim 14 , wherein the instructions that cause the processor subsystem to request access to storage resources further causes the processor subsystem to request access to the storage resources for a plurality of operating systems executing as respective virtual machines under a hypervisor, and wherein the instructions that cause the processor subsystem to enable data to be transferred further causes the processor subsystem to enable data to be transferred between the plurality of operating systems and the storage resources.

19. The information handling system of claim 14 , wherein the storage resources comprise at least one of:

a cache network shared among a plurality of multiprocessor servers;

a storage area network;

a flash memory solid state device (SSD); and

an array of storage devices.

20. The information handling system of claim 14 , wherein the storage resources comprise a cache network shared among a plurality of multiprocessor servers, wherein the cache network is accessed using at least one of:

a flash memory solid state device (SSD);

remote direct memory access (RDMA);

an internet small computer system interface (iSCSI);

a fibre channel (FC); and

an ethernet.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF SEC. INT. IN PATENTS (NOTES) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040026/0710 →
RELEASE OF SEC. INT. IN PATENTS (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040027/0329 →
RELEASE OF SEC. INT. IN PATENTS (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040013/0733 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Aug 10, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 039643/0953 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Aug 10, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 039719/0889 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Aug 10, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 039644/0084 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2016
From: CHAWLA, GAURAV; MOLLOY, MICHAEL KARL; HORMUTH, ROBERT WAYNE
To: DELL PRODUCTS L.P.
Reel/Frame 039028/0234 →
Continuity (2)
Continuation 13902482 · May 24, 2013
Related Publication 20160299702A1 · Oct 13, 2016