Low Latency Live Video Streaming over HTTP 2.0 Sheng Wei, Vishy Swaminathan | Adobe Research NOSSDAV 2014
Demo Playback 1 Latency ~18.7s Live Event Playback 2 Latency ~3.7s NOSSDAV 2014 2
Latency in HTTP Live Video Streaming segments … HTTP Live Packager Player Web Server Encoder Live Latency § Encoding/Decoding § Network Transmission § Bu ff ering § Segmentation 1:0 0:0 § Latency is at least 1 segment duration NOSSDAV 2014 3
How much is the latency, exactly? t Seg 2 Seg 1 Web t Server t req 1 Latency: 1 ~ 2 segment durations [Swaminathan & Wei, MMSP’11] NOSSDAV 2014 4
Prior Solutions § Prior Solution 1: Reducing segment durations HTTP Server HTTP Client f D – duration of the video – segment duration manifest req N Number of requests: manifest N = D / f = 1 Seg 1 req D f f Seg 1 …… Seg n req § Request Explosion Problem § Network Overhead Seg n § Client Overhead § Server/Cache Overhead NOSSDAV 2014 5
Prior Solutions § Prior Solution 2: HTTP Chunked Encoding (HTTP 1.1) [Swaminathan & Wei, MMSP’11] Segment Chunk Chunk Chunk Low Latency Live Streaming Using Chunked Encoding t seg 1 seg 2 Web Server t 4 1 2 3 t req 1 req 2 Latency: 1 ~ 2 chunk durations § Compatibility Issue – Stream Formats /Media Frameworks § Self-describing format (e.g., HDS, HLS) § Metadata-based format (e.g., DASH) NOSSDAV 2014 6
New Solution Leveraging HTTP 2.0 § HTTP 2.0 § Dra f (Nov. 2012), Standardization (Planned Nov. 2014) § Supported by Chrome/Firefox/Opera/IE § New feature: Server Push Request Response Push Push § Opportunity for Video Streaming § Addressing the request explosion problem (in prior solution 1) § Addressing compatibility issue (in prior solution 2) NOSSDAV 2014 7
Challenges for Video Streaming Using Server Push § HTTP 2.0 originally designed for web page loading and not video § Web Page: HTML with embedded resources § Video: Independent segments Web Page § Push strategies for video HTML § When to push what? … jpg CSS § More considerations § Adaptive bitrate switching Video … § Asynchronous operations Seg 1 Seg 2 § CDN/Cache compatibilities NOSSDAV 2014 8
Push Strategies Client Server Client Server Client Server r r e e q q s s e req seg 1 to k e g g 1 1 t o n seg 1 1 g e 1 s g e … s seg k r e q 2 s e g g e 2 s … 2 g e s req seg (n-k+1) to n … … seg (n-k+1) r e q s e g n n g e … s n g seg n e s (a) No-Push (b) All-Push (c) k-Push NOSSDAV 2014 9
System Architecture Playback Live Event push_marker request Video Player Live Packager Receiving/caching pushed content HTTP 2.0 Library HTTP 2.0 Push Strategy Push Module Web Server NOSSDAV 2014 10
Experimental Platform NOSSDAV 2014 11
Experimental Results § Live Latency w & w/o Server Push Identical segment duration: 1 sec Live Latency (Server Push) Live Latency (No Server Push) 4.5 4 3.5 Live Latency (sec) 3 2.5 2 1.5 1 0.5 0 1 2 3 4 5 6 7 8 9 10 Runs NOSSDAV 2014 12
Experimental Results § Request Overhead w & w/o Server Push Identical segment duration: 1 sec Server Push No Server Push 35 Cumulative # Requests 30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Video Playback Time (sec) NOSSDAV 2014 13
Experimental Results § Request Overhead w & w/o Server Push Identical request overhead (server-push: 1 sec segments; no-push: 5 sec segments) Server Push No Server Push 7 6 Cumulative # Requests 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Video Playback Time (sec) NOSSDAV 2014 14
Experimental Results § Live Latency w & w/o Server Push Identical request overhead (server-push: 1 sec segments; no-push: 5 sec segments) 25 Live Latency (Server Push) Live Latency (No Server Push) 20 Live Latency (sec) 15 10 5 0 1 2 3 4 5 6 7 8 9 10 Runs NOSSDAV 2014 15
Experimental Results § Live Latency vs. Request Overhead 35 Server Push No Server Push 30 Live Latency (sec) 25 20 15 10 5 0 0 0.2 0.4 0.6 0.8 1 # requests/sec NOSSDAV 2014 16
Conclusion & Future Directions § Improving live latency using server push in HTTP 2.0 § Achieving low latency: small segment duration + server push § Solved the request explosion problem § Compatible with di ff erent stream formats § Future Directions § Optimizing k in k-push to reduce the overhead of adaptive bitrate switching § CDN/ISP cache compatibility tests Demo available at the conference upon request Sheng Wei (swei@adobe.com) Vishy Swaminathan (vishy@adobe.com) NOSSDAV 2014 17
Recommend
More recommend