Mohamed Hefeeda 1 School of Computing Science Simon Fraser University CMPT 820: Multimedia Systems Streaming Media Over Packet Networks Hamed S. Neshat.

Slides:



Advertisements
Similar presentations
Adobe’s Real Time Messaging Protocol
Advertisements

Channel Allocation Protocols. Dynamic Channel Allocation Parameters Station Model. –N independent stations, each acting as a Poisson Process for the purpose.
Variance reduction techniques. 2 Introduction Simulation models should be coded such that they are efficient. Efficiency in terms of programming ensures.
LOGO Video Packet Selection and Scheduling for Multipath Streaming IEEE TRANSACTIONS ON MULTIMEDIA, VOL. 9, NO. 3, APRIL 2007 Dan Jurca, Student Member,
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Chapter 28 Real-Time Traffic over the Internet.
Doc.: IEEE /0604r1 Submission May 2014 Slide 1 Modeling and Evaluating Variable Bit rate Video Steaming for ax Date: Authors:
G. Alonso, D. Kossmann Systems Group
2005/12/06OPLAB, Dept. of IM, NTU1 Optimizing the ARQ Performance in Downlink Packet Data Systems With Scheduling Haitao Zheng, Member, IEEE Harish Viswanathan,
Distributed Multimedia Systems
Presented by Scott Kristjanson CMPT-820 Multimedia Systems Instructor: Dr. Mohamed Hefeeda 1 Cross-Layer Wireless Multimedia.
1 “Multiplexing Live Video Streams & Voice with Data over a High Capacity Packet Switched Wireless Network” Spyros Psychis, Polychronis Koutsakis and Michael.
Efficient and Flexible Parallel Retrieval using Priority Encoded Transmission(2004) CMPT 886 Represented By: Lilong Shi.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Rate Distortion Optimized Streaming Maryam Hamidirad CMPT 820 Simon Fraser Univerity 1.
1 Complexity of Network Synchronization Raeda Naamnieh.
Worst-case Fair Weighted Fair Queueing (WF²Q) by Jon C.R. Bennett & Hui Zhang Presented by Vitali Greenberg.
Transport Layer 3-1 Transport Layer r To learn about transport layer protocols in the Internet: m TCP: connection-oriented protocol m Reliability protocol.
Distributed Video Streaming Over Internet Thinh PQ Nguyen and Avideh Zakhor Berkeley, CA, USA Presented By Sam.
Scalable On-Demand Media Streaming With Packet Loss Recovery Anirban Mahanti, Derek L. Eager, Mary K. Vernon, and David J. Sundaram-Stukel IEEE/ACM Trans.
Fundamental Abstractions Multimedia Over IP and Wireless Networks Section 14.3 Presented by Scott Kristjanson CMPT-820 Multimedia Systems Instructor: Dr.
Streaming Video Gabriel Nell UC Berkeley. Outline Scalable MPEG-4 video – Layered coding method – Integrated transport-decoder buffer model RAP streaming.
“On the Integration of MPEG-4 streams Pulled Out of High Performance Mobile Devices and Data Traffic over a Wireless Network” Spyros Psychis, Polychronis.
Proxy-based TCP over mobile nets1 Proxy-based TCP-friendly streaming over mobile networks Frank Hartung Uwe Horn Markus Kampmann Presented by Rob Elkind.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
Receiver-Driven Bandwidth Sharing for TCP and its Application to Video Streaming Puneet Mehra, Christophe De Vleeschouwer, and Avideh Zakhor IEEE Transactions.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
Multiple Sender Distributed Video Streaming Nguyen, Zakhor IEEE Transactions on Multimedia April 2004.
Introduction to Process Control
1 CMSCD1011 Introduction to Computer Audio Lecture 10: Streaming audio for Internet transmission Dr David England School of Computing and Mathematical.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
1 Transport Layer Computer Networks. 2 Where are we?
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Section 8.1 Estimating  When  is Known In this section, we develop techniques for estimating the population mean μ using sample data. We assume that.

FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets, 5e By Douglas E. Comer Lecture PowerPoints.
Threshold Phenomena and Fountain Codes Amin Shokrollahi EPFL Joint work with M. Luby, R. Karp, O. Etesami.
E0262 MIS - Multimedia Playback Systems Prof Pallapa Venkataram, Electrical Communication Engineering, Indian Institute of Science, Bangalore – ,
Introduction to Process Control
Streaming Media Control n The protocol components of the streaming n RTP/RTCP n RVSP n Real-Time Streaming Protocol (RTSP)
Network Performance. Performance (1) What would be the characteristics of the ideal network? –It would be completely transparent in every conceivable.
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:
E0262 MIS - Multimedia Playback Systems Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India.
Content caching and scheduling in wireless networks with elastic and inelastic traffic Group-VI 09CS CS CS30020 Performance Modelling in Computer.
Unit III Bandwidth Utilization: Multiplexing and Spectrum Spreading In practical life the bandwidth available of links is limited. The proper utilization.
Queuing Delay 1. Access Delay Some protocols require a sender to “gain access” to the channel –The channel is shared and some time is used trying to determine.
دانشگاه صنعتي اميركبير دانشكده مهندسي پزشكي استاد درس دكتر فرزاد توحيدخواه بهمن 1389 کنترل پيش بين-دکتر توحيدخواه MPC Stability-2.
Hongjie Zhu,Chao Zhang,Jianhua Lu Designing of Fountain Codes with Short Code-Length International Workshop on Signal Design and Its Applications in Communications,
4343 X2 – The Transport Layer Tanenbaum Ch.6.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Network Layer Lecture Network Layer Design Issues.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Optimization-based Cross-Layer Design in Networked Control Systems Jia Bai, Emeka P. Eyisi Yuan Xue and Xenofon D. Koutsoukos.
Chapter 28 Q and A IS 333 Spring A quiz question Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer.
Chapter 3: The Data Link Layer –to achieve reliable, efficient communication between two physically connected machines. –Design issues: services interface.
E0262 MIS - Multimedia Playback Systems Prof Pallapa Venkataram, Electrical Communication Engineering, Indian Institute of Science, Bangalore – ,
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
The Transport Layer Congestion Control & UDP
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
A Framework for Automatic Resource and Accuracy Management in A Cloud Environment Smita Vijayakumar.
Congestion Control, Internet transport protocols: udp
Provision of Multimedia Services in based Networks
Advanced Computer Networks
Computer Networks Protocols
Modeling and Evaluating Variable Bit rate Video Steaming for ax
Presentation transcript:

Mohamed Hefeeda 1 School of Computing Science Simon Fraser University CMPT 820: Multimedia Systems Streaming Media Over Packet Networks Hamed S. Neshat

Mohamed Hefeeda Outline  Introduction  Source coding, channel coding, sending, transmission and arrival rates  Source coding rate control -Control theoretical model -Control objective -Target schedule design -Controller design -Effect of frame rate -Controller interpretation 2

Mohamed Hefeeda Introduction (1)  Packet networks are -Neither isochronous nor lossless -Are shared by multiple communication  Networks have time-varying behaviour  Regardless of network conditions, with an average bandwidth, users expect -Low start-up delay -Continues play back -High quality, as much as possible  using buffer 3

Mohamed Hefeeda Introduction (2)  Buffering serves several distinct but simultaneous purposes: -It allows the media to be coded with a variable instantaneous bit rate -It allows the client to compensate for short term variation in packet transmission delay(i.e. jitter) -It allows the client to continue playing back the media during lapses in network bandwidth -It gives t he client time to perform pocket loss recovery if needed  This section is about how to keep the client buffer sufficiently full, on average, to serve all purposes. 4

