Dual Sliding Window Bandwidth Estimation for Oscillating Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for estimating bandwidth in oscillating networks, such as those used for streaming media, are inadequate as they fail to accurately predict future bandwidth due to oscillations that exceed the duration of single sliding window averages, leading to poor user experiences with stalling or inappropriate bit rate selection.
Innovation Solution
The use of two sliding windows, one short and one longer, with the shorter window capturing average values every 5 seconds and the longer window analyzing these values over a 60-90 second interval to detect and predict oscillations, employing statistical models and machine learning for accurate bandwidth estimation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a single sliding window average is used for bandwidth estimation, then the method is simple and easy to implement, but it fails to accurately predict future bandwidth in oscillating networks
Solution Approach 1:
The patent divides the bandwidth estimation process into multiple segments by using two sliding windows of different lengths (first window and second window). The first window captures short-term bandwidth variations while the second window captures long-term oscillations. This segmentation allows the system to analyze different time scales separately and combine their insights for more accurate prediction.
Solution Approach 2:
The patent adds a temporal dimension to the analysis by introducing multiple time windows. Instead of using a single time window, the system uses a first sliding window for short-term averaging and a second sliding window for long-term oscillation detection. This multi-dimensional temporal analysis enables the system to capture both immediate bandwidth conditions and longer-term oscillating patterns.
2Speed
If a short sliding window is used for bandwidth estimation, then the response time is fast, but it cannot detect long-term oscillations
Solution Approach 1:
The patent segments the time analysis into two distinct windows: a first sliding window for fast response to immediate bandwidth conditions and a second sliding window for detecting long-term oscillations. This segmentation allows each window to be optimized for its specific purpose while working together for comprehensive bandwidth estimation.
Solution Approach 2:
The patent employs periodic sampling of bandwidth within the first sliding window and uses these samples to populate the second sliding window. This periodic action allows the system to maintain fast response through continuous short-term sampling while simultaneously building up long-term oscillation detection capability through systematic accumulation of samples.
3Reliability
If a long sliding window is used for bandwidth estimation, then long-term oscillations can be detected, but the response to immediate bandwidth changes is slow
Solution Approach 1:
The patent segments the analysis into two time scales using two sliding windows. The second (longer) window detects long-term oscillations while the first (shorter) window provides fast response to immediate changes. This segmentation resolves the conflict between detection capability and response speed by assigning different functions to different time windows.
Solution Approach 2:
The system performs preliminary action by continuously maintaining both sliding windows updated with current bandwidth data. The first window provides immediate bandwidth estimates for quick response, while the second window accumulates data for oscillation detection. Both windows are prepared in advance and can immediately provide their respective insights when needed.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for estimating bandwidth associated with an oscillating network includes determining a set of first average bandwidths within a corresponding set of first sliding windows, wherein each of the first sliding windows has a first duration. A second sliding window is defined such that it includes the set of first sliding windows, the second sliding window having a second duration that is larger than the first duration. The system then determines whether a bandwidth oscillation (as illustrated) is occurring based on the first set of first average bandwidths within the second sliding window.