9- p2p - CSE 486/586, Spring 2012 CSE 486/586 Distributed...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Peer-to-Peer Architecture --- 1 Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586, Spring 2012 Last Time DNS as an example client-server architecture Properties of DNS Distributed over a collection of DNS servers Organized in a hierarchy of servers Hierarchy of DNS servers Root servers Top-level domain (TLD) servers Authoritative DNS servers Brief look at how a CDN works 2 CSE 486/586, Spring 2012 This Weeks Question How do we organize the nodes in a distributed system? Up to the 90s Prevalent architecture: client-server (or master-slave) Unequal responsibilities Now Emerged architecture: peer-to-peer Equal responsibilities Studying an example of client-server: DNS (last time) Today: studying peer-to-peer as a paradigm (not just as a file-sharing application, but will still use file- sharing as the main example) Learn the techniques and principles 3 CSE 486/586, Spring 2012 Motivation: Distributing a Large File A client-server architecture can do it 4 d1 F bits d2 d3 d4 upload rate us Download rates di Internet CSE 486/586, Spring 2012 Motivation: Distributing a Large File but sometimes not good enough . Limited bandwidth One server can only serve so many clients. Increase the upload rate from the server-side? Higher link bandwidth at the one server Multiple servers, each with their own link Requires deploying more infrastructure Alternative: have the receivers help Receivers get a copy of the data And then redistribute the data to other receivers To reduce the burden on the server 5 CSE 486/586, Spring 2012 Motivation: Distributing a Large File Peer-to-peer to help 6 d1 F bits d2 d3 d4 upload rate us Download rates di Internet u1 u2 u3 u4 Upload rates ui CSE 486/586, Spring 2012 Challenges of Peer-to-Peer Peers come and go Peers are intermittently connected May come and go at any time Or come back with a different IP address How to locate the relevant peers? Peers that are online right now Peers that have the content you want How to motivate peers to stay in system? Why not leave as soon as download ends? Why bother uploading content to anyone else? How to download efficiently? The faster, the better 7 CSE 486/586, Spring 2012 Locating Relevant Peers Evolution of peer-to-peer Central directory (Napster) Query flooding (Gnutella) Hierarchical overlay (Kazaa, modern Gnutella) Design goals Scalability Simplicity Robustness Plausible deniability 8 CSE 486/586, Spring 2012 The First: Napster 9 S S S P P P P P P Client machines (Peers) napster.com Servers Store their own files Store a directory, i.e., filenames with peer pointers Filename Info about PennyLane.mp3 Beatles, @ 128.84.92.23:1006 .. CSE 486/586, Spring 2012 10 S S S P P P P P P Peers...
View Full Document

Page1 / 37

9- p2p - CSE 486/586, Spring 2012 CSE 486/586 Distributed...

This preview shows document pages 1 - 11. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online