Streaming Server Capacity Testing via Dynamic Load Scenarios

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional static load testing methodologies for streaming servers fail to adequately account for dynamically changing loads, leading to inadequate identification of potential overutilization and subsequent performance degradation or failure, especially in distributed platforms like CDNs with multiple points of presence.

Innovation Solution

Implement dynamic load testing using a test server that generates varied test scenarios simulating different streaming protocols, content streams, and upload/download ratios to identify saturation points, and utilize these results for real-time health checks and dynamic resource allocation to prevent overutilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static load testing is used to identify server capacity, then the testing process is simple and controlled, but the testing fails to account for dynamically changing loads and multiple streaming scenarios

Engineering Contradiction:
Improveaccuracy of capacity identificationVSAvoidcomplexity of testing methodology
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic load testing that automatically adjusts test parameters based on real-time server responses. The testing system transitions from static, predetermined load scenarios to dynamic scenarios where load characteristics (number of simultaneous streams, bitrate variations, protocol types) are automatically modified during testing based on server performance feedback, enabling accurate identification of saturation points under diverse conditions

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The testing system dynamically changes multiple parameters simultaneously including number of concurrent streams, bitrate levels, protocol types (RTMP, HTTP, HLS), and upload/download ratios. These parameter variations are systematically applied to explore different load scenarios and identify the specific combination that causes server saturation, thereby improving capacity identification accuracy

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If the streaming server handles multiple different content streams from different publishers and consumers, then the server provides versatile streaming services, but the load on the server becomes dynamically changing and harder to predict

Engineering Contradiction:
Improvevariety of streaming scenariosVSAvoidpredictability of server load
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary dynamic load testing to establish baseline capacity metrics and saturation thresholds before actual production use. By pre-characterizing server behavior under various load combinations, the system creates a knowledge base that improves predictability of server responses to different streaming scenarios during operational phases

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The testing system implements closed-loop feedback where server performance metrics (response time, throughput, resource utilization) are continuously monitored and fed back to adjust subsequent test loads. This feedback mechanism enables the system to learn server behavior patterns and predict saturation points more accurately across diverse streaming scenarios

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the CDN distributes content across multiple PoPs, then the system provides geographic redundancy and improved user experience, but each PoP can independently become overutilized causing localized failures

Engineering Contradiction:
Improvegeographic distribution capabilityVSAvoidconsistency of performance across PoPs
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies segmentation by testing and monitoring each PoP (point of presence) independently to identify local capacity characteristics and saturation thresholds. Each PoP is treated as a separate testing unit with its own dynamic load testing regime, allowing the system to capture geographic variations in performance and prevent localized overutilization from affecting the entire CDN network

Inventive Principle:
Principle #1Segmentation

4Productivity

If the server capacity is increased to handle more simultaneous streams, then the server can serve more users, but the cost and complexity of the system increases

Engineering Contradiction:
Improvenumber of simultaneous streams handledVSAvoidsystem resource allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements dynamic resource allocation that automatically adjusts server capacity allocation based on real-time demand patterns identified through load testing. Rather than statically provisioning resources for peak load, the system dynamically scales resources up or down based on actual usage, maintaining high productivity during low-demand periods while ensuring adequate capacity during peaks without permanently over-provisioning

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9755945B2Stream publishing and distribution capacity testing
Publication Date: 2017.09.05 DRNC HOLDINGS INC
  • US9755945B2 patent drawing
  • US9755945B2 patent drawing
  • US9755945B2 patent drawing

AI summary

Some embodiments dynamically test capacity of a streaming server under test (SUT). The dynamic testing involves a test server generating different test scenarios. Each test scenario specifies a mix of different streaming protocols, content streams, and content stream upload to download ratio. The test server tests the SUT with a gradually increasing traffic load from each test scenario while monitoring SUT performance under each load. The test server records each load from each test scenario under which the SUT becomes saturated. The test server produces a grid mapping the observed SUT saturation points to the test loads that caused them. The grid is used when the SUT is deployed to a production environment to determine if SUT saturation is imminent based on current traffic patterns being serviced by the SUT in the production environment. If so, a remedial action is dynamically performed to prevent the saturation from occurring.