Multimedia networking: outline

Size: px
Start display at page:

Download "Multimedia networking: outline"

Transcription

1 Computer Network Architectures and Multimedia Guy Leduc Chapter 4 Multimedia Applications & Transport Sections 9.1 to 9.4 from Computer Networking: A Top Down Approach, 7 th edition. Jim Kurose, Keith Ross Addison-Wesley, April Also and from Computer Networks - 4th edition Andrew S. Tanenbaum Prentice-Hall International, : Multimedia App. & Transp. 4-1 Multimedia networking: outline 4.1 multimedia networking applications 4.2 streaming stored video 4.3 voice-over-ip 4.4 protocols for real-time conversational applications 4: Multimedia App. & Transp

2 Multimedia: audio! PCM (Pulse Code Modulation): analog audio signal sampled at constant rate " telephone: 8,000 samples/sec " CD music: 44,100 samples/sec! each sample quantized, i.e., rounded " each quantized value represented by bits, " e.g., rounded to one of 2 8 =256 values " 8 bits/sample! receiver converts bits back to analog signal: " some quality reduction audio signal amplitude quantization error sampling rate (N sample/sec) quantized value of analog value analog signal time 4: Multimedia App. & Transp. 4-3 Multimedia: audio Examples:! Telephony:! 8,000 samples/sec, 8 bits/sample: 64 kbps! CD music:! 44,100 samples/sec, 16 bits/sample: kbps! Stereo: Mbps Other example rates! MP3: 96, 128, 160 kbps! Internet telephony: 5.3 kbps and up audio signal amplitude quantization error sampling rate (N sample/sec) quantized value of analog value analog signal time 4: Multimedia App. & Transp

3 More on Audio Compression MP3 (MPEG 1 audio layer 3) takes masking effects into account and does not encode masked signals. Can compress stereo CD down to kbps. From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp. 4-5 Multimedia: video video: sequence of images displayed at constant rate e.g. 25 images/sec digital image: array of pixels each pixel represented by bits coding: use redundancy within and between images to decrease # bits used to encode image spatial (within image) temporal (from one image to next) frame i temporal coding example: instead of sending complete frame at i+1, send only differences from frame i spatial coding example: instead of sending N values of same color (all purple), send only two values: color value (purple) and number of repeated values (N) frame i+1 4: Multimedia App. & Transp

4 Multimedia: video! CBR: (constant bit rate): video encoding rate fixed! VBR: (variable bit rate): video encoding rate changes as amount of spatial, temporal coding changes! examples: " MPEG 1 (CD-ROM) 1.5 Mbps " MPEG2 (DVD) 3-6 Mbps " MPEG4 (often used in Internet, < 1 Mbps) spatial coding example: instead of sending N values of same color (all purple), send only two values: color value (purple) and number of repeated values (N) frame i temporal coding example: instead of sending complete frame at i+1, send only differences from frame i frame i+1 4: Multimedia App. & Transp. 4-7 Video - Digital Systems Consider a rectangular 4:3 grid of pixels, such as VGA: 640 x 480 XGA: 1024 x 768 Pixel = 8 bits for each of the RGB colours 25 frames per sec With XGA : 24 bits/pixel x 1024 x 768 x 25 frames/sec = 472 Mbps! Needs compression! From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

5 Data compression Encoding/decoding schemes Video on Demand (VoD) Encoding can be slow (done once) Decoding must be fast (done many times) Asymmetrical schemes Real-time multimedia (e.g. videoconference) Symmetrical schemes Lossy compression Encode/decode is not neutral When acceptable, leads to better compression ratios Two main compression schemes: Entropy encoding (lossless) Source encoding (lossy) From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp. 4-9 Entropy encoding Lossless Three typical examples: Run-length encoding repeated symbols are encoded as Special symbol + number of occurrences Statistical encoding short codes for frequent symbols (Huffman encoding) Look up table e.g. CLUT (Colour Look Up Table) define the table of the colours actually used send table index instead of a 24-bit colour value From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

6 Lossy Source encoding Three main examples: Differential encoding sequence of values are encoded by representing the differences from the previous values makes sense if differences are encoded with less bits lossy when there are large jumps between two values and a fixed number of bits per difference lossless if variable-length encoding is used Transformation e.g. Fourier or DCT Transform lossy since only the first amplitudes are sent Variant of Look Up Table with approximations to closest value From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp JPEG Joint Photographic Experts Group ISO/IEC and ITU standard for compressing still pictures Compression ratio 20:1 is typical Roughly symmetrical scheme (decoding as long as encoding) Lossy sequential mode: 6 steps Block preparation Discrete Cosine transform Quantization Differential quantization Run-length encoding Statistical Output encoding From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

7 Block preparation Discrete Cosine transform JPEG - Step 1 Quantization Differential quantization Run-length encoding Statistical Output encoding Step 1: block preparation Translate RGB into luminance (Y) and 2 chrominance (I,Q) values gives better compression we get 3 matrices of pixels Average square blocks of 4 pixels for I and Q lossy but unnoticeable Subtract 128 from each element (0 is middle) Divide up frame into 8x8 blocks From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp Block preparation Discrete Cosine transform JPEG - Step 2 Quantization Differential quantization Run-length encoding Statistical Output encoding Step 2: DCT (Discrete Cosine Transformation) to each block Sort of 2 dimensional Discrete Fourier Transform, but more compact Advantage: most of the spectral power in the first few terms Output: block of 8x8 elements (coefficient of DCT) Slightly lossy in practice (round-off errors) From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

8 JPEG - Step 3 Block preparation Discrete Cosine transform Quantization Differential quantization Run-length encoding Statistical Output encoding Step 3: Quantization Apply sort of low pass filter to coefficients (lossy) From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp JPEG - Steps 4, 5 and 6 Step 4: Differential quantization Replace upper-left (DC) coefficient by its difference with corresponding element of previous block Step 5: Run-length encoding Applied to a zig-zag scanning pattern Step 6: Statistical output encoding (Huffman) From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

9 MPEG Motion Picture Experts Group - ISO standard Audio and video MPEG-1 Video-recorder quality (CD-ROM) 1.2 Mbps output MPEG-2 Broadcast quality 4-6 Mbps output is typical but higher for HDTV MPEG-4 Medium-resolution videoconferencing with low frame rate 10 frames/sec From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp MPEG-1 Audio signal Clock Video signal Audio encoder Video encoder System multiplexer MPEG-1 output Audio and video encoders work independently Timestamps included in both flows for synchronization at receiver Audio compression (MP3) Also, exploitation of redundancy in the 2 channels of a stereo stream From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

10 MPEG-1 - Video compression Exploit spatial and temporal redundancies Spatial redundancy: like JPEG But adds temporal redundancy Many common parts in the following three consecutive frames! From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp MPEG-1 - Video compression (2) Temporal redundancy: four kinds of frames: I, P, B, D I frames (Intracoded) self-contained JPEG-encoded still pictures should appear periodically in the output (initial synch, resynch on error, fast forward or rewind) P frames (Predictive) block-by-block difference with the previous frame search for a macroblock (Y,I,Q) in previous frame which is equal or slightly different encode the offset in position and difference B frames (Bidirectional): same as P but search also in next I or P frame D frames (DC-coded): block averages for fast forward (low resolution) Example of part of an MPEG sequence I B B P B B I From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp

11 MPEG-2 Similar to MPEG-1 Better quality (10 x 10 DCT coefficients instead of 8 x 8) Several resolution levels (lowest one is comparable to MPEG-1) Several profiles (e.g. no B frames to simplify encoding) Usually 3-4 Mbps, but can go up to 100 Mbps (HDTV) From From Computer Computer Networks, Networking, by Tanenbaum by Kurose&Ross Prentice Hall 4: Multimedia App. & Transp Multimedia networking: 3 application types streaming, stored audio, video streaming: can begin playout before downloading entire file stored (at server): can transmit faster than audio/video will be rendered (implies storing/buffering at client) e.g., YouTube, Netflix, Hulu conversational voice/video over IP interactive nature of human-to-human conversation limits delay tolerance e.g., Skype streaming live audio, video e.g., live sporting event 4: Multimedia App. & Transp

