Streaming multimedia:UDP server sends at rate appropriate for client often:send rate encoding rate constant rate -transmission rate can be oblivious to congestion levels short playout delay(2-5 seconds)to remove network jitter error recovery:application-level, timeipermitting RTP [RFC 2326]:multimedia payload types UDP may not go through firewalls Multmedia Networking 7-16
Streaming multimedia: UDP server sends at rate appropriate for client often: send rate = encoding rate = constant rate transmission rate can be oblivious to congestion levels short playout delay (2-5 seconds) to remove network jitter error recovery: application-level, timeipermitting RTP [RFC 2326]: multimedia payload types UDP may not go through firewalls Multmedia Networking 7-16
Streaming multimedia:HTTP *multimedia file retrieved via HTTP GET send at maximum possible rate under TCP variable rate,x(t) video TCP send TCP receive application file buffer buffer playout buffer server client fill rate fluctuates due to TCP congestion control,retransmissions (in-order delivery) larger playout delay:smooth TCP delivery rate HTTP/TCP passes more easily through firewalls Multmedia Networking 7-17
Streaming multimedia: HTTP multimedia file retrieved via HTTP GET send at maximum possible rate under TCP fill rate fluctuates due to TCP congestion control, retransmissions (in-order delivery) larger playout delay: smooth TCP delivery rate HTTP/TCP passes more easily through firewalls Multmedia Networking 7-17 variable rate, x(t) TCP send buffer video file TCP receive buffer application playout buffer server client
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 Multmedia Networking 7-18 bandwidth at time)
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) Multmedia Networking 7-18
Streaming multimedia:DASH DASH:Dynamic,Adaptive Streaming over HTTP g“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) Multmedia Networking 7-19
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) Multmedia Networking 7-19
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 Multmedia Networking 7-20
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 Multmedia Networking 7-20