How to Meet the Deadline for Packet Video Bernd Girod Mark Kalman Eric Setton Information Systems Laboratory Stanford University
2 B. Girod: Packet Video 2006 [Economist, September 2005] THE MEANING OF FREE SPEECH The acquisition by eBay of Skype is a helpful reminder to the world's trillion- dollar telecoms industry that all phone calls will eventually be free Ultimately—perhaps by 2010—voice may become a free internet application, with operators making money from related internet applications like IPTV... THE MEANING OF FREE SPEECH The acquisition by eBay of Skype is a helpful reminder to the world's trillion- dollar telecoms industry that all phone calls will eventually be free Ultimately—perhaps by 2010—voice may become a free internet application, with operators making money from related internet applications like IPTV...
3 B. Girod: Packet Video 2006 IPTV is Becoming a Reality SBC (ATT) 18M IPTV households by 2007 SBC (ATT) 18M IPTV households by 2007 Verizon 10M IPTV households by 2009 Verizon 10M IPTV households by 2009 [IEEE Spectrum, Jan. 2005]
4 B. Girod: Packet Video 2006 Why Is Internet Video Hard? Internet is a best-effort network... CongestionInsufficient rate to carry all traffic Packet lossImpairs perceptual quality DelayImpairs interactivity of services; Zapping < 500 ms
5 B. Girod: Packet Video 2006 How to Meet the Deadline for Packet Video
6 B. Girod: Packet Video 2006 Internet How to Meet the Deadline for Packet Video
7 B. Girod: Packet Video 2006 How to Meet the Deadline for Packet Video Congestion, QoS, and “fair” sharing Maximum-utility resource allocation for multiple video streams Example: video over wireless home networks Congestion-distortion optimized packet scheduling (CoDiO) Example: P2P multicasting of live video Packet scheduling for multicast trees
8 B. Girod: Packet Video 2006 Measuring Congestion Traffic flow E[Delay] “Congestion” Congestion in packet-switched network: queuing delay that packets experience, weighted by size of the packet averaged over all packets in the network
9 B. Girod: Packet Video 2006 Congestion Grows Nonlinearly with Link Utilization Congestion [seconds] Rate R C
10 B. Girod: Packet Video 2006 How 1B Users Share the Internet maximum transfer unit round trip time packet loss rate data rate [Mahdavi, Floyd, 1997] [Floyd, Handley, Padhye, Widmer, 2000] Rate R Growing congestion p TCP Throughput
11 B. Girod: Packet Video 2006 QoS vs. Best Effort Reservation-ism –Voice and video need guaranteed QoS (bandwidth, loss, delay) –Requires admission control: “Busy tone” when network is full –Best effort is fine for data applications Best Effort-ism –Best Effort good enough for all applications –Real-time applications can be made adaptive to cope with any level of service –Overprovisioning always solves the problem, and it’s cheaper than QoS guarantees
12 B. Girod: Packet Video 2006 Simple Model of A Shared Link Link of capacity C is shared among k flows Fair sharing: each admitted flow uses rate R=C/k Homogeneous flows with same utility function u(R) Total utility C [Breslau, Shenker, 1998]
13 B. Girod: Packet Video 2006 Rigid Applications Utility u=0 below of minimum bit-rate B Admit at most flows With sufficient overprovisioning, no admission control needed, since u C/k B 1
14 B. Girod: Packet Video 2006 Elastic Applications Elastic applications: convex utility function u(R) All flows should be admitted: best effort! R u(R)u(R)
15 B. Girod: Packet Video 2006 QoS vs. Best Effort for Video H.264 video coding for 2 different testsequences Video is elastic application... above a certain minimum quality Bottleneck links: admission control and dynamic rate control combined Rate must be adapted to network throughput. How? Utility function depends on content: should use unequal rate allocation Foreman Mobile Good picture quality Bad picture quality
16 B. Girod: Packet Video 2006 Better than utility-oblivious “ fair ” sharing With r k >=0 Karush-Kuhn-Tucker conditions Different Utility Functions rkrk ukuk Equal-slope “Pareto condition” Vilfredo Pareto
17 B. Girod: Packet Video 2006 Distribution of TV over WLAN [courtesy: van Beek, 2004] 5 Mbps 2 Mbps 11 Mbps Home Media Gateway
18 B. Girod: Packet Video 2006 Video over WLAN Decoder Transcoder Controller b Wireless Terminal Network Interface playout buffer Video encoded at higher rate Receiver [Kalman, van Beek, Girod 2005]
19 B. Girod: Packet Video 2006 Video over WLAN with Multiple Streams Decoder Transcoder Controller Wireless terminals Network Interface Transcoder … … … Decoder … c0c0 c1c1 cMcM 0 1 M 0 1 M Receiver (Multi-Channel) [Kalman, van Beek, Girod 2005]
20 B. Girod: Packet Video 2006 Dynamic Estimation of R-D Curve Parameters track weighted average of last I-Frame, P-Frame and B-Frame Scene cuts [ Stuhlmüller et al ] R-D Model Rate
21 B. Girod: Packet Video b Transmission of 2 Video Streams Link rates [kbps] Channel time allocation Transcoder bit-rate [kbps] Backlog in frames PSNR in dB
22 B. Girod: Packet Video 2006 Video Distortion with Self Congestion Good Picture quality Bad picture quality Bit-Rate [kbps] Self congestion causes late loss
23 B. Girod: Packet Video 2006 Effect of Playout Delay and Loss Sensitivity ForemanSalesman Simulations over ns-2 Link capacity 400 kb/s Simulations over ns-2 Link capacity 400 kb/s 40% headroom 10%
24 B. Girod: Packet Video sender 380 kbps, 36 dB Highest sustainable video quality 420 kbps, 33.7 dB Simulation of 600 kbps link Latency 400 msec
25 B. Girod: Packet Video 2006 Modeling Self-Congestion for Packet Scheduling Probability distribution delay Rate-distortion optimized packet scheduling (RaDiO) typically assumes independent delay pdfs for successive packet transmissions [Chou, Miao, 2001] Model delay pdf by exponential with varying shift [Setton, Girod, 2004]
26 B. Girod: Packet Video 2006 CoDiO Light Scheduler I BB B P B IB B P Pictures to send Schedule IP BB B PI B B BI B
27 B. Girod: Packet Video 2006 CoDiO Scheduling Performance Simulations over ns-2 Packet loss rate 2% Bandwidth 400 kb/s Propagation delay: 50ms Simulations over ns-2 Packet loss rate 2% Bandwidth 400 kb/s Propagation delay: 50ms 30 % 25 % Mother & DaughterNews Playout deadline (s)
28 B. Girod: Packet Video 2006 kb/s Link rate 400 kb/s, propagation delay 50 ms 2 % packet loss 0.6 second playout deadline CoDiO ARQ
29 B. Girod: Packet Video 2006 Sequence: Foreman Packet loss rate 2% Link capacity 400 kb/s Propagation delay: 50ms Sequence: Foreman Packet loss rate 2% Link capacity 400 kb/s Propagation delay: 50ms 60 % Playout deadline (s) CoDiO vs. RaDiO
30 B. Girod: Packet Video 2006 Video Multicast over P2P Networks Challenges Limited bandwidth Delay due to multi-hop transmission Unreliability of peers Our Approach [Setton, Noh, Girod, 2005] Determine encoding rate as a function of network bandwidth Build and maintain complementary multicast trees Adapt media scheduling to network conditions and to content Request retransmissions to mitigate losses Related work [Chu, Rao, Zhang, 2000] [Padmanabhan, Wang and Chou, 2003] [Guo, Suh, Kurose, Towsley, 2003] [Cui, Li, Nahrstedt, 2004] [Do, Hua, Tantaoui, 2004] [Hefeeda, Bhargava, Yau, 2004] [Zhang, Liu, Li and Yum, 2005] [Zhou, Liu, 2005] [Chi, Zhang, Packet Video 2006] … … Video stream
31 B. Girod: Packet Video 2006 Experimental Setup Network/protocol simulation in ns-2 –300 active peers –Random peer arrival/departure average life-time 5 minutes –Over-provisioned backbone –Typical access rate distribution –Delay: 5 ms/link + congestion Video streaming –H.264/AVC 250 kb/s –15 minute live multicast [Sripanidkulchai et al., 2004] Downlink UplinkPercentage 512 kb/s256 kb/s 56% 3 Mb/s384 kb/s 21% 1.5 Mb/s896 kb/s 9% 20 Mb/s 2 Mb/s 3% 20 Mb/s 5 Mb/s 11% Downlink UplinkPercentage 512 kb/s256 kb/s 56% 3 Mb/s384 kb/s 21% 1.5 Mb/s896 kb/s 9% 20 Mb/s 2 Mb/s 3% 20 Mb/s 5 Mb/s 11% [Setton, Noh, Girod, 2005]
32 B. Girod: Packet Video 2006 Join and Rejoin Latencies Simulations over ns-2, 300 peers Number of trees: 4 Retransmissions enabled Simulations over ns-2, 300 peers Number of trees: 4 Retransmissions enabled [Setton, Noh, Girod, 2005]
33 B. Girod: Packet Video 2006 CoDiO retransmissions No retransmissions P2P Video Multicast: 64 out of 300 Peers 250 kb/s 2 second playout deadline for all streams
34 B. Girod: Packet Video 2006 P2P Video Multicast: 64 out of 300 Peers 250 kb/s 2 second playout deadline for all streams CoDiO retransmissions No retransmissions
35 B. Girod: Packet Video 2006 CoDiO Scheduling for Multicast Trees Parent PI BP B P B DIDI DBDB D P3 D P2 D P1 DBDB DBDB [Setton, Noh, Girod, 2006] Child
36 B. Girod: Packet Video 2006 Gain by Multicast CoDiO Simulations over ns-2, 300 peers Number of trees: 4 Retransmissions enabled Simulations over ns-2, 300 peers Number of trees: 4 Retransmissions enabled 30 % 40 % Foreman Mother & Daughter Playout deadline (s) [Setton, Noh, Girod, 2006]
37 B. Girod: Packet Video 2006 Sender-driven CoDiO light dB Without prioritization dB 250 kb/s 0.8 second playout deadline for all streams Average Video Sequence for 75 Peers
38 B. Girod: Packet Video 2006 Conclusions Must avoid congestion for low latency Video streaming over bottlenecks (IPTV, WLAN... ): combine admission control and rate control R-D-aware rate allocation better than fair sharing Packet scheduling should consider congestion rather than rate Low-complexity CoDiO scheduler P2P video multicast possible with low latency Retransmissions effective with application-layer multicast CoDiO extended to packet scheduling for multicast trees Cross-layer paradigm Media-aware transport superior system performance
The End