Peer-to-Peer Networks João Guerreiro Truong Cong Thanh Department of Information Technology Uppsala University.

Slides:



Advertisements
Similar presentations
Peer-to-Peer and Social Networks An overview of Gnutella.
Advertisements

INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 12 Prof. Crista Lopes.
CHORD – peer to peer lookup protocol Shankar Karthik Vaithianathan & Aravind Sivaraman University of Central Florida.
1 An Overview of Gnutella. 2 History The Gnutella network is a fully distributed alternative to the centralized Napster. Initial popularity of the network.
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)
P2p, Spring 05 1 Topics in Database Systems: Data Management in Peer-to-Peer Systems March 29, 2005.
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
Introduction to Peer-to-Peer (P2P) Systems Gabi Kliot - Computer Science Department, Technion Concurrent and Distributed Computing Course 28/06/2006 The.
CSc 461/561 CSc 461/561 Peer-to-Peer Streaming. CSc 461/561 Summary (1) Service Models (2) P2P challenges (3) Service Discovery (4) P2P Streaming (5)
Responder Anonymity and Anonymous Peer-to-Peer File Sharing. by Vincent Scarlata, Brian Levine and Clay Shields Presentation by Saravanan.
1 Unstructured Routing : Gnutella and Freenet Presented By Matthew, Nicolai, Paul.
Gnutella, Freenet and Peer to Peer Networks By Norman Eng Steven Hnatko George Papadopoulos.
1 Client-Server versus P2P  Client-server Computing  Purpose, definition, characteristics  Relationship to the GRID  Research issues  P2P Computing.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.
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.
Introduction to Peer-to-Peer Networks. What is a P2P network Uses the vast resource of the machines at the edge of the Internet to build a network that.
P2P File Sharing Systems
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
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
1 Reading Report 4 Yin Chen 26 Feb 2004 Reference: Peer-to-Peer Architecture Case Study: Gnutella Network, Matei Ruoeanu, In Int. Conf. on Peer-to-Peer.
Gnutella2: A Better Gnutella?
By Shobana Padmanabhan Sep 12, 2007 CSE 473 Class #4: P2P Section 2.6 of textbook (some pictures here are from the book)
Peer-to-Peer Overlay Networks. Outline Overview of P2P overlay networks Applications of overlay networks Classification of overlay networks – Structured.
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.
1 P2P Computing. 2 What is P2P? Server-Client model.
Introduction to Peer-to-Peer Networks. What is a P2P network A P2P network is a large distributed system. It uses the vast resource of PCs distributed.
Introduction of P2P systems
Peer-to-Peer Networks University of Jordan. Server/Client Model What?
Chapter 2: Application layer
Jonathan Walpole CSE515 - Distributed Computing Systems 1 Teaching Assistant for CSE515 Rahul Dubey.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Structuring P2P networks for efficient searching Rishi Kant and Abderrahim Laabid Abderrahim Laabid.
Super-peer Network. Motivation: Search in P2P Centralised (Napster) Flooding (Gnutella)  Essentially a breadth-first search using TTLs Distributed Hash.
Quantitative Evaluation of Unstructured Peer-to-Peer Architectures Fabrício Benevenuto José Ismael Jr. Jussara M. Almeida Department of Computer Science.
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP r.
Node Lookup in P2P Networks. Node lookup in p2p networks In a p2p network, each node may provide some kind of service for other nodes and also will ask.
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.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
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.
1. Efficient Peer-to-Peer Lookup Based on a Distributed Trie 2. Complex Queries in DHT-based Peer-to-Peer Networks Lintao Liu 5/21/2002.
Peer to Peer Network Design Discovery and Routing algorithms
Peer-to-peer systems (part I) Slides by Indranil Gupta (modified by N. Vaidya)
A Reputation-Based Approach for Choosing Reliable Resources in Peer-to-Peer Networks E. Damiani S. De Capitani di Vimercati S. Paraboschi P. Samarati F.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
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.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt.
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.
Peer-to-Peer and Social Networks
A Scalable content-addressable network
Presentation transcript:

Peer-to-Peer Networks João Guerreiro Truong Cong Thanh Department of Information Technology Uppsala University