Mohamed Hefeeda -R C : source coding rate -R S : sending rate - rate at which data injected into transport layer Measured in bits/s of client time -R X : transmission rate - rate which data injected into network layer (TCP or UDP) -R X - R S = error control overhead -R S / R X = channel coding rate is determined by the retransmission mechanism in TCP or by any other error control layer -R a : arrival rate the sending rate R S is over the long run equal to the arrival rate R a a 5 Source coding, channel coding, sending, transmission and arrival rates

Mohamed Hefeeda Source coding, channel coding, sending, transmission and arrival rates 6  Many streaming media practitioners assume: -except during the initial buffering period, during which v = 0 and R a > 0  Unlocking R c and R a cam lead to important advantages -makes possible continuous control of the number of seconds of content in the client buffer (client buffer duration) -makes efficient streaming possible with arbitrary transports, such as TCP, DCCP, or other proprietary transport protocols.

Mohamed Hefeeda  client buffer duration -That is, if R a > R c ν then the buffer duration increases; otherwise it decreases -in the long run, ν cannot remain very much different from the user’s preferred playback speed -arrival rate R a is essentially limited by the network capacity -R c is the only appropriate way to maintain the buffer duration  source coding rate control -Adjusting the source coding rate in the face of time-varying network conditions 7 Source coding, channel coding, sending, transmission and arrival rates

Mohamed Hefeeda 8  if compatibility with TCP is not required, then it is possible for the source coding rate control and the error control modules illustrated in Figure a to be combined into a single module, as illustrated in Figure b. -This is a joint source-channel coding problem sometimes known as the scheduling problem and is treated in detail in Chapter 10, using the RaDiO framework. Source coding, channel coding, sending, transmission and arrival rates

Mohamed Hefeeda Source coding rate control  The goal is to control the client buffer duration to a target by choosing R c as a function of -R a -the client buffer duration and its history  We assume there are multiple media streams with various bit rate available at the server 9

Mohamed Hefeeda Control Theoretic Model -frame n arrives at the client b(n)/Ra seconds after frame n − 1 -t a (n) :arrival time of frame n at the client. -t b (n) : upper bound, the time that frame n is guaranteed to arrive. -t d (n): the time at which frame n is scheduled to be instantaneously decoded and played 10

Mohamed Hefeeda Figure

Mohamed Hefeeda Control Theoretic Model  In reality the arrival rate is not constant -frame would take longer to be transmitted -frame arrival times would become increasingly delayed  Adjusting buffer duration by selecting different source coding rate R c. How?! - let t a (n − 1) and t a (n) be the arrival times of frames n and n−1, respectively. instantaneous arrival rate at frame n is : 12 R a > R c ν

Mohamed Hefeeda Control Theoretic Model -the average arrival rate at frame n will be estimated by a moving average ˜R a (n) of previous values of R a (n), as detailed in the Appendix. v(n) :an error term that captures the effect of using ˜R a (n) instead of R a (n). -How does the source coding rate R c fit into all this? 13

Mohamed Hefeeda Control Theoretic Model -From Figure 14.5, it is clear that the decoder buffer fullness F d = B −F e (n) can also be expressed as : 14

Mohamed Hefeeda Control Theoretic Model 15

Mohamed Hefeeda Control Theoretic Model -Finally, we can find this equation: -With (14.34), the client can compute t b (n−1). -Then using (14.36), the client can control the coding rate R c (n) so that t b (n) reaches a desired value, assuming the frame rate and arrival rate remain roughly constant. 16

Mohamed Hefeeda Control Theoretic Model 17

Mohamed Hefeeda Control Objective -uninterrupted playback can be achieved by regulating the coding rate so that the client buffer does not underflow. -target schedule: a margin of safety that increases over time -By regulating the coding rate, we attempt to control the buffer tube upper bound so that it tracks the target schedule. -If the buffer tube upper bound is close to the target schedule, then the arrival times of all frames will certainly be earlier than their playback deadlines and thus uninterrupted playback will be ensured 18

