Network Assurance Service Detecting Bug Patterns Across Software Versions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network assurance systems face challenges in detecting and addressing bug patterns across evolving network software versions, as the complex interactions within the software stack make it difficult to identify and fix software malfunctions that cause device failures, especially since traditional testing methods cannot simulate all feature interactions.
Innovation Solution
A network assurance service that utilizes a machine learning-based pattern analyzer to identify patterns associated with device failures, groups devices by software version, determines the probability of these patterns occurring, and provides data on identified patterns and software versions for display, thereby aiding developers in tracking bug evolution and fixing issues.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional testing methods are used to detect software bugs, then testing coverage is limited, but the time and resources required for comprehensive testing increase significantly
Solution Approach 1:
The patent creates virtual copies of software execution environments through containerization technology. Multiple isolated testing environments can be instantiated simultaneously, each running the same or different software versions. This allows comprehensive bug detection across multiple scenarios without proportionally increasing actual hardware resources or testing time, as the virtual environments can be created and destroyed rapidly.
Solution Approach 2:
The patent segments the software testing process into independent, containerized units. Each container represents a discrete testing environment that can be independently managed, executed, and analyzed. This segmentation enables parallel testing of multiple software configurations simultaneously, significantly reducing total testing time while maintaining comprehensive coverage through systematic exploration of different software versions and configurations.
2Measurement precision
If network assurance systems monitor all network parameters, then detection accuracy improves, but system complexity and data processing requirements increase
Solution Approach 1:
The patent introduces containerization as an intermediary layer between the software under test and the network assurance monitoring system. This intermediary standardizes the execution environment and isolates software dependencies, allowing the monitoring system to focus on observing standardized interfaces and behaviors rather than dealing with the complexity of diverse software configurations. The container acts as a mediator that simplifies the monitoring task while maintaining comprehensive observation capabilities.
Solution Approach 2:
The patent dynamically adjusts monitoring parameters based on the specific software version and configuration being tested. Rather than continuously monitoring all possible parameters at maximum detail for all software, the system adapts the monitoring scope and granularity to match the specific testing context. This parameter adaptation reduces unnecessary data collection and processing complexity while maintaining detection accuracy for relevant failure modes.
Data Source
AI summary
In one embodiment, a network assurance service that monitors a network receives telemetry data regarding monitored characteristics of the network. The service identifies, using a machine learning-based pattern analyzer, a pattern of the monitored characteristics that are associated with failures experienced by one or more networking devices in the network. The service groups networking devices by software version. The service determines probabilities of the pattern being observed concurrently with failures of the grouped network networking devices. A particular probability is associated with a particular group of the networking devices executing a particular software version. The service provides, based on the determined probabilities, data regarding the identified pattern and software versions for display.


