NUS.SOC.CS5248 OOI WEI TSANG 1 Previously, on CS5248..

Slides:



Advertisements
Similar presentations
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture & Protocols TCP-Friendly Transport Protocols.
Advertisements

NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Peer-to-Peer Streaming.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Adaptive Playout. NUS.SOC.CS5248 Ooi Wei Tsang 2 You are Here Network Encoder Sender Middlebox Receiver Decoder.
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.
Internet Video By Mo Li. Video over the Internet Introduction Video & Internet: the problems Solutions & Technologies in use Discussion.
1 NUS.SOC.CS5248 OOI WEI TSANG Playout Buffer Management.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) 1 Adaptive Playout.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
Multirate Congestion Control Using TCP Vegas Throughput Equations Anirban Mahanti Department of Computer Science University of Calgary Calgary, Alberta.
Source-Adaptive Multilayered Multicast Algorithms for Real- Time Video Distribution Brett J. Vickers, Celio Albuquerque, and Tatsuya Suda IEEE/ACM Transactions.
1 Sangeun Han, Athina Markopoulou Transmitting Scalable Video over a DiffServ network EE368C Project Proposal Sangeun Han, Athina Markopoulou 1/30/01.
1 Network-supported Rate Control Mechanism for Multicast Streaming Media Kiyohide NAKAUCHI, Hiroyuki MORIKAWA, and Tomonori AOYAMA, School of Engineering,
CSE 561 – Multicast Applications David Wetherall Spring 2000.
End-to-End TCP-Friendly Streaming Protocol and Bit Allocation for Scalable Video Over Wireless Internet Fan Yang, Qian Zhang, Wenwu Zhu, and Ya-Qin Zhang.
Multimedia Robert Grimm New York University. Before We Get Started…  Digest access authentication  What is the basic idea?  What is the encoding? 
NUS.SOC.CS Roger Zimmermann (based on slides by Ooi Wei Tsang) Systems Support for Continuous Media.
Computer Networks Multimedia and Multicast. Outline F Multimedia Overview F Receiver-Driven Layered Multicast F UDP Sockets (coming soon) F IP Multicast.
Multimedia Robert Grimm New York University. Content: Multimedia Overview  Multimedia = audio and video  Saroiu et al.—An Analysis of Internet Content.
EE689 Lecture 14 Review of Last lecture Receiver-driven Layered Multicast.
1 Design study for multimedia transport protocol in heterogeneous networks Haitao Wu; Qian Zhang; Wenwu Zhu; Communications, ICC '03. IEEE International.
Streaming Media. Unicast Redundant traffic Multicast One to many.
A Real-Time Video Multicast Architecture for Assured Forwarding Services Ashraf Matrawy, Ioannis Lambadaris IEEE TRANSACTIONS ON MULTIMEDIA, AUGUST 2005.
1 Cooperative Inter-stream Rate Control Scheme for Layered Multicast Masato KAWADA, Hiroyuki MORIKAWA, Tomonori AOYAMA, School of Engineering, The University.
Achieving Inter-Session Fairness for Layered Video Multicast Wei Kyang Lau and Chieh Ying Pan, Department of computer science and engineering, National.
Medium Start in TCP-Friendly Rate Control Protocol CS 217 Class Project Spring 04 Peter Leong & Michael Welch.
Streaming Video Gabriel Nell UC Berkeley. Outline Scalable MPEG-4 video – Layered coding method – Integrated transport-decoder buffer model RAP streaming.
Fine-Grained Layered Multicast John Byers Dept. of Computer Science, Boston University Digital Fountain, Inc.
Peter Parnes, CDT1/22 Media Scaling of IP-Multicast Streams in Heterogeneous Networks Peter Parnes LTU-CDT/Marratech Roxy Workshop Media Scaling.
Prof. Reza Rejaie Computer & Information Science University of Oregon Winter 2003 An Overview of Internet Multimedia Networking.
CS :: Fall 2003 Layered Coding and Networking Ketan Mayer-Patel.
Nus.soc.cs5248 Ooi Wei Tsang Recent Papers from conferences.
Receiver-driven Layered Multicast Paper by- Steven McCanne, Van Jacobson and Martin Vetterli – ACM SIGCOMM 1996 Presented By – Manoj Sivakumar.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Application-Level Multicast.
1 Cache Me If You Can. NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
1 Dude, Where is My Packet?. NUS.SOC.CS5248 OOI WEI TSANG 2 Overview Characteristics of the Internet General techniques Error recovery for audio Effect.
NUS.SOC.CS5248 Ooi Wei Tsang Previously, on CS5248..
NUS.SOC.CS Roger Zimmermann (based on slides by Ooi Wei Tsang) Systems Support for Continuous Media.
An End-to-End Adaptation Protocol for Layered Video Multicast Using Optimal Rate Allocation Jiangchuan Liu, Member, IEEE, Bo Li, Senior Member, IEEE, and.
NUS.SOC.CS5248 Ooi Wei Tsang Systems Support for Continuous Media OOI WEI TSANG.
CIS679: Multicast and Multimedia (more) r Review of Last Lecture r More about Multicast.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) 1 Proxy Caching for Streaming Media.
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.
NUS.SOC.CS5248 Ooi Wei Tsang Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang Deadlines 11 Oct: Survey Paper Due 18 Oct: Paper Reviews Due.
NUS.SOC.CS Roger Zimmermann (based on slides by Ooi Wei Tsang) Systems Support for Continuous Media.
Computer Networking Lecture 18 – More TCP & Congestion Control.
NUS.SOC.CS5248 Ooi Wei Tsang Rate Adaptations. NUS.SOC.CS5248 Ooi Wei Tsang You are Here Network Encoder Sender Middlebox Receiver Decoder.
NUS.SOC.CS5248 Ooi Wei Tsang Application-Level Multicast.
An Adaptive Video Streaming Control System: Modeling, Validation, and Performance Evaluation PRESENTED BY : XI TAO AND PRATEEK GOYAL DEC
NUS.SOC.CS5248 Ooi Wei Tsang 1 Proxy Caching for Streaming Media.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Rate Adaptations.
Motion-JPEG2000 Video Transmission Over Active Network Ruibiao Qiu.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Application-Level Multicast.
Multicast & Multimedia CS731 Wei Tsang Ooi. Overview What is Multicast ? Group Management (IGMP) Routing Protocols (DVMRP, MOPSF, CBT, PIM-DM, PIM-SM)
Real-time Transport for Assured Forwarding: An Architecture for both Unicast and Multicast Applications By Ashraf Matrawy and Ioannis Lambadaris From Carleton.
An End-to-End Adaptation Protocol for Layered Video Multicast Using Optimal Rate Allocation Jiangchuan Liu, Member, IEEE, Bo Li, Senior Member, IEEE, and.
NUS.SOC.CS5248 Ooi Wei Tsang Systems Support for Continuous Media.
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Rate Adaptations.
CMPE 252A: Computer Networks
CS5248: Systems Support for Continuous Media
Proxy Caching for Streaming Media
Rate Adaptations.
Project Proposal Due Next Mon. Submit by
Application-Level Multicast
Error Recovery.
Rate Adaptations.
Adaptive Playout.
Presentation transcript:

