IP Library Granted Patent US 11,531,534
Granted Patent B1
US 11,531,534 · App. 17/354,243 · Granted Dec 20, 2022

Express update deployment system

Inventors: Shailesh Jain (Bangalore, IN); Tanmay Ranawat (Udaipur, IN); Kushagra Misra (Bengaluru, IN)
Assignee: Dell Products L.P.
G06F8/65
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,531,534
App. No.
17/354,243
Granted
Dec 20, 2022
Kind
B1
Abstract

An express update deployment system can enable a larger number of computing devices to be updated during a time window. When an update is to be deployed to computing devices, a management server can select a set of the computing devices to function as proxy file repositories. The management server can select the set of computing devices based on hardware details of the computing devices that are to be updated. The management server can prioritize the deployment of the update to the selected set of computing devices. Once the update has been deployed on the selected set of computing devices, the computing devices can commence functioning as proxy file repositories. The management server can then instruct other computing devices to obtain parts of the update from the computing devices that are functioning as proxy file repositories. The management server can also instruct other computing devices to concurrently obtain the update from the file repository.

Claims (37)

1. A method for deploying an update to computing devices, the method comprising:

identifying a first set of the computing devices based on hardware details of the computing devices by calculating hardware weights for the computing devices based on the hardware details of the computing devices;

instructing the first set of the computing devices to obtain the update from a file repository; and

in response to the first set of the computing devices obtaining the update from the file repository, instructing a second set of the computing devices to obtain the update from the first set of the computing devices.

2. The method of claim 1 , wherein the hardware details include one or both of CPU details and RAM details.

3. The method of claim 1 , wherein identifying the first set of the computing devices based on hardware details of the computing devices comprises determining that the hardware weights of the first set of the computing devices exceeds the hardware weights of the computing devices that are not in the first set.

4. The method of claim 2 , wherein the CPU details include one or more of a frequency, a number of cores or a utilization percentage.

5. The method of claim 2 , wherein the RAM details include one or more of a RAM type weight value, a size or an amount used.

6. The method of claim 1 , wherein instructing the second set of the computing devices to obtain the update from the first set of the computing devices comprises providing file part mappings to the second set of the computing devices.

7. The method of claim 6 , wherein the file part mappings identify from which of the first set of computing devices each of multiple parts of the update should be obtained.

8. The method of claim 6 , wherein the file part mappings identify an offset for each of multiple parts of the update.

9. The method of claim 6 , wherein the file part mappings identify a secure token for each of multiple parts of the update.

10. The method of claim 6 , further comprising:

providing the file part mappings to the first set of the computing devices.

11. The method of claim 1 , further comprising:

in response to the first set of the computing devices obtaining the update from the file repository, instructing a third set of the computing devices to obtain the update from the file repository.

12. The method of claim 1 , further comprising:

in response to the second set of the computing devices obtaining the update from the first set of the computing devices, instructing a third set of the computing devices to obtain the update from the second set of the computing devices.

13. The method of claim 1 , further comprising:

in response to the second set of the computing devices obtaining the update from the first set of the computing devices, instructing a third set of the computing devices to obtain the update from the first set and the second set of the computing devices.

14. A method for deploying an update to computing devices, the method comprising:

identifying a first set of computing devices based on hardware details of the computing devices by calculating hardware weights for the computing devices based on the hardware details of the computing devices;

instructing the first set of the computing devices to obtain the update from a file repository;

obtaining, by the first set of the computing devices, the update from the file repository;

receiving, by the first set of the computing devices, requests to function as proxy file repositories, the requests including file part mappings;

receiving, by the first set of the computing devices and from a second set of the computing devices, requests for parts of the update;

using, by the first set of the computing devices, the file part mappings to verify the requests for the parts of the update; and

upon verifying the requests for the parts of the update, sending, by the first set of the computing devices, the parts of the update to the second set of the computing devices.

15. The method of claim 14 , wherein the file part mappings identify from which of the first set of computing devices each of the second set of the computing devices should obtain the parts of the update.

16. The method of claim 14 , wherein using the file part mappings to verify the requests for the parts of the update comprises using secure tokens defined in the file part mappings to verify secure tokens included in the requests for the parts of the update.

17. One or more computer storage media storing computer executable instructions which when executed implement a method for deploying an update to computing devices, the method comprising:

identifying, by a management server, a first set of the computing devices based on hardware details of the computing devices by determining that a hardware weight of the first set of the computing devices is greater than a hardware weight of the computing devices that are not in the first set;

instructing, by a management server, the first set of the computing devices to obtain the update from a file repository;

in response to the first set of the computing devices obtaining the update from the file repository, instructing, by a management server, a second set of the computing devices to obtain parts of the update from the first set of the computing devices; and

instructing, by a management server, a third set of the computing devices to obtain the update from the file repository while the second set of the computing devices obtain the parts of the update from the first set of the computing devices.

18. The computer storage media of claim 17 , wherein the method further comprises:

in response to the second set of the computing devices obtaining the parts of the update from the first set of the computing devices, instructing a third set of the computing devices to obtain the parts of the update from the first set and the second set of the computing devices.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 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 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 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 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 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 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2021
From: JAIN, SHAILESH; RANAWAT, TANMAY; MISRA, KUSHAGRA
To: DELL PRODUCTS L.P.
Reel/Frame 056620/0106 →