Prof. Reza Rejaie Computer & Information Science University of Oregon Winter 2003 An Overview of Internet Multimedia Networking.

Slides:



Advertisements
Similar presentations
Streaming Video over the Internet
Advertisements

RTP/RTCP multimedia protocols for the Internet Center for Software Development CSD, BITS - Pilani CopyRight:
Multimedia Systems As Presented by: Craig Tomastik.
29.1 Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
29.1 Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
RTP: A Transport Protocol for Real-Time Applications Provides end-to-end delivery services for data with real-time characteristics, such as interactive.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 25 Multimedia.
User Control of Streaming Media: RTSP
Multimedia Streaming Protocols1 Multimedia Streaming: Jun Lu Xinran (Ryan) Wu CSE228 Multimedia Systems Challenges and Protocols.
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.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
Streaming Video over the Internet: Approaches and Directions Dapeng Wu, Yiwei Thomas Hou et al. Presented by: Abhishek Gupta
CS294-9 :: Fall 2003 ALF and RTP Ketan Mayer-Patel.
Streaming Media. Unicast Redundant traffic Multicast One to many.
CSc 461/561 CSc 461/561 Multimedia Systems 0. Introduction.
Real-time Transport Protocol Matt Boutell CS457: Computer Networks November 15, 2001.
Multimedia Applications r Multimedia requirements r Streaming r Phone over IP r Recovering from Jitter and Loss r RTP r Diff-serv, Int-serv, RSVP.
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 1. RTP/RTCP.
Media Streaming Protocols Presented by: Janice Ng and Yekaterina Tsipenyuk May 29 th, 2003 CSE 228: Multimedia Systems.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Prof. Reza Rejaie Computer & Information Science University of Oregon Winter 2003 An Overview of Internet Multimedia Networking.
Reza Rejaie AT&T Labs - Research1 Reza Rejaie AT&T Labs – Research Menlo Park, CA. ICON 2000 In collaboration with Mark.
Reza Rejaie CIS UO1 Prof. Reza Rejaie Computer & Information Science University of Oregon Fall 2002 Multimedia.
RTP/RTCP – Real Time Transport Protocol/ Real Time Control Protocol Presented by Manoj Sivakumar.
RTP: A Transport Protocol for Real-Time Applications
RTP/RTCP(RFC 1889) Real-time transport protocol (RTP) is the de facto standard media transport protocol in the Internet Media transport: audio, vedio,
CS640: Introduction to Computer Networks
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
CIS679: RTP and RTCP r Review of Last Lecture r Streaming from Web Server r RTP and RTCP.
Multimedia Communications
Ch 7. Multimedia Networking Myungchul Kim
Multimedia Communications Student: Blidaru Catalina Elena.
Computer Networks: Multimedia Applications Ivan Marsic Rutgers University Chapter 3 – Multimedia & Real-time Applications.
Streaming Stored Audio and Video (1) and Video (1) Advanced Multimedia University of Palestine University of Palestine Eng. Wisam Zaqoot Eng. Wisam Zaqoot.
Introduction to Quality of Service. Engineering Internet QoS2  What is QoS?  Why QoS?  Large Bandwidth vs QoS?  Networking Trends Leading to QoS 
Chapter 5: Summary r principles behind data link layer services: m error detection, correction m multiple access protocols m link layer addressing, ARP.
Multimedia Over IP: RTP, RTCP, RTSP “Computer Science” Department of Informatics Athens University of Economics and Business Λουκάς Ελευθέριος.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
1 Lecture 17 – March 21, 2002 Content-delivery services. Multimedia services Reminder  next week individual meetings and project status report are due.
E Multimedia Communications Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia.
Voice Over Internet Protocol (VoIP). Basic Components of a Telephony Network.
Sudarsun S 1 Audio and Video over Internet Sudarsun S., M.Tech Checktronix India Pvt Ltd Chennai
Real Time Protocol (RTP) 김 준
Streaming Media Control n The protocol components of the streaming n RTP/RTCP n RVSP n Real-Time Streaming Protocol (RTSP)
03/11/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Streaming 1.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 28 Multimedia.
Chapter 28. Network Management Chapter 29. Multimedia
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 20 – Multimedia Session Protocols Klara Nahrstedt Spring 2012.
Ch 6. Multimedia Networking Myungchul Kim
CSE5803 Advanced Internet Protocols and Applications (14) Introduction Developed in recent years, for low cost phone calls (long distance in particular).
E Multimedia Communications Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Ch 6. Multimedia Networking Myungchul Kim
CS :: Fall 2003 Introduction Topics in Multimedia Computing and Networking Ketan Mayer-Patel.
An Extensible RTCP Control Framework for Large Multimedia Distributions Paper by: Julian Chesterfield Eve M. Schooler Presented by: Phillip H. Jones.
Multimedia Streaming I. Fatimah Alzahrani. Introduction We can divide audio and video services into three broad categories: streaming stored audio/video,
1 Internet Telephony: Architecture and Protocols an IETF Perspective Authors:Henning Schulzrinne, Jonathan Rosenberg. Presenter: Sambhrama Mundkur.
RTP/RTCP/RTSP Ben Biro CISC 856 – Spring '10 University of Delaware Thanks to Professor Amer, Henning Schulzrinne, Colin Perkins, Amit Hetawal.
Multimedia Communication Systems Techniques, Standards, and Networks Chapter 6 Multimedia Communication Across Networks.
Networked Multimedia Basics. Network Characteristics.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
The Transport Layer Congestion Control & UDP
Real-Time Transport Protocol
Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Klara Nahrstedt Spring 2012
RTP: A Transport Protocol for Real-Time Applications
RTP – Real-time Transport Protocol
Chapter 25 Multimedia TCP/IP Protocol Suite
Multimedia networking: outline
Multimedia networking: outline
Presentation transcript:

