Manual Network Configuration Discovery Through Constraint Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improveaccuracy of configuration identificationVSAvoidtime investment for specifying changes
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If manual specification of configuration changes is required, then configuration accuracy can be maintained, but administrator availability and recall become critical constraints

Engineering Contradiction:
Improveaccuracy of change identificationVSAvoidoperational complexity
Core Design Contradiction:
ReliabilityVSEase of operation

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

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

Engineering Contradiction:
Improveconfiguration provisioning speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
Improvecompleteness of change identificationVSAvoidanalysis processing time
Core Design Contradiction:
Loss of informationVSLoss of time

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP3973669B1Automated discovery of manual configuration changes
Publication Date: 2025.07.09 CISCO TECHNOLOGY INC
  • EP3973669B1 patent drawingFigure 1
  • EP3973669B1 patent drawingFigure 2
  • EP3973669B1 patent drawingFigure 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.