IP Library Granted Patent US 10,503,437
Granted Patent B2
US 10,503,437 · App. 15/966,542 · Granted Dec 10, 2019

Distributed service level management with performance resilience objectives

Inventors: Owen Martin (Hopedale, MA); Arieh Don (Newton, MA); Vinay G. Rao (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F3/0659G06F3/0604G06F3/0611G06F3/0683
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,503,437
App. No.
15/966,542
Granted
Dec 10, 2019
Kind
B2
Abstract

Execution of I/O operations for an application is managed to improve consistency of performance for an I/O performance metric for the application. Such control may be achieved by defining a value for a performance resilience objective (PRO) parameter, and applying the PRO value to I/O requests of the application. The PRO value may define a value indicative of an extent to which I/O performance can deviate from a performance objective (e.g., as defined by a service level) over time; i.e., a tolerance for such deviation. Components of a computer network may be configured to apply PRO values to I/O requests for one or more applications. The PRO values of applications may be distributed to one or more components of a data storage system and one or more components of a host system, and these components may be configured to apply the PRO values to I/O requests of the subject applications.

Claims (36)

1. A method of managing an I/O request for a storage system, the method comprising:

receiving the I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and

controlling execution of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time,

wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time.

2. The method of claim 1 , wherein controlling execution of the I/O operation includes causing a delay in the performance of the I/O operation based at least in part on the second value.

3. The method of claim 2 , wherein controlling execution of the I/O operation includes determining a current status of the I/O operation, and causing the delay based at least on the first value, the second value and the current status.

4. The method of claim 1 , wherein controlling execution includes accelerating the performance of the I/O operation based at least in part on the second value.

5. The method of claim 1 , wherein controlling execution includes applying the second value on a host system prior to sending the I/O request to the storage system.

6. The method of claim 1 , wherein controlling execution includes applying the second value on the storage system prior to performing the I/O operation on the storage system.

7. The method of claim 1 , wherein controlling execution includes applying the second value on the storage system after performing the I/O operation on the storage system and prior to sending a response to the host system regarding the performing of the I/O operation.

8. The method of claim 1 , further comprising:

providing the second value to the storage system and a host system from which the I/O request originates,

wherein controlling execution includes applying the second value on the host system and the storage system.

9. The method of claim 1 , wherein the first value corresponds to a service level associated with the application.

10. A system for managing an I/O request for a storage system, the system comprising:

one or more processors; and

a memory comprising code stored thereon that, when executed, performs a method comprising:

receiving an I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and

controlling a performance of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time,

wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time.

11. The system of claim 10 , wherein controlling execution of the I/O operation includes causing a delay in the performance of the I/O operation based at least in part on the second value.

12. The system of claim 11 , wherein controlling execution of the I/O operation includes determining a current status of the I/O operation, and causing the delay based at least on the first value, the second value and the current status.

13. The system of claim 10 , wherein controlling execution includes accelerating the performance of the I/O operation based at least in part on the second value.

14. The system of claim 10 , wherein the method further comprises providing the second value to the storage system and a host system from which the I/O request originates, and

wherein controlling execution includes applying the second value on the host system and the storage system.

15. The system of claim 10 , wherein the first value corresponds to a service level associated with the application.

16. A non-transitory computer-readable medium having software stored thereon for managing an I/O request for a storage system, the software comprising:

executable code that receives an I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and

executable code that controls a performance of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time,

wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time.

17. The non-transitory computer-readable medium of claim 16 , wherein the executable code that controls execution of the I/O operation includes executable code that causes a delay in the performance of the I/O operation based at least in part on the second value.

18. The non-transitory computer-readable medium of claim 16 , wherein the executable code that controls execution includes executable code that accelerates the performance of the I/O operation based at least in part on the second value.

19. The non-transitory computer-readable medium of claim 16 , wherein the software further comprises:

executable code that provides the second value to the storage system and a host system from which the I/O request originates,

wherein the executable code that controls execution includes executable code that applies the second value on the host system and the storage system.

20. The non-transitory computer-readable medium of claim 16 , wherein the first value corresponds to a service level associated with the application.

Assignments (7)
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 (046366/0014) Recorded May 20, 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
Reel/Frame 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0093 →
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 AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 046366/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2018
From: MARTIN, OWEN; DON, ARIEH; RAO, VINAY G.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045670/0125 →