Mohamed Hefeeda Control Objective -We try to control the upper bound to the target schedule minimize quality variations due to large or frequent changes to the coding rate  the first term penalizes the deviation of the buffer tube upper bound from the target schedule  the second term penalizes the relative coding rate difference between successive frames.  N is the control window size and σ is a Lagrange multiplier or weighting parameter to balance the two terms. 19

Mohamed Hefeeda Target Schedule Design -The gap between the playback deadline and the target schedule is the desired minimum client buffer duration. -Small gap at the beginning : allows a small start-up delay -Larger gap over time: increases the client’s ability to counter jitter, delays, and throughput changes. 20

Mohamed Hefeeda Controller Design -We wish to control the upper bound by adjusting the source coding rate: -As each frame arrives at the client, a feedback loop can send a message to the server to adjust the source coding rate. -by the time frame n arrives completely at the client, frame n+1 has already started streaming from the server  at time t a (n), frame n + 2 is the earliest frame for which the controller can determine the coding rate 21

Mohamed Hefeeda Controller Design -By defining error rate: -We obtain: -So, -We next define the control input and disturbance: 22

Mohamed Hefeeda Controller Design -Then (14.50) can be rewritten -Therefore, defining the state vector: -Thus, 23

Mohamed Hefeeda Controller Design -Assuming, the disturbance d(n) is a pure white noise we can measure all components of e(n) without using an estimator(perfect state measurement )  Then, the disturbance d(n) does not affect the controller design. -Thus we can use a linear controller represented by: where G is a vector feedback gain 24

Mohamed Hefeeda Controller Design -By the time frame n is completely received, all elements of e(n) are available at the client and u(n) can thus be computed. The ideal coding rate for frame n+2 can then be computed as 25

Mohamed Hefeeda Effect of Frame Rate -Until now, we assumed that the frame rate is constant, but this assumption is not always true: usually video and audio are streamed together, and their merged coding schedule may have no fixed frame rate Even if there is a fixed frame rate f we may wish to operate the controller at a rate lower than f to reduce the feedback rate -To address these issues, in practice we use the notion of a virtual frame rate (f) -We partition media time into intervals of size 1/f ; -and we model all of the frames arriving within each interval as a virtual frame whose decoding and playback deadline is the end of the interval. 26

Mohamed Hefeeda Effect of Frame Rate  Advantages of using virtual frame rate: -it allows us to design off line a universal feedback gain, which is independent of the actual frame rate of the stream or streams. -it allows us to reduce the rate of feedback from the client to the server. -since the interval between virtual frames is typically safely larger than a round trip time (RTT), a one-frame delay in the error space model is sufficient to model the feedback delay.  In the sequel we therefore use a virtual frame rate f = 1 fps, and we refer to this simply as the frame rate. With f = 1 and σ = 50 (chosen empirically for good damping), we can solve for G = [0.6307,−0.5225, ]. 27

Mohamed Hefeeda Controller Interpretation  we are now able to give an intuitive explanation of the source coding rate control (14.57): 28

Mohamed Hefeeda Controller Interpretation -Focusing on the first term (14.63), it can be seen that the source coding rate Rc tends to decrease if the current error e(n) = tb(n)−tT (n) is positive, and it tends to increase if e(n) is negative -from the second term (14.64), it can be seen that the source coding rate tends to decrease if the current error e(n) is numerically greater than the previous error e(n − 1), whether e(n) is positive or negative -Finally, from the third term (14.65), it can be seen that the source coding rate tends to decrease if it had previously increased 29

Mohamed Hefeeda Controller Interpretation 30

Mohamed Hefeeda Conclusion 31  Packet networks are lossy and shared  Users expect good quality, given a an average bandwidth  For solving network problems, we have buffer at client  Good streaming depends on proper buffer duration  We can control buffer duration by regulating source coding rate

Mohamed Hefeeda 32

Mohamed Hefeeda 33