1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.

Slides:



Advertisements
Similar presentations
INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 12 Prof. Crista Lopes.
Advertisements

Digital Library Service – An overview Introduction System Architecture Components and their functionalities Experimental Results.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
University of Cincinnati1 Towards A Content-Based Aggregation Network By Shagun Kakkar May 29, 2002.
Denial-of-Service Resilience in Peer-to-Peer Systems D. Dumitriu, E. Knightly, A. Kuzmanovic, I. Stoica and W. Zwaenepoel Presenter: Yan Gao.
Gnutella 2 GNUTELLA A Summary Of The Protocol and it’s Purpose By
An Overview of Peer-to-Peer Networking CPSC 441 (with thanks to Sami Rollins, UCSB)
Company Confidential 1 © 2005 Nokia V1-Filename.ppt / yyyy-mm-dd / Initials Towards a mobile content delivery network with a P2P architecture Carlos Quiroz.
Peer-to-Peer Networks João Guerreiro Truong Cong Thanh Department of Information Technology Uppsala University.
Application Layer Overlays IS250 Spring 2010 John Chuang.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
Protecting Free Expression Online with Freenet Presented by Ho Tsz Kin I. Clarke, T. W. Hong, S. G. Miller, O. Sandberg, and B. Wiley 14/08/2003.
Gnutella, Freenet and Peer to Peer Networks By Norman Eng Steven Hnatko George Papadopoulos.
Object Naming & Content based Object Search 2/3/2003.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Freenet A Distributed Anonymous Information Storage and Retrieval System I Clarke O Sandberg I Clarke O Sandberg B WileyT W Hong.
Improving Data Access in P2P Systems Karl Aberer and Magdalena Punceva Swiss Federal Institute of Technology Manfred Hauswirth and Roman Schmidt Technical.
ICDE A Peer-to-peer Framework for Caching Range Queries Ozgur D. Sahin Abhishek Gupta Divyakant Agrawal Amr El Abbadi Department of Computer Science.
Peer-to-peer file-sharing over mobile ad hoc networks Gang Ding and Bharat Bhargava Department of Computer Sciences Purdue University Pervasive Computing.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
Freenet. Anonymity  Napster, Gnutella, Kazaa do not provide anonymity  Users know who they are downloading from  Others know who sent a query  Freenet.
Peer-to-Peer Computing CS587x Lecture Department of Computer Science Iowa State University.
1 Napster & Gnutella An Overview. 2 About Napster Distributed application allowing users to search and exchange MP3 files. Written by Shawn Fanning in.
Introduction Widespread unstructured P2P network
A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004.
1 Telematica di Base Applicazioni P2P. 2 The Peer-to-Peer System Architecture  peer-to-peer is a network architecture where computer resources and services.
Distributed Systems Concepts and Design Chapter 10: Peer-to-Peer Systems Bruce Hammer, Steve Wallis, Raymond Ho.
Peer to Peer Research survey TingYang Chang. Intro. Of P2P Computers of the system was known as peers which sharing data files with each other. Build.
Jonathan Walpole CSE515 - Distributed Computing Systems 1 Teaching Assistant for CSE515 Rahul Dubey.
1 Distributed Hash Tables (DHTs) Lars Jørgen Lillehovde Jo Grimstad Bang Distributed Hash Tables (DHTs)
Vincent Matossian September 21st 2001 ECE 579 An Overview of Decentralized Discovery mechanisms.
PSI Peer Search Infrastructure. Introduction What are P2P Networks? The term "peer-to-peer" refers to a class of systems and applications that employ.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
FastTrack Network & Applications (KaZaA & Morpheus)
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
P2P Computing MIRA YUN September 16, Outline What is P2P P2P taxonomies Characteristics Different P2P systems Conclusion.
PEER TO PEER (P2P) NETWORK By: Linda Rockson 11/28/06.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
15-744: Computer Networking L-22: P2P. Lecture 22: Peer-to-Peer Networks Typically each member stores/provides access to content Has quickly.
P2PComputing/Scalab 1 Gnutella and Freenet Ramaswamy N.Vadivelu Scalab.
Computer Networking P2P. Why P2P? Scaling: system scales with number of clients, by definition Eliminate centralization: Eliminate single point.
ADVANCED COMPUTER NETWORKS Peer-Peer (P2P) Networks 1.
Peer to Peer Network Design Discovery and Routing algorithms
Peer-to-peer systems (part I) Slides by Indranil Gupta (modified by N. Vaidya)
Peer to Peer Computing. What is Peer-to-Peer? A model of communication where every node in the network acts alike. As opposed to the Client-Server model,
Evaluation GUESS and Non-Forwarding Peer-to-Peer search ICDCS paper Beverly Yang Patrick Vinograd Hector Garcia-Molina Computer Science Department, Stanford.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
Bruce Hammer, Steve Wallis, Raymond Ho
CS Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt.
Peer-to-Peer (P2P) Networks By Bongju Yu. Contents  What is P2P?  Features of P2P systems  P2P Architecture  P2P Protocols  P2P Projects  Reference.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
P2P Networking: Freenet Adriane Lau November 9, 2004 MIE456F.
Peer-to-peer systems ”Sharing is caring”. Why P2P? Client-server systems limited by management and bandwidth P2P uses network resources at the edges.
Distributed Hash Tables (DHT) Jukka K. Nurminen *Adapted from slides provided by Stefan Götz and Klaus Wehrle (University of Tübingen)
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 24 – Introduction to Peer-to-Peer (P2P) Systems Klara Nahrstedt (presented by Long Vu)
A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004.
BitTorrent Vs Gnutella.
CS 268: Lecture 22 (Peer-to-Peer Networks)
Early Measurements of a Cluster-based Architecture for P2P Systems
EE 122: Peer-to-Peer (P2P) Networks
An Overview of Peer-to-Peer
InfoShare A Distributed P2P Information Storage & Retrieval System
#02 Peer to Peer Networking
Presentation transcript:

1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn

2 Peer-to-Peer - Introduction "opposite" of Client/Server no central servers  information highly distributed every peer acts as a client AND server -> can query, reply to queries and route messages at the same time every peer can directly "talk" to any other peer

3 Popular Peer-to-Peer Networks Napster Gnutella Freenet FastTrack (Kazaa) CHORD, CAN, PASTRY, TAPESTRY

4 Napster was used primarily for file sharing NOT a pure peer-to-peer network => hybrid system peer turns to central DB for querying (client/server) peer downloads directly from other peer(s) (peer-to-peer)

5 Napster central DB Query 2. Response 3. Download Request 4. File Peer

6 Gnutella - overview pure peer-to-peer used for file sharing very popular => practically proven ? very simple protocol no routing "intelligence" messages are always broadcast

7 Gnutella - PING/PONG Ping 1 Known Hosts: 2 3,4,5 6,7,8 Pong 2 Pong 4 Pong 3 Pong 5Pong 3,4,5 Pong 6,7,8 Pong 6 Pong 7 Pong 8 Pong 6,7,8 Query/Response analogous

8 Gnutella - Pro & Con VERY simple protocol => easy to implement very little overhead practically proven functionality (?) message broadcasts flood network =>heavy network traffic => bad, bad scalibility

9 Gnutella – Reachable Peers T=1T=2T=3T=4T=5T=6T=7T=8 N= N= N= ,4564,37213,120 N= ,7056,82527,305109,225 N= ,68623,436117,186585,936 N= ,81310,88565,317391,9092,351,461 N= ,20022,408156,8641,098,0567,686,400

10 Gnutella – Generated Traffic in Bytes (1) T=1T=2T=3T=4T=5T=6T=7T=8 N= ,1621,328 N= ,7433,7357,71915,68731,62363,495 N=43321,3284,31613,2840,172120,848362,8761,088,960 N=54152,0758,71535,275141,515566,4752,266,3159,065,675 N=64982,98815,43877,688388,9381,945,1889,726,43848,632,688 N=75814,06724,983150,479903,4555,421,31132,528,447195,171,263 N=86645,31237,848265,6001,859,86413,019,71291,138,648637,971,200 query message length: 83 bytes simple query relaying (no responses)

11 Gnutella – Generated Traffic in Bytes (2) T=1T=2T=3T=4T=5T=6T=7T=8 N= ,418.44, , , , , N= , , , ,897758,3712,688,5309,306,220 N= , , ,986753,173,658,05017,214,20079,185,000 N= , ,793332,4732,105,47012,743,50074,798,500429,398,000 N= , , ,9914,941,12335,823,800252,002,0001,734,360,000 N= , ,551,160,44010,242,00086,526,900709,521,0005,693,470,000 Mean percentage of users who typically share content: 30% Mean perctg. of users who typically have responses to search queries: 40% Mean number of search responses the typical respondent offers: 10 Mean length of search responses the typical respondent offers: 60  "Standard client settings yield a whopping 17MB generated in response to […] search query "

12 Freenet - Concepts peer-to-peer file storage & retrieval system every document has a globally unique ID efficient (?) retrieval algorithm –documents are retrieved with sublinear effort routing based on likelihood of answer capability focus on security

13 Freenet – Query Routing (1) every peer maintains routing table table contains known peers along with the IDs of the documents their are storing a request is routed to the peer most likely to have an answer (closest matching ID) responses are sent back upstream intermediate peers also store document and augment their routing tables

14 Freenet – Query Routing (2) Routing Table B: 14, 20 Doc Cache 19, 30 AB C D Routing Table C: 19, 30 D: 45, 51 Doc Cache 14,20 Routing Table B: 14, 20 X: 47, 60 Doc Cache 5, 89 Routing Table B: 14, 20 Z: 105, 110 Doc Cache 17, 45, 51, 102, Query for doc C has no match -> backtrack 2. Forward to best match 4. Forward query to 2 nd best match 5. Send back doc 17 Routing Table C: 19, 30 D: 17, 45, 51 Doc Cache 14, 17, Route back response Routing Table B: 14, 17, 20 X: 47, 60 Doc Cache 5, 17, 89

15 Freenet – Document Insert analogous to query routing insert is routed to the peer most likely to be interested in new doc (closest matching ID) intermediate peers cache document and augment routing tables until TTL is reached

16 Freenet - Discussion efficient routing algorithm (compared to Gnutella) adequate security features/heuristics (the more popular a document, the more frequently it gets cached) no metasearch no updates, deletes possible worst case query routing = DFS

17 FUtella – Concepts peer-to-peer platform for general knowledge sharing tries to model learning style of humans content-based routing combines and extends approaches from: –Gnutella (message format) –JXTA (peer groups) –JXTA Search (queryspaces and registrations) –FreeNet (routing of registration discoveries)

18 FUtella - Knowledge Groups E MiMi M1M1... Group Head: Peer E Members M 1 - M i FUtella Net Knowledge Group: Queryspace "Computer Architecture" Inserts Registration

19 FUtella - Knowledge Group Discovery 1 Routing Table "computer" -> B "computer analysis" -> Y Registration Cache "computer": B "computer analysis": Y AB C D Routing Table "computer analysis" -> C "computer systems" -> D "data base" -> A Registration Cache "computer analysis" : Y "computer systems": Z "data base" : X Routing Table "computer" -> B "data base" -> X Registration Cache "computer": B "data base": X Routing Table "computer" -> B "computer systems" -> Z "computer architecture" -> E Registration Cache "computer systems": Z "computer": B "computer architecture": E 1. Discovery request "computer architecture" 3. C has no cached registration for "computer architecture -> backtrack 2. Forward discovery request 4. Forward discovery request to 2 nd best match

20 FUtella - Knowledge Group Discovery 2 ABD Routing Table "computer analysis" -> C "computer architecture" -> D "computer systems" -> D "data base" -> A Registration Cache "computer analysis" : Y "computer architecture": E "computer systems": Z "data base" : X Routing Table "computer" -> B "computer architecture" -> D "data base" -> X Registration Cache "computer": B "computer architecture": E "data base": X Routing Table "computer" -> B "computer systems" -> Z "computer architecture" -> E Registration Cache "computer systems": Z "computer": B "computer architecture": E 5. Discovery response Containing registration "computer architecture": E 6. Forward discovery response

21 Futella - Query Processing AB C D 1. Discovery request "computer architecture" 2. Forward discovery request 3. C has no cached registration for "computer architecture -> backtrack 4. Forward discovery request to 2 nd best match 5. Discovery response containing cached registration 6. Forward discovery response EM1M1 MiMi Forward query to member 9. Query response Knowledge group "computer architecture" 7. Send query

22 Futella - Test Results (1) Total Number of Messages dynamic peersstatic peers semi-dynamic peers # msg threshold 2 no threshold Gnutella

23 FUtella - Test Results (2)

24 Conclusion first and second generation P2P systems still most widely used practically proven very flexible in terms of topology bad scalibility (Gnutella) no guaranteed lower bound on query effort (Freenet) (scientificly) far better approach: DHTs (see next presentation)

25 Questions ? ?