DASH Proxy Cache Pre-Fetching via Client Feedback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current pre-fetching methods in DASH systems face scalability issues, inefficient bandwidth usage, and user experience problems due to lack of accurate segment prediction and communication between DASH clients and proxy cache servers, leading to unnecessary resource wastage and playback interruptions.
Innovation Solution
The introduction of new HTTP headers such as Pre-Fetching-Segment, Retrieve-Subsequent-Segments-Caching-Status, and Proxy-Subsequent-Segments-Caching-Status allows DASH clients to signal proxy cache servers for pre-fetching and caching status feedback, enabling more efficient resource allocation and reducing unnecessary representation switches.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If pre-fetching is enabled in DASH systems, then media retrieval efficiency is improved, but scalability and bandwidth usage efficiency deteriorate due to lack of accurate segment prediction and client-server communication
Solution Approach 1:
The patent implements pre-fetching of media segments by the proxy cache server before the DASH client requests them. The server proactively retrieves segments based on playback position and timing information, performing the retrieval action in advance to improve media retrieval efficiency without requiring complex client-side prediction algorithms.
Solution Approach 2:
The patent establishes a feedback mechanism where the DASH client sends playback position and timing information to the proxy cache server, and the server uses this feedback to determine which segments to pre-fetch. This feedback loop enables scalable pre-fetching by allowing each client-server interaction to be independent and self-adjusting based on actual playback needs.
2Speed
If pre-fetching is implemented without accurate segment prediction, then media retrieval speed is improved, but resource wastage increases due to inefficient bandwidth usage
Solution Approach 1:
The proxy cache server performs preliminary retrieval of media segments based on the client's current playback position and timing information. By calculating which segments will be needed next and retrieving them in advance, the system achieves fast media retrieval without over-fetching, as the pre-fetching is precisely targeted to actual playback requirements.
Solution Approach 2:
The system dynamically adjusts pre-fetching parameters including segment timing information, playback position, and buffer status. These parameter changes allow the proxy cache server to optimize bandwidth usage by retrieving only the specific segments needed at the right time, rather than using fixed or excessive pre-fetching strategies.
3Device complexity
If pre-fetching is enabled without client-server communication, then system simplicity is maintained, but user experience deteriorates due to playback interruptions and representation switches
Solution Approach 1:
The patent implements a feedback mechanism where the DASH client communicates playback position and timing information to the proxy cache server. The server uses this feedback to accurately determine which segments to pre-fetch, ensuring playback continuity and preventing interruptions. This communication layer adds minimal complexity while dramatically improving reliability.
Solution Approach 2:
The proxy cache server performs preliminary retrieval of segments based on client feedback about playback position and timing. This preliminary action ensures that needed segments are already cached before the client requests them, preventing playback interruptions and unnecessary representation switches while maintaining relatively simple system architecture.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Various methods are described for enabling efficient pre-fetching of media in a DASH system. One example method may comprise accessing information related to a media presentation description (MPD) (900). The information comprising information related to one or more segments of the MPD. The method of this example embodiment may further comprise generating a request for a segment of the MPD (910). Furthermore, the method of this example embodiment may comprise generating a request for pre-fetching one or more segments different from the requested segment (920). The method of this example embodiment may further comprise providing for transmission of the request for the segment and the request for pre-fetching the one or more different segments to a proxy cache server (930). Similar and related example methods, example apparatuses, and example computer program products are also provided.