IP Library Granted Patent US 10,754,368
Granted Patent B1
US 10,754,368 · App. 15/795,914 · Granted Aug 25, 2020

Method and system for load balancing backup resources

Inventors: Shelesh Chopra (Bangalore, IN); Vladimir Mandic (San Jose, CA); Gururaj Kulkarni (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G05F1/66H03H7/42H04H20/42H04L47/28
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,754,368
App. No.
15/795,914
Granted
Aug 25, 2020
Kind
B1
Abstract

A method for load balancing backup resources of a backup resource pool includes obtaining status information for a plurality of backup resources of the backup resource pool. The method includes, while an aggregate load state of the backup pool is not overloaded, making a first determination that a first backup resource of the plurality of backup resources has a load state that is overloaded based on the status information and a load policy. The method includes, in response to the first determination, adding a new backup resource to the backup pool.

Claims (45)

1. A method for load balancing backup resources of a backup resource pool, the method comprising:

obtaining status information for a plurality of backup resources of the backup resource pool, wherein the backup resources of the backup resource pool continuously provide resource intensive computer implemented services to clients;

while an aggregate load state of the backup resource pool is not overloaded, making a first determination that a first backup resource of the plurality of backup resources of the backup resource pool has a load state that is overloaded based on the status information and a load policy;

in response to the first determination, adding a new backup resource to the backup resource pool;

after adding the new backup resource, updating the status information for the plurality of backup resources of the backup resource pool;

while the aggregate load state of the backup resource pool is underloaded, making a second determination that the first backup resource of the plurality of backup resources has a second load state that is underloaded based on the status information and the load policy; and

in response to the second determination, removing the new backup resource from the resource backup pool.

2. The method of claim 1 , wherein the aggregate load state of the backup resource pool is based on an average load state of each backup resource of the backup resource pool that is providing the resource intensive computer implemented services.

3. The method of claim 1 , further comprising, after adding the new backup resource, obtaining updated status information from the first backup resource.

4. The method of claim 1 , further comprising:

in response to the second determination, removing the first backup resource of the plurality of backup resources from the backup resource pool.

5. The method of claim 1 , further comprising in response to the first determination, disabling the first backup resource from being assigned to a new client.

6. The method of claim 1 , wherein the first backup resource of the plurality of backup resources comprises a server.

7. The method of claim 1 , wherein the first backup resource of the plurality of backup resources is a virtual resource hosted on a physical server.

8. The method of claim 1 , wherein the load policy specifies the load state of the first backup resource of the plurality of backup resources as a function of a degree of utilization of the first backup resource of the plurality of backup resources.

9. The method of claim 8 , wherein the function specifies that the load state of the first backup resource of the plurality of backup resources is overloaded when the degree of utilization of the first backup resource of the plurality of backup resources exceeds a threshold.

10. The method of claim 1 , wherein the status information specifies a rate of use of a computing resource of the first backup resource of the plurality of backup resources; a concurrency of use of the first backup resource of the plurality of backup resources; and a condition of the first backup resource of the plurality of backup resources.

11. The method of claim 10 , wherein the computing resource is one selected from a group consisting of processor cycles, transitory memory space, network communication bandwidth, and disk input-output.

12. The method of claim 1 , wherein the status information specifies a concurrency of use of the first backup resource of the plurality of backup resources.

13. The method of claim 12 , wherein the concurrency of use is based on one selected from a group consisting of a cardinality of a plurality of the clients that utilize the first backup resource of the plurality of backup resources and a cardinality of a plurality of processes executing on the first backup resource of the plurality of backup resources.

14. The method of claim 1 , wherein the status information specifies a condition of the first backup resource of the plurality of backup resources.

15. The method of claim 14 , wherein the condition is one selected from a group consisting of a power consumption of the first backup resource of the plurality of backup resources and a temperature of a component of the first backup resource of the plurality of backup resources.

16. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for load balancing backup resources of a backup resource pool, the method comprising:

obtaining status information for a plurality of backup resources of the backup resource pool, wherein the backup resources of the backup resource pool continuously provide resource intensive computer implemented services to clients;

while an aggregate load state of the backup resource pool is not overloaded, making a determination that a first backup resource of the plurality of backup resources of the backup resource pool has a load state that is overloaded based on the status information and a load policy;

in response to the determination, adding a new backup resource to the backup resource pool;

after adding the new backup resource, updating the status information for the plurality of backup resources of the backup resource pool;

while the aggregate load state of the backup resource pool is underloaded, making a second determination that the first backup resource of the plurality of backup resources has a second load state that is underloaded based on the status information and the load policy; and

in response to the second determination, removing the new backup resource from the backup resource pool.

17. The non-transitory computer readable medium of claim 16 , wherein:

the aggregate load state of the backup resource pool is based on an average load state of each backup resource of the backup resource pool that is providing the resource intensive computer implemented services; and

the load policy specifies the load state of the first backup resource of the plurality of backup resources as a function of a degree of utilization of the first backup resource of the plurality of backup resources.

18. A system, comprising:

a client;

a backup resource pool comprising a plurality of backup resources;

a resource controller in communication with the client and the backup resource pool, wherein the resource controller comprises a processor operable to:

obtain status information for the plurality of backup resources of the backup resource pool, wherein the backup resources of the backup resource pool continuously provide resource intensive computer implemented services to, at least, the client;

while an aggregate load state of the backup resource pool is not overloaded, make a determination that a first backup resource of the plurality of backup resources of the backup resource pool has a load state that is overloaded based on the status information and a load policy;

in response to the determination, add a new backup resource to the backup resource pool;

after adding the new backup resource, updating the status information for the plurality of backup resources of the backup resource pool;

while the aggregate load state of the backup resource pool is underloaded, making a second determination that the first backup resource of the plurality of backup resources has a second load state that is underloaded based on the status information and the load policy; and

in response to the second determination, removing the new backup resource from the backup resource pool.

19. The system of claim 18 , wherein:

the aggregate load state of the backup resource pool is based on an average load state of each backup resource of the backup resource pool that is providing the resource intensive computer implemented services; and

the load policy specifies the load state of the first backup resource of the plurality of backup resources as a function of a degree of utilization of the first backup resource of the plurality of backup resources based on the status information.

Assignments (9)
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 (044535/0109) 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0414 →
RELEASE OF SECURITY INTEREST AT REEL 044535 FRAME 0001 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0475 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2018
From: MANDIC, VLADIMIR
To: EMC CORPORATION
Reel/Frame 045633/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: CHOPRA, SHELESH; KULKARNI, GURURAJ
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 044819/0529 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 044535/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 044535/0109 →