12 MM Networking Applications Fundamental characteristics: typically delay sensitive end-to-end delay delay jitter loss tolerant: infrequent losses cause minor glitches antithesis of data, which are loss intolerant but delay tolerant Jitter is the variability of packet delays within the same packet stream QoS (Quality of Service) refers to performance metrics such as delay, bandwidth, jitter and loss 4: Multimedia App. & Transp Multimedia Over Today s Internet TCP/UDP/IP: best-effort service no guarantees on delay, bandwidth, jitter, loss (if UDP)??????? But you said multimedia apps require QoS and level of performance to be? effective!??? Today s Internet multimedia applications use application-level techniques to mitigate (as best possible) effects of delay, loss 4: Multimedia App. & Transp

13 Chapter 4: outline 4.1 multimedia networking applications 4.2 streaming stored video 4.3 voice-over-ip 4.4 protocols for real-time conversational applications 4: Multimedia App. & Transp Internet multimedia: simplest approach Media player jitter removal decompression error concealment graphical user interface with controls for interactivity audio or video stored in file files transferred as HTTP object received in entirety at client then passed to player audio, video not streamed in this scenario: no, pipelining, long delays until playout! 4: Multimedia App. & Transp

14 Internet multimedia: streaming approach browser GETs metafile browser launches player, passing metafile player contacts server server streams audio/video to player 4: Multimedia App. & Transp Streaming from a streaming server allows for non-http protocol between server and media player UDP or TCP for step (3), more shortly 4: Multimedia App. & Transp

15 Cumulative data Streaming Multimedia: client rate(s) 1.5 Mbps encoding 28.8 Kbps encoding Q: how to handle different client receive rate capabilities? A: server stores, transmits multiple copies of video, encoded at different rates (info found in meta-file) 4: Multimedia App. & Transp Streaming stored video: 1. video Recorded (e.g., 30 frames/ sec) 2. video sent network delay (fixed in this example) 3. video received, played out at client (30 frames/sec) time streaming: at this time, client playing out early part of video, while server still sending later part of video 4: Multimedia App. & Transp

16 Streaming stored video: challenges! continuous playout constraint: once client playout begins, playback must match original timing " but network delays are variable (jitter), so will need client-side buffer to match playout requirements! other challenges: " client interactivity: pause, fast-forward, rewind, jump through video " video packets may be lost, retransmitted 4: Multimedia App. & Transp Streaming stored video: revisited Cumulative data constant bit rate video transmission variable network delay client video reception buffered video constant bit rate video playout at client client playout delay time client-side buffering and playout delay: compensate for network-added delay, delay jitter 4: Multimedia App. & Transp

17 Client-side buffering, playout variable fill rate, x(t) buffer fill level, Q(t) playout rate, e.g., CBR r video server client application buffer, size B client CBR = Constant Bit Rate VBR = Variable Bit Rate 4: Multimedia App. & Transp Client-side buffering, playout variable fill rate, x(t) buffer fill level, Q(t) playout rate, e.g., CBR r video server client application buffer, size B client 1. initial fill of buffer until playout begins at t p 2. playout begins at t p, 3. buffer fill level varies over time as fill rate x(t) varies and playout rate r is constant 4: Multimedia App. & Transp

18 Client-side buffering, playout variable fill rate, x(t) buffer fill level, Q(t) playout rate, e.g., CBR r video server client application buffer, size B x < r: buffer may empty, causing freezing of video playout until buffer again fills initial playout delay tradeoff: buffer starvation less likely with larger delay, but larger delay until user begins watching 4: Multimedia App. & Transp Streaming multimedia: UDP server sends at rate appropriate for client often: send rate = encoding rate = constant rate transmission rate can be unaware of network congestion level short playout delay (2-5 seconds) to remove network jitter error recovery: application-level, time permitting encapsulation of audio/video chunks in RTP (Real-Time Transport Protocol, RFC 3550) and then in UDP see later for details needs a control connection in parallel to pause, resume reposition, etc: Real-Time Streaming Protocol (RTSP, RFC 2326) issue: UDP may not go through firewalls 4: Multimedia App. & Transp

19 User Control of Streaming Media: RTSP HTTP does not target multimedia content no commands for fast forward, etc. RTSP Real-Time Streaming Protocol client-server application layer protocol user control: rewind, fast forward, pause, resume, repositioning, etc. What it doesn t do: doesn t define how audio/video is encapsulated for streaming over network doesn t restrict how streamed media is transported (UDP or TCP possible) doesn t specify how media player buffers audio/video 4: Multimedia App. & Transp RTSP: out-of-band control FTP uses an out-ofband control channel: file transferred over one TCP connection control info (directory changes, file deletion, rename) sent over separate TCP connection out-of-band, inband channels use different port numbers RTSP messages also sent out-of-band: RTSP control messages use different port numbers than media stream: out-of-band port 554 media stream is considered in-band 4: Multimedia App. & Transp

20 RTSP example Scenario: metafile communicated to web browser (1) browser launches player (2) player sets up an RTSP control connection, data connection to streaming server (3) 4: Multimedia App. & Transp Metafile Example <title>twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="pcmu/8000/1" src = "rtsp://audio.example.com/twister/audio.en/lofi"> <track type=audio e="dvi4/16000/2" pt="90 DVI4/8000/1" src="rtsp://audio.example.com/twister/audio.en/hifi"> </switch> <track type="video/jpeg" src="rtsp://video.example.com/twister/video"> </group> </session> 4: Multimedia App. & Transp

21 RTSP Operation 4: Multimedia App. & Transp RTSP exchange example C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=play S: RTSP/ OK Session 4231 C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=0- C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=37 C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 S: OK 4: Multimedia App. & Transp

22 Streaming multimedia: TCP multimedia file retrieved via HTTP GET send at maximum possible rate under TCP variable rate, x(t) video file TCP send buffer server issue: fill rate fluctuates much due to TCP congestion control and TCP retransmissions (inorder delivery) larger playout delay: smooth TCP delivery rate HTTP/TCP passes more easily through firewalls TCP receive buffer client application playout buffer 4: Multimedia App. & Transp Video Streaming and CDNs: context " video traffic: major consumer of Internet bandwidth Netflix, YouTube: 37%, 16% of downstream residential ISP traffic ~1B YouTube users, ~75M Netflix users " challenge: scale - how to reach ~1B users? single mega-video server won t work (why?) " challenge: heterogeneity " different users have different capabilities (e.g., wired versus mobile; bandwidth rich versus bandwidth poor) " solution: distributed, application-level infrastructure 2-44 Application Layer 22

23 Streaming multimedia: DASH DASH: Dynamic, Adaptive Streaming over HTTP server: divides video file into multiple chunks each chunk stored, encoded at different rates manifest file: provides URLs for different chunks client: periodically measures server-to-client bandwidth consulting manifest, requests one chunk at a time chooses maximum coding rate sustainable given current bandwidth can choose different coding rates at different points in time (depending on available bandwidth at time) 4: Multimedia App. & Transp Streaming multimedia: DASH DASH: Dynamic, Adaptive Streaming over HTTP intelligence at client: client determines when to request chunk (so that buffer starvation, or overflow does not occur) what encoding rate to request (higher quality when more bandwidth available) where to request chunk (can request from URL server that is close to client or has high available bandwidth) 4: Multimedia App. & Transp

24 Content distribution networks challenge: how to stream content (selected from millions of videos) to hundreds of thousands of simultaneous users? option 1: single, large mega-server single point of failure point of network congestion long path to distant clients multiple copies of video sent over outgoing link quite simply: this solution doesn t scale 4: Multimedia App. & Transp Content distribution networks challenge: how to stream content (selected from millions of videos) to hundreds of thousands of simultaneous users? option 2: store/serve multiple copies of videos at multiple geographically distributed sites (CDN) enter deep: push CDN servers deep into many access networks close to users used by Akamai, 1700 locations bring home: smaller number (10 s) of larger clusters in POPs near (but not within) access networks used by Limelight Google uses both, in addition to its mega data centers responsible for serving dynamic content 4: Multimedia App. & Transp

25 Content Distribution Networks (CDNs) " CDN: stores copies of content at CDN nodes e.g. Netflix stores copies of MadMen " subscriber requests content from CDN directed to nearby copy, retrieves content may choose different copy if network path congested where s Madmen? manifest file 2-49 Application Layer Content Distribution Networks (CDNs) over the top Internet host-host communication as a service OTT challenges: coping with a congested Internet from which CDN node to retrieve content? viewer behavior in presence of congestion? what content to place in which CDN node? 25

