Flexible Caching Proxy for DASH Media Segment Delivery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Dynamic Adaptive Streaming over Hypertext Transfer Protocol (HTTP) (DASH) systems face inefficiencies in segment fetching times due to incomplete caching of multiple representations, leading to fluctuating representation levels and playback interruptions in media streaming, especially with limited bandwidth and high Round Trip Time (RTT) between origin servers and proxy caches.
Innovation Solution
The proposed solution involves modifying the syntax of DASH segment requests to indicate acceptance of segments from alternative representations, allowing caching proxies to respond with either primary or alternative segments based on availability, thereby reducing network traffic and improving response times by enabling the use of cached alternative segments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If DASH systems cache multiple representations completely, then segment fetching reliability improves, but network bandwidth consumption increases and Round Trip Time increases
Solution Approach 1:
The system performs preliminary caching of alternative representation segments at proxy caches before they are needed. When a client requests a segment, the proxy can immediately serve cached alternatives without needing to fetch from the origin server, thus improving reliability while controlling bandwidth usage through selective pre-caching
Solution Approach 2:
Proxy caches act as intermediaries between clients and origin servers. The proxy receives and caches segments from multiple representations, then mediates client requests by serving cached alternatives when appropriate. This intermediary layer reduces direct client-origin server communication, lowering network bandwidth consumption while maintaining segment availability
2Loss of energy
If DASH systems use incomplete caching of multiple representations, then network bandwidth consumption decreases, but playback interruptions increase
Solution Approach 1:
The system changes the parameter of caching completeness from 100% to partial/incomplete caching. By caching only certain segments of multiple representations rather than all segments, the system reduces network bandwidth consumption while the alternative representation mechanism ensures playback continuity by allowing substitution of missing segments with cached alternatives from different representations
3Reliability
If proxy caches fetch all representations from origin servers, then segment availability improves, but Round Trip Time increases
Solution Approach 1:
Proxy caches perform preliminary fetching and caching of alternative representation segments from origin servers before client requests arrive. This advance preparation ensures segment availability when clients need them, while the actual client-to-proxy transfer is fast, thus reducing the effective Round Trip Time experienced by clients
Solution Approach 2:
The proxy cache serves as an intermediary that has pre-stored alternative segments locally. When clients request segments, the proxy can immediately serve cached alternatives without initiating new trips to the origin server, eliminating the need for clients to experience long Round Trip Times to origin servers while maintaining high segment availability
4Ease of operation
If DASH systems request only primary representations, then request simplicity maintains, but caching efficiency decreases
Solution Approach 1:
The segment request mechanism is enhanced to serve multiple functions: it requests the primary representation as before, but also indicates acceptance of alternative representations from the same adaptation set. This multi-functionality allows a single request to trigger caching of multiple useful segments without complicating the client's request logic, thereby improving caching efficiency while maintaining request simplicity
Data Source
AI summary
Various methods are described for selecting an access method for flexible caching in Dynamic Adaptive Streaming over Hypertext Transfer Protocol (DASH). One example method may include causing a request for at least one of a primary representation for a segment or an alternative representation for the segment to be transmitted to a caching proxy. The method may further include causing the caching proxy to respond with at least one of the primary representation or the alternative representation based on the caching status at a caching proxy. The caching proxy may be configured to determine whether the request enables an alternative representation to be included in a response. Furthermore, the method may include receiving at least one of the primary representation or the alternative representation for the segment from the caching proxy. Similar and related example methods, example apparatuses, and computer program products are also provided.


