Distributed Monitoring Controller for Cloud Network Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network monitoring systems face challenges in efficiently monitoring network performance in cloud environments with virtualized compute and network resources, particularly due to dynamic application instances and the need for centralized monitoring, which leads to overhead and resource bottlenecks.
Innovation Solution
A distributed monitoring controller that observes application traffic between application instances to detect changes and initiate local monitoring instances for exchanging test packets, eliminating the need for centralized monitoring and enabling zero-touch, dynamic configuration of active monitoring functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a centralized monitoring controller is used to manage network performance monitoring, then monitoring coordination and control is simplified, but system complexity and resource overhead increase significantly
Solution Approach 1:
The patent divides the centralized monitoring controller into distributed monitoring controllers deployed at individual network nodes. Each local monitoring controller independently manages monitoring functions for its associated applications, eliminating the need for a single centralized controller while maintaining coordinated monitoring across the network through peer-to-peer communication.
Solution Approach 2:
The monitoring system enables self-configuration and self-management where monitoring controllers automatically discover applications, establish monitoring sessions, and coordinate measurements without requiring centralized control. The system autonomously handles monitoring tasks based on local conditions and network requirements.
2Measurement precision
If frequent queries are sent to service orchestrator for monitoring setup, then monitoring information is kept up-to-date, but overhead on service orchestrator increases
Solution Approach 1:
The monitoring controller proactively discovers applications and establishes monitoring sessions before performance degradation occurs. By continuously monitoring application lifecycle events and initiating monitoring sessions in advance, the system maintains accurate monitoring information without requiring frequent queries to the service orchestrator during dynamic scaling operations.
Solution Approach 2:
The system implements feedback mechanisms where monitoring controllers receive notifications from the service orchestrator about application lifecycle changes and automatically adjust monitoring sessions accordingly. This feedback-driven approach keeps monitoring information accurate while minimizing the frequency and overhead of queries to the orchestrator.
3Reliability
If monitoring functions are instantiated dynamically for each application pair, then network performance monitoring coverage is improved, but resource consumption increases
Solution Approach 1:
The patent implements dynamic instantiation and termination of monitoring functions based on actual application communication needs. Monitoring controllers continuously monitor application traffic patterns and only instantiate active monitoring sessions when applications are communicating, automatically terminating sessions when communication stops. This dynamic approach maintains comprehensive monitoring coverage while significantly reducing resource consumption during idle periods.
Solution Approach 2:
The system changes monitoring parameters and session states based on detected communication patterns. When applications transition between communicating and idle states, the monitoring system adjusts its behavior accordingly - actively monitoring during communication and entering low-resource states during idle periods, thereby optimizing the balance between monitoring coverage and resource consumption.
Data Source
AI summary
A monitoring controller and a method for monitoring network performance are provided. The comprises determining, by a monitoring controller of a first host, a change in a communication between a first and a second application instance by observing application traffic exchanged between the first and second application instance, the first application instance being executed on the first host and the second application instance being executed on a second host. The method further comprises initiating, by the monitoring controller, a monitoring instance in the first host for exchanging test packets between the first host and the second host for monitoring network performance.