Prof. Reza Rejaie Computer & Information Science University of Oregon Winter 2003 An Overview of Internet Multimedia Networking

Motivation There is a wide range of applications for streaming (audio/video) over the Internet such as Tele-conferencing, Distance learning, Internet- telephony, Media on-demand Our main focus is on transport mechanisms for streaming applications How to stream mm objects through the network/Internet in a large scale

Multimedia streams Digitized mm streams have high bandwidth, example: 30 frames/sec * 512*512 pix/frame * 16 bits/pix => BW ~ 125 Mbps Other examples: Telephone quality audio: 64 Kbps CD quality audio: 1.5 Mbps Bcast quality NTSC: 120 Mbps Studio quality NTSC: 200 Mbps HDTV: 1-2 Gbps  mm streams are often compressed/encoded

Audio Taxonomy [from K. Meyer unc] CompressedUncompressed  -law A-law Linear PCM Speech-basedGeneral LPC-10E CELP GSM ADPCM Dolby AC-3 MPEG-1 L3 MPEG-2 AAC DTS SDDS THX MiniDisc (ATRAC)

Video Taxonomy [from k. Meyer unc] CompressedUncompressed AnalogDigitalTapeStreaming Digital Betacam DV DVCAM DVCPro (D-7) Digital-8 D-9 DVCPro50 MPEG-1 MPEG-2 MPEG-4 M-JPEG H.261 H.263+ Real Sorenson Indeo Cinepak Video for Windows D-1 (CCIR 601) D-2 D-5 VHS S-Video Betacam Video-8 Hi-8 Betamax

Encoding/Compression Encoding mechanisms (e.g. MPEG) are used to compress audio/video signals Encoding audio & video Average BWenc depends on: Encoding algorithm Desired quality Tradeoff between compression efficiency and loss resiliency Average BWenc is rather constant but BWenc could be bursty Encoder Decoder A/V Source Display I P B BW enc quality

Streaming Applications Characterizations: Continuous media (audio, video)  Periodic transmission Timing dependency Requires quality instead of reliability

Internet Src Rcv Throughput= amount of arriving data per unit of time Inter-packet arrival time End-to-end (one-way) Delay Network Streaming: Basics Loss Delay Bandwidth

Networks: Packet- vs Circuit-switching Paradigm Circuit switch networks + Performance guarantees - Lower network utilization  Appropriate for homogeneous flow, e.g. telephone network Packet switch networks + Statistical multiplexing => Higher network utilization - Unpredictable performance (bw, loss, delay) Appropriate for heterogeneous flows, e.g. Internet

Multimedia Networking: Alternative solutions 1) Add new services to the network (QoS)  Integrated Services (IntServ)  Differentiated Services (DiffServ) 2) Enable applications to cope with best-effort service  Adaptive streaming applications Encoder Decoder Display BW enc quality BW ave

Streaming over IntServ networks IntServ (i.e. RSVP) Performance guarantee Smooth multimedia stream to deliver through a CBR channel in order to prevent Buffer overflow Buffer underflow Smoothing Encoder Decoder Display BW enc quality BW ave

Internet Src Rcv Throughput= amount of arriving data per unit of time Inter-packet arrival time End-to-end (one-way) Delay Jitter!! Internet Streaming: Basics Buf Loss

Streaming over best-effort networks (Internet) Best effort service Available BW? Loss rate and pattern? Jitter? Out of order delivery Resources are shared Data sources should adjust their transmission with network load.  Congestion Control BW ave Internet

Different Types of Streaming Applications 1) Live vs Pre- Recorded (on-demand) Availability of future data Ex: watching a live vs rebroadcast concert 2) Interactive vs Non-interactive (lecture-mode) Level of interactivity is limited by e2e delay Interactive applications can not tolerate more than 250 ms delay Interactivity and Liveliness are orthogonal issues Any combination is possible, but some may not be as useful, e.g. pre-recorded & interactive

Delay sensitivity of Streaming App. The higher the level of interactions, the higher the sensitivity to delay, the lower the amount of buffered data  Internet telephony, Video conferencing  Video games  Live but non-interactive (i.e. lecture-mode)  On-demand playback of stored video Less Interactive