NUS.SOC.CS5248 OOI WEI TSANG 1 Previously, on CS5248..

NUS.SOC.CS5248 OOI WEI TSANG 2 Idea Adjust sending rate based on network conditions

NUS.SOC.CS5248 OOI WEI TSANG 3 Part 1: Detecting Congestion Bolot and Tulertti if median loss rate > threshold then decrease rate else increase rate

NUS.SOC.CS5248 OOI WEI TSANG 4 Part 1: Detecting Congestion Busse, Deffner and Schulzrine if a lot of congested receivers decrease rate if a lot of unloaded receivers increase rate else do nothing

NUS.SOC.CS5248 OOI WEI TSANG 5 Multiple receivers Heterogeneity Issues Scalability Issues (Another Lecture..) THIS

NUS.SOC.CS5248 OOI WEI TSANG 6 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 7 McCanne, Jacobson, and Vetterli "Receiver-driven layered multicast," ACM SIGCOMM 96 Wu, Sharma, and Smith, "Thin Streams: An architecture for multicasting layered video,“ NOSSDAV 97

NUS.SOC.CS5248 OOI WEI TSANG 8 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 9 Amir, McCanne, and Zhang. "An application level video gateway." ACM MM 95

NUS.SOC.CS5248 OOI WEI TSANG 10 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 11 Bolot, Turletti, and Wakeman. "Scalable feedback control for multicast video distribution in the internet," ACM SIGCOMM 94.

