DOC PREVIEW
UT Dallas CS 6390 - 19. P2P

This preview shows page 1-2-3-24-25-26-27-48-49-50 out of 50 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 50 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 50 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 50 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 50 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 50 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 50 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 50 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 50 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 50 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 50 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 50 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS 6390 Advanced Computer NetworksPeer-to-Peer Networks: Unstructured and StructuredPeer-to-Peer Networks: How did it start?ModelMain ChallengeOther ChallengesNapster Technology: Directory ServiceNapsterNapster: ExampleNapster: Limitations of Central DirectoryPeer-to-Peer Networks: GnutellaGnutellaSlide 15Slide 16Gnutella: ProtocolGnutella: Peer JoiningGnutella: Pros and ConsKaZaA: Exploiting HeterogeneitySlide 21KaZaA: Motivation for Super-NodesPeer-to-Peer Networks: BitTorrentBitTorrent: Simultaneous DownloadingBitTorrent ComponentsFree-Riding Problem in P2P NetworksStructured P2P SystemsDistributed Hash Tables (DHTs)DHT Design GoalsChord: A Scalable Peer-to-peer Lookup Service for Internet ApplicationsMotivationCentralized SolutionDistributed Solution (1)Distributed Solution (2)PowerPoint PresentationChord IDsConsistent Hashing [Karger 97]Slide 38An Alternative Idea for LookupsSlide 40Chord-based LookupsSlide 42Joining the ringSlide 44Slide 45Slide 46Slide 47Slide 48Slide 49Slide 50Handling FailuresSlide 52CS 6390Advanced Computer NetworksPeer-to-Peer Networking2Peer-to-Peer Networks:Unstructured and Structured What is a peer-to-peer network?Unstructured Peer-to-Peer NetworksNapsterGnutellaKaZaABitTorrentDistributed Hash Tables (DHT) and Structured NetworksChord Many others that we will not discuss… Some slides borrowed from Dr. Zhi Li Zhang3Peer-to-Peer Networks:How did it start?A killer application: NaptserFree music over the InternetKey idea: share the content, storage and bandwidth of individual (home) usersInternet4ModelEach user stores a subset of filesEach user has access (can download) files from all users in the system5Main ChallengeFind where a particular file is storedABCDEFE?6Other ChallengesScale: up to hundred of thousands or millions of machines Dynamicity: machines can come and go any time8Napster Technology: Directory ServiceUser installing the softwareDownload the client programRegister name, password, local directory, etc.Client contacts Napster (via TCP)Provides a list of music files it will share… and Napster’s central server updates the directoryClient searches on a title or performerNapster identifies online clients with the file… and provides IP addressesClient requests the file from the chosen supplierSupplier transmits the file to the clientBoth client and supplier report status to Napster9NapsterAssume a centralized index system that maps files (songs) to machines that are aliveHow to find a file (song)Query the index system  return a machine that stores the required fileIdeally this is the closest/least-loaded machineftp the fileAdvantages: Simplicity, easy to implement sophisticated search engines on top of the index systemDisadvantages:Robustness, scalability (?)10Napster: ExampleABCDEFm1m2m3m4m5m6m1 Am2 Bm3 Cm4 Dm5 Em6 FE?m5E?E12Napster: Limitations of Central DirectorySingle point of failurePerformance bottleneckCopyright infringementSo, later P2P systems were more distributed File transfer is decentralized, but locating content is highly centralized13Peer-to-Peer Networks: GnutellaQuery floodingJoin: contact a few nodes to become neighborsPublish: no need!Search: ask neighbors, who ask their neighborsFetch: get file directly from another node14GnutellaDistribute file locationIdea: flood the requestHow to find a file:Send request to all neighborsNeighbors recursively forward the requestEventually a machine that has the file receives the request, and it sends back the answerAdvantages:Totally decentralized, highly robustDisadvantages:Not scalable; the entire network can be swamped with request (to alleviate this problem, each request has a TTL)15GnutellaAd-hoc topologyQueries are flooded for bounded number of hopsNo guarantees on recallQuery: “xyz”xyzxyz16GnutellaFully distributedNo central serverPublic domain protocolMany Gnutella clients implementing protocolOverlay network: graphEdge between peer X and Y if there’s a TCP connectionAll active peers and edges form an overlay networkGiven peer will typically be connected with < 10 overlay neighbors17Gnutella: ProtocolQuery message sent over existing TCPconnectionsPeers forwardQuery messageQueryHit sent over reversepathQueryQueryHitQueryQueryQueryHitQueryQueryQueryHitFile transfer:HTTPScalability:limited scopeflooding18Gnutella: Peer JoiningJoining peer X must find some other peer in Gnutella network: use list of candidate peersX sequentially attempts to make TCP with peers on list until connection setup with YX sends Ping message to Y; Y forwards Ping message. All peers receiving Ping message respond with Pong messageX receives many Pong messages. It can then setup additional TCP connections to some of these responding peers19Gnutella: Pros and ConsAdvantagesFully decentralizedSearch cost distributedProcessing per node permits powerful search semanticsDisadvantagesSearch scope may be quite largeSearch time may be quite longHigh overhead and nodes come and go often20KaZaA: Exploiting HeterogeneityEach peer is either a group leader or assigned to a group leaderTCP connection between peer and its group leaderTCP connections between some pairs of group leadersGroup leader tracks the content in all its childreno r d i n a r y p e e rg r o u p - l e a d e r p e e rn e i g h o r i n g r e l a t i o n s h i p si n o v e r l a y n e t w o r k21KaZaA: Exploiting HeterogeneitySmart query floodingJoin: on start, the client contacts a super-node (and may later become one)Publish: client sends list of files to its super-nodeSearch: send query to super-node, and the super-nodes flood queries among themselvesFetch: get file directly from peer(s); can fetch from multiple peers at once22KaZaA: Motivation for Super-NodesQuery consolidationMany connected nodes may have only a few filesPropagating query to a sub-node may take more time than for the super-node to answer itselfStabilitySuper-node selection favors nodes with high up-timeHow long you’ve been on is a good predictor of how long you’ll be around in the future23Peer-to-Peer Networks: BitTorrentKey motivation: popular contentPopularity exhibits temporal locality (Flash Crowds)E.g., Slashdot effect, CNN Web site on 9/11,


View Full Document

UT Dallas CS 6390 - 19. P2P

Documents in this Course
VoIP

VoIP

44 pages

TE-MPLS

TE-MPLS

38 pages

TCP

TCP

28 pages

QoS

QoS

27 pages

P2P

P2P

50 pages

IPv6

IPv6

81 pages

IPv6

IPv6

64 pages

AODV-v2

AODV-v2

19 pages

aodv

aodv

32 pages

18. VoIP

18. VoIP

44 pages

17. QoS

17. QoS

27 pages

13. TCP

13. TCP

28 pages

6. IPv6

6. IPv6

81 pages

19. P2P

19. P2P

50 pages

18. VoIP

18. VoIP

44 pages

17. QoS

17. QoS

27 pages

6. IPv6

6. IPv6

81 pages

6. IPv6

6. IPv6

81 pages

19. P2P

19. P2P

50 pages

18. VoIP

18. VoIP

44 pages

17. QoS

17. QoS

27 pages

13. TCP

13. TCP

28 pages

CC

CC

74 pages

19. P2P

19. P2P

50 pages

18. VoIP

18. VoIP

44 pages

17. QoS

17. QoS

27 pages

13. TCP

13. TCP

28 pages

6. IPv6

6. IPv6

81 pages

CC

CC

74 pages

Load more
Download 19. P2P
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 19. P2P 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 19. P2P 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?