CPC G06F 8/65 (2013.01) [G06F 16/9024 (2019.01); H04L 41/082 (2013.01); H04L 41/0856 (2013.01); H04L 41/0894 (2022.05); H04L 41/12 (2013.01); H04L 41/20 (2013.01); H04L 67/34 (2013.01)] | 20 Claims |
1. A system that manages a plurality of network devices of a network, the system comprising one or more processing units implemented in circuitry and configured to:
receive an upgrade request and at least one policy specifying an objective that is a minimum objective or a maximum objective for the network;
obtain a redundancy model indicative of redundancy information for the network, wherein the redundancy model comprises one of: (1) a network device model that includes device redundancy information indicating a device redundancy for a first network device and a second network device of the network devices, or (2) a service model that includes service redundancy information indicating a service redundancy for a service, wherein to obtain the redundancy model, the one or more processing units are configured to obtain a unified intent model that comprises the network device model and the service model and wherein the unified intent model comprises a graph database configured to graphically represent at least one of the device redundancy information or the service redundancy information, the graph database including a plurality of nodes representing one or more network resources and edges between the nodes representing the at least one of the device redundancy information or the service redundancy information;
determine, based on the upgrade request and the model, an update graph having update graph nodes each representing one of the network devices or the service, the update graph also having at least one edge that connects two of the update graph nodes and that indicates the device redundancy or the service redundancy;
determine, based on the update graph including the at least one edge and the at least one policy, an update schedule for performing an update of software for the network devices that ensures availability for the first network device or second network device or availability for the service; and
update the software of each of the network devices according to the update schedule.
|