IP Library Granted Patent US 9,158,525
Granted Patent B1
US 9,158,525 · App. 12/897,573 · Granted Oct 13, 2015

Image upgrade

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 9,158,525
App. No.
12/897,573
Granted
Oct 13, 2015
Kind
B1
Abstract

A system for image upgrade, according to one embodiment of the present invention comprises an upgrade director and a target device comprising a manager module. The upgrade director sends a first command to the manager module initiating an upgrade event. The manager module receives the first command. The manager module calculates a delay parameter. The manager module downloads an upgrade image after the delay parameter has ended. The upgrade director sends a second command to the manager module indicating that the upgrade event is to conclude. The manager module receives the second command from the upgrade director. The manager module reboots using the upgrade image responsive to the second command.

Claims (75)

1. A method for upgrading an image of a target device, the method comprising:

receiving a first command initiating an upgrade event for the target device, the target device including a unique identifier;

determining a delay parameter using the unique identifier responsive to receiving the first command, the delay parameter calculated by multiplying a value of a Window ID by a time available for download;

generating a download window for the target device based on the delay parameter;

downloading an upgrade image from an image server to the target device based on the download window associated with the target device; and

receiving a second command concluding the upgrade event and, responsive to the second command, rebooting the target device using the upgrade image.

2. The method of claim 1 , wherein the delay parameter is determined using one of a random number generator or a unique identifier equation.

3. The method of claim 1 , wherein the image server is an upgradeable telephony device.

4. The method of claim 1 , wherein at least one of the first command and the second command is sent responsive to a user input.

5. The method of claim 1 , wherein the target device is an upgradeable telephony device.

6. The method of claim 1 further comprising sending a progress update a period of time after downloading the image upgrade has commenced.

7. The method of claim 1 , wherein the target device has dual storage capability and the upgrade image is stored in an upgrade storage while an active image is stored in an active storage.

8. The method of claim 7 , wherein the active image is the image used by the target device prior to the upgrade event and the target device continues to operate using the active image until the target device is rebooted using the upgrade image.

9. The method of claim 8 further comprising:

receiving a third command after rebooting the target device using the upgrade image, the third command indicating that a rollback event is to occur; and

rebooting the target device using the active image responsive to the third command.

10. The method of claim 1 wherein the delay parameter specifies a time after the first command to begin downloading the upgrade image to the target device, wherein downloading the upgrade image to the target device is responsive to the delay parameter.

11. The method of claim 1 wherein the download window restricts an overlapping upgrade between the target device and another target device.

12. The method of claim 1 wherein the image server hierarchy is a tree-based hierarchy.

13. The method of claim 1 , further comprising:

determining a proximity between the target device and the image server within an image server hierarchy and downloading the upgrade image further includes downloading the upgrade image from the image server in closest proximity within the image server hierarchy to the target device.

14. The method of claim 13 , wherein determining the proximity includes counting the number of steps between the image server and the target device and the image server in closest proximity within the image server hierarchy to the target device is the image server that is the fewest steps away from the target device.

15. A computer program product comprising a non-transitory computer readable medium storing a computer readable program, wherein the computer readable program when executed on a computer causes the computer to perform steps comprising:

receiving a first command initiating an upgrade event for a target device, the target device including a unique identifier;

determining a delay parameter using the unique identifier associated with the target device, the delay parameter calculated by multiplying a value of a Window ID by a time available for download;

generating a download window for the target device based on the delay parameter;

downloading an upgrade image from an image server to the target device based on the download window associated with the target device; and

receiving a second command concluding the upgrade event and, responsive to the second command, rebooting the target device using the upgrade image.

16. The computer program product of claim 15 , wherein the delay parameter is determined using one of a random number generator or a unique identifier equation.

17. The computer program product of claim 15 , wherein at least one of the first command and the second command is sent responsive to a user input.

18. The computer program product of claim 15 , wherein the target device is an upgradeable telephony device.

19. The computer program product of claim 13 , wherein the executed computer readable program causes the computer to perform further steps comprising:

sending a progress update a period of time after downloading the image upgrade has commenced.

20. The computer program product of claim 15 , wherein the target device has dual storage capability and the upgrade image is stored in an upgrade storage while an active image is stored in an active storage.

21. The computer program product of claim 20 , wherein the active image is the image used by the target device prior to the upgrade event and the target device continues to operate using the active image until the target device is rebooted using the upgrade image.

22. The computer program product of claim 15 , wherein the executed computer readable program causes the computer to perform further steps comprising:

rebooting the target device using the active image responsive to receiving a third command indicating that a rollback event is to occur.

23. The computer program product of claim 15 wherein the delay parameter specifies a time after the first command to begin downloading the upgrade image to the target device, wherein downloading the upgrade image to the target device is responsive to the delay parameter.