NUS.SOC.CS5248 OOI WEI TSANG 12 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 13 Receiver- Driven Layered Multicast McCanne, Jacobson & Vetterli SIGCOMM 96

NUS.SOC.CS5248 OOI WEI TSANG 14 Internet Heterogeneity 2 Mbps 40kbps 56kbps

NUS.SOC.CS5248 OOI WEI TSANG 15 Heterogeneous Clients How to satisfy receivers with different requirements?

NUS.SOC.CS5248 OOI WEI TSANG 16 Method 1: Simulcast Send multiple streams

NUS.SOC.CS5248 OOI WEI TSANG 17 Method 2: Rate Adaptation Send one stream

NUS.SOC.CS5248 OOI WEI TSANG 18 Method 3: Layered Multicast Layer 1 Layer 2Layer 3

NUS.SOC.CS5248 OOI WEI TSANG 19 Layering Scheme Temporal Layering

NUS.SOC.CS5248 OOI WEI TSANG 20 Layering Scheme Spatial Layering

NUS.SOC.CS5248 OOI WEI TSANG 21 Layering Scheme DCT Layering

NUS.SOC.CS5248 OOI WEI TSANG 22 Layering Scheme Fine Granularity Scalability (FGS)

NUS.SOC.CS5248 OOI WEI TSANG 23 Layered Multicast 1 Layer : 1 Multicast Group Receiver subscribes to as many layers as desired

NUS.SOC.CS5248 OOI WEI TSANG 24 RLM Example

NUS.SOC.CS5248 OOI WEI TSANG 25 Question How many layers is enough?

NUS.SOC.CS5248 OOI WEI TSANG 26 Solution: Join Experiment highest layer = 1 join layer 1 while no packet loss highest layer ++ join next layer leave highest layer highest layer --

NUS.SOC.CS5248 OOI WEI TSANG 27 Details T join Time between join experiments T detect Time taken to detect packet loss

NUS.SOC.CS5248 OOI WEI TSANG 28 Effects of T join Need to converge to the right level quickly T join should be small Repeated failed experiments congest networks T join should be large

NUS.SOC.CS5248 OOI WEI TSANG 29 Adapting T join One T join per layer if join experiment for layer k fails T join (k) = T join (k)*2

NUS.SOC.CS5248 OOI WEI TSANG 30 Example

NUS.SOC.CS5248 OOI WEI TSANG 31 Adapting T detect Set T detect to large initial value Estimate T detect with mean and deviation Mesure time between join and packet loss occur

NUS.SOC.CS5248 OOI WEI TSANG 32 Two Problems 1. Interference 2. Scalability

NUS.SOC.CS5248 OOI WEI TSANG 33 Problem 1: Interference

NUS.SOC.CS5248 OOI WEI TSANG 34 Problem 1: Interference I see, layer 2 is bad for me..

NUS.SOC.CS5248 OOI WEI TSANG 35 Problem 2: Scalability Lots of receivers Lots of experiments Lots of congestions

NUS.SOC.CS5248 OOI WEI TSANG 36 Solution: Shared Learning I am joining layer 2, do not disturb!

NUS.SOC.CS5248 OOI WEI TSANG 37 Solution: Shared Learning

NUS.SOC.CS5248 OOI WEI TSANG 38 Solution: Shared Learning I am joining layer 3, do not disturb!

NUS.SOC.CS5248 OOI WEI TSANG 39 Solution: Shared Learning I see, layer 3 is bad for me..

NUS.SOC.CS5248 OOI WEI TSANG 40 Shared Learning Conservative: learn from failure not success Improve convergence time Give priority to low-layer experiments

NUS.SOC.CS5248 OOI WEI TSANG 41 Evaluation

NUS.SOC.CS5248 OOI WEI TSANG 42 Evaluation

NUS.SOC.CS5248 OOI WEI TSANG 43 Problems Failed join experiments are bad Interference across sessions?

NUS.SOC.CS5248 OOI WEI TSANG 44 Thin Streams Linda Wu, Rosen Sharma and Brian Smith NOSSDAV ‘97

