Configuration Manager Consistency in Multi-Core Packet Engines
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-core appliances, configuration commands may execute differently across cores due to inconsistent configurations, leading to complications in maintaining a consistent configuration across multiple cores.
Innovation Solution
A configuration manager is implemented to handle communication of configuration commands, propagating commands one at a time and sending undo commands if necessary to restore consistency across packet engines, and preventing further command propagation if undo commands fail.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If configuration commands are propagated to multiple packet engines simultaneously, then system productivity is improved, but configuration consistency deteriorates
Solution Approach 1:
The configuration propagation process is segmented into individual command executions sent to each packet engine sequentially rather than simultaneously. The configuration manager divides the configuration update into discrete commands and propagates them one at a time to each packet engine, ensuring that each engine processes commands in the same sequence and maintains consistent configuration state across all engines.
Solution Approach 2:
The system performs preliminary verification by checking whether each configuration command executes successfully on one packet engine before propagating it to other packet engines. This preliminary action allows the system to detect configuration errors early and prevent inconsistent configuration states from being propagated across multiple engines.
2Stability of the object's composition
If configuration commands are propagated sequentially to maintain consistency, then configuration consistency is improved, but system productivity deteriorates
Solution Approach 1:
The configuration manager implements feedback mechanisms where each packet engine reports the execution status of configuration commands back to the configuration manager. Based on this feedback, the configuration manager determines whether to propagate the same command to other packet engines or to send undo commands to restore previous consistent states. This feedback-driven approach maintains consistency while optimizing the propagation process.
Solution Approach 2:
The system changes the propagation parameter from simultaneous to sequential based on the execution status feedback. When a command executes successfully on one engine, the propagation parameter allows continuation to other engines. When execution fails, the parameter changes to trigger undo command propagation or stop further propagation, dynamically adjusting the process to maintain consistency.
3Stability of the object's composition
If undo commands are sent to restore consistency, then configuration consistency is improved, but system complexity increases
Solution Approach 1:
The configuration manager acts as an intermediary between packet engines, managing the propagation of both configuration commands and undo commands. It maintains a record of propagated commands and their execution status, using this information to determine when and which undo commands to send. This intermediary role centralizes the complexity of consistency management in one component rather than distributing it across all packet engines.
Data Source
AI summary
The present application is directed towards systems and methods for monitoring and maintaining consistency of a configuration across a plurality of cores or packet engines in a multi-core system. A configuration manager handles communication of configuration commands to a plurality of cores or packet engines. If a command executes successfully on a first packet engine but fails on a second packet engine, the configuration manager may communicate an undo command to the first packet engine. Successful execution of the undo command may restore the packet engines to a consistent configuration.