Adaptive Streaming Applications Cong. Ctrl Buffer Decoder Server Display Encoder Source TCP Internet QualityAdapt Basic issues 1) Buffering 2) Packetization 3) Synchronization 4) Signaling Transport Protocol Congestion control Error control Quality adaptation Adaptive Encoding

1) Buffering Client Buffering is used to cope with network jitter No upper bound for Jitter => late pkts Avoid buffer overflow & underflow Buffering is also useful to absorb (short- term) variations in available BW Buffering adds to end-to-end delay Inappropriate for interactive apps

2) Packetization Each packet includes: Header: Sequence number, Time-stamp, … Body: Payload Unique sequence number per packet Used to detect packet loss, reordering Multiple packets may have same timestamp A big frame is fragmented into several packets Application Level Framing (ALF) [Clark & Tennenhouse, 1990] Design principle

Application Level Framing Data should be organized into units that is most meaningful for the app Application Data Unit (ADU) Example ADU for video or audio streams? Data is exchanged between app. and transport in terms of ADU App constructs an ADU that fits in network packets, i.e. Max. Transmission Unit (MTU) A large video frame may be fragmented Several small audio samples may fit in a packet Packetization

3) Synchronization Audio & video streams are separated!! Need a way to couple audio/video Inter- vs Intra media synchronization Synchronizing audio and video streams, i.e. lip-sync Packet time-stamp may be used for inter- and intra-media synchronization

Real-time Transport Protocol(RTP) RTP provides end-to-end network transport functions for “transmitting real-time data” Sequence numbering, time-stamping RTP does not provide any QoS guarantees RTP follows ALF principles RTP primarily designed for multicast, but it works with unicast Audio & video are sent through separate RTP sessions

RTP (Cont’d) RTP is an “incomplete” protocol framework Only includes common functions across all the apps RTP should be tailored through modifications and/or additions to the header => RTP profile RTP profile includes application-specific info, e.g. payload type & mapping into payload formats RTCP is the Control Protocol RTP & RTCP are independent of underlying transport and network layer Typically run over UDP/IP

Packet Format |V=2|P|X| CC |M| PT | sequence number | | timestamp | | synchronization source (SSRC) identifier | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | contributing source (CSRC) identifiers | |.... | V: Version/P: Padding/X: Hdr Extension/CC: no of CSRC/M: marker for frame boundary/PT: payload type/seqnum/ts/SSRC: unique src id/CSRC

RTCP Provides feedback on the quality of data delivery All participants send RTCP feedback to the entire group Adjust feedback rate to scalable, i.e. bigger group => lower feedback rates RTCP packet might include: SR: sender report RR: receiver report, reception statistics SDEC: member description.. and more

4) Signaling, Control Protocol Provide remote control functions for a client RTSP provides these functionalities RTSP runs over TCP Setup OK Play OK Data Acks Teardown OK

Protocol Stack IP UDP RTP/RTCP TCP RTSP

Transport Issues 1) Congestion Control (CC) How to determine available bw and adjust transmission rate? 2) Error Control (EC) How to detect and correct lost packets? 3) Quality Adaptation (QA) How to adaptively match quality (i.e. bw) of stream with available bw? Can we use TCP for streaming applications?

Congestion Control The Problem: how to determine available bw without any help from the network? Why is it a hard problem? Basic idea: Decrease tx rate when congestion occurs Increase tx rate to probe for excess capacity How to detect a congestion and excess capacity?

Main Components 1) Decision Function Incr. or Decr.? 2) Increase/Decrease Algorithm How much to Incr./Decr.? 3) Decision Frequency How often? Goals: Fairness Responsiveness Time Rate Decision Frequency Decision Function + -- Increase/Decrease Algorithm Congestion Control

Decision Function Decr. tx rate when congestion occurs Packet loss is a signal for congestion over the Internet (e.g. TCP) React to congestion events rather than individual losses, Incr. tx rate periodically in the absence of congestion This probes the network for excess capacity Congestion Control

Responsiveness vs Smoothness Additive Inc., Multiplicative Dec. Rapid reaction to a congestion results in a responsive flow but variable BW Smooth reaction to a congestion results in smooth variations in BW but it is not responsive to sudden changes in BW (e.g. TCP equation) Congestion Control Increase/Decrease Algorithm

Decision Frequency Once per RTT, why? 1) When no congestion: increase the tx rate at most once per RTT 2)When congestion: decrease the tx rate at most once per RTT i.e. react to congestion event Congestion Control Decision Frequency

Add. Inc. Exp. Dec. (AIMD) Time BW Congestion Control Additive Increase Multiplicative Decrease RTT

AIMD Fairness TX ate of flow A TX rate of flow B BW Congestion Control Assuming: both senders increase & decrease their tx rate at the same rate

CC Taxonomy Where is the CC functionality implemented? Sender-driven vs Receiver-driven CC How is tx rate regulated? 1) Rate-based: controlling inter-pkt-gap 2) Window-based: controlling no of pkt in flight Congestion Control vs Flow Control CC: network is the bottleneck FC: receiver is the bottleneck Both mechanisms should work in parallel Congestion Control