26 CDN: simple content access scenario Bob (client) requests video actually stored in a KingCDN content distribution server 1. Bob gets URL for video video.netcinema.com/6y7b23v from netcinema.com web page request video from 5 KingCDN server, streamed via HTTP netcinema.com 3. netcinema s DNS returns a1105.kingcdn.com 3 2. resolve video.netcinema.com via Bob s local DNS that relays to netcinema s authoritative DNS server 4 4&5. Resolve a1105.kingcdn.com via KingCDN s authoritative DNS, which returns IP address of KingCDN distribution server with video netcinema authoritative DNS KingCDN content distribution server KingCDN authoritative DNS 4: Multimedia App. & Transp CDN cluster selection strategy challenge: how does CDN DNS select good CDN node to stream to client CDN learns the IP address of the client s local DNS via the client s DNS lookup CDN can then implement a selection strategy to dynamically direct clients to a suitable server cluster or data center Possible strategies: 1. pick IP address of CDN node geographically closest to client 2. pick IP address of CDN node with shortest delay (or min # hops) to client (CDN nodes periodically ping access ISPs, reporting results to CDN DNS) 3. always pick the same IP address, but make sure this IP address is an IP anycast address associated with all CDN nodes see next slide alternative: let client decide! give client a list of several CDN servers client pings servers, picks best Netflix approach 4: Multimedia App. & Transp

27 IP anycast An IP anycast address is an IP unicast address, but this address is assigned to multiple devices that are geographically distributed Like a private address, but an anycast address is routable, i.e. reachable from anywhere in the Internet When a source sends a packet to an IP anycast address, the packet reaches one of the devices associated with this address The choice is made by the network, not by the source, because it results from a decision taken at the interdomain routing protocol (BGP) level In other words, BGP decides by applying its usual routing rules based on preferences, AS-Path length, Hot Potato criterion, etc. So, don t confuse anycast and multicast! An anycast address is a unicast address And nothing can tell you if a unicast address is actually anycast or not! B Source 1 CDN cluster (IP anycast) A C D Source 2 CDN cluster (same IP anycast) 4: Multimedia App. & Transp IP anycast in a CDN Role of BGP The CDN assigns the same IP address range to each of its clusters Therefore, it s an anycast address The CDN relies on standard BGP to advertise this IP address range from each of the different cluster locations When a BGP router receives multiple route advertisements for this same IP address range, it treats them as providing several paths to the same physical location and picks the best 1. BGP: AS-PATH A to CDN prefix 2. BGP: AS-PATH BA to CDN prefix 3. BGP: AS-PATH C to CDN prefix 1 B 2 In D, BGP selects the best path between BA and C to reach the CDN prefix CDN cluster (IP prefix) A 1 C 3 D Client A, B, C, D are Autonomous Systems (AS) CDN cluster (same IP prefix) 4: Multimedia App. & Transp

28 Case study: Netflix 30% downstream US traffic in 2011 owns very little infrastructure, uses 3 rd party services: own registration, payment servers Amazon (3 rd party) cloud services: Netflix uploads studio master to Amazon cloud create multiple version of movie (different encodings) in cloud upload versions from cloud to CDNs Cloud hosts Netflix web pages for user browsing three 3 rd party CDNs host/stream Netflix content: Akamai, Limelight, Level-3 4: Multimedia App. & Transp Case study: Netflix Amazon cloud upload copies of multiple versions of video to CDNs Akamai CDN Netflix registration, accounting servers 1 1. Bob manages Netflix account 2. Bob browses Netflix video 2 3. Manifest file returned for requested video 3 4. DASH streaming Limelight CDN Level-3 CDN 4: Multimedia App. & Transp

29 Chapter 4: outline 4.1 multimedia networking applications 4.2 streaming stored video 4.3 voice-over-ip 4.4 protocols for real-time conversational applications 4: Multimedia App. & Transp Voice-over-IP (VoIP) VoIP end-end-delay requirement: needed to maintain conversational aspect higher delays noticeable, impair interactivity < 150 msec: good > 400 msec: bad includes application-level (packetization,playout), network delays session initialization: how does callee advertise IP address, port number, encoding algorithms? value-added services: call forwarding, screening, recording emergency services: 112 (Europe), 911 (North America) 4: Multimedia App. & Transp

30 VoIP characteristics speaker s audio: alternating talk spurts, silent periods. 64 kbps during talk spurt pkts generated only during talk spurts 20 msec chunks at 8 Kbytes/sec: 160 bytes of data so, 20 msec of packetization delay application-layer header added to each chunk chunk+header encapsulated into UDP (or TCP) segment application sends segment into socket every 20 msec during talkspurt 4: Multimedia App. & Transp VoIP: packet loss, delay network loss: IP datagram lost due to network congestion (router buffer overflow) delay loss: IP datagram arrives too late for playout at receiver delays: processing, queueing in network; end-system (sender, receiver) delays typical maximum tolerable delay: 400 ms loss tolerance: depending on voice encoding, loss concealment, packet loss rates between 1% and 10% can be tolerated 4: Multimedia App. & Transp

31 Delay jitter Cumulative data constant bit rate transmission variable network delay (jitter) client reception buffered data constant bit rate playout at client client playout delay time end-to-end delays of two consecutive packets: difference can be more or less than 20 msec (transmission time difference) 4: Multimedia App. & Transp VoIP: fixed playout delay receiver attempts to playout each chunk exactly q msecs after chunk was generated chunk has timestamp t: play out chunk at t+q chunk arrives after t+q: data arrives too late for playout, data lost tradeoff in choosing q: large q: less packet loss small q: better interactive experience 4: Multimedia App. & Transp

32 VoIP: fixed playout delay sender generates packets every 20 msec during talk spurt first packet received at time r first playout schedule: begins at p second playout schedule: begins at p p a c k e t s p a c k e t s g e n e r a t e d l o s s p a c k e t s r e c e i v e d playout schedule p - r playout schedule p - r t i m e r p p ' 4: Multimedia App. & Transp Adaptive playout delay (1) goal: low playout delay, low late loss rate approach: adaptive playout delay adjustment: estimate network delay, adjust playout delay at beginning of each talk spurt silent periods compressed and elongated chunks still played out every 20 msec during talk spurt adaptively estimate packet delay: (EWMA - exponentially weighted moving average, recall TCP RTT estimate): d i = (1-α)d i-1 + α (r i t i ) delay estimate after ith packet small constant, e.g. 0.1 time received - time sent (timestamp) measured delay of ith packet 4: Multimedia App. & Transp

33 Adaptive playout delay (2) also useful to estimate average deviation of delay, v i : v i = (1-β)v i-1 + β r i t i d i estimates d i, v i calculated for every received packet, but used only at start of talk spurt for first packet in talk spurt, playout time is: playout-time i = t i + d i + Kv i remaining packets in talkspurt are played out periodically Q: does it require clock synchronization? 4: Multimedia App. & Transp Adaptive playout delay (3) Q: How does receiver determine whether packet is first in a talk spurt? if no loss, receiver looks at successive timestamps difference of successive stamps > 20 msec -> talk spurt begins with loss possible, receiver must look at both time stamps and sequence numbers difference of successive stamps > 20 msec and sequence numbers without gaps -> talk spurt begins 4: Multimedia App. & Transp

34 VoIP: recovery from packet loss (1) Challenge: recover from packet loss given small tolerable delay between original transmission and playout each ACK/NAK takes ~ one RTT alternative: Forward Error Correction (FEC) send enough bits to allow recovery without retransmission (recall two-dimensional parity) simple FEC for every group of n chunks, create redundant chunk by exclusive OR-ing n original chunks send n+1 chunks, increasing throughput by factor 1/n can reconstruct original n chunks if at most one lost chunk from n+1 chunks, with playout delay called erasure code 4: Multimedia App. & Transp VoIP: recovery from packet loss (2) increasing throughput: by factor 1/n increasing playout delay: need enough time to receive all n+1 packets tradeoff: increase n, less bandwidth waste increase n, longer playout delay increase n, higher probability that 2 or more chunks will be lost 4: Multimedia App. & Transp

35 VoIP: recovery from packet loss (3) FEC: Reed-Solomon (RS) scheme RS is a more sophisticated error correcting code, which can be used as erasure code An (n,k) RS code encodes k source packets into n > k packets Systematic code: the n transmitted packets contain verbatim copies of the k source packets + n-k new packets no decoding if no source packet loss! Optimal code: Original k packets can be recovered provided that any k packets among n are received Linear code: coding/decoding represented by matrix operations: x is the vector of k source packets G is a n x k matrix y is the vector of n transmitted packets y = G x Decoding: y vector of any k received packets G is the k x k submatrix of G with rows corresponding to these packets x = G -1 y 4: Multimedia App. & Transp VoIP: recovery from packet loss (4) 2nd FEC scheme # piggyback lower quality stream # send lower resolution audio stream as redundant information # e.g., nominal stream PCM at 64 kbps and redundant stream GSM at 13 kbps. # non-consecutive loss, receiver can conceal the loss # generalization: can also append (n-1)st and (n-2)nd low-bit rate chunks 4: Multimedia App. & Transp

36 VoIP: recovery from packet loss (5) Interleaving to conceal loss audio chunks divided into smaller units for example, four 5 msec units per 20 ms audio chunk packet contains small units from different chunks if packet lost, still have most of every chunk no redundancy overhead, but increases playout delay 4: Multimedia App. & Transp Voice-over-IP: Skype proprietary applicationlayer protocol (inferred via reverse engineering) encrypted msgs P2P components: " clients: skype peers connect directly to each other for VoIP call " super nodes (SN): skype peers with special functions " overlay network: among SNs to locate SCs " login server Skype login server Skype clients (SC) supernode (SN) supernode overlay network 4: Multimedia App. & Transp

37 P2P voice-over-ip: skype skype client operation: 1. joins skype network by contacting SN (IP address cached) using TCP 2. logs-in (username, password) to centralized skype login server Skype login server 3. obtains IP address for callee from SN, SN overlay " or client buddy list 4. initiate call directly to callee 4: Multimedia App. & Transp Skype: peers as relays Problem: both Alice, Bob are behind NATs NAT prevents outside peer from initiating connection to insider peer inside peer can initiate connection to outside relay solution: Alice, Bob maintain open connection to their SNs " Alice signals her SN to connect to Bob " Alice s SN connects to Bob s SN " Bob s SN connects to Bob over open connection Bob initially initiated to his SN 4: Multimedia App. & Transp

38 Chapter 4: outline 4.1 multimedia networking applications 4.2 streaming stored video 4.3 voice-over-ip 4.4 protocols for real-time conversational applications: RTP/RTCP, SIP 4: Multimedia App. & Transp Real-Time Protocol (RTP) RTP specifies packet structure for packets carrying audio, video data RFC 3550 RTP packet provides payload type identification packet sequence numbering time stamping RTP runs in end systems RTP packets encapsulated in UDP segments interoperability: if two Internet phone applications run RTP, then they may be able to work together 4: Multimedia App. & Transp

39 RTP runs on top of UDP RTP libraries provide transport-layer interface that extends UDP: port numbers, IP addresses payload type identification packet sequence numbering time-stamping 4: Multimedia App. & Transp RTP Example consider sending 64 kbps PCM-encoded voice over RTP application collects encoded data in chunks, e.g., every 20 msec = 160 bytes in a chunk audio chunk + RTP header form RTP packet, which is encapsulated in UDP segment RTP header indicates type of audio encoding in each packet sender can change encoding during conference RTP header also contains sequence numbers, timestamps 4: Multimedia App. & Transp

40 RTP and QoS RTP does not provide any mechanism to ensure timely data delivery or other QoS guarantees RTP encapsulation is only seen at end systems (not by intermediate routers) routers provide best-effort service, making no special effort to ensure that RTP packets arrive at destination in timely manner 4: Multimedia App. & Transp RTP entities End System SSRC = 53 Different encodings Multiple streams Single stream Translator Mixer SSRC = 19 SSRC = 19 CSRC = End System SSRC = 77 End system: application that actually generates/consumes the content carried in RTP packets SSRC: Synchronisation Source identifier Translator: intermediate system that changes the encoding scheme without altering the timing. It may also convert multicast into multiple unicast streams Mixer: intermediate system that receives multiple streams and combines them in some manner. The new stream has its own timing (new SSRC) CSRC: Contributing Source identifier 4: Multimedia App. & Transp

41 RTP Header payload type sequence number type time stamp Synchronization Source ID Miscellaneous fields Payload Type (7 bits): Indicates type of encoding currently being used. If sender changes encoding in middle of conference, sender informs receiver via payload type field Payload type 0: PCM µ-law, 64 kbps Payload type 3: GSM, 13 kbps Payload type 7: LPC, 2.4 kbps Payload type 26: Motion JPEG Payload type 31: H.261 Payload type 33: MPEG2 video Sequence Number (16 bits): incremented by one for each RTP packet sent, detects packet loss and restores packet sequence 4: Multimedia App. & Transp RTP Header (2) payload type sequence number type time stamp Synchronization Source ID Miscellaneous fields Timestamp field (32 bytes): sampling instant of first byte in this RTP data packet for audio, timestamp clock typically increments by one for each sampling period (for example, each 125 µsecs for 8 KHz sampling clock) if application generates chunks of 160 encoded samples, then timestamp increases by 160 for each RTP packet when source is active. Timestamp clock continues to increase at constant rate when source is inactive SSRC field (32 bits): identifies source of RTP stream. Each stream in RTP session should have distinct SSRC. 4: Multimedia App. & Transp

42 Real-Time Control Protocol (RTCP) works in conjunction with RTP each participant in RTP session periodically transmits RTCP control packets to all other participants each RTCP packet contains sender and/or receiver reports report statistics useful to application: # packets sent, # packets lost, interarrival jitter, etc. feedback can be used to control performance sender may modify its transmissions based on feedback 4: Multimedia App. & Transp RTCP: multiple multicast senders sender RTP RTCP RTCP RTCP receivers! each RTP session: typically a single multicast address; all RTP / RTCP packets belonging to session use multicast address! RTP, RTCP packets distinguished from each other via distinct port numbers! to limit traffic, each participant reduces RTCP traffic as number of conference participants increases 4: Multimedia App. & Transp

43 RTCP: packet types Receiver Report (RR) packets: fraction of packets lost, last sequence number, average interarrival jitter Sender Report (SR) packets: SSRC of RTP stream, current time, number of packets sent, number of bytes sent Source Description (SDES) packets: address of sender, sender's name, SSRC of associated RTP stream provide mapping between the SSRC and the user/host name 4: Multimedia App. & Transp RTCP: stream synchronization RTCP can synchronize different media streams within a RTP session e.g., videoconferencing app: each sender generates one RTP stream for video, one for audio timestamps in RTP packets tied to the video, audio sampling clocks not tied to wall-clock time each RTCP sender-report packet contains (for most recently generated packet in associated RTP stream): timestamp of RTP packet wall-clock time for when packet was created receivers use association to synchronize playout of audio, video 4: Multimedia App. & Transp

44 RTCP: bandwidth scaling RTCP attempts to limit its traffic to 5% of session bandwidth Example one sender, sending video at 2 Mbps RTCP attempts to limit its traffic to 100 kbps RTCP gives 75% of rate to receivers; remaining 25% to sender 75 kbps is equally shared among receivers: with R receivers, each receiver gets to send RTCP traffic at 75/R kbps sender gets to send RTCP traffic at 25 kbps participant determines RTCP packet transmission period by calculating average RTCP packet size (across entire session) and dividing by allocated rate 4: Multimedia App. & Transp SIP: Session Initiation Protocol [RFC 3261] SIP long-term vision: all telephone calls, video conference calls take place over Internet people are identified by names or addresses, rather than by phone numbers you can reach callee (if callee so desires), no matter where callee roams, no matter what IP device callee is currently using 4: Multimedia App. & Transp

45 SIP Services SIP provides mechanisms for call setup: for caller to let callee know she wants to establish a call so caller and callee can agree on media type, encoding to end call determine current IP address of callee: maps mnemonic identifier to current IP address call management: add new media streams during call change encoding during call invite others transfer, hold calls 4: Multimedia App. & Transp Example: setting up a call to known IP address Alice INVITE bob@ c=in IP m=audio RTP/AVP 0 port 5060 Bob # Alice s SIP invite message indicates her port number, IP address, encoding she prefers to receive (PCM µlaw) port OK c=in IP m=audio RTP/AVP 3 Bob's terminal rings # Bob s 200 OK message indicates his port number, IP address, preferred encoding (GSM) port ACK port 5060 µ Law audio # SIP messages can be sent over TCP or UDP; here sent over RTP/UDP GSM port # default SIP port number is 5060 time time 4: Multimedia App. & Transp

46 Setting up a call (more) codec negotiation: suppose Bob doesn t have PCM µlaw encoder Bob will instead reply with 606 Not Acceptable Reply, listing his encoders Alice can then send new INVITE message, advertising different encoder rejecting a call Bob can reject with replies busy, gone, payment required, forbidden media can be sent over RTP or some other protocol 4: Multimedia App. & Transp Example of SIP message INVITE sip:bob@domain.com SIP/2.0 Via: SIP/2.0/UDP From: sip:alice@hereway.com To: sip:bob@domain.com Call-ID: a2e3a@pigeon.hereway.com Content-Type: application/sdp Content-Length: 885 c=in IP m=audio RTP/AVP 0 Notes: HTTP message syntax sdp = session description protocol Call-ID is unique for every call # Here we don t know Bob s IP address. -> Intermediate SIP servers needed # Alice sends, receives SIP messages using SIP default port 5060 # Alice specifies in Via: header that SIP client sends, receives SIP messages over UDP 4: Multimedia App. & Transp

47 Name translation and user location caller wants to call callee, but only has callee s name or address need to get IP address of callee s current host: user moves around DHCP protocol user has different IP devices (PC, smartphone, car device) result can be based on: time of day (work, home) caller (don t want boss to call you at home) status of callee (calls sent to voic when callee is already talking to someone) Service provided by SIP servers 4: Multimedia App. & Transp SIP Registrar one function of SIP server: registrar when Bob starts SIP client, client sends SIP REGISTER message to Bob s registrar server Register Message: REGISTER sip:domain.com SIP/2.0 Via: SIP/2.0/UDP From: sip:bob@domain.com To: sip:bob@domain.com Expires: : Multimedia App. & Transp

48 SIP Proxy another function of SIP server: proxy Alice sends invite message to her proxy server contains address proxy responsible for routing SIP messages to callee Bob possibly through multiple proxies Bob sends response back through the same set of proxies proxy returns Bob s SIP response message to Alice contains Bob s IP address SIP proxy analogous to local DNS server plus TCP setup 4: Multimedia App. & Transp SIP example: jim@umass.edu calls keith@poly.edu 2. UMass proxy forwards request to Poly registrar server UMass SIP proxy 1. Jim sends INVITE message to UMass SIP proxy Poly server returns redirect response, indicating that it should try keith@eurecom.fr 4. Umass proxy forwards request to Eurecom registrar server SIP response returned to Jim 5. eurecom registrar forwards INVITE to , which is running Keith s SIP client Note: also a SIP ack message from Jim, which is not shown 4: Multimedia App. & Transp Poly SIP registrar 9. Data flows between clients 6 5 Eurecom SIP registrar

49 Comparison with former H.323 H.323 is another signaling protocol for real-time, interactive applications H.323 is a complete, vertically integrated suite of protocols for multimedia conferencing: signaling, registration, admission control, transport, codecs SIP is a single component. Works with RTP, but does not mandate it. Can be combined with other protocols, services H.323 comes from the ITU (telephony) SIP comes from IETF: borrows much of its concepts from HTTP SIP has Web flavor, whereas H.323 has telephony flavor SIP uses the KISS principle: Keep It Simple Stupid 4: Multimedia App. & Transp Chapter 4: Summary Principles audio and video coding multimedia applications types over IP streaming stored audio video, real-time conversational voice/video UDP versus TCP streaming making the best of best effort service DASH: Dynamic, Adaptive Streaming over HTTP CDN: Content Distribution Networks adaptive playout delay loss recovery (FEC, retransmissions) and concealment Protocols RTSP RTP/RTCP SIP 4: Multimedia App. & Transp

50 How should the Internet evolve to better support multimedia? Laissez-faire just put more capacity where needed no major changes in network, let apps handle it content distribution networks, application-layer multicast Differentiated services philosophy: fewer changes to Internet infrastructure, yet provide 1st and 2nd class service Integrated services philosophy: fundamental changes in Internet so that apps can reserve end-to-end bandwidth requires new, complex software in hosts & routers What s your opinion? 4: Multimedia App. & Transp

Mohammad Hossein Manshaei 1393

Mohammad Hossein Manshaei 1393 Mohammad Hossein Manshaei manshaei@gmail.com 1393 Voice and Video over IP Slides derived from those available on the Web site of the book Computer Networking, by Kurose and Ross, PEARSON 2 Multimedia networking:

More information

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach Chapter 9 Multimedia Networking A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

Content distribution networks

Content distribution networks Content distribution networks v challenge: how to stream content (selected from millions of videos) to hundreds of thousands of simultaneous users? v option 2: store/serve multiple copies of videos at

More information

CSC 4900 Computer Networks: Multimedia Applications

CSC 4900 Computer Networks: Multimedia Applications CSC 4900 Computer Networks: Multimedia Applications Professor Henry Carter Fall 2017 Last Time What is a VPN? What technology/protocol suite is generally used to implement them? How much protection does

More information

Multimedia Networking

Multimedia Networking Multimedia Networking 1 Multimedia, Quality of Service (QoS): What is it? Multimedia applications: Network audio and video ( continuous media ) QoS Network provides application with level of performance

More information

Mohammad Hossein Manshaei 1393

Mohammad Hossein Manshaei 1393 Mohammad Hossein Manshaei manshaei@gmail.com 1393 Voice and Video over IP Slides derived from those available on the Web site of the book Computer Networking, by Kurose and Ross, PEARSON 2 multimedia applications:

More information

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach Chapter 9 Multimedia Networking A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

MULTIMEDIA I CSC 249 APRIL 26, Multimedia Classes of Applications Services Evolution of protocols

MULTIMEDIA I CSC 249 APRIL 26, Multimedia Classes of Applications Services Evolution of protocols MULTIMEDIA I CSC 249 APRIL 26, 2018 Multimedia Classes of Applications Services Evolution of protocols Streaming from web server Content distribution networks VoIP Real time streaming protocol 1 video

More information

Multimedia: video ... frame i+1

Multimedia: video ... frame i+1 Multimedia: video video: sequence of images displayed at constant rate e.g. 24 images/sec digital image: array of pixels each pixel represented by bits coding: use redundancy within and between images

More information

Multimedia Networking

Multimedia Networking Multimedia Networking #2 Multimedia Networking Semester Ganjil 2012 PTIIK Universitas Brawijaya #2 Multimedia Applications 1 Schedule of Class Meeting 1. Introduction 2. Applications of MN 3. Requirements

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking Principles Classify multimedia applications Identify the network services and the requirements the apps need Making the best of best effort service Mechanisms for providing

More information

Week-12 (Multimedia Networking)

Week-12 (Multimedia Networking) Computer Networks and Applications COMP 3331/COMP 9331 Week-12 (Multimedia Networking) 1 Multimedia: audio analog audio signal sampled at constant rate telephone: 8,000 samples/sec CD music: 44,100 samples/sec

More information

Multimedia

Multimedia Multimedia Communications @CS.NCTU Lecture 11: Multimedia Networking Instructor: Kate Ching-Ju Lin ( 林靖茹 ) 2 Why Multimedia Networking Matters? Watching video over Internet Uploading user-generated content

More information

Computer Networks. Wenzhong Li. Nanjing University

Computer Networks. Wenzhong Li. Nanjing University Computer Networks Wenzhong Li Nanjing University 1 Chapter 5. End-to-End Protocols Transport Services and Mechanisms User Datagram Protocol (UDP) Transmission Control Protocol (TCP) TCP Congestion Control

More information

Lecture 9: Media over IP

Lecture 9: Media over IP Lecture 9: Media over IP These slides are adapted from the slides provided by the authors of the book (to the right), available from the publisher s website. Computer Networking: A Top Down Approach 5

More information

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices Outline QoS routing in ad-hoc networks QoS in ad-hoc networks Classifiction of QoS approaches Instantiation in IEEE 802.11 The MAC protocol (recap) DCF, PCF and QoS support IEEE 802.11e: EDCF, HCF Streaming

More information

Digital Asset Management 5. Streaming multimedia

Digital Asset Management 5. Streaming multimedia Digital Asset Management 5. Streaming multimedia 2015-10-29 Keys of Streaming Media Algorithms (**) Standards (*****) Complete End-to-End systems (***) Research Frontiers(*) Streaming... Progressive streaming

More information

Multimedia Applications. Classification of Applications. Transport and Network Layer

Multimedia Applications. Classification of Applications. Transport and Network Layer Chapter 2: Representation of Multimedia Data Chapter 3: Multimedia Systems Communication Aspects and Services Multimedia Applications and Communication Protocols Quality of Service and Resource Management

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Application Layer Video Streaming, CDN and Sockets Sec 2.6 2.7 Prof. Lina Battestilli Fall 2017 Outline Application Layer (ch 2) 2.1 principles of network

More information

Multimedia networking: outline

Multimedia networking: outline Multimedia networking: outline 7.1 multimedia networking applications 7.2 streaming stored video 7.3 voice-over-ip 7.4 protocols for real-time conversational applications: RTP, SIP 7.5 network support

More information

Real-Time Control Protocol (RTCP)

Real-Time Control Protocol (RTCP) Real-Time Control Protocol (RTCP) works in conjunction with RTP each participant in RTP session periodically sends RTCP control packets to all other participants each RTCP packet contains sender and/or

More information

Video Streaming and Media Session Protocols

Video Streaming and Media Session Protocols Video Streaming and Media Session Protocols 1 Streaming Stored Multimedia Stored media streaming File containing digitized audio / video Stored at source Transmitted to client Streaming Client playout

More information

ITTC Communication Networks The University of Kansas EECS 780 Multimedia and Session Control

ITTC Communication Networks The University of Kansas EECS 780 Multimedia and Session Control Communication Networks The University of Kansas EECS 780 Multimedia and Session Control James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology & Telecommunications

More information

Multimedia networking: outline

Multimedia networking: outline Multimedia networking: outline 7.1 multimedia networking applications 7.2 streaming stored video 7.3 voice-over-ip 7.4 protocols for real-time conversational applications 7.5 network support for multimedia

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

Multimedia networking: outline

Multimedia networking: outline Multimedia networking: outline 9.1 multimedia networking applications 9.2 streaming stored video 9.3 voice-over-ip 9.4 protocols for real-time conversational applications: SIP Skip RTP, RTCP 9.5 network

More information

Chapter 2 Application Layer

Chapter 2 Application Layer Chapter 2 Application Layer A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

Streaming (Multi)media

Streaming (Multi)media Streaming (Multi)media Overview POTS, IN SIP, H.323 Circuit Switched Networks Packet Switched Networks 1 POTS, IN SIP, H.323 Circuit Switched Networks Packet Switched Networks Circuit Switching Connection-oriented

More information

Chapter 5 VoIP. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March Multmedia Networking

Chapter 5 VoIP. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March Multmedia Networking Chapter 5 VoIP Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Multmedia Networking audio signal amplitude Multimedia: audio analog audio signal sampled

More information

Service/company landscape include 1-1

Service/company landscape include 1-1 Service/company landscape include 1-1 Applications (3) File transfer Remote login (telnet, rlogin, ssh) World Wide Web (WWW) Instant Messaging (Internet chat, text messaging on cellular phones) Peer-to-Peer

More information

Chapter 5 Link Layer. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

Chapter 5 Link Layer. Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Chapter 5 Link Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Slides adopted from original ones provided by the textbook authors. Link layer,

More information

Quality of Service. Qos Mechanisms. EECS 122: Lecture 15

Quality of Service. Qos Mechanisms. EECS 122: Lecture 15 Quality of Service EECS 122: Lecture 15 Department of Electrical Engineering and Computer Sciences University of California Berkeley Qos Mechanisms Policing at the edge of the network controls the amount

More information

Today. March 7, 2006 EECS122 Lecture 15 (AKP) 4. D(t) Scheduling Discipline. March 7, 2006 EECS122 Lecture 15 (AKP) 5

Today. March 7, 2006 EECS122 Lecture 15 (AKP) 4. D(t) Scheduling Discipline. March 7, 2006 EECS122 Lecture 15 (AKP) 5 Today Quality of Service EECS 122: Lecture 15 Department of Electrical Engineering and Computer Sciences University of California Berkeley End to End QoS Network Layer: Multiple routers Intserv Diffserv

More information

CS640: Introduction to Computer Networks. Application Classes. Application Classes (more) 11/20/2007

CS640: Introduction to Computer Networks. Application Classes. Application Classes (more) 11/20/2007 CS640: Introduction to Computer Networks Aditya Akella Lecture 21 - Multimedia Networking Application Classes Typically sensitive to delay, but can tolerate packet loss (would cause minor glitches that

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify,

More information

Application-Layer Protocols Peer-to-Peer Systems, Media Streaming & Content Delivery Networks

Application-Layer Protocols Peer-to-Peer Systems, Media Streaming & Content Delivery Networks COMP 431 Internet Services & Protocols Application-Layer Protocols Peer-to-Peer Systems, Media Streaming & Content Delivery Networks Jasleen Kaur February 14, 2019 Application-Layer Protocols Outline Example

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify,

More information

Multimedia in the Internet

Multimedia in the Internet Protocols for multimedia in the Internet Andrea Bianco Telecommunication Network Group firstname.lastname@polito.it http://www.telematica.polito.it/ > 4 4 3 < 2 Applications and protocol stack DNS Telnet

More information

55:054 Communication Networks 12/11/2008

55:054 Communication Networks 12/11/2008 Chapter 7 Multimedia Networking Multimedia and Quality of Service: What is it? multimedia applications: network audio and video ( continuous media ) All material copyright 1996-2007 J.F Kurose and K.W.

More information

Latency and Loss Requirements! Receiver-side Buffering! Dealing with Loss! Loss Recovery!

Latency and Loss Requirements! Receiver-side Buffering! Dealing with Loss! Loss Recovery! Cumulative data! Latency and Loss Requirements! Fundamental characteristics of multimedia applications:! Typically delay sensitive!! live audio < 150 msec end-to-end delay is not perceptible!! 150-400

More information

Multimedia Applications: Streaming. Hamid R. Rabiee Mostafa Salehi, Fatemeh Dabiran, Hoda Ayatollahi Spring 2011

Multimedia Applications: Streaming. Hamid R. Rabiee Mostafa Salehi, Fatemeh Dabiran, Hoda Ayatollahi Spring 2011 Multimedia Applications: Streaming Hamid R. Rabiee Mostafa Salehi, Fatemeh Dabiran, Hoda Ayatollahi Spring 2011 Outline What is Streaming Technology? Issues in Video Streaming over the Internet Bandwidth

More information

Multimedia Networking

Multimedia Networking Multimedia Networking Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@wustl.edu Audio/Video recordings of this lecture are available on-line at: http://www.cse.wustl.edu/~jain/cse473-09/

More information

Telematics 2 & Performance Evaluation

Telematics 2 & Performance Evaluation Telematics 2 & Performance Evaluation Chapter 1 Multimedia 1 Multimedia, Quality of Service: What is it? Multimedia applications: network audio and video ( continuous media ) QoS Network provides application

More information

Data Communications & Networks. Session 10 Main Theme Multimedia Networking. Dr. Jean-Claude Franchitti

Data Communications & Networks. Session 10 Main Theme Multimedia Networking. Dr. Jean-Claude Franchitti Data Communications & Networks Session 10 Main Theme Multimedia Networking Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Adapted

More information

The Transport Layer: User Datagram Protocol

The Transport Layer: User Datagram Protocol The Transport Layer: User Datagram Protocol CS7025: Network Technologies and Server Side Programming http://www.scss.tcd.ie/~luzs/t/cs7025/ Lecturer: Saturnino Luz April 4, 2011 The UDP All applications

More information

in the Internet Andrea Bianco Telecommunication Network Group Application taxonomy

in the Internet Andrea Bianco Telecommunication Network Group  Application taxonomy Multimedia traffic support in the Internet Andrea Bianco Telecommunication Network Group firstname.lastname@polito.it http://www.telematica.polito.it/ Network Management and QoS Provisioning - 1 Application

More information

Multimedia Networking

Multimedia Networking CMPT765/408 08-1 Multimedia Networking 1 Overview Multimedia Networking The note is mainly based on Chapter 7, Computer Networking, A Top-Down Approach Featuring the Internet (4th edition), by J.F. Kurose

More information

Chapter 7 Multimedia Networking. Chapter 7 outline. Chapter 7: goals. Multimedia and Quality of Service: What is it? QoS

Chapter 7 Multimedia Networking. Chapter 7 outline. Chapter 7: goals. Multimedia and Quality of Service: What is it? QoS Chapter 7 Multimedia Networking Multimedia and Quality of Service: What is it? multimedia applications: network audio and video ( continuous media ) A note on the use of these ppt slides: We re making

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2004. 7: Multimedia Networking 7-1 Multimedia,

More information

Chapter 7: Multimedia Networking

Chapter 7: Multimedia Networking Chapter 7: Multimedia Networking Multimedia and Quality of Service: What is it multimedia : network audio and video ( continuous media ) A note on the use of these ppt slides: We re making these slides

More information

Multimedia Networking

Multimedia Networking CE443 Computer Networks Multimedia Networking Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought by

More information

Networking Applications

Networking Applications Networking Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab Academy for Science & Technology and Maritime Transport Multimedia Multimedia 1 Outline Audio and Video Services

More information

CS 457 Multimedia Applications. Fall 2014

CS 457 Multimedia Applications. Fall 2014 CS 457 Multimedia Applications Fall 2014 Topics Digital audio and video Sampling, quantizing, and compressing Multimedia applications Streaming audio and video for playback Live, interactive audio and

More information

ITEC310 Computer Networks II

ITEC310 Computer Networks II ITEC310 Computer Networks II Chapter 29 Multimedia Department of Information Technology Eastern Mediterranean University 2/75 Objectives After completing this chapter you should be able to do the following:

More information

Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC

Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC Multimedia Communication Lec 17 Multimedia Transport: RTP, TCP/HTTP and QUIC Zhu Li Course Web: http://l.web.umkc.edu/lizhu/teaching/2016sp.video-communication/main.html Z. Li, Multimedia Communciation,

More information

Chapter 7 Multimedia Networking

Chapter 7 Multimedia Networking Chapter 7 Multimedia Networking A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify,

More information

EDA095 Audio and Video Streaming

EDA095 Audio and Video Streaming EDA095 Audio and Video Streaming Pierre Nugues Lund University http://cs.lth.se/pierre_nugues/ May 15, 2013 Pierre Nugues EDA095 Audio and Video Streaming May 15, 2013 1 / 33 What is Streaming Streaming

More information

Multimedia! 23/03/18. Part 3: Lecture 3! Content and multimedia! Internet traffic!

Multimedia! 23/03/18. Part 3: Lecture 3! Content and multimedia! Internet traffic! Part 3: Lecture 3 Content and multimedia Internet traffic Multimedia How can multimedia be transmitted? Interactive/real-time Streaming 1 Voice over IP Interactive multimedia Voice and multimedia sessions

More information

Part 3: Lecture 3! Content and multimedia!

Part 3: Lecture 3! Content and multimedia! Part 3: Lecture 3! Content and multimedia! Internet traffic! Multimedia! How can multimedia be transmitted?! Interactive/real-time! Streaming! Interactive multimedia! Voice over IP! Voice and multimedia

More information

Multimedia Networking. Protocols for Real-Time Interactive Applications

Multimedia Networking. Protocols for Real-Time Interactive Applications Multimedia Networking Protocols for Real-Time Interactive Applications Real Time Protocol Real Time Control Protocol Session Initiation Protocol H.323 Real-Time Protocol (RTP) RTP is companion protocol

More information

Tema 0: Transmisión de Datos Multimedia

Tema 0: Transmisión de Datos Multimedia Tema 0: Transmisión de Datos Multimedia Clases de aplicaciones multimedia Redes basadas en IP y QoS Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross

More information

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet : Computer Networks Lecture 9: May 03, 2004 Media over Internet Media over the Internet Media = Voice and Video Key characteristic of media: Realtime Which we ve chosen to define in terms of playback,

More information

File transfer. Internet Applications (FTP,WWW, ) Connections. Data connections

File transfer. Internet Applications (FTP,WWW,  ) Connections. Data connections File transfer Internet Applications (FTP,WWW, Email) File transfer protocol (FTP) is used to transfer files from one host to another Handles all sorts of data files Handles different conventions used in

More information

Master Kurs Rechnernetze Computer Networks IN2097

Master Kurs Rechnernetze Computer Networks IN2097 Chair for Network Architectures and Services Institute for Informatics TU München Prof. Carle, Dr. Fuhrmann Master Kurs Rechnernetze Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Dr. Thomas Fuhrmann

More information

CSCD 433/533 Advanced Networks Fall Lecture 14 RTSP and Transport Protocols/ RTP

CSCD 433/533 Advanced Networks Fall Lecture 14 RTSP and Transport Protocols/ RTP CSCD 433/533 Advanced Networks Fall 2012 Lecture 14 RTSP and Transport Protocols/ RTP 1 Topics Multimedia Player RTSP Review RTP Real Time Protocol Requirements for RTP RTP Details Applications that use

More information

Multimedia networks. Additional references. Jargon. Analog to Digital (S5 4.3) KR: Kurose and Ross chapter 7 (KR3: 3 rd ed)

Multimedia networks. Additional references. Jargon. Analog to Digital (S5 4.3) KR: Kurose and Ross chapter 7 (KR3: 3 rd ed) Additional references Multimedia networks KR: Kurose and Ross chapter 7 (KR3: 3 rd ed) C4: Douglas Comer, Internetworking with TCP/IP Vol 1: Principles, Protocols and Architecture 4 th ed, Prentice-Hall

More information

Kommunikationssysteme [KS]

Kommunikationssysteme [KS] Kommunikationssysteme [KS] Dr.-Ing. Falko Dressler Computer Networks and Communication Systems Department of Computer Sciences University of Erlangen-Nürnberg http://www7.informatik.uni-erlangen.de/~dressler/

More information

Internet Video Delivery. Professor Hui Zhang

Internet Video Delivery. Professor Hui Zhang 18-345 Internet Video Delivery Professor Hui Zhang 1 1990 2004: 1 st Generation Commercial PC/Packet Video Technologies Simple video playback, no support for rich app Not well integrated with Web browser

More information

COMP6218: Content Caches. Prof Leslie Carr

COMP6218: Content Caches. Prof Leslie Carr COMP6218: Content Caches Prof Leslie Carr 1 Slashdot.org The Slashdot effect, also known as slashdotting, occurs when a popular website links to a smaller site, causing a massive increase in traffic 2

More information

CS 218 F Nov 3 lecture: Streaming video/audio Adaptive encoding (eg, layered encoding) TCP friendliness. References:

CS 218 F Nov 3 lecture: Streaming video/audio Adaptive encoding (eg, layered encoding) TCP friendliness. References: CS 218 F 2003 Nov 3 lecture: Streaming video/audio Adaptive encoding (eg, layered encoding) TCP friendliness References: J. Padhye, V.Firoiu, D. Towsley, J. Kurose Modeling TCP Throughput: a Simple Model

More information

Real-time Services BUPT/QMUL

Real-time Services BUPT/QMUL Real-time Services BUPT/QMUL 2017-05-27 Agenda Real-time services over Internet Real-time transport protocols RTP (Real-time Transport Protocol) RTCP (RTP Control Protocol) Multimedia signaling protocols

More information

Chapter 7 + ATM/VC networks (3, 4, 5): Multimedia networking, QoS, Congestion control Course on Computer Communication and Networks, CTH/GU

Chapter 7 + ATM/VC networks (3, 4, 5): Multimedia networking, QoS, Congestion control Course on Computer Communication and Networks, CTH/GU Chapter 7 + ATM/VC networks (3, 4, 5): Multimedia networking, QoS, Congestion control Course on Computer Communication and Networks, CTH/GU The slides are adaptation of the slides made available by the

More information

EDA095 Audio and Video Streaming

EDA095 Audio and Video Streaming EDA095 Audio and Video Streaming Pierre Nugues Lund University http://cs.lth.se/pierre_nugues/ February 7, 2018 Pierre Nugues EDA095 Audio and Video Streaming February 7, 2018 1 / 35 What is Streaming

More information

Ch 4: Multimedia. Fig.4.1 Internet Audio/Video

Ch 4: Multimedia. Fig.4.1 Internet Audio/Video Ch 4: Multimedia Recent advances in technology have changed our use of audio and video. In the past, we listened to an audio broadcast through a radio and watched a video program broadcast through a TV.

More information

Transporting Voice by Using IP

Transporting Voice by Using IP Transporting Voice by Using IP Voice over UDP, not TCP Speech Small packets, 10 40 ms Occasional packet loss is not a catastrophe Delay-sensitive TCP: connection set-up, ack, retransmit delays 5 % packet

More information

Page 1. Outline / Computer Networking : 1 st Generation Commercial PC/Packet Video Technologies

Page 1. Outline / Computer Networking : 1 st Generation Commercial PC/Packet Video Technologies Outline 15-441/15-641 Computer Networking Lecture 18 Internet Video Delivery Peter Steenkiste Slides by Professor Hui Zhang Background Technologies: - HTTP download - Real-time streaming - HTTP streaming

More information

EDA095 Audio and Video Streaming

EDA095 Audio and Video Streaming EDA095 Audio and Video Streaming Pierre Nugues Lund University http://cs.lth.se/pierre_nugues/ April 27, 2017 Pierre Nugues EDA095 Audio and Video Streaming April 27, 2017 1 / 35 What is Streaming Streaming

More information

Including location-based services, IoT, and increasing personalization... Service models and delivery architectures

Including location-based services, IoT, and increasing personalization... Service models and delivery architectures Outline Service landscape Example services Including location-based services, IoT, and increasing personalization... Service models and delivery architectures Client-server, p2p, one-to-many E.g., middleboxes/proxies,

More information

Popular protocols for serving media

Popular protocols for serving media Popular protocols for serving media Network transmission control RTP Realtime Transmission Protocol RTCP Realtime Transmission Control Protocol Session control Real-Time Streaming Protocol (RTSP) Session

More information

Multimedia Protocols. Foreleser: Carsten Griwodz Mai INF-3190: Multimedia Protocols

Multimedia Protocols. Foreleser: Carsten Griwodz Mai INF-3190: Multimedia Protocols Multimedia Protocols Foreleser: Carsten Griwodz Email: griff@ifi.uio.no 11. Mai 2006 1 INF-3190: Multimedia Protocols Media! Medium: "Thing in the middle! here: means to distribute and present information!

More information

Chapter 7 + ATM/VC networks (3, 4, 5): control Course on Computer Communication and Networks, CTH/GU

Chapter 7 + ATM/VC networks (3, 4, 5): control Course on Computer Communication and Networks, CTH/GU Chapter 7 + ATM/VC networks (3, 4, 5): Multimedia networking, QoS, Congestion control Course on Computer Communication and Networks, CTH/GU The slides are adaptation of the slides made available by the

More information

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006 Internet Streaming Media Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006 Multimedia Streaming UDP preferred for streaming System Overview Protocol stack Protocols RTP + RTCP SDP RTSP SIP

More information

RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889

RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889 RTP Real-Time Transport Protocol RFC 1889 1 What is RTP? Primary objective: stream continuous media over a best-effort packet-switched network in an interoperable way. Protocol requirements: Payload Type

More information

Introduction to LAN/WAN. Application Layer 4

Introduction to LAN/WAN. Application Layer 4 Introduction to LAN/WAN Application Layer 4 Multimedia Multimedia: Audio + video Human ear: 20Hz 20kHz, Dogs hear higher freqs DAC converts audio waves to digital E.g PCM uses 8-bit samples 8000 times

More information

RTP: A Transport Protocol for Real-Time Applications

RTP: A Transport Protocol for Real-Time Applications RTP: A Transport Protocol for Real-Time Applications Provides end-to-end delivery services for data with real-time characteristics, such as interactive audio and video. Those services include payload type

More information

Mul$media Networking. #9 CDN Solu$ons Semester Ganjil 2012 PTIIK Universitas Brawijaya

Mul$media Networking. #9 CDN Solu$ons Semester Ganjil 2012 PTIIK Universitas Brawijaya Mul$media Networking #9 CDN Solu$ons Semester Ganjil 2012 PTIIK Universitas Brawijaya Schedule of Class Mee$ng 1. Introduc$on 2. Applica$ons of MN 3. Requirements of MN 4. Coding and Compression 5. RTP

More information

13. Internet Applications 최양희서울대학교컴퓨터공학부

13. Internet Applications 최양희서울대학교컴퓨터공학부 13. Internet Applications 최양희서울대학교컴퓨터공학부 Internet Applications Telnet File Transfer (FTP) E-mail (SMTP) Web (HTTP) Internet Telephony (SIP/SDP) Presence Multimedia (Audio/Video Broadcasting, AoD/VoD) Network

More information

Objectives. CS529 Multimedia Networking. Groupwork. Introduction Outline 1/31/2013. Brief introduction to: Introduction

Objectives. CS529 Multimedia Networking. Groupwork. Introduction Outline 1/31/2013. Brief introduction to: Introduction Objectives CS529 Multimedia Networking Introduction Brief introduction to: Digital Audio Digital Video Perceptual Quality Network Issues Get you ready for research papers! Introduction to: Silence detection

More information

Chapter 28. Multimedia

Chapter 28. Multimedia Chapter 28. Multimedia 28-1 Internet Audio/Video Streaming stored audio/video refers to on-demand requests for compressed audio/video files Streaming live audio/video refers to the broadcasting of radio

More information

Transporting audio-video. over the Internet

Transporting audio-video. over the Internet Transporting audio-video over the Internet Key requirements Bit rate requirements Audio requirements Video requirements Delay requirements Jitter Inter-media synchronization On compression... TCP, UDP

More information

Transporting Voice by Using IP

Transporting Voice by Using IP Transporting Voice by Using IP National Chi Nan University Quincy Wu Email: solomon@ipv6.club.tw 1 Outline Introduction Voice over IP RTP & SIP Conclusion 2 Digital Circuit Technology Developed by telephone

More information

Real-time Services BUPT/QMUL

Real-time Services BUPT/QMUL Real-time Services BUPT/QMUL 2015-06-02 Agenda Real-time services over Internet Real-time transport protocols RTP (Real-time Transport Protocol) RTCP (RTP Control Protocol) Multimedia signaling protocols

More information

Voice over IP (VoIP)

Voice over IP (VoIP) Voice over IP (VoIP) David Wang, Ph.D. UT Arlington 1 Purposes of this Lecture To present an overview of Voice over IP To use VoIP as an example To review what we have learned so far To use what we have

More information

Multimedia Applications. Internet Technologies and Applications

Multimedia Applications. Internet Technologies and Applications Multimedia Applications Internet Technologies and Applications Aims and Contents Aims Define multimedia applications Introduce technologies for delivering multimedia applications in the Internet Raise

More information

4 rd class Department of Network College of IT- University of Babylon

4 rd class Department of Network College of IT- University of Babylon 1. INTRODUCTION We can divide audio and video services into three broad categories: streaming stored audio/video, streaming live audio/video, and interactive audio/video. Streaming means a user can listen

More information

Lecture 14: Multimedia Communications

Lecture 14: Multimedia Communications Lecture 14: Multimedia Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 14-1 Multimedia Characteristics Bandwidth Media has natural bitrate, not very flexible. Packet

More information

Summary of last time " " "

Summary of last time   Summary of last time " " " Part 1: Lecture 3 Beyond TCP TCP congestion control Slow start Congestion avoidance. TCP options Window scale SACKS Colloquia: Multipath TCP Further improvements on congestion

More information

ETSF10 Internet Protocols Transport Layer Protocols

ETSF10 Internet Protocols Transport Layer Protocols ETSF10 Internet Protocols Transport Layer Protocols 2012, Part 2, Lecture 2.2 Kaan Bür, Jens Andersson Transport Layer Protocols Special Topic: Quality of Service (QoS) [ed.4 ch.24.1+5-6] [ed.5 ch.30.1-2]

More information

Internet Streaming Media

Internet Streaming Media Multimedia Streaming Internet Streaming Media Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006 preferred for streaming System Overview Protocol stack Protocols + SDP SIP Encoder Side Issues

More information

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007 Internet Streaming Media Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007 Multimedia Streaming UDP preferred for streaming System Overview Protocol stack Protocols RTP + RTCP SDP RTSP SIP

More information