ML-Based Network Deployment Recommendation for Multi-Cloud Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud-based software deployments face complexity due to numerous network paths and cloud native microservices, making it difficult for developers to predict integration and network call footprints accurately, especially in multi-cloud environments, where production behavior cannot be fully simulated and exhaustive testing is costly.
Innovation Solution
A network deployment recommendation platform using machine learning to analyze application code, identify dependencies, and predict execution times across multiple paths, leveraging a network graph model to recommend optimal deployment configurations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If cloud-based software deployments use multiple network paths and microservices for increased functionality and reliability, then the system's adaptability and reliability improve, but the device complexity and difficulty of detecting and measuring performance worsen
Solution Approach 1:
The patent introduces a machine learning model as an intermediary between the complex multi-cloud network deployment configuration and the developer. This model automatically analyzes code, identifies dependencies, predicts execution times across multiple network paths, and recommends optimal deployment configurations, thereby mediating the complexity without reducing the underlying system capabilities
Solution Approach 2:
The system performs preliminary analysis of application code to identify dependencies and predict execution times before actual deployment. By pre-calculating performance metrics and network path characteristics, the system prepares deployment recommendations in advance, reducing the complexity of real-time deployment decisions
2Adaptability or versatility
If cloud-based software deployments use multiple network paths and microservices for increased functionality, then the system's adaptability improves, but the difficulty of detecting and measuring network call footprint worsens
Solution Approach 1:
The patent replaces manual or traditional mechanical approaches to tracking network calls with machine learning-based prediction. Instead of instrumenting and measuring every network call in production, the system uses static code analysis and ML models to predict execution times and network path characteristics, substituting direct measurement with intelligent estimation
3Measurement precision
If exhaustive testing is performed to accurately predict integration behavior in multi-cloud environments, then the measurement precision improves, but the loss of time and productivity worsen
Solution Approach 1:
The system performs code analysis and dependency identification in advance, before deployment. By pre-processing the code and using machine learning models to predict execution times based on historical data and code characteristics, the system achieves accurate predictions without requiring exhaustive runtime testing, thus maintaining productivity
Solution Approach 2:
The system creates a predictive model that copies the essential behavior characteristics of the application based on code analysis, rather than requiring actual execution in all possible deployment scenarios. This virtual copy allows accurate prediction of integration behavior without physical testing
Data Source
AI summary
A method comprises receiving a request to predict a deployment configuration for at least one application, analyzing code of the at least one application to identify one or more additional applications on which the at least one application will depend, identifying a plurality of network paths between the at least one application and the one or more additional applications, and using one or more machine learning algorithms to predict execution times for the at least one application over the plurality of network paths. The predicted execution times for the at least one application over the plurality of network paths are inputted to a network graph model. The network graph model predicts the deployment configuration for the at least one application based at least in part on the predicted execution times, wherein the deployment configuration comprises a subset of the plurality of network paths.


