FEC and Pseudo-ARQ for Receiver-driven Layered Multicast Philip A. Chou, Alex Mohr, Albert Wang, Sanjeev Mehrotra (Microsoft, University of Washington,

Slides:



Advertisements
Similar presentations
Ethernet Switch Features Important to EtherNet/IP
Advertisements

Clustering of Source/Channel Rate Allocations for Receiver-driven Multicast under a Limited Number of Streams Philip A. Chou, Microsoft Research Kannan.
Streaming Video over the Internet
1 Haitao Zheng and Jill Boyce IEEE Transaction on Multimedia Leif 9/10/01 An Improved UDP Protocol for Video Transmission Over Internet-to-Wireless Networks.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture & Protocols TCP-Friendly Transport Protocols.
Multicast on the Internet CSE April 2015.
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
Jump to first page A. Patwardhan, CSE Digital Fountains Main Ideas : n Distribution of bulk data n Reliable multicast, broadcast n Ideal digital.
Traffic Shaping Why traffic shaping? Isochronous shaping
Multi-Layer Switching Layers 1, 2, and 3. Cisco Hierarchical Model Access Layer –Workgroup –Access layer aggregation and L3/L4 services Distribution Layer.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli University of Calif, Berkeley and Lawrence Berkeley National Laboratory SIGCOMM.
L-21 Multicast. L -15; © Srinivasan Seshan, Overview What/Why Multicast IP Multicast Service Basics Multicast Routing Basics DVMRP Overlay.
Chapter 6 outline r 6.1 Multimedia Networking Applications r 6.2 Streaming stored audio and video m RTSP r 6.3 Real-time, Interactive Multimedia: Internet.
1 Version 3 Module 8 Ethernet Switching. 2 Version 3 Ethernet Switching Ethernet is a shared media –One node can transmit data at a time More nodes increases.
Computer Science 1 ShapeShifter: Scalable, Adaptive End-System Multicast John Byers, Jeffrey Considine, Nicholas Eskelinen, Stanislav Rost, Dmitriy Zavin.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
Rate Distortion Optimized Streaming Maryam Hamidirad CMPT 820 Simon Fraser Univerity 1.
Source-Adaptive Multilayered Multicast Algorithms for Real- Time Video Distribution Brett J. Vickers, Celio Albuquerque, and Tatsuya Suda IEEE/ACM Transactions.
CSE 561 – Multicast Applications David Wetherall Spring 2000.
588 Section 6 Neil Spring May 11, Schedule Notes – (1 slide) Multicast review –(3slides) RLM (the paper you didn’t read) –(3 slides) ALF & SRM –(8.
1 Version 3 Module 8 Ethernet Switching. 2 Version 3 Ethernet Switching Ethernet is a shared media –One node can transmit data at a time More nodes increases.
An Integrated Source Transcoding and Congestion Control Paradigm for Video Streaming in the Internet Proposed by R. Puri, K.W. Lee, K. Ramchandran and.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
CS335 Networking & Network Administration Tuesday, May 18, 2010.
Streaming Media. Unicast Redundant traffic Multicast One to many.
Forward Error Correction Steven Marx CSC45712/04/2001.
EE689 Lecture 12 Review of last lecture Multicast basics.
Streaming Video Gabriel Nell UC Berkeley. Outline Scalable MPEG-4 video – Layered coding method – Integrated transport-decoder buffer model RAP streaming.
Multicast Networking 2 References Multicast Networking and Applications Miller, C. Kenneth Addison-Wesley, 1999 Computer Networking:
An analysis of a router-based loss detection service for active reliable multicast protocols ICON’02, Singapor M. Maimour, C. Pham RESAM UCB Lyon - INRIA.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
Receiver-driven Layered Multicast Paper by- Steven McCanne, Van Jacobson and Martin Vetterli – ACM SIGCOMM 1996 Presented By – Manoj Sivakumar.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
Distributed Quality-of-Service Routing of Best Constrained Shortest Paths. Abdelhamid MELLOUK, Said HOCEINI, Farid BAGUENINE, Mustapha CHEURFA Computers.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
AD HOC WIRELESS MUTICAST ROUTING. Multicasting in wired networks In wired networks changes in network topology is rare In wired networks changes in network.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
IP Multicast COSC Addressing Class D address Ethernet broadcast address (all 1’s) IP multicast using –Link-layer (Ethernet) broadcast –Link-layer.
Multicast and Unicast Real-Time Video Streaming Over Wireless LANS April. 27 th, 2005 Presented by, Kang Eui Lee.
Björn Landfeldt School of Information Technologies NETS 3303 Networked Systems Multicast.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
Sem1 - Module 8 Ethernet Switching. Shared media environments Shared media environment: –Occurs when multiple hosts have access to the same medium. –For.
1 Flow and Congestion Control for Reliable Multicast Communication In Wide-Area Networks A Doctoral Dissertation By Supratik Bhattacharyya.
Scalable Video Coding and Transport Over Broad-band wireless networks Authors: D. Wu, Y. Hou, and Y.-Q. Zhang Source: Proceedings of the IEEE, Volume:
Page 1 The department of Information & Communications Engineering Dong-uk, kim A Survey of Packet Loss Recovery Techniques for Streaming.
Video Multicast over the Internet Presented by: Liang-Yuh Wu Lung-Yuan Wu Hao-Hsiang Ku 12 / 6 / 2001 Bell Lab. And Georgia Institute of Technologies IEEE.
Flow and Congestion Control for Reliable Multicast Communication In Wide-Area Networks Supratik Bhattacharyya Department of Computer Science University.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
4.6 Multicast at the Network Layer Introduction: The Internet multicast abstraction and multicast groups The IGMP Protocol Multicast.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #09: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—1-1 Course Introduction.
Chapter 6 outline r 6.1 Multimedia Networking Applications r 6.2 Streaming stored audio and video m RTSP r 6.3 Real-time, Interactive Multimedia: Internet.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
Mobile IP THE 12 TH MEETING. Mobile IP  Incorporation of mobile users in the network.  Cellular system (e.g., GSM) started with mobility in mind. 
Coding for Multipath TCP: Opportunities and Challenges Øyvind Ytrehus University of Bergen and Simula Res. Lab. NNUW-2, August 29, 2014.
Airmail: A Link-layer Protocol for Wireless Networks
Accelerating Peer-to-Peer Networks for Video Streaming
CMPE 252A: Computer Networks
Multicast Outline Multicast Introduction and Motivation DVRMP.
RSVP: A New Resource ReSerVation Protocol
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Video Multicast over the Internet (IEEE Network, March/April 1999)
Unequal Error Protection for Video Transmission over Wireless Channels
Feedback-jamming ARQ mechanisms
IP Multicast COSC /5/2019.
EE 122: Lecture 13 (IP Multicast Routing)
Presentation transcript:

FEC and Pseudo-ARQ for Receiver-driven Layered Multicast Philip A. Chou, Alex Mohr, Albert Wang, Sanjeev Mehrotra (Microsoft, University of Washington, Stanford)

Problem Efficient and robust broadcast of real-time audio and video over the near-term Internet –Best-effort packet loss, jitter, out-of-sequence –Heterogeneous transmission rate, loss rate, delay, jitter, receivers –Feedback available

Problem Find ways to multicast real-time audio and video efficiently and robustly over the near-term Internet –Best-effort packet loss, jitter, out-of-sequence –Heterogeneous transmission rate, loss rate, delay, jitter, receiver capacity –Dynamic Influence design of network services in longer term

Outline Multicast Receiver-driven Layered Multicast FEC and Pseudo-ARQ

Multicast Mechanism for broadcasting in packet networks: any receiver able to receive broadcast packets by tuning in to broadcast address Our focus: IP networks Protocols: –How to dynamically maintain a multicast routing tree IGMP, DVMRP/PIM/CBT/… –How to forward packets along the tree IP Multicast

Packet Forwarding in a Multicast Routing Tree S RR RRR 12 S,G | data : S,G - 1,2 : multicast routing table packetS = Source Address G = Multicast Group Address

Grafting / Joining / Subscribing S RR RRRRR 12 Join S,G : S,G - 1,2 : multicast routing table Join S,G : S,G - 1 : multicast routing table 1

Pruning / Leaving / Unsubscribing S RR RRR R multicast routing table R Leave S,G : S,G - 1 : 1 Leave S,G : S,G- 1, 2 : multicast routing table 1

Observations Bandwidth is conserved. Sender has no knowledge of receivers (likewise any interior router). Scalable: As new receivers join, no new resources (bandwidth, computation) are needed at the sender, and resources needed at any individual router are bounded. Joining and Leaving are a form of feedback.

Growth of Multicast Infrastructure MBONE has grown from 901 routers in 1994 to routers in 1998 Commercial routers (e.g., Cisco) have been multicast enabled for last two years ISPs (e.g., have begun to provide multicast service Intranets are widely multicast enabled Much research and standardization work

Reliable Multicast –1-to-M file transfer, distributed software updates, synch. of distributed databases, filesystems –must be reliable, but delay is not constrained Real-time Multicast –for broadcast of live or pre-recorded audio/video –need not be reliable, but delay is constrained Types of Multicast Applications

Reliable Multicast ARQ-based error control –need to avoid repeat request implosion –protocols use hierarchical re-transmitters (SRM, RMTP, RAMP, RMP, …) FEC-based error control –digital fountain Multiple channels for flow control

Real-time Multicast Error resilient source coding for error control –in MBONE tools (nv), commercial systems FEC-based error control –in MBONE tools (RAT), commercial systems –fixed amount of redundancy ARQ-based error control –commercial systems, LVMR Layered source coding for flow control

Receiver-driven Layered Multicast (S. McCanne 96) Base layer... to multicast group G0 Enh. layer 1... to multicast group G1 Enh. layer 2... to multicast group G2 time Code source in layers (base, enh1, enh2, …) Send each layer to different multicast group Receivers subscribe to as many layers as desired S0 t S0 t+1 S0 t+2 S0 t+3 S0 t+4 S0 t+5 S1 t S1 t+1 S1 t+2 S1 t+3 S1 t+4 S1 t+5 S2 t S2 t+1 S2 t+2 S2 t+3 S2 t+4 S2 t+5

Dynamic Joining/Leaving S RR RR R Receivers subscribe and unsubscribe according to instantaneous capacity transmission rate loss prob 1 0

The Case for FEC S RR RR R Problem is that ambient congestion may always be present transmission rate loss prob 1 0

FEC for Receiver-driven Layered Multicast Amount of redundancy must be receiver- driven to deal with heterogeneity, dynamics Generate FEC in layers, using a systematic rate-compatible code (for each source layer) Send each layer to different multicast group At each receiver, subscribe to number of source layers, number of parity layers for each source layer, to optimize received quality

Generation of Parity Packets Block each source layer into K packets per block Apply systematic Reed-Solomon type code to packets (bytewise) to produce N-K parity packets Source layer... to multicast group Gx Parity layer 1... to multicast group Gx.1 Parity layer 2... to multicast group Gx.2 Parity layer 3... to multicast group Gx.3 S tK S tK+1 S tK+2 S (t+1)K P t+1,1 P t,1 P t+1,2 P t,2 P t+1,3 P t,3 S (t+1)K+1 S (t+1)K+2 K N-K

Optimization at Each Receiver Measure transmission rate and loss probability For this transmission rate and loss probability, minimize expected distortion (over number of source layers, and number of parity layers for each source layer) Subscribe to optimal number of source layers, and optimal number of parity layers for each source layer

Expected Distortion and Rate layer D0D0 D1D1 … D8D8 D2D D3D3 … R i =N i /K p i =p(R i ) raw loss prob

Lagrangian Optimization 0132 R=N /K S1S1 S2S2 S3S3 …

Unequal Error Protection

The Case for ARQ FEC does not achieve capacity C = 1 p ARQ makes optimal use of forward channel Adapts to loss (erasure) probability p Used extensively for data transmission (e.g., TCP) and media transmission (e.g., VOD) Must avoid repeat-request implosion Observe: for broadcast of real-time media, delay (number of repeat-requests) is bounded

Pseudo-ARQ for Receiver-driven Layered Multicast Sender transmits delayed versions of source Receivers request repeats by subscribing and unsubscribing to delayed versions Source stream... to multicast group G Delayed stream 1... to multicast group G1 Delayed stream 2... to multicast group G2 time StSt S t+1 S t+2 S t+3 S t+4 S t+5 StSt S t-1 S t-2 StSt S t+1 S t+2 S t+3 S t+4 S t+2

S tK S tK+1 S tK+2 S (t+1)K P t+1,1 P t,1 P t,2 P t-1,2 P t,3 P t-1,3 S (t+1)K+1 S (t+1)K+2 Hybrid FEC & Pseudo-ARQ Sender delays parity packets Repeated info is actually parity info Source layer... to multicast group Gx Parity layer 1... to multicast group Gx.1 Parity layer 2 (delayed 1 block)... to multicast group Gx.2 Parity layer 3 (delayed 1 block)... to multicast group Gx.3 K=3 W=2 waves (decision epochs) Delay is blocklength times number of waves

Reduction in Network Traffic

Markov Decision Process Finite-state stochastic process in which a decision can be made at each step to influence the transition probabilities, in order to maximize an expected reward Sequence of decision rules is a policy Optimal policy, which minimizes expected cost (D+ R) of paths through state space, can be found by dynamic programming

State Space for FEC/Pseudo-ARQ # pkts to req # pkts recvd # pkts to req # pkts recvd

Caveats No experiments so far, only analysis –no actual network transmissions, no source coding, no channel coding –source is modeled as D= 2 2 2R –channel is modeled as iid 20% packet loss, no packet jitter or resequencing –assumed no join or leave latencies Little analysis of aggregate behavior

Analyzed Systems 1- No error protection (original RLM) 2- Equal error protection, redundancy determined by sender; K=8; N=11,14,17,20 3- Unequal error protection, determined by receiver; K=8; N i =N i * (RLM w/FEC) 4- FEC and Pseudo-ARQ; W=1,2,4,8, KW=8

Results of Analysis FEC/P-ARQ FEC (receiver) FEC (sender) original RLM

Issues for Further Investigation Estimation of channel condition Accommodation for join/leave latency Clustering of channels Study of aggregate (social) behavior Implementation

Summary FEC & Pseudo-ARQ allow error control when flow control alone is insufficient Layered (rate-compatible) FEC allows receiver-driven approach Pseudo-ARQ is more effective than FEC and uses only standard multicast machinery Hybrid FEC/Pseudo-ARQ enhances scalability Many issues remain for further investigation