NUS.SOC.CS5248 OOI WEI TSANG 45 Problems Failed join experiments are bad Interference across sessions?

NUS.SOC.CS5248 OOI WEI TSANG 46 How bad is failed experiments? R: sending rate of a layer T j : IGMP join latency T l : IGMP leave latency Buffer space at the router = R*(T j + T detect + T l )

NUS.SOC.CS5248 OOI WEI TSANG 47 Reduce Buffer Space Reducing R Many layers, each with small bandwidth Reducing T l Sharma designed IGMP v2.0 Reducing T detect Rely on throughput rather than congestions

NUS.SOC.CS5248 OOI WEI TSANG 48 Reducing T detect Detect congestion before packet drops E: Expected Throughput A: Actual Throughput

NUS.SOC.CS5248 OOI WEI TSANG 49 Calculating A & E R: bandwidth of one layer I: measurement interval N: number of bytes received in I G: number of layers joined A = aA + (1-a)N/I E = aE + (1-a)GR

NUS.SOC.CS5248 OOI WEI TSANG 50 Thin Streams Join-Leave Algo do every I seconds if (E-A) > C leave leave else if (E-A) < C join and time since last leave > T wait join

NUS.SOC.CS5248 OOI WEI TSANG 51 More Parameters T wait and C leave Affect convergence rate and fairness Large G : small C leave : large T wait

NUS.SOC.CS5248 OOI WEI TSANG 52 Problems Failed join experiments are bad Interference across sessions?

NUS.SOC.CS5248 OOI WEI TSANG 53 Interference Across Sessions Synchronize join experiments within session Reduce period of congestions

NUS.SOC.CS5248 OOI WEI TSANG 54 Interference Across Sessions Desynchronize join experiments across session

NUS.SOC.CS5248 OOI WEI TSANG 55 Estimating IGMP Leave Latency Time between leave and join Time between join and first packet

NUS.SOC.CS5248 OOI WEI TSANG 56 RLM/ThinStream’s Problems Need lots of multicast addresses Need support from codec Does not solve format heterogeneity problem

NUS.SOC.CS5248 OOI WEI TSANG 57 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 58 Application- Level Media Gateway Amir, McCanne, Zhang ACM MM’ 95

NUS.SOC.CS5248 OOI WEI TSANG 59 Gateway Architecture H kbps H kbps MJPEG 6Mbps

NUS.SOC.CS5248 OOI WEI TSANG 60 Recall.. Motion-JPEG Every frame is a JPEG H.261 I-Frames and P-Frames

NUS.SOC.CS5248 OOI WEI TSANG 61 Intra-H.261 Motion compensation too complicated Use “conditional replenishment”

NUS.SOC.CS5248 OOI WEI TSANG 62 Conditional Replenishment

NUS.SOC.CS5248 OOI WEI TSANG 63 Conditional Replenishment

NUS.SOC.CS5248 OOI WEI TSANG 64 Conditional Replenishment

NUS.SOC.CS5248 OOI WEI TSANG 65 How to transcode? JPEG UncompressDequantizeIDCT CompressQuantizeDCT h261 Replenish

NUS.SOC.CS5248 OOI WEI TSANG 66 How to transcode? UncompressDequantize IDCT CompressQuantize DCTReplenish JPEG h261

NUS.SOC.CS5248 OOI WEI TSANG 67 Short Cut! UncompressDequantizeIDCT CompressQuantizeDCTReplenish JPEG h261

NUS.SOC.CS5248 OOI WEI TSANG 68 Compressed-domain Processing Replenishment

NUS.SOC.CS5248 OOI WEI TSANG 69 Other CDP Changing Resolutions Color Subsampling 4:2:2 to 4:2:0

NUS.SOC.CS5248 OOI WEI TSANG 70 Evaluation Frame rate improvement 12.9 fps to 33.3 fps (low motion) 6.9 fps to 21.4 fps (high motion)

NUS.SOC.CS5248 OOI WEI TSANG 71 Today’s Lecture Network Encoder Sender Middlebox Receiver Decoder

NUS.SOC.CS5248 OOI WEI TSANG 72 Scalable Feedback Bolot,Turletti & Wakeman SIGCOMM 95

