Network Controller Graceful Reboot via State Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
When a network controller reboots, it loses its non-persistent database, causing network disruptions as network elements synchronize with the empty database, leading to loss of state information and incorrect routing decisions.
Innovation Solution
The network controller signals network elements to send state information upon reboot, rebuilding the database before allowing synchronization, and sends updates only after the database converges or concurrently during the rebuilding process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the network controller reboots and loses its non-persistent database, then the network controller can restart its services, but network disruptions occur as network elements synchronize with the empty database, causing loss of state information
Solution Approach 1:
The network controller sends a notification to network elements before the database is lost during reboot, indicating that synchronization should be deferred. This preliminary action prevents network elements from synchronizing with the empty database, thereby avoiding state information loss while allowing the controller to restart its services
Solution Approach 2:
The system implements a feedback mechanism where the network controller monitors its own reboot state and communicates this status to network elements. The controller provides feedback about when synchronization should be postponed, enabling network elements to adjust their synchronization behavior accordingly and maintain network stability during controller reboots
2Productivity
If network elements synchronize with the empty network controller database after reboot, then synchronization is maintained, but network disruptions occur due to loss of state information
Solution Approach 1:
The network controller applies preliminary anti-action by notifying network elements to postpone synchronization before the database becomes empty. This counter-action prevents the harmful synchronization event from occurring, blocking the path that would lead to network disruptions while allowing rapid synchronization to resume once the database is restored
3Manufacturing precision
If the network controller waits to rebuild the database before sending updates, then data accuracy is ensured, but network element updates are delayed
Solution Approach 1:
The network controller performs preliminary actions by rebuilding the database in parallel with notification management before committing updates to network elements. This allows the controller to prepare accurate data in advance, ensuring database accuracy while minimizing the time network elements wait for updates
Data Source
AI summary
A method and apparatus to bring up a network controller in a network of multiple network elements is described. In an exemplary embodiment, the network controller receives an indication that the network controller is booting up. The network controller is coupled to a plurality of network elements in a network, where the network controller maintains a controller database that supports a network-wide service used by the plurality of network elements. The network controller further receives state information from the plurality of network elements. In addition, the network controller builds the controller database from the state information. Furthermore, the network controller sends updates from the controller database to each of the plurality of network elements, where each of the plurality of network elements incorporates these updates into a respective network element database and the network element database is used to perform the network-wide service.