24. The computer program product of claim 15 further comprising determining a proximity based on counting the number of steps between the image server and the target device and the image server in closest proximity within an image server hierarchy to the target device is the image server that is the fewest steps away from the target device.

25. A system for upgrading an image of a target device, the system comprising:

a processor adapted to execute:

a manager module stored in a memory and communicatively coupled to an upgrade director and an upgrade storage, the manager module adapted to:

receive a first command from the upgrade director initiating an upgrade event for a target device, the target device including a unique identifier and download an upgrade image from an image server based on a download window associated with the target device;

store the upgrade image in the upgrade storage;

receive a second command from the upgrade director concluding the upgrade event and, responsive to the second command, reboot the target device using the upgrade image;

a schedule module, communicatively coupled to the upgrade director, the schedule module adapted to determine a delay parameter using the unique identifier responsive to receive the first command, the delay parameter calculated by multiplying a value of a Window ID by a time available for download, the schedule module further adapted to generate the download window for the target device based on the delay parameter.

26. The system of claim 25 , wherein the schedule module determines the delay parameter using one of a random number generator or a unique identifier equation.

27. The system of claim 25 , wherein the image server that hosts the upgrade image and the manager module downloads the upgrade image from the image server.

28. The system of claim 25 , wherein an image server module is adapted to determine an image server that is closest to the target device and send a message to the manager module indicating that the manager module should download the upgrade image from the determined image server.

29. The system of claim 28 , wherein the determined image server is an upgradeable telephony device.

30. The system of claim 25 , wherein the upgrade director is communicatively coupled to an input device and adapted to receive a user input signal indicating user input received from the input device, and wherein at least one of the first command and the second command is sent by the upgrade director to the manager module responsive to a user input signal received from the input device.

31. The system of claim 25 , wherein the manager module is comprised within a memory of an upgradeable telephony device.

32. The system of claim 25 wherein the upgrade director comprises a progress report module that generates progress reports describing the progress of the upgrade event, and wherein the manager module sends to the upgrade director a progress message including data indicating a progress of downloading of the image upgrade to the target device.

33. The system of claim 31 , wherein the upgrade director comprises a GUI module that is communicatively coupled to receive the progress report, and wherein the GUI module is communicatively coupled to a display device and transmits graphics data that causes the display device to display a graphic depicting the progress report.

34. The system of claim 25 further comprising an active storage, and wherein the upgrade image is stored in an upgrade storage while an active image is stored in an active storage.

35. The system of claim 34 , wherein the active image is the image used by the target device prior to the upgrade event and the target device continues to operate using the active image until the target device is rebooted using the upgrade image.

36. The system of claim 34 wherein the manager module receives, from the upgrade director, a third command indicating that a rollback event is to occur and reboots the target device using the active image responsive to the third command, wherein the third command is received after the manager module reboots the target device using the upgrade image.

37. A system of claim 25 wherein the delay parameter specifies a time after the first command to begin downloading the upgrade image to the target device, and the manager module further adapted to download the upgrade image to the upgrade storage responsive to the delay parameter.

38. A method for upgrading an image of a target device, the method comprising:

receiving a first command initiating a first upgrade event for the target device, the target device including a unique identifier;

determining a delay parameter using the unique identifier responsive to receiving the first command, the delay parameter calculated by multiplying a value of a Window ID by a time available for download;

generating a download window for the target device based on the delay parameter;

downloading a first upgrade image from an image server to a first target device based on the download window associated with the target device;

allowing at least one other target device to download a second upgrade image to the at least one other target device, the at least one other target device sharing a same download window as the first target device;

limiting a number of target devices that share the same download window; and

receiving a second command concluding the first upgrade event and, responsive to the second command, rebooting the first target device using the first upgrade image.

39. The method of claim 38 , wherein the image server is an upgradeable telephony device.

40. The method of claim 38 further comprising determining the image server that is closest to the target device and downloading the upgrade image from the determined image server.

41. The method of claim 38 , wherein at least one of the first command and the second command is sent responsive to a user input.

42. The method of claim 38 further comprising sending a progress update a period of time after downloading the image upgrade has commenced.

43. The method of claim 38 , wherein the target device has dual storage capability and the upgrade image is stored in an upgrade storage while an active image is stored in an active storage.

44. The method of claim 43 , wherein the active image is the image used by the target device prior to the upgrade event and the target device continues to operate using the active image until the target device is rebooted using the upgrade image.

45. The method of claim 44 further comprising:

receiving a third command after rebooting the target device using the upgrade image, the third command indicating that a rollback event is to occur; and

rebooting the target device using the active image responsive to the third command.

Assignments (23)
SECURITY INTEREST Recorded Jun 30, 2025
From: MLN US HOLDCO LLC; MITEL (DELAWARE), INC.; MITEL NETWORKS CORPORATION; MITEL NETWORKS, INC.
To: U.S. PCI SERVICES, LLC
Reel/Frame 071758/0843 →
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2025
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: MITEL (DELAWARE), INC.; MITEL COMMUNICATIONS, INC.; MITEL NETWORKS, INC.; MITEL NETWORKS CORPORATION
Reel/Frame 071712/0821 →
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2025
From: ACQUIOM AGENCY SERVICES LLC
To: MITEL (DELAWARE), INC.; MITEL NETWORKS, INC.; MITEL NETWORKS CORPORATION
Reel/Frame 071730/0632 →
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2025
From: ANKURA TRUST COMPANY, LLC
To: MITEL (DELAWARE), INC.; MITEL COMMUNICATIONS, INC.; MITEL CLOUD SERVICES, INC.; MITEL NETWORKS, INC.; MITEL NETWORKS CORPORATION
Reel/Frame 071722/0721 →
SECURITY INTEREST Recorded Jun 20, 2025
From: MITEL (DELAWARE), INC.; MITEL NETWORKS CORPORATION; MITEL NETWORKS, INC.
To: ACQUIOM AGENCY SERVICES LLC
Reel/Frame 071676/0815 →
SECURITY INTEREST Recorded Mar 12, 2025
From: MITEL (DELAWARE), INC.; MITEL NETWORKS CORPORATION; MITEL NETWORKS, INC.
To: ACQUIOM AGENCY SERVICES LLC
Reel/Frame 070689/0857 →
NOTICE OF SUCCESSION OF AGENCY - 5L Recorded Jan 14, 2025
From: UBS AG, STAMFORD BRANCH, AS LEGAL SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ANKURA TRUST COMPANY, LLC
Reel/Frame 069897/0046 →
NOTICE OF SUCCCESSION OF AGENCY - 3L Recorded Jan 14, 2025
From: UBS AG, STAMFORD BRANCH, AS LEGAL SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 070006/0268 →
NOTICE OF SUCCCESSION OF AGENCY - 2L Recorded Jan 14, 2025
From: UBS AG, STAMFORD BRANCH, AS LEGAL SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 069896/0001 →
NOTICE OF SUCCCESSION OF AGENCY - PL Recorded Jan 14, 2025
From: UBS AG, STAMFORD BRANCH, AS LEGAL SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 069895/0755 →
NOTICE OF SUCCESSION OF AGENCY - 4L Recorded Jan 14, 2025
From: UBS AG, STAMFORD BRANCH, AS LEGAL SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ANKURA TRUST COMPANY, LLC
Reel/Frame 069896/0827 →
SECURITY INTEREST Recorded Nov 1, 2022
From: MITEL (DELAWARE), INC.; MITEL NETWORKS, INC.; MITEL COMMUNICATIONS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 061830/0760 →
SECURITY INTEREST Recorded Nov 1, 2022
From: MITEL (DELAWARE), INC.; MITEL NETWORKS, INC.; MITEL COMMUNICATIONS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 061830/0643 →
SECURITY INTEREST Recorded Nov 1, 2022
From: MITEL (DELAWARE), INC.; MITEL NETWORKS, INC.; MITEL COMMUNICATIONS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 061830/0715 →
SECURITY INTEREST Recorded Dec 13, 2018
From: MITEL NETWORKS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047909/0814 →
SECURITY INTEREST Recorded Dec 13, 2018
From: MITEL NETWORKS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047988/0478 →
RELEASE OF SECURITY INTEREST Recorded Dec 3, 2018
From: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
To: SHORETEL, INC.
Reel/Frame 047713/0843 →
CHANGE OF NAME Recorded Aug 17, 2018
From: SHORETEL, INC.
To: MITEL NETWORKS, INC.
Reel/Frame 046957/0381 →
MERGER AND CHANGE OF NAME Recorded Aug 17, 2018
From: SHORETEL, INC.; MITEL NETWORKS, INC.
To: SHORETEL, INC.
Reel/Frame 046857/0384 →
SECURITY INTEREST Recorded Sep 25, 2017
From: SHORETEL, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 043829/0711 →
RELEASE OF SECURITY INTEREST Recorded Sep 25, 2017
From: SILICON VALLEY BANK
To: SHORETEL, INC.
Reel/Frame 043993/0430 →
SECURITY INTEREST Recorded Oct 23, 2014
From: SHORETEL, INC.
To: SILICON VALLEY BANK
Reel/Frame 034038/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2010
From: NAGANATHAN, VENKATRAMAN; OKITA, GLEN
To: SHORETEL, INC.
Reel/Frame 025089/0094 →