NUS.SOC.CS5248 OOI WEI TSANG 73 Problem How can a large number of receivers feedback to the sender? How to know the number of receivers?

NUS.SOC.CS5248 OOI WEI TSANG 74 Three Approaches Probabilistic Query Randomly Delayed Responses TTL Scoped Search

NUS.SOC.CS5248 OOI WEI TSANG 75 BTW’s Idea Sender and receivers each generate random key of i bits K send : Key of sender K k : Key of receiver k

NUS.SOC.CS5248 OOI WEI TSANG 76 Sender Probe Multicast probe(K send, m) if K k matches m most significant bits of K send reply to sender

NUS.SOC.CS5248 OOI WEI TSANG 77 High-Level Mechanism foreach epoch generate K send for round j = 0 to i send probe(K send, i – j) if enough responses break wait to start next epoch

NUS.SOC.CS5248 OOI WEI TSANG 78 The Details Probe packets Sender’s Key (K send )

NUS.SOC.CS5248 OOI WEI TSANG 79 The Details Probe packets Number of bits to match (m)

NUS.SOC.CS5248 OOI WEI TSANG 80 The Details Probe packets SIZESOLICITED: I need to estimate the size

NUS.SOC.CS5248 OOI WEI TSANG 81 Soliciting Size Sender set SIZESOLICITED to 1 at the beginning of an epoch Receiver reply if key matches

NUS.SOC.CS5248 OOI WEI TSANG 82 Estimating Number of Receivers Overview Calculate E[X], average number of rounds to first reply Express n = f(E[X])

NUS.SOC.CS5248 OOI WEI TSANG 83 Estimating Num. of Receivers P j Prob. that 1 st reply in round j i Number of bits in key Reply in round j == match i-j MSB

NUS.SOC.CS5248 OOI WEI TSANG 84 Estimating Num. of Receivers if j = 0 then P j = 2 -i else P j = 2 j-1 /(2 i -2 j-1 )

NUS.SOC.CS5248 OOI WEI TSANG 86 Estimating Num. of Receivers r j : Num. of replies in round j P(r j > 0 | r j-1 = 0) = 1-(1-p j ) n P(r j-1 = 0) = (1 – 2 j-1-i ) n P(r j > 0 & r j-1 = 0) = F(j) = [1-(1-p j ) n ][(1- 2 j-1-i ) n ]

NUS.SOC.CS5248 OOI WEI TSANG 87 Estimating Num. of Receivers E[X] =

NUS.SOC.CS5248 OOI WEI TSANG 88 Expected Round log E[X] n

NUS.SOC.CS5248 OOI WEI TSANG 89 Estimating Num. of Receivers n ~

NUS.SOC.CS5248 OOI WEI TSANG 90 The Details Probe packets current worst state: Congested, Loaded, Unloaded

NUS.SOC.CS5248 OOI WEI TSANG 91 Reporting State Sender send current worst state Receiver if key matches and if my state is worse than sender’s state, reply with my state

NUS.SOC.CS5248 OOI WEI TSANG 92 The Details Probe packets maximum RTT

NUS.SOC.CS5248 OOI WEI TSANG 93 Usage of RTT Receiver After responding, keep quite for a period of RTT Sender Time between rounds = 2*RTT

NUS.SOC.CS5248 OOI WEI TSANG 94 The Details Probe packets RTTSOLICITED: I need to estimate RTT

NUS.SOC.CS5248 OOI WEI TSANG 95 The Details Probe packets rttshft: reply after random 0..(1<<rttshft)

NUS.SOC.CS5248 OOI WEI TSANG 96 Estimate RTT Receiver T = uniform(0, 2 rttshft ) Wait for T Reply with probe’s timestamp + T Sender Set RTT to the worst received “smoothed” with moving average

NUS.SOC.CS5248 OOI WEI TSANG 97 Today’s Summary

NUS.SOC.CS5248 OOI WEI TSANG 98 Heterogeneity and Scalability Handle receivers with different requirements RLM, Thin Streams Transcoding in Middleboxes Communicate with lots of receivers Random helps!

NUS.SOC.CS5248 OOI WEI TSANG 99 Survey/Project Topics Better layered multicast schemes Estimating multicast session size More scalable feedback algorithms