Spotlighting Decentralized P2P File Sharing

Post on 09-Feb-2016

55 views 0 download

Tags:

description

Spotlighting Decentralized P2P File Sharing. Archie Kuo and Ethan Le Department of Computer Science San Jose State University. Agenda. P2P overview The Three Paradigms Kazaa and BitTorrent Conclusion Q & A. What is P2P?. Tradition dictates a client-server model - PowerPoint PPT Presentation

transcript

Spotlighting Decentralized Spotlighting Decentralized P2P File SharingP2P File Sharing

Archie Kuo and Ethan LeArchie Kuo and Ethan LeDepartment of Computer ScienceDepartment of Computer Science

San Jose State UniversitySan Jose State University

AgendaAgenda

P2P overviewP2P overview The Three ParadigmsThe Three Paradigms Kazaa and BitTorrentKazaa and BitTorrent ConclusionConclusion Q & AQ & A

What is P2P?What is P2P?

Tradition dictates a client-server modelTradition dictates a client-server model P2P is alternative to client-server modelP2P is alternative to client-server model Peers send/receive information from each Peers send/receive information from each

otherother Utilize the bandwidth of all usersUtilize the bandwidth of all users 3 paradigms…3 paradigms…

Centralized DirectoryCentralized Directory Central serverCentral server Advantages:Advantages:

SimpleSimple Easy to maintainEasy to maintain

DisadvantagesDisadvantages Single point of failureSingle point of failure Single point of Single point of

prosecutionprosecution Bottleneck effectBottleneck effect

Source: Kurose and Ross, 2003

Decentralized DirectoryDecentralized Directory AKA Super decentralized AKA Super decentralized

networknetwork No central serverNo central server AdvantagesAdvantages

Distributed contentsDistributed contents Smaller databasesSmaller databases Harder to trackHarder to track

DisadvantagesDisadvantages Bootstrap nodeBootstrap node Complex protocolComplex protocol Peers are rankedPeers are ranked

Source: Kurose and Ross, 2003

Query FloodingQuery Flooding AKA Equal AKA Equal

decentralized networkdecentralized network All are created equalAll are created equal AdvantagesAdvantages

FlatFlat No central directoryNo central directory

DisadvantagesDisadvantages ScalabilityScalability Does not search entire Does not search entire

networknetwork

Source: Kurose and Ross, 2003

Kazaa OverviewKazaa Overview

3 million users3 million users Definitive decentralized networkDefinitive decentralized network No central agentNo central agent No central agent means no need for a No central agent means no need for a

central point of managementcentral point of management At one point Kazaa held 76% of all the At one point Kazaa held 76% of all the

P2P trafficP2P traffic

Kazaa Screen ShotKazaa Screen Shot

Source: HowStuffWorks.com

Kazaa Screen ShotKazaa Screen Shot

Source: atFile.com

How does Kazaa achieve How does Kazaa achieve decentralization?decentralization?

Users are categorized into two categories:Users are categorized into two categories: Ordinary Nodes (ON)Ordinary Nodes (ON) Super Nodes (SN)Super Nodes (SN)

Users are designated as ON or SN based on Users are designated as ON or SN based on their system capabilitiestheir system capabilities Network connectionNetwork connection BandwidthBandwidth Processing capabilitiesProcessing capabilities

Designation process is done without users Designation process is done without users knowledgeknowledge

Result is that users do not know if they have Result is that users do not know if they have been designated ON or SN been designated ON or SN

Super Decentralized (Revisted)Super Decentralized (Revisted)

Source: Kurose and Ross, 2003

Super NodesSuper Nodes

Kazaa has approximately 30,000 SNsKazaa has approximately 30,000 SNs Each SN is like a traffic hub that Each SN is like a traffic hub that

processes requests from ONsprocesses requests from ONs Each SN serves approximately 60-150 Each SN serves approximately 60-150

ONs at a timeONs at a time Each SN keeps a database of all the files Each SN keeps a database of all the files

that it’s ONs are sharingthat it’s ONs are sharing

User RequestsUser Requests

User requests are propagated to the SN User requests are propagated to the SN which communicates with other SNswhich communicates with other SNs

Those other SNs communicate with their Those other SNs communicate with their ONs with a search depth of 7 (similar to ONs with a search depth of 7 (similar to TTL)TTL)

When correct file is located the transfer When correct file is located the transfer occurs directly between the two nodes occurs directly between the two nodes without SN interventionwithout SN intervention

Kazaa Network TopologyKazaa Network Topology

Source: HowStuffWorks.com

User Request in detailUser Request in detail Query containing keywords is sent out over a Query containing keywords is sent out over a

TCP connection from ON to its SNTCP connection from ON to its SN For each match the SN returns the IP address For each match the SN returns the IP address

and metadata of the matching nodeand metadata of the matching node SNs will maintain a TCP connection between SNs will maintain a TCP connection between

SNs creating an overlay networkSNs creating an overlay network Query is sent to one or more of the directly Query is sent to one or more of the directly

connected nodes between SNsconnected nodes between SNs SNs will shuffle their directly connected nodes SNs will shuffle their directly connected nodes

every 10 minutes in order to allow for a larger every 10 minutes in order to allow for a larger area of the network to be reachedarea of the network to be reached

Kazaa’s competion: BitTorrent Kazaa’s competion: BitTorrent Kazaa is declining in popularity while BitTorrent is rising Kazaa is declining in popularity while BitTorrent is rising

rapidly in popularity.rapidly in popularity. BitTorrent: User receives data from multiple sources at BitTorrent: User receives data from multiple sources at

onceonce Data is split up into chunksData is split up into chunks Each chunk is received from source with the best connectionEach chunk is received from source with the best connection Chunks are received randomly but can be reassembledChunks are received randomly but can be reassembled Separate channel available for uploading, even while Separate channel available for uploading, even while

downloadingdownloading Kazaa: User receives data from node that it has Kazaa: User receives data from node that it has

established connection withestablished connection with Data is split up into chunksData is split up into chunks Data is received in order Data is received in order

Topology of BitTorrentTopology of BitTorrent

Source: BitTorrent.com

Looking for TorrentsLooking for Torrents

BitTorrent Screen ShotBitTorrent Screen Shot

Source: Sciencemedia.com

BitTorrent In Action

ConclusionConclusion

Centralized approach offers easy Centralized approach offers easy maintenance but too many legal and maintenance but too many legal and performance issuesperformance issues

Decentralized approach has a longer Decentralized approach has a longer lifetime and more reliable servicelifetime and more reliable service