DOC PREVIEW
USF CS 682 - Peer-to-Peer

This preview shows page 1-2-24-25 out of 25 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 25 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 25 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 25 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 25 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 25 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Peer-to-Peer Examples Examples Historical examples client/server Potential advantages of peer-to-peer Challenges of peer-to-peer Challenges of Peer-to-Peer Challenges of Peer-to-Peer First-generation applications First-generation weaknesses Second-generation models Example: Gnutella Example: Gnutella Example: Gnutella Example: Gnutella Hierarchical p2p Hierarchical P2P Issues with file distribution Example: BitTorrent Example: BitTorrent Example: BitTorrent Current challenges in p2p Coming AttractionsDistributed SoftwareDevelopmentPeer-to-PeerChris BrooksDepartment of Computer ScienceUniversity of San FranciscoDepartment of Computer Science — University of San Francisco – p. 1/??Peer- to-Peer•Peer- to- peer is of ten touted as a hot new technology•Really, it’s as old as the I nternet (or earlier)•Fundamental idea: all nodes in a network should be capableof the same functionality.•Contrast this with client-server.•In practice, many systems are a hybrid of p2p andclient-server.Department of Computer Science — University of San Francisco – p. 2/??Examples•What are some examples of p2p systems?Department of Computer Science — University of San Francisco – p. 3/??Examples•File sharing apps (Morpheus, Kazaa, Limewire, etc)•IRC/IC Q•SETI@Home/distributed.net•Web caching•VoI P•SMTP•etcDepartment of Computer Science — University of San Francisco – p. 4/??Historical examples•USENET•Peers within a domain would collect usenet posts andforward them v ia UUCP, then NNTP.•No central server or repository.•DNS•A hierarchical p2p systemDepartment of Computer Science — University of San Francisco – p. 5/??client/server•Why did the c lient/server model become so popular?•Asynchronous network structure•Ease of discovery•Centralized content development•Firewalls, NAT make it harder for users to host content.•Model changes: fewer developers, more browsers.Department of Computer Science — University of San Francisco – p. 6/??Potential advantages of peer-to-peer•Reduce server bottlenecks•Move content closer to users•Allow users to publish as well as consume information•Note that publishing and authoring can be differentthings.•Scalability•More able to deal with adaptive, dynamic networks.Department of Computer Science — University of San Francisco – p. 7/??Challenges of peer-to-peer•Finding peers (addressing)•How does a peer join the network?•How do peers identify each other?•Is the network constructed statically, or dynamically?•Does a peer always connect to the same set of peers?Department of Computer Science — University of San Francisco – p. 8/??Challenges of Peer-to-Peer•Searching for data•Naming conventions•How are queries distributed?•Are all peers searched, or just a subset?•Do peers ke ep track of the contents o f other peers?Department of Computer Science — University of San Francisco – p. 9/??Challenges of Peer-to-Peer•Other challenges:•Interoperability and standards•Currently, every P2P network has its own protocol -you can’t use a BitTorrent client to search onGnutella.•Dealing with dynamic networks•Security•This includes the distribution of malicious files,protection from snooping, and user authentication.Department of Computer Science — University of San Francisco – p. 10/??First-generation applications•So-called first-generation applications use a centralizedname server.•All user addresses and file indexes are kept there.•This can be used to build an application-leveladdress-resolution protocol.•Napster is the c anonical example of this.•Most IM programs also work this way.•Central server is used to search.•Files are transferred betwe en peers.Department of Computer Science — University of San Francisco – p. 11/??First-generation weaknesse s•Central server provides a bo ttleneck.•Difficult to implement in a closed or dynamic environment.•Scalability can be a problem.•(also, legal issues in the case of Napster)Department of Computer Science — University of San Francisco – p. 12/??Second-generation models•Second-generation models remove the central server.•All file information is distributed.•Advantage:•Po tentially more scalable•Legal issues avoided.•Disadvantages:•Search is more complex•Discovery of peers more complicated.Department of Computer Science — University of San Francisco – p. 13/??Example: Gnutella•Gnutella is an example of an open P2P system.•Many clients use the same protocol•LimeWire, BearShare, Gnucleus, etc•Gnutella uses no centralized server - all information is storedat the peers.Department of Computer Science — University of San Francisco – p. 14/??Example: Gnutella•The Gnutella network is completely decentralized.•When a peer comes onto the network, it sends a ping to allknown peers.•Those peers respond with a pong, which identifies all theirknown peers.•Your peer can also re member previous connections.Department of Computer Science — University of San Francisco – p. 15/??Example: Gnutella•When a peer wants to perform a search, it sends a query toall known nodes.•This request is then forwarded on to nodes one levelaway, who forard it to all nodes they know about, andso on.•This is known as query flooding.•If a hit is found, the node containing the file contactsthe searcher and download begins.Department of Computer Science — University of San Francisco – p. 16/??Example: Gnutella•Problems with Gnutella:•Searching is unreliable - the network is often partitioned.•Search based only on keywords - this produces namingissues.•If I want“Lost S1, Ep 3”, what do I search for?•Wastes bandwidth forwarding searches to all nodes.•Does not take advantage of network structure•Some peers may have better bandwidth, moreinformation, or a more central network structure.Department of Computer Science — University of San Francisco – p. 17/??Hierarchical p2p•Kazaa is an example of a hierarchical p2p system•When a user enters the network, it co nnects to a meganode.•This meganode forwards queries to all other nodesconnected to it.•It also collects fi le information for e ach client.•Periodically, it also exchanges information with othermeganodes.•Again, searches typically do no t reach the entire network.•Higher-bandwidth nodes act as meg anodes, process moretraffic.Department of Computer Science — University of San Francisco – p.


View Full Document

USF CS 682 - Peer-to-Peer

Documents in this Course
Load more
Download Peer-to-Peer
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Peer-to-Peer and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Peer-to-Peer 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?