Manual Network Configuration Discovery Through Constraint Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network configuration systems require manual specification of previous changes, which is time-consuming, error-prone, and difficult to manage as administrators may not recall or be available to provide input, especially in software-defined networking (SDN).
Innovation Solution
A system that analyzes configuration trees using constraint solving to identify manually configured intents by recursively matching against templates, segregating valid and invalid changes, and integrating valid changes into automated provisioning systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual specification of previous configuration changes is used, then the automated system can understand and ingest configurations, but the process becomes time-consuming, error-prone, and difficult to manage
Solution Approach 1:
The system performs self-analysis by automatically comparing current configuration snapshots with historical data to identify manual changes. The configuration analysis application autonomously evaluates configuration trees, generates candidates, and determines which changes were manually made without human intervention, allowing the system to understand its own configuration state.
Solution Approach 2:
The system takes preliminary action by continuously capturing and storing configuration snapshots before changes occur. These pre-captured configuration states are then used as the basis for automatic comparison and change identification, eliminating the need for manual specification of changes at the time of analysis.
2Reliability
If manual specification of configuration changes is required, then configuration accuracy can be maintained, but administrator availability and recall become critical constraints
Solution Approach 1:
The configuration analysis application autonomously performs the entire change identification process without requiring administrator involvement. It automatically retrieves configuration snapshots, analyzes configuration trees, generates candidate changes, evaluates them against constraints, and produces the final list of manual changes entirely on its own.
Solution Approach 2:
The system replaces the manual mechanical process of administrator review and specification with an automated computational process. The configuration analysis application uses algorithmic analysis of configuration data structures to identify changes, substituting human cognitive processes with machine-based automated evaluation.
3Productivity
If automated systems are deployed to replace manual provisioning, then operational efficiency improves, but the ability to identify and understand existing manual configurations becomes critical
Solution Approach 1:
The configuration analysis application divides the complex task of change identification into distinct modular components: retrieving configuration snapshots, analyzing configuration trees, generating candidate changes, evaluating constraints, and producing results. Each module handles a specific aspect of the analysis independently, making the overall complex process manageable and maintainable.
Solution Approach 2:
The configuration analysis application serves as an intermediary layer between the automated provisioning system and the existing manual configurations. It translates raw configuration data into meaningful change identification results that the provisioning system can utilize, bridging the gap between automated operations and legacy manual configurations.
4Loss of information
If comprehensive analysis of all configuration changes is performed, then complete understanding is achieved, but processing time and computational resources increase significantly
Solution Approach 1:
The system performs partial analysis by focusing only on identifying manual configuration changes rather than analyzing every aspect of configuration state. It generates candidate changes and evaluates them against constraints to determine manual vs. automated origin, performing sufficient analysis to achieve the specific goal without exhaustive examination of all configuration parameters.
Solution Approach 2:
The analysis process is segmented into focused stages: retrieving only relevant configuration snapshots, analyzing only configuration trees for changes, generating only candidate manual changes, and evaluating only those candidates against constraints. This segmentation allows complete identification of manual changes without the overhead of comprehensive analysis of all configuration aspects.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Techniques for automated analysis and classification of network configurations are provided. Resource provisioning code used to provision resources in a network is received, and a set of constraints is generated based on the resource provisioning code, where the set of constraints define valid network configurations. A configuration tree for the network is received, and a set of candidates is generated for the network based at least in part on the configuration tree. Upon determining that a first candidate of the set of candidates does not fail any constraint in the set of constraints, the first candidate is recorded as a manual intent. The manual intent is integrated into an automated configuration system for the network.