Path Diversity for Media Streaming The Use of Multiple Description Coding J. Apostolopoulos, M. Trott and W. Tan Presented by Xiaoyuan GUO Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Systems Design, Analysis and Operation Applications and Architectures Summary 2/44 Outline Background and Motivation Media Streaming Characteristics Best-effort packet networks(i.g. Internet) 2016/3/14 Delay sensitive Loss tolerant Delay, loss rate and available bandwidth dynamic and unpredictable The default path is often not the best path many applications(e.g. multicast or broadcast) lack a back channel or other means for retransmission Media streaming is quite challenging 3/44 Introduction Solution 2016/3/14 Path diversity + Multiple Description Coding 4/44 Introduction Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Systems Design, Analysis and Operation Applications and Architectures Summary 5/44 Introduction Definition and Categories Diversity: frequency, time and spatial A transmission technique that sends data through two or more paths in a packet-based network Categories Transmission methods 2016/3/14 Use multiple paths at the same time Select best path Source numbers 6/44 Path Diversity Single Source 2016/3/14 Path diversity using single source 7/44 Path Diversity Multiple sources 2016/3/14 Path diversity using multiple sources 8/44 Path Diversity Benefits Benefits of path diversity Bandwidth aggregation(use all at once) 2016/3/14 Traffic load balancing Reduce probability of service outage, i.g. streaming from multiple servers in CDN or from multiple peers in P2P 9/44 Path Diversity Reduce delay and jitter Reduce delay and delay jitter Queue diversity Helpful 2016/3/14 Network delay due to backlogged queue Benefits of multiple parallel queue Time-invariant paths having different but unknown delay characteristics Applications of end-to-end delay constraint while maintaining quality 10/44 Path Diversity Reduce loss Reduce losses Path selection 2016/3/14 When a single path system is unreliable and with feedback 11/44 Path Diversity Reduce Uncertainty Reduce uncertainty with averaging loss rate 2016/3/14 Time-invariant paths lack feedback Time-varying paths that measurement lags variation Broadcast or multicast scenarios 12/44 Path Diversity Reduce Loss Decrease the probability of outage Reduce the length of burst losses 2016/3/14 Outage: all communication along a network path is lost for a sizable length of time Single path p while two paths p^2 Increase the interpacket space on each path 13/44 Path Diversity Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Systems Design, Analysis and Operation Applications and Architectures Summary 14/44 Outline What is it? 2016/3/14 Descriptions: sets of compressed data The more descriptions available, the better the quality of the reproduction 15/44 Multiple Description Coding Why Use MD? SD vs. SC vs. MD SD(single description) SC(Scalable coding) MD(multiple des.) No scalable Scalable Scalable No priority Priority to base layer No priority High code efficiency Acceptable code efficiency 2016/3/14 16/44 Acceptable code efficiency Multiple Description Coding Why Use MD?(2) Best-effect network Path diversity system 2016/3/14 Packets equally to be lost or delayed Send descriptions over different paths Enhance the benefits of multiple paths 17/44 Multiple Description Coding How Good MD Can Do? Rate-distortion theory gives theoretical bounds for how much compression can be achieved using lossy compression methods Rate-distortion function D(R) give the min. achievable average distortion D when source is described using R bits per source symbol 2016/3/14 Gaussian source D(R)=2^(-2R) 18/44 Multiple Description Coding R/D for Multiple Description Rate-distortion for multiple description Single- and multiple-description upper bound can not be achieved simultaneously Trade-off curve is known only for Gaussian source No obstacle to practical exploration 2016/3/14 Refer to L. Ozarow. “On a Source Coding Problem with Two Channels and Three Receivers,” Growing literatures on practical schemes 19/44 Multiple Description Coding MD Speech and Audio Coding 2016/3/14 Sequence of packets and sensitive to loss Frame even/odd samples coded and sent in separate packets Path diversity: Independently of the neighboring frame reduce burst loss 20/44 Multiple Description Coding MD Image Coding subsampling Source coding MD-FEC 2016/3/14 + FEC transform coding Scalable, prioritized nonprioritized 21/44 Multiple Description Coding MD-EFC 2016/3/14 22/44 Multiple Description Coding MD-FEC(2) Flexibility 2016/3/14 Any number of scalable layers Various amounts of FEC per layers Arbitrary number of descriptions Refer to R. Puri and K. Ramchandran. “Multiple Description Source Coding Using Forward Error Correction Codes” 23/44 Multiple Description Coding MD Video Coding Consecutive video frames similar Predictive coding Two design extremes Maintain good quality even when half data is lost Maximize coding efficiency 2016/3/14 Accomplished independent prediction loops Single prediction loop Mismatch with subsequent error propagation Trade-off between coding efficiency and resilience to full or partial loss of stream 24/44 Multiple Description Coding MD Video Coding(2) Small number of description streams Scalable MD coding(i.g. MD-FEC) 2016/3/14 Refer to B. Heng, J. G. Apostolopoulos, and J. S. Lim. “End-to-End Rate-Distortion Optimized MD Mode Selection for Multiple Description Video Coding,” Large number of description streams 25/44 Multiple Description Coding Repairable MD Coding Error propagation in predictive coding Repairable MD coding attempt to stop error propagation 2016/3/14 repairs one description using uncorrupted frames from the other description as long as not all the descriptions are simultaneously lost Complemented with path diversity 26/44 Multiple Description Coding Repairable MD Coding 2016/3/14 27/44 Multiple Description Coding Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Issues on Systems Design, Analysis and Operation Applications and Architectures Summary 28/44 Outline Issues on System Design Joint and disjoint paths Multiple paths maybe independent bottlenecks occur on shard portion impact Identify bottlenecks and avoid them How many paths to use Specifics of the application Benefits that one is trying to exploit 2016/3/14 Repairable MD coding, two paths enough number of paths increase, aggregated bandwidth increases, probability of outage decrease and delay variability decrease 29/44 System Design, Analysis and Operation Issues on System Analysis Select the best paths or best servers Characteristics of the available paths Min. distance while max. path diversity Model path diversity performance Goal 2016/3/14 Select the best subset of possible servers Select the best subset of paths Compare path diversity scenarios One distortion model for MD with two path diversity 30/44 System Design, Analysis and Operation State Transition Pro. Model 00: two descriptions are correctly received 01/10: one description is correctly received 11:two descriptions are lost simultaneously 2016/3/14 31/44 System Design, Analysis and Operation One Path Diversity Model 2016/3/14 Simplify network topologies Refer to J. G. Apostolopoulos, W. Tan, S. J. Wee, and G. W. Wornell. “Modeling Path Diversity for Multiple Description Video Communication,” 32/44 System Design, Analysis and Operation Issues on System Operation Streaming and packet scheduling across asymmetric paths Path measurement Rate adaption Packet scheduling 2016/3/14 Estimate the characteristics of each path, i.g. timevarying, available bandwidth, etc. More important packet may be sent over the path with lower packet loss rate 33/44 System Design, Analysis and Operation Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Systems Design, Analysis and Operation Applications and Architectures Summary 34/44 Outline Low-delay application Low-delay applications(i.g. VoIP) Choose a low-latency path 2016/3/14 Skype using nodes in internet to bypass firewall and NATS 35/44 Applications and Architectures CDN Using multiple paths simultaneously Content delivery networks Choose a good/best server by multiple path selection Multiple servers provide path diversity with SD and FEC MD-CDN design and operation 2016/3/14 Multiple resources stream packets to client Refer to W. Tan et al. “On Multiple Description Streaming with Content Delivery Networks” 36/44 Applications and Architectures P2P Peer-to-Peer networks One essential challenge 2016/3/14 Provide an uninterrupted flow of data to each client for the duration of the streaming session Multiple servers reduce service outages in the face of uncertain peer and network condition 37/44 Applications and Architectures Wireless network Path diversity over wireless network Characteristics of wireless network 2016/3/14 Time-varying and unpredictable behavior caused by multiple users, interface, propagation effects and mobility Reduce uncertainty and improve reliabilities 38/44 Applications and Architectures Architectures Control packet routes Relay host Source routing 2016/3/14 Direct different streams over different paths to send each stream to different relay hosts Forward streams to their final destinations Specify the set of nodes for each packet to traverse Specify different source routes for different subsets of packets 39/44 Applications and Architectures Outline 2016/3/14 Introduction Path Diversity Multiple Description Coding Systems Design, Analysis and Operation Applications and Architectures Summary 40/44 Outline Summary Provide a survey of the benefits, architecture, system design issues and open problems associated with streaming delivery using path diversity Path diversity 2016/3/14 Overcome dynamic and unpredictable available bandwidth, delay and loss rate Take a step closer to feedback-free video streaming VoIP, CDN, P2P,WLAN, ad-hoc, etc. 41/44 Summary Summary(2) Multiple description coding 2016/3/14 Combined with path diversity to enhance its benefits for media streaming 42/44 Summary References • • • • • 2016/3/14 J. G. Apostolopoulos, W. Tan, S. J. Wee, and G. W. Wornell. “Modeling Path Diversity for Multiple Description Video Communication,” IEEE ICASSP, May 2002. R. Puri and K. Ramchandran. “Multiple Description Source Coding Using Forward Error Correction Codes,” IEEE Asilomar Conference on Signals, Systems, and Computers, October 1999. J. G. Apostolopoulos, W. Tan, S. J. Wee, and G. W. Wornell. “Modeling Path Diversity for Multiple Description Video Communication,” IEEE ICASSP, May 2002. L. Ozarow. “On a Source Coding Problem with Two Channels and Three Receivers,”Bell Syst. Tech. J., 59:1909–1921, December 1980. J. G. Apostolopoulos, T. Wong, W. Tan, and S. J. Wee. “On Multiple Description Streaming with Content Delivery Networks,” IEEE INFOCOM, June 2002. 43/44 Summary Questions and Comments? Thank you 2016/3/14 44/44 Outline