* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download peer-to-peer
Survey
Document related concepts
Transcript
Network Technologies essentials Week 9: Distributed file sharing & multimedia Videos 8-6, 8-7, 8-9 and 9-1 to 9-3 Compilation made by Tim Moors, UNSW Australia Original slides by David Wetherall, University of Washington ISBN-10: 0133766624 © 2014 For the book A. Tanenbaum and D. Wetherall: Computer Networks, 5th ed, Prentice-Hall, 2011 Web Caching • Users often revisit web pages – Big win from reusing local copy! – This is caching Local copies Cache Network Server • Key question: – When is it OK to reuse local copy? Computer Networks 8-6.3 2 Web Caching (4) • Putting the pieces together: Computer Networks 8-6.6 3 After CDNs (2) • Benefits assuming popular content: – Reduces server, network load – Improves user experience (PLT) User ... Source Computer Networks Replica User 8-7.6 4 Content Delivery Network Computer Networks 8-7.9 5 Content Delivery Network (2) • DNS resolution of site gives different answers to clients – Tell each client the site is the nearest replica (map client IP) Computer Networks 8-7.10 6 P2P Challenges • No servers on which to rely – Communication must be peer-to-peer and self-organizing, not client-server – Leads to several issues at scale … Peer Peer Computer Networks Peer Peer Peer 8-9.5 7 P2P Challenges (2) 1. Limited capabilities – How can one peer deliver content to all other peers? 2. Participation incentives – Why will peers help each other? 3. Decentralization – How will peers find content? Computer Networks 8-9.6 8 BitTorrent Protocol • Steps to download a torrent: 1. Start with torrent description 2. Contact tracker to join and get list of peers (with at least seed peer) 2. Or, use DHT index for peers 3. Trade pieces with different peers 4. Favor peers that upload to you rapidly; “choke” peers that don’t by slowing your upload to them Computer Networks 8-9.13 9 BitTorrent Protocol (2) • All peers (except seed) retrieve torrent at the same time Computer Networks 8-9.14 10 Network Delay (2) • Network delay is variable Fraction (PDF) – Message latency plus queuing delay – Variability in delay is called jitter Latency Queuing Delay (msec) Computer Networks 9-2.4 11 Playout Buffer (2) • Media arrival curve determines time in playout buffer and deadline Media timestamp Buffering Computer Networks Playout Too late! Time 9-2.9 12 RTP (Real-time Transport Protocol) • Used to carry media on top of best effort UDP (§6.4.3) – Header has media format, timestamp, sequence number, etc. – Media follows in standard formats, e.g., G.711, MP4 Computer Networks 9-2.13 13 SIP Signaling (2) • Signaling for call control – Like HTTP, uses simple method/response codes – Runs on UDP or TCP – SIP proxy servers and registrars provide mobility (not shown) Computer Networks INVITE 180 RINGING 200 OK ACK Accept call RTP media BYE 200 OK Hang up 9-2.16 14 Handling Bandwidth • Send file in one of multiple encodings – Higher quality encodings require more bandwidth – Select best encoding given available bandwidth Higher quality More bandwidth 15:1 Lower quality Less bandwidth (JPEG example) 23:1 46:1 144:1 By Toytoy, CC-BY-SA-3.0, from Wikimedia Commons Computer Networks 9-3.6 15 Streaming with HTTP • Fetch media description data – Gives index of clips, rates • Fetch small segments – Put in playout buffer • Adapt selection of encoding GET INDEX GET MEDIA – Based on buffer occupancy GET MEDIA • Evolving standards, e.g., DASH GET MEDIA – Leverages HTTP and HTML5 – Server is otherwise stateless Computer Networks GET MEDIA 9-3.10 16 END © 2013 D. Wetherall Slide material from: TANENBAUM, ANDREW S.; WETHERALL, DAVID J., COMPUTER NETWORKS, 5th Edition, © 2011. Electronically reproduced by permission of Pearson Education, Inc., Upper Saddle River, New Jersey Computer Networks 17