220 likes | 424 Views
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
E N D
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 • P2P is alternative to client-server model • Peers send/receive information from each other • Utilize the bandwidth of all users • 3 paradigms…
Centralized Directory • Central server • Advantages: • Simple • Easy to maintain • Disadvantages • Single point of failure • Single point of prosecution • Bottleneck effect Source: Kurose and Ross, 2003
Decentralized Directory • AKA Super decentralized network • No central server • Advantages • Distributed contents • Smaller databases • Harder to track • Disadvantages • Bootstrap node • Complex protocol • Peers are ranked Source: Kurose and Ross, 2003
Query Flooding • AKA Equal decentralized network • All are created equal • Advantages • Flat • No central directory • Disadvantages • Scalability • Does not search entire network Source: Kurose and Ross, 2003
Kazaa Overview • 3 million users • Definitive decentralized network • No central agent • No central agent means no need for a central point of management • At one point Kazaa held 76% of all the P2P traffic
Kazaa Screen Shot Source: HowStuffWorks.com
Kazaa Screen Shot Source: atFile.com
How does Kazaa achieve decentralization? • Users are categorized into two categories: • Ordinary Nodes (ON) • Super Nodes (SN) • Users are designated as ON or SN based on their system capabilities • Network connection • Bandwidth • Processing capabilities • Designation process is done without users knowledge • Result is that users do not know if they have been designated ON or SN
Super Decentralized (Revisted) Source: Kurose and Ross, 2003
Super Nodes • Kazaa has approximately 30,000 SNs • Each SN is like a traffic hub that processes requests from ONs • Each SN serves approximately 60-150 ONs at a time • Each SN keeps a database of all the files that it’s ONs are sharing
User Requests • User requests are propagated to the SN which communicates with other SNs • Those other SNs communicate with their ONs with a search depth of 7 (similar to TTL) • When correct file is located the transfer occurs directly between the two nodes without SN intervention
Kazaa Network Topology Source: HowStuffWorks.com
User Request in detail • Query containing keywords is sent out over a TCP connection from ON to its SN • For each match the SN returns the IP address and metadata of the matching node • SNs will maintain a TCP connection between SNs creating an overlay network • Query is sent to one or more of the directly connected nodes between SNs • SNs will shuffle their directly connected nodes every 10 minutes in order to allow for a larger area of the network to be reached
Kazaa’s competion: BitTorrent • Kazaa is declining in popularity while BitTorrent is rising rapidly in popularity. • BitTorrent: User receives data from multiple sources at once • Data is split up into chunks • Each chunk is received from source with the best connection • Chunks are received randomly but can be reassembled • Separate channel available for uploading, even while downloading • Kazaa: User receives data from node that it has established connection with • Data is split up into chunks • Data is received in order
Topology of BitTorrent Source: BitTorrent.com
BitTorrent Screen Shot Source: Sciencemedia.com
Conclusion • Centralized approach offers easy maintenance but too many legal and performance issues • Decentralized approach has a longer lifetime and more reliable service