CDN Selection Using Historical Performance Metrics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video delivery systems face challenges in optimally selecting content delivery networks (CDNs) to ensure high quality of service (QoS) for video playback, often resulting in suboptimal performance due to random selection methods that do not consider historical performance data or contractual allocations.
Innovation Solution
A system that selects CDNs based on a performance metric like QoS, optimizing overall performance while adhering to contractual allocations by using historical data to determine optimal allocations and saving intermediate states for faster and more efficient selection processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If random selection method is used to assign content delivery networks to video requests, then the system operation is simple, but the quality of service performance deteriorates
Solution Approach 1:
The system performs preliminary actions by collecting historical performance data from multiple CDNs and calculating optimal allocation proportions before actual video delivery. This pre-computation enables the system to make informed CDN selections based on predicted performance rather than random choice, thereby improving QoS while maintaining operational simplicity through automated preprocessing.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring actual QoS metrics from CDN deliveries and using this information to update future CDN selection decisions. Historical performance data is fed back into the allocation optimization process, allowing the system to adapt to changing CDN performance characteristics and maintain high service quality over time.
2Reliability
If optimal CDN allocation is pursued based on historical performance data, then the quality of service improves, but the computational complexity and processing time increase
Solution Approach 1:
The system performs preliminary computation of optimal allocation proportions using historical performance data before actual video delivery requests arrive. By pre-calculating the best CDN assignments and storing these optimal allocations, the system avoids time-consuming computations during real-time request processing, thus maintaining high QoS while minimizing selection latency.
Solution Approach 2:
The system computes optimal allocations for batches of video requests simultaneously rather than processing each request individually. This batch processing approach performs slightly excessive computation upfront for multiple requests, but significantly reduces the average processing time per request by amortizing the computational overhead across multiple deliveries.
3Adaptability or versatility
If multiple content delivery networks are used with different quality of service levels, then the adaptability of the system improves, but the device complexity increases
Solution Approach 1:
The system implements self-service by automatically collecting performance metrics from multiple CDNs, analyzing historical data, and determining optimal allocation proportions without manual intervention. This automation handles the complexity of managing multiple CDNs with different QoS levels, allowing the system to maintain high adaptability while reducing operational complexity through intelligent self-management.
Solution Approach 2:
The system manages complexity by dynamically adjusting the allocation proportion parameter based on observed CDN performance. Rather than requiring complex manual configuration of multiple CDNs, the system automatically modifies the allocation parameter in response to changing performance conditions, thereby maintaining adaptability while simplifying system management through parameter-based control.
Data Source
AI summary
In some embodiments, a method receives a request for an instance of media content in a current session. A state is retrieved for content delivery networks that is determined for a session in a set of sessions. The state includes a first set of values for a performance metric, and the first set of values is associated with the content delivery networks. The method determines a second set of values for the performance metric for the current session. The second set of values is associated with the content delivery networks. A content delivery network is selected for the request in the current session based on treating the current session as a session in the set of sessions. The session for the current session is after the session for the state in the set of sessions.


