IP Library Granted Patent US 10,776,145
Granted Patent B2
US 10,776,145 · App. 15/494,055 · Granted Sep 15, 2020

Systems and methods for traffic monitoring in a virtualized software defined storage architecture

Inventors: Shyam T. Iyer (Austin, TX); William Price Dawkins (Austin, TX)
Assignee: Dell Products L.P.
G06F9/45558G06F2009/45579G06F2009/45591G06F2009/45595
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,776,145
App. No.
15/494,055
Granted
Sep 15, 2020
Kind
B2
Abstract

A method may include receiving one or more monitoring event definitions at an accelerator device from a first logical software entity to a first endpoint of the accelerator device having the first endpoint assigned for access by the first logical software entity, a second endpoint assigned to a second logical software entity such that second endpoint appears to the second logical software entity as a logical hardware adapter, and a third endpoint assigned to a third logical software entity, the accelerator device for accelerating data transfer operations between the second logical software entity and the third logical software entity via the second endpoint and the third endpoint. The method may also include monitoring by the accelerator device for one or more defined monitoring events occurring during the data transfer operations and communicating monitoring information to the first logical software entity from the accelerator device via the first endpoint.

Claims (43)

1. An information handling system, comprising:

a processor subsystem werein the processor subsystem includes a root complex comprising a plurality of root ports, wherein the plurality of root ports includes a first root port, a second root port, and a third root port;

a hypervisor, wherein the hypervisor enables the information handling system to support a plurality of guest operating systems;

an accelerator device, accessible to the processor subsystem, wherein the accelerator device includes:

a direct memory access (DMA) engine to provide DMA storage operations for a logical software entity executing on the processor subsystem;

an address translator configured to perform address translations for data transfer operations; and

a plurality of endpoints, wherein each of the plurality of endpoints is configured one of the plurality of root ports and further wherein the plurality of endpoints includes:

a first endpoint connected to the first root port by a first point to point link;

a second endpoint connected to the second root port by a second interconnect;

a third endpoint connected to the third root port a third interconnect;

a plurality of virtual machines corresponding to the plurality of guest operating systems, wherein the plurality of virtual machines includes a first virtual machine and a second virtual machine, wherein the first virtual machine communicates with the accelerator device via the first root port, the first interconnect, and the first endpoint and wherein and wherein the second virtual machine communicates with the accelerator device via the third root port, the third interconnect, and the third endpoint;

a storage virtual appliance for providing logical communication connections between storage resources and the plurality of guest operating systems via the accelerator device, wherein the storage virtual appliance communicates with the accelerator device via the second root port, the second interconnect, and the second endpoint; and

a memory subsystem, accessible to the processor subsystem, wherein the memory subsystem stores program instructions executable by the processor subsystem, wherein the program instructions when executed by the subsystem cause the processor subsystem to perform monitoring operations, wherein the monitoring operations include:

communicating one or more monitoring event definitions from the second virtual machine to the third endpoint, the accelerator device for accelerating data transfer operations between the first virtual machine and the storage virtual appliance via the first endpoint and the second endpoint, such that a data processor of the accelerator device in communication with the third endpoint monitors for one or more monitoring events defined by the one or more monitoring event definitions occurring during the data transfer operations; and

receive monitoring information at the second virtual machine from the accelerator device via the third endpoint, the monitoring information indicative of occurrence of the one or more monitoring events defined by the one or more monitoring event definitions.

2. The information handling system of claim 1 , wherein the second virtual machine is executing a monitoring application for communicating the one or more monitoring event definitions from the second virtual machine to the third endpoint.

3. The information handling system of claim 1 , wherein the accelerator device comprises a Peripheral Component Interconnect device.

4. The information handling system of claim 1 , wherein the accelerator device comprises a Peripheral Component Interconnect express (PCIe) adapter board plugged into a PCIe slot of the information handling system wherein the first, second, and third endpoints are PCIe endpoints logically addressable as individual endpoints via the first, second, and third root ports.

5. The information handling system of claim 1 , wherein the one or more monitoring events include at least one of: an occurrence of particular data pattern and an occurrence of particular metadata within the data transfer operations.

6. The information handling system of claim 1 , wherein the third endpoint is assigned for exclusive access by the second virtual machine.

7. The information handling system of claim 1 , wherein the second endpoint is assigned for exclusive access by storage virtual appliance.

8. A method, comprising:

performing, by an information handling system, monitoring operations, wherein the information handling system includes:

a processor subsystem including a root complex comprising a plurality of root ports, wherein the plurality of root ports includes a first root port, a second root port, and a third root port;

a hypervisor, wherein the hypervisor enables the information handling system to support a plurality of guest operating systems;

an accelerator device, accessible to the processor subsystem, wherein the accelerator device includes:

a direct memory access (DMA) engine to provide DMA storage operations for a logical software entity executing on the processor subsystem;

an address translator configured to perform address translations for data transfer operations; and

a plurality of endpoints, wherein the plurality of endpoints includes:

a first endpoint, wherein the first endpoint is connected to the first root port by a first interconnect;

a second endpoint, wherein the second endpoint is connected to the second root port by a second interconnect; and

a third endpoint connected to the third root port by a third interconnect;

a plurality of virtual machines corresponding to the plurality of virtual machines, wherein the plurality of virtual machines includes a first virtual machine and a second virtual machine, wherein the first virtual machine communicates with the accelerator device via the first root port, the first interconnect, and the first endpoint and wherein and wherein the second virtual machine communicates with the accelerator device via the third root port, the third interconnect, and the third endpoint;

a storage virtual appliance for providing logical communication connections between storage resources and the plurality of guest operating systems via the accelerator device, wherein the storage virtual appliance communicates with the accelerator device via the second root port, the second interconnect, and the second endpoint; and

a memory subsystem, accessible to the processor subsystem, wherein the memory subsystem stores program instructions executable by the processor subsystem;

wherein the monitoring operations include:

communicating one or more monitoring event definitions from the second virtual machine to the third endpoint , the accelerator device for accelerating data transfer operations between the first virtual machine and the storage virtual appliance via the first endpoint and the second endpoint , such that a data processor of the accelerator device in communication with the third endpoint monitors for one or more monitoring events defined by the one or more monitoring event definitions occurring during the data transfer operations; and

receive monitoring information at the second virtual machine from the accelerator device via the third endpoint, the monitoring information indicative of occurrence of the one or more monitoring events defined by the one or more monitoring event definitions.

9. The method of claim 8 , wherein the storage virtual appliance is enabled to mount and partition storage resources, including local storage resources and remote storage resources, and present storage resources as desired logical storage devices for access by one or more of the plurality of guest operating systems.

10. The method of claim 8 , wherein the accelerator device comprises a Peripheral Component Interconnect device.

11. The method of claim 8 , wherein the accelerator device comprises a Peripheral Component Interconnect express (PCIe) adapter board plugged into a PCIe slot of the information handling system wherein the first, second, and third endpoints are PCIe endpoints logically addressable as individual endpoints via the first, second, and third root ports.

12. The method of claim 8 , wherein the one or more monitoring events include at least one of: an occurrence of particular data pattern and an occurrence of particular metadata within the data transfer operations.

13. The method of claim 8 , wherein the third endpoint is assigned for exclusive access by the second virtual machine.

Assignments (8)
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 (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
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 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2017
From: IYER, SHYAM T.; DAWKINS, WILLIAM PRICE
To: DELL PRODUCTS L.P.
Reel/Frame 042117/0967 →
Continuity (1)
Related Publication 20180307513A1 · Oct 25, 2018
Cited By (3)
US 12,229,605 US 12,260,263 US 12,405,838