Overview Motivation Centralized Networks Pure P2P Networks Hybrid Networks Distributed Hash Tables

Client/Server Model

The server must send a copy of the file to every client. Excessive use of the server’s bandwidth. The more clients there will be, the more the time it will take for all the clients to get the file.

P2P Model Every client (peer), can send a part of the file that he received to other peers. Peers help the server distributing the file. Scalable !

P2P Model

We will share :  The responsabilities.  The costs.

Centralized P2P Networks

Presence of a central server. The server knows :  Which files are available.  Who has which files. To find a file it’s necessary to check the server. The server puts the peers in touch.

Napster Application for sharing musical files(.mp3). Closed in 2001 for legal reasons. Re opened and became a paying service.

Napster : Login Peer sends a message to the server, containing its nick and password. Server check the peer’s identity. Server sends an ACK to the peer. Peer sends to server the list of files he is willing to share.

Napster : Getting a file Peer sends a « SEARCH » message to the server. Server checks its database. Server sends to peer, one or several « RESPONSE » messages. Peer talks directly with the peer(s) who have the file.

Napster : Conclusion We find a file really quickly. If server crashes, the whole system is down. The more peers, the more « powerful » the server must be.

Pure P2P Networks

No central server. To connect, we must connect to peers already inside.

Gnutella 0.4 Gnu + Nutella = Gnutella. Share different types of files (.jpg,.avi,.mp3, etc).

Gnutella 0.4 : Login If first time, the peer contacts a « startup server ». Otherwise peer tries to connect to peers he knows from the past. We connect to a few peers.

Gnutella 0.4 : Finding a file There is no central server. Q : How to know where is the file ? A : We will use flooding.

Gnutella 0.4 : Flooding We flood the network with messages. We send a message to every neighbor. Neighbors will ask their neighbors. Q : When to stop ? A : TTL = 0.

Gnutella 0.4 : Time-to-Live (TTL) Every message has a TTL. We decrease the TTL. TTL(0) = 7, considered enough.

Gnutella 0.4 : Descriptor ID Descriptor ID identifies the message. We keep for a while the received Decriptor ID’s. Q : What to do if we know the Descriptor ID of a new received message ? A : We don’t forward it. Goal : Avoid cycles.

Gnutella 0.4 : PING & PONG PING :  Useful to explore the network.  Lets us know who is alive. PONG : Answer to a PING  Provides IP address + port number.  Provides the number of shared files.  Provides size of shared files. Remark : PONG follows the reverse path of PING.

Gnutella 0.4 : QUERY & QUERYHIT QUERY : Used to find a file. QUERYHIT : Answer to QUERY.  Can contain several results. Remark: As with PING & PONG, QUERYHIT follows the reverse path of QUERY.

Gnutella 0.4 : Conclusion No central server so no crashes. Cannot be closed down. A lot of generated traffic. We are not sure to find a file.

Hybrid P2P Networks

No central server. Hierarchical network. There will be Superpeers. Superpeers are the most powerful.

Gnutella 0.6 Necessary update due to the crash. We keep the PING, PONG, QUERY and QUERYHIT messages. New : Routing Tables.

Gnutella 0.6 : Routing Tables Each peer has one. When we connect to a Superpeer we send a ROUTE TABLE UPDATE message. With this message, the peer informs the Superpeer, which files he shares.

Gnutella 0.6 : Network of Layers Superpeers will be connected to other Superpeers. Superpeers send frequently PINGs to other Superpeers. When a « leaf » of a Superpeer sends a PING, the Superpeer answers with PONGs received previously.

Gnutella 0.6 : Conclusion We decreased the traffic :  Messages reach a wider number of peers, efficiently.  Superpeers « protect » their leafs from PINGs.

Is this all ? New type of system :  Distributed Hash Tables (DHT) Every peer is equal. Decentralized. Distributed indexing. Every node has an id. We find a file with an unique key. We find files faster. If a file exists, we alway find it.

Want to know more ? Andy Oram (Ed). Peer-to-Peer : Harnessing the Benefits of a Disruptive Technology. O’Reilly, Ralf Steinmetz, Klaus Wehrle (Eds). Lecture Notes in Computer Science - Peer-to-Peer Systems and Applications. Springer, 2005.

THE END