CPC G06F 8/656 (2018.02) | 18 Claims |
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.
|