Quality-of-Experience and Chunked Delivery
Why QoE, Not Just Rate?
The MAN rate is a network-side metric: files per channel use. Users care about a different metric: Quality of Experience (QoE). QoE captures:
- Startup latency. Time from play-click to first frame.
- Rebuffering. Frequency and duration of pauses.
- Average bitrate. Perceived video resolution.
- Bitrate switching. Frequency and magnitude of quality jumps.
Production streaming optimizes for QoE; so should QoE-aware coded caching. This section develops the QoE-caching coupling, connecting the information-theoretic gain to user-perceived quality.
Definition: Standard QoE Model
Standard QoE Model
A canonical QoE metric (Yin-Jindal 2015): where:
- : average bitrate watched at time (higher is better).
- : smoothness penalty (bitrate switching is jarring).
- : rebuffering penalty (dominant concern).
- : total rebuffering duration.
- : startup delay.
The coefficients are calibrated to user studies: typically per second of rebuffering (very strong penalty); .
QoE is highly sensitive to rebuffering: users tolerate lower bitrates but hate stalls. This drives caching design toward aggressive pre-fetch and chunk availability.
QoE vs Cache Size
Composite QoE (bitrate, startup, rebuffering) vs cache size. Coded caching boosts QoE via reduced miss rate, fewer rebuffers, and faster startup.
Parameters
Definition: Chunked Video Delivery
Chunked Video Delivery
In chunked delivery (standard in HLS, DASH), each video is divided into chunks (typically 2-10 seconds each). Chunks are the units of caching and delivery. For a video of duration seconds with chunks (chunk length ):
- Each chunk encoded at quality levels.
- Client fetches chunks sequentially.
- Server can deliver any subset of chunks in any order.
Coded chunk caching: Apply MAN at chunk granularity. Each cache stores a subset of chunks; coded XOR delivery over -subsets of users requesting different chunks.
Chunked structure refines the MAN analysis: instead of file-granular subfiles, we work with chunk-granular placement. Subpacketization benefits from chunk structure: typical video chunks are large enough ( MB) to support practical combinatorial splits.
Theorem: Chunk-Level Coded Caching Rate
For chunk-level coded caching with chunks per video, per-user cache (in chunks), and uniform chunk demand, the achievable delivery rate is Same as MAN, applied at chunk granularity.
Chunks play the role of "files" in the basic MAN analysis. The rate formula is unchanged. Advantage: chunks are smaller, subpacketization is more practical.
Reformulation
Treat each chunk as a file. New MAN instance: users, "files" (chunks), chunks per user.
Apply MAN
Standard MAN rate formula: . Since (same ratio), rate formula unchanged.
Per-second interpretation
Rate measured per chunk. At chunks per second: total rate scales.
Example: YouTube-Scale Chunk Caching
YouTube-style streaming: concurrent viewers in a geographic region, videos, each 300 chunks of 5 seconds. Per-user cache 100 chunks. Analyze delivery rate and QoE.
Parameters
chunks. β tiny.
Effective MAN gain
. Almost no MAN gain at this scale.
Why? Library too big
is huge vs cache. Solution: focus on popular videos (Zipf structure) rather than full library.
Popularity-aware
Cache the top-100 videos' chunks. New effective chunks. . Strong MAN gain on popular content.
QoE impact
Hit rate on popular videos . QoE: startup latency drops from 500ms to 50ms; rebuffering rare; smooth playback.
Production QoE Optimization
How production services optimize QoE:
- Chunk prefetch. Client fetches 2-3 chunks ahead; buffer smooths over network variation. Coded caching reduces per- chunk server load, easing prefetch.
- Adaptive bitrate switching. Client selects quality based on network estimation. Caching makes bitrate upgrades cheap (base layer already cached).
- Regional CDN tiers. Origin β regional PoP β ISP cache β device. Chunks propagate down on first miss. Coded caching can be applied at each tier.
- ML-based popularity prediction. YouTube/Netflix use ML to forecast which videos to cache where. Combines with coded caching opportunistically.
Status: Coded caching at chunk granularity is research-stage; production CDNs use LRU/LFU on chunks. Integration of coded layer is a 3-5 year practical roadmap.
- β’
YouTube: ML prediction + LRU chunks
- β’
Netflix Open Connect: static predictive + LRU
- β’
Akamai: regional LRU + admission control
- β’
Coded chunk caching: research stage
Common Mistake: Rate Optimization β QoE Optimization
Mistake:
Assuming minimizing automatically maximizes QoE.
Correction:
QoE has multiple components:
- Bitrate . Lower rate β higher bitrate.
- Rebuffering variance of delivery. Lower rate doesn't help if delivery is bursty.
- Startup first-chunk latency. Depends on cache hit, not delivery rate.
A caching scheme that reduces average rate but causes rebuffering spikes can reduce QoE. Practical schemes optimize expected bitrate - rebuffering variance β not just average rate.
Key Takeaway
Video caching targets QoE, not just rate. QoE composites bitrate, startup, rebuffering, smoothness. Coded caching helps all four via reduced miss rate and multicast efficiency. Chunk-level coded caching is a practical refinement of MAN, suitable for integration with DASH. Production integration is a 3-5 year roadmap.