IP Library › Granted Patent US 12,001,835
Granted Patent B2
US 12,001,835 · App. 17/551,136 · Granted Jun 4, 2024

In-service software upgrade with active service monitoring

Inventors: Francisco José Rojas Fonseca (Alajuela, CR); Jorge Arturo Sauma Vargas (San Jose, CR); Eduardo Francisco Ramirez Acosta (Heredia, CR); Pablo Cesar Barrantes Chaves (Heredia, CR)
Assignee: Hewlett Packard Enterprise Development LP
G06F8/656
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 12,001,835
App. No.
17/551,136
Granted
Jun 4, 2024
Kind
B2
Abstract

A system for performing in-service software upgrade on a network device is provided. In response to a software-upgrade command, the system generates an upgrade database based on a state database storing both a data-plane state and a control-plane state associated with the network device. The network device is managed by a management unit comprising a data-plane-management sub-unit and a control-plane sub-unit, and the upgrade database stores at least the data-plane state to allow the data-plane-management sub-unit to operate based on the upgrade database. The system separately upgrades the data-plane-management sub-unit and the control-plane sub-unit, without interrupting services provided by the network device. The system monitors the state database and the upgrade database to detect an event associated with the network device. In response to determining a triggering condition being met, the system performs an action to prevent a network outage or error.

Claims (82)

1. A computer-executed method for performing an in-service software upgrade on a network device, the method comprising:

in response to a software-upgrade command, generating an upgrade database based on a state database storing both a data-plane state and a control-plane state associated with the network device, wherein the network device is managed by a management unit comprising a data-plane-management sub-unit for configuring hardware devices according to the data-plane state and a control-plane sub-unit for monitoring the control-plane state, and wherein the upgrade database stores at least a copy of the data-plane state prior to the upgrade;

upgrading the management unit by separately upgrading the data-plane-management sub-unit and the control-plane sub-unit, without interrupting services provided by the network device, wherein upgrading the data-plane-management sub-unit comprises:

terminating the data-plane-management sub-unit to allow the hardware devices to operate in an autonomous mode;

restarting a newer version of the data-plane-management sub-unit; and

reattaching the newer version of the data-plane-management sub-unit to the hardware devices based on the copy of the data-plane state prior to the upgrade stored in the upgrade database;

monitoring the control-plane state in the state database and the data-plane state in the upgrade database to detect an event associated with the network device during the upgrading of the management unit; and

in response to determining, based on the detected event and a set of pre-defined criteria, that a triggering condition is met, performing an action to prevent a network outage or error.

2. The method of claim 1 , wherein generating the upgrade database comprises creating a clone of the state database or copying the data-plane state into the upgrade database.

3. The method of claim 1 , wherein the management unit executes on a first processor, and wherein restarting the newer version of the data-plane-management sub-unit comprises executing the newer version of the data-plane-management sub-unit on a second standby processor.

4. The method of claim 3 , wherein upgrading the control-plane sub-unit comprises:

terminating the control-plane sub-unit; and

restarting a newer version of the control-plane sub-unit on the second standby processor.

5. The method of claim 1 , wherein the set of predefined criteria comprises one or more of:

the detected event is associated with a critical service;

the detected event is associated with a critical port;

the detected event is associated with a critical interface;

the detected event is associated with a critical overlay;

the detected event is a pre-determined AAA (Authentication, Authorization, and Accounting) event;

the detected event is associated with a predetermined network protocol; and

the detected event is an internal failure of the management unit.

6. The method of claim 1 , wherein the triggering condition comprises one or more of:

the detected event may cause the in-service software upgrade to fail;

the detected event may cause instability in the network;

the detected event may cause an outage or error in the network; and

the detected event may interrupt a critical service.

7. The method of claim 1 , wherein the action comprises one or more of:

pausing the upgrading of the management unit;

rolling back the upgrading of the management unit to a previous state;

aborting the upgrading of the management unit; and

rebooting the network device.

8. The method of claim 1 , wherein upgrading the management unit further comprises converging the data-plane state in the upgrade database and the control-plane state in the state database.

9. A computer system, comprising:

a processor; and

a storage device coupled to the processor and storing instructions that when executed by the processor cause the processor to perform a method for facilitating an in-service software upgrade on a network device, the method comprising:

in response to a software-upgrade command, generating an upgrade database based on a state database storing both a data-plane state and a control-plane state associated with the network device, wherein the network device is managed by a management unit comprising a data-plane-management sub-unit for configuring hardware devices according to the data-plane state and a control-plane sub-unit for monitoring the control-plane state, and wherein the upgrade database stores at least a copy of the data-plane state prior to the upgrade;

upgrading the management unit by separately upgrading the data-plane-management sub-unit and the control-plane sub-unit, without interrupting services provided by the network device, wherein upgrading the data-plane-management sub-unit comprises:

terminating the data-plane-management sub-unit to allow the hardware devices to operate in an autonomous mode;

restarting a newer version of the data-plane-management sub-unit; and

reattaching the newer version of the data-plane-management sub-unit to the hardware devices based on the copy of the data-plane state prior to the upgrade stored in the upgrade database;

monitoring the control-plane state in the state database and the data-plane state in the upgrade database to detect an event associated with the network device during the upgrading of the management unit; and

in response to determining, based on the detected event and a set of pre-defined criteria, that a triggering condition is met, performing an action to prevent a network outage or error.

10. The computer system of claim 9 , wherein generating the upgrade database comprises creating a clone of the state database or copying the data-plane state into the upgrade database.

11. The computer system of claim 9 , wherein the management unit executes on a first processor, and wherein executing restarting the newer version of the data-plane-management sub-unit comprises executing the newer version of the data-plane-management sub-unit on a second standby processor.

12. The computer system of claim 11 , wherein upgrading the control-plane sub-unit comprises:

terminating the control-plane sub-unit; and

restarting a newer version of the control-plane sub-unit on the second standby processor.

13. The computer system of claim 9 , wherein the set of predefined criteria comprises one or more of:

the detected event is associated with a critical service;

the detected event is associated with a critical port;

the detected event is associated with a critical interface;

the detected event is associated with a critical overlay;

the detected event is a pre-determined AAA (Authentication, Authorization, and Accounting) event;

the detected event is associated with a predetermined network protocol; and

the detected event is an internal failure of the management unit.

14. The computer system of claim 9 , wherein the triggering condition comprises one or more of:

the detected event may cause the in-service software upgrade to fail;

the detected event may cause instability in the network;

the detected event may cause an outage or error in the network; and

the detected event may interrupt a critical service.

15. The computer system of claim 9 , wherein the action comprises one or more of:

pausing the upgrading of the management unit;

rolling back the upgrading of the management unit to a previous state;

aborting the upgrading of the management unit; and

rebooting the network device.

16. The computer system of claim 9 , wherein upgrading the management unit further comprises converging the data-plane state in the upgrade database and the control-plane state in the state database.

17. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for facilitating an in-service software upgrade on a network device, the method comprising:

in response to a software-upgrade command, generating an upgrade database based on a state database storing both a data-plane state and a control-plane state associated with the network device, wherein the network device is managed by a management unit comprising a data-plane-management sub-unit for configuring hardware devices according to the data-plane state and a control-plane sub-unit for monitoring the control-plane state, and wherein the upgrade database stores at least a copy of the data-plane state prior to the upgrade;

upgrading the management unit by separately upgrading the data-plane-management sub-unit and the control-plane sub-unit, without interrupting services provided by the network device, wherein upgrading the data-plane-management sub-unit comprises:

terminating the data-plane-management sub-unit to allow the hardware devices to operate in an autonomous mode;

restarting a newer version of the data-plane-management sub-unit; and

reattaching the newer version of the data-plane-management sub-unit to the hardware devices based on the copy of the data-plane state prior to the upgrade stored in the upgrade database;

monitoring the control-plane state in the state database and the data-plane state in the upgrade database to detect an event associated with the network device during the upgrading of the management unit; and

in response to determining, based on the detected event and a set of pre-defined criteria, that a triggering condition is met, performing an action to prevent a network outage or error.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the set of predefined criteria comprises:

the detected event is associated with a critical service;

the detected event is associated with a critical port;

the detected event is associated with a critical interface;

the detected event is associated with a critical overlay;

the detected event is a pre-determined AAA (Authentication, Authorization, and Accounting) event;

the detected event is associated with a predetermined network protocol; and

the detected event is an internal failure of the management unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: ROJAS FONSECA, FRANCISCO JOSÉ; SAUMA VARGAS, JORGE ARTURO; RAMIREZ ACOSTA, EDUARDO FRANCISCO; BARRANTES CHAVES, PABLO CESAR
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 058511/0595 →
Continuity (1)
Related Publication 20230185567A1 · Jun 15, 2023
Cited By (2)
US 12,223,051 US 12,289,311