IoT Platform Performance Prediction Using Queuing Network Models
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current IoT platforms lack effective performance prediction methods to handle dynamic and growing data sets from smart devices, leading to uncertainties in performance, reliability, and scalability, especially when dealing with large volumes of user requests and sensor observations.
Innovation Solution
A method and system for predicting IoT application performance by obtaining user requests and sensor observations, identifying API flows, measuring resource utilization, and using queuing network models to compute service demands and predict performance under varying workload conditions, incorporating performance testing and log analysis to derive inter-arrival distributions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional performance modeling techniques are applied to IoT applications, then the model can handle fixed size data sets, but it cannot address larger volume of dynamic data sets from smart devices
Solution Approach 1:
The patent applies dynamics by transitioning from static performance modeling to dynamic performance modeling that adapts to changing workload characteristics. The system continuously monitors resource utilization and adjusts performance models in real-time to accommodate dynamic data sets from smart devices, making the model flexible rather than fixed.
Solution Approach 2:
The patent changes key parameters including workload characteristics, resource utilization metrics, and performance thresholds. By dynamically adjusting these parameters based on actual system state, the model can adapt to varying data volumes while maintaining prediction accuracy through continuous parameter optimization.
2Adaptability or versatility
If multiple software components and technologies are integrated in IoT device gateway tier, then functionality is enhanced, but complexity in building performance models increases
Solution Approach 1:
The patent segments the complex IoT system into distinct modular components including device gateway tier, platform tier, and application tier. Each component has its own performance model that can be independently developed and maintained. This segmentation reduces overall model complexity while preserving full functionality across all software components.
Solution Approach 2:
The patent introduces performance modeling intermediaries that act as abstraction layers between multiple software components and the overall performance model. These intermediaries standardize interfaces and communication protocols, making it easier to integrate diverse technologies without proportionally increasing model complexity.
3Measurement precision
If performance testing is conducted with large volume of workload characteristics, then prediction accuracy improves, but testing time and computational resources increase
Solution Approach 1:
The patent performs preliminary performance testing with representative workload characteristics to establish baseline performance models before full-scale deployment. By conducting preliminary tests with carefully selected workload scenarios, the system achieves sufficient prediction accuracy without requiring exhaustive testing of all possible workload volumes, thus reducing overall testing time.
Solution Approach 2:
The patent applies partial action by conducting performance tests with a strategically selected subset of workload characteristics rather than all possible volumes. The testing focuses on critical thresholds and representative scenarios that provide sufficient prediction accuracy for decision-making, avoiding the time cost of exhaustive testing while maintaining adequate precision.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Performance prediction systems and method of an Internet of Things (IoT) platform and applications includes obtaining input(s) comprising one of (i) user requests and (ii) sensor observations from sensor(s); invoking Application Programming Interface (APIs) of the platform based on input(s); identifying open flow (OF) and closed flow (CF) requests of system(s) connected to the platform; identifying workload characteristics of the OF and CF requests to obtain segregated OF and segregated CF requests, and a combination of open and closed flow requests; executing performance tests with the APIs based on the workload characteristics; measuring resource utilization of the system(s) and computing service demands of resource(s) from measured utilization, and user requests processed by the platform per unit time; executing the performance tests with the invoked APIs based on volume of workload characteristics pertaining to the application(s); and predicting, using queuing network, performance of the application(s) for the volume of workload characteristics.