Stateless Smooth Streaming Media Fragment Caching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing media streaming architectures face challenges due to tight coupling between server and client, leading to increased server overhead, limited scalability, and latency issues, particularly in handling live events, as well as the inability to cache live media effectively, which restricts the number of parallel viewers and limits the adoption of internet-based media consumption.
Innovation Solution
A smooth streaming system employing a stateless protocol between client and server, where the server embeds incremental information in media fragments, allowing caching using existing internet infrastructure, enabling clients to adapt playback based on network conditions and reducing latency by providing uniform media fragment responses and metadata for efficient playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a stateful connection is used between client and server to track session state, then the server can maintain connection state and provide services, but the server overhead increases and scalability is limited
Solution Approach 1:
The patent extracts the state tracking function from the server by introducing a separate state management component that operates independently. This allows the server to provide services without maintaining complex state information about each client connection, thereby reducing server overhead while preserving reliability through the extracted state management layer.
Solution Approach 2:
The patent introduces an intermediary component that mediates between the client and server, handling state management and session tracking. This intermediary absorbs the complexity of state tracking, allowing the server to remain simple and scalable while maintaining reliable connection state through the intermediary's coordination.
2Reliability
If the server tracks the current state of each client to provide stateful services, then service reliability is improved, but the number of concurrent clients the server can handle is limited
Solution Approach 1:
The patent extracts state tracking from the server's core functionality, allowing the server to serve multiple concurrent clients without maintaining individual state records. This extraction enables the server to handle a large number of concurrent viewers while service reliability is maintained through the separated state management mechanism.
Solution Approach 2:
The patent employs copying mechanisms where state information is replicated or shared rather than maintained as unique server state. This allows multiple clients to access service state without the server maintaining separate state tracks for each client, thereby increasing concurrent capacity while preserving service reliability through shared state copies.
3Adaptability or versatility
If the client buffers data to react quickly to changing conditions, then the client can adapt to network changes, but latency is introduced which is unacceptable for live events
Solution Approach 1:
The patent applies preliminary action by having the server prepare and push state information and media data to the client before the client needs to react to network changes. This advance preparation eliminates the need for client buffering, allowing immediate response to network conditions while maintaining low latency for live events.
Solution Approach 2:
The patent implements feedback mechanisms where the server receives real-time information about client network conditions and automatically adjusts data delivery without requiring client buffering. This feedback loop enables the client to respond quickly to network changes while avoiding the latency introduced by local buffering, as the server proactively adapts based on feedback signals.
4Productivity
If existing HTTP caching infrastructure is used for streaming media, then caching capability is improved, but live media cannot be cached effectively
Solution Approach 1:
The patent applies parameter changes by modifying the caching mechanism to handle live media with changing parameters. Instead of using traditional HTTP caching that stores static content, the system implements a caching approach that adapts to dynamic live stream parameters, allowing effective caching of live media while maintaining productivity through efficient cache utilization.
Solution Approach 2:
The patent introduces dynamics to the caching system by enabling the cache to dynamically adapt to changing live media characteristics. The caching infrastructure is transformed from a static system to a dynamic one that can handle live media streams, allowing effective caching of continuously changing content while maintaining high caching efficiency through adaptive management.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A smooth streaming system provides a stateless protocol between a client and server in which the server embeds incremental control information in media fragments. The server provides uniform media fragment responses to media fragment requests that are cacheable by existing Internet cache infrastructure. The smooth streaming system receives media data in fragments from one or more encoders, creates an index of each fragment, and stores the fragments. The server provides fragments to clients that contain metadata information describing the encodings available on the server and the encoding of the fragment. The server may also provide information within each fragment that allows the client to determine whether the client is requesting data too fast or too slow, so that the client can adapt its request rate to a cadence in tune with the rate at which the server is receiving encoder data.