IP Library Granted Patent US 11,093,290
Granted Patent B1
US 11,093,290 · App. 16/823,536 · Granted Aug 17, 2021

Backup server resource-aware discovery of client application resources

Inventors: Shelesh Chopra (Bangalore, IN); Pawan Singh (Bangalore, IN); Jayashree Radha (Bangalore, IN); Yasemin Ugur-Ozekinci (Oakville, CA)
Assignee: EMC IP Holding Company LLC
G06F9/5027G06F9/5016G06F9/542G06F11/3006G06F11/3072G06F2209/503G06F2209/508G06F2209/5022
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 11,093,290
App. No.
16/823,536
Granted
Aug 17, 2021
Kind
B1
Abstract

Server resource-aware discovery of client application resources is described. A server requests for clients to discover their application resources. If a utilization of a server resource does not exceed a server resource utilization threshold, the server fetches a copy of a client application resource from a client at a fetch rate. If the utilization of the server resource exceeds the server resource utilization threshold, the server fetches the copy of the client application resource from the client at a lesser fetch rate.

Claims (35)

1. A system for server resource-aware discovery of client application resources, comprising:

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which

when executed, cause the one or more processors to:

request, by a server, a plurality of clients, comprising a client, to discover a plurality of client application resources, comprising a client application resource;

identify a utilization of a server resource by the server;

determine whether the utilization of the server resource exceeds a server resource utilization threshold;

fetch, by the server, a copy of the client application resource from the client at a first fetch rate, in response to a determination that the utilization of the server resource does not exceed the server resource utilization threshold; and

fetch, by the server, the copy of the client application resource from the client at a second fetch rate, which is less than the first fetch rate, in response to a determination that the utilization of the server resource exceeds the server resource utilization threshold, wherein fetching at the second fetch rate comprises one of fetching a subset of the copy of the client application resources during each fetch or pausing the fetching of the copy of the client application resource, until a subsequent determination that the utilization of the server resource does not exceed the server resource utilization threshold.

2. The system of claim 1 , wherein requesting the plurality of clients to discover the plurality of client application resources comprises making a plurality of application programming interface calls that request a plurality of agents corresponding to the plurality of clients to discover the plurality of client application resources, and providing a time stamp corresponding to a fetched copy of a client application resource.

3. The system of claim 1 , wherein the plurality of instructions further causes the processor to receive a change notification for the client application resource from the client, wherein fetching the copy of the client application resource from the client is in response to receiving the change notification for the client application resource from the client.

4. The system of claim 1 , wherein the utilization of the server resource comprises a use of at least one of a central processing unit and a memory associated with the server.

5. The system of claim 1 , wherein determining whether the utilization of the server resource exceeds the server resource utilization threshold is based on at least one of a job that is executing on the server and a job that is pending execution on the server.

6. A computer-implemented method for server resource-aware discovery of client application resources, the computer-implemented method comprising:

requesting, by a server, a plurality of clients, comprising a client, to discover a plurality of client application resources, comprising a client application resource;

receiving a change notification for a client application resource of the plurality of client resources from a client of the plurality of clients;

identifying a utilization of a server resource by the server;

determining whether the utilization of the server resource exceeds a server resource utilization threshold;

fetching, by the server, a copy of the client application resource from the client at a first fetch rate, in response to a determination that the utilization of the server resource does not exceed the server resource utilization threshold; and

fetching, by the server, the copy of the client application resource from the client at a second fetch rate, which is less than the first fetch rate, in response to a determination that the utilization of the server resource exceeds the server resource utilization threshold, wherein fetching at the second fetch rate comprises one of fetching a subset of the copy of the client application resources during each fetch or pausing the fetching of the copy of the client application resource, until a subsequent determination that the utilization of the server resource does not exceed the server resource utilization threshold.

7. The computer-implemented method of claim 6 , wherein requesting the plurality of clients to discover the plurality of client application resources comprises making a plurality of application programming interface calls that request a plurality of agents corresponding to the plurality of clients to discover the plurality of client application resources, and providing a time stamp corresponding to a fetched copy of a client application resource.

8. The computer-implemented method of claim 6 , wherein the computer-implemented method further comprises receiving a change notification for the client application resource from the client, wherein fetching the copy of the client application resource from the client is in response to receiving the change notification for the client application resource from the client.

9. The computer-implemented method of claim 6 , wherein the utilization of the server resource comprises a use of at least one of a central processing unit and a memory associated with the server.

10. The computer-implemented method of claim 6 , wherein determining whether the utilization of the server resource exceeds the server resource utilization threshold is based on at least one of a job that is executing on the server and a job that is pending execution on the server.

11. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

request, by a server, a plurality of clients, comprising a client, to discover a plurality of client application resources, comprising a client application resource;

receive a change notification for a client application resource of the plurality of client resources from a client of the plurality of clients;

identify a utilization of a server resource by the server;

determine whether the utilization of the server resource exceeds a server resource utilization threshold;

fetch, by the server, a copy of the client application resource from the client at a first fetch rate, in response to a determination that the utilization of the server resource does not exceed the server resource utilization threshold; and

fetch, by the server, the copy of the client application resource from the client at a second fetch rate, which is less than the first fetch rate, in response to a determination that the utilization of the server resource exceeds the server resource utilization threshold, wherein fetching at the second fetch rate comprises one of fetching a subset of the copy of the client application resources during each fetch or pausing the fetching of the copy of the client application resource, until a subsequent determination that the utilization of the server resource does not exceed the server resource utilization threshold.

12. The computer program product of claim 11 , wherein requesting the plurality of clients to discover the plurality of client application resources comprises making a plurality of application programming interface calls that request a plurality of agents corresponding to the plurality of clients to discover the plurality of client application resources, and providing a time stamp corresponding to a fetched copy of a client application resource.

13. The computer program product of claim 11 , wherein the program code includes further instructions to receive a change notification for the client application resource from the client, wherein fetching the copy of the client application resource from the client is in response to receiving the change notification for the client application resource from the client.

14. The computer program product of claim 11 , wherein the utilization of the server resource comprises a use of at least one of a central processing unit and a memory associated with the server.

15. The computer program product of claim 11 , wherein determining whether the utilization of the server resource exceeds the server resource utilization threshold is based on at least one of a job that is executing on the server and a job that is pending execution on the server.

Assignments (11)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
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 AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2020
From: CHOPRA, SHELESH; SINGH, PAWAN; RADHA, JAYASHREE; UGUR-OZEKINCI, YASEMIN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052164/0466 →