Peer-to-peer systems and overlay networks

Size: px
Start display at page:

Download "Peer-to-peer systems and overlay networks"

Transcription

1 Complex Adaptive Systems C.d.L. Informatica Università di Bologna Peer-to-peer systems and overlay networks Fabio Picconi Dipartimento di Scienze dell Informazione 1

2 Outline Introduction to P2P systems Common topologies Data location Churn Newscast algorithm Security 2

3 Peer-to-peer vs. client-server client-server Server well connected to the center of the Internet Servers carries out critical tasks Clients only talk to server peer-to-peer Only nodes located on the periphery of the Internet Tasks distributed across all nodes Clients talk to other clients 3

4 Example Video sharing Client-server: YouTube downloader downloader Advantages Client can disconnect after upload Uploader needs little bandwidth Other users can find the file easily (just use search on server webpage) uploader downloader client-server downloader downloader Disadvantages Server may not accept file or remove it later (according to content policy) Whole system depends on the server (what if shut down like Napster?) Server storage and bandwidth are expensive! 4

5 Example Video sharing Peer-to-peer: BitTorrent downloader downloader Advantages Does not depend on a central server Bandwidth shared across nodes (downloaders also act as uploaders) High scalability, low cost seeder downloader peer-to-peer downloader downloader Disadvantages Seeder must remain on-line to guarantee file availability Content is more difficult to find (downloaders must find.torrent file) Freeloaders cheat in order to download without uploading 5

6 Comparison: P2P vs. client-server Client-server Asymmetric: client and servers carry out different tasks Global knowledge: servers have a global view of the network Centralization: communications and management are centralized Single point of failure: a server failure brings down the system Limited scalability: servers easily overloaded Expensive: server storage and bandwidth capacity is not cheap Peer-to-peer Symmetric: each node carries out the same tasks Local knowledge: nodes only know a small set of other nodes Decentralization: nodes must selforganize in a decentralized way Robustness: several nodes may fail with little or no impact High scalability: high aggregate capacity, load distribution Low-cost: storage and bandwidth are contributed by users 6

7 Characterizing peer-to-peer systems The main characteristics of P2P systems are: decentralization (i.e., no central server) self-organization (e.g., adding new nodes and removing disconnected ones) symmetric communications (e.g., peers act as clients and servers) scalability (thanks to high aggregate capacity and load distribution) shared ownership (i.e., storage and bandwidth are contributed by peers) overlay construction and routing (i.e., nodes form a logical network on top of the underlying IP network) a message from one peer to another is sent through the underlying IP network 7

8 P2P environment P2P systems are deployed in a challenging environment: High latency and low bandwidth between nodes - a high hop count will result in a high end-to-end latency - transferring large files may take a long time Churn - nodes may disconnect temporarily - new nodes are constantly joining the system, while others leave the overlay permanently Security - P2P clients run on machines under full control of their users - data sent to other nodes may be erased, corrupted, disclosed, etc. - malicious users may try to bring down the system (e.g., routing attack) Selfishness - users may run hacked P2P clients in order to avoid contributing resources 8

9 Problems Some of the problems that a P2P systems designer must face: Overlay construction and maintenance - maintain a given overlay topology (e.g., random, two-level, ring, etc.) Data location - locate a given data object among a large number of nodes Data dissemination - propagate data in an efficient and robust manner Per-node state - keep the amount of state per node small Tolerance to churn - maintain system invariants (e.g., topology, data location, data availability) despite node arrivals and departures 9

10 Topology Some common topologies: Flat unstructured: a node can connect to any other node - only constraint: maximum degree d max - fast join procedure - usually very tolerant to churn - good for data dissemination, bad for location Two-level unstructured: nodes connect to a supernode - supernodes form a small overlay - used for indexing and forwarding - large state and high load on supernodes Flat structured: constraints based on node ids - allows for efficient data location - constraints require long join and leave procedures - less robust in high-churn environments 10

11 Data location - Flooding Problem: find the set of nodes S that store a copy of object O Solutions: (1) Flooding: send a search message to all nodes [first Gnutella protocol] A search message contains either keywords or an object id Advantages: - simplicity - no topology constraints Disadvantages: - high network overhead (huge traffic generated by each search request) - flooding stopped by TTL (which produces search horizon) - only applicable to small number of nodes 11

12 Data location - Flooding (1) Flooding (cont.) Flooding in a flat unstructured network: obj search search horizon for TTL = 2 Objects that lie outside of the horizon are not found 12

13 Data location - Superpeers (2) Two-level overlay: use superpeers to index the locations of an object [emule, Gnutella 2, BitTorrent] Each node connects to a superpeer and advertises the list of objects it stores Search requests are sent to the superpeer, which forwards them to other superpeers Advantages: - highly scalable Disadvantages: - superpeers must be realiable, powerful and well connected to the Internet (expensive) - superpeers must maintain large state - the system relies on a small number of superpeers 13

14 Data location - Superpeers (2) Two-level overlay (cont.) obj request response A two-level overlay is a partially centralized system In some systems superpeers do not connect to each other (e.g., BitTorrent) 14

15 Data location - KBR (3) Structured networks: use a routing algorithm that implements Key-Based Routing [Overnet, Kad, BitTorrent trackerless] Key-Based Routing (also known as Distributed Hash Tables, or DHTs) works as follows: each node is given a unique node identifier, or nodeid given a key k, the node whose nodeid is numerically closest to k among all nodes in the network is known as the root of key k given a routing key k, a KBR algorithm can route a message to the root of k in a small number of hops, usually O(log N) the location of an object with id objectid is tracked by the root of k = objectid thus, one can find the location of an object by routing a message to the root of k = objectid and querying the root for the location of the object 15

16 Data location - KBR (cont.) Key-Based Routing [Pastry] route(k=8955,msg) Source node id: 04F2 k = object id: 8955 Hop # Hop id Shared prefix length 0 04F E (root of k) 3A F2 E25A C52A 8957 AC78 obj 8955 Object 8955 is tracked by node 8954, which knows of two copies stored at nodes 620F and C52A 620F obj E overlay address space [0000,FFFF] 8954 obj8955 stored on nodes 620F,C52A 16

17 Data location - KBR (cont.) Routing table for node 4F28 [Pastry] used to find next hop with longer shared prefix used to find the nodeid closest to a key that is close to the local nodeid In this example the routing table size is 4 x 15 = 60 entries, for a maximum network size of N = nodes. The average route length in this case is 4 hops. 17

18 Data location - KBR (cont.) (3) Structured networks (cont.) Advantages: - completely decentralized (no need for superpeers) - routing algorithm achieves low hop count for large network sizes Disadvantages: - each object must be tracked by a different node - objects are tracked by unreliable nodes (i.e., which may disconnect) - keyword-based searches are more difficult to implement than with superpeers (because objects are located by their objectid) - the overlay must be structured according to a given topology in order to achieve a low hop count - routing tables must be updated every time a node joins or leaves the overlay 18

19 Data location - Loosely structured overlays (4) Loosely structured networks: use hints on the location of objects [Freenet] Nodes locate objects by sending search requests containing the object id Requests are propagated using a technique similar to flooding Objects with similar identifiers are grouped on the same nodes A request for AE5J C B 5B20 E D response F AE5J AF02 19

20 Data location - Loosely structured overlays (4) Loosely structured networks (cont.) A search response leaves routing hints on the path back to the source Hints are used when propagating future requests for similar object ids Hints AE5J: B A Hints AE5J: D 5B20: E B request for AF02 C 5B20 AE5J E D Hints AE5J: F F AF02 20

21 Data location - Loosely structured overlays (4) Loosely structured networks (cont.) Advantages: - no topology constraints, flat architecture - searches are more efficient than with plain flooding Disadvantages: - does not support keyword-based searches - search requests have a TTL - contrary to structured overlays, loosely structured overlay do not guarantee a low number of hops, nor that the object will be found 21

22 Data location - Summary The location schemes described previously can be classified according to: degree of structure decentralization unstructured loosely structured structured partially centralized emule Gnutella 2 BitTorrent - - decentralized Gnutella Freenet Kad 22

23 Effects of churn Churn (node arrivals and departures) can have several effects on a P2P system: data objects may be become unavailable if all replicas disconnect routing tables may become inconsistent (e.g., entries may point to nodes which have disconnected) the overlay may become partitioned if several nodes suddenly disconnect: 23

24 Churn tolerance Node arrivals and departures must not disrupt the normal behavior of the system system invariants must be maintained - connected overlay (i.e., no partitions), low average path length - data objects accessible from anywhere in the network two types of churn tolerance: - dynamic repair: ability to react to changes in the overlay to maintain system invariants (e.g., heal partitions) - static resilience: ability to continue operating correctly before adaptation occurs (e.g., route messages through alternate paths) 24

25 Churn Preventing partitions An simple way to prevent partitions is to increase the node degree Ring partitions can be avoided by keeping a list of successor nodes 25

26 Churn Static resilience (Ring topology) Percentage of failed paths for various numbers of successor nodes 1 successor 16 successors 48 successors More successors reduce the chances of opening the ring 26

27 Churn Static resilience (various topologies) Percentage of failed paths for various overlay topologies Some topologies provide more alternate paths between nodes than others 27

28 Churn Dynamic repair (Ring topology) Dynamically update routing information to adapt to overlay changes Two types of repair algorithms: - reactive: start maintenance procedure immediately after detection - periodic: execute maintenance procedure periodically A reactive algorithm can bring down the system instead of repairing it: Each node disconnection triggers a maintenance procedure on a set of nodes Over a given churn rate, the maintenance traffic congests the network The network congestion leads to nodes being considered as disconnected This triggers even more maintenance procedures (positive feedback), eventually bringing down the network This effect may be avoided using a periodic maintenance algorithm 28

29 Churn Summary Churn is an important issue in P2P overlays: Data may become unavailable, and routing information outdated Static resilience - depends on the topology (i.e., the number of alternate paths) - increases with the average node degree Dynamic repair protocols must be carefully designed - reactive protocols are usually faster - periodic protocols can handle higher churn rates 29

30 Newscast Peer-to-peer protocol that creates and maintains an unstructured overlay Highly resilient to churn Can be used to propagate information Extremely simple design based on information gossip: - Each node only knows about a small set of other knows (view) - Each node periodically picks a random node from this set - Both nodes exchange their views and update them The random view exchange makes the algorithm very robust to failures and changes in the overlay 30

31 Newscast - View exchange Each node maintains a view v containing c entries, where entry = {node address, timestamp} Each node executes the following code every T seconds: 1. select random entry r from local view 2. send local view plus an entry with the local address to node r 3. retrieve view of node r and merge it with local view 4. keep the c entries with the most recent timestamps The view of a node changes on each round 31

32 Newscast - View exchange (cont.) Example view exchange initiated by node A W B A D E B,10 D,5 E,3 X,8 S,12 W,2 view of node A (c = 6) S X 32

33 Newscast - View exchange (cont.) 1. Select random node B,10 D,5 E,3 X,8 S,12 W,2 view of node A selected node 2. Exchange views (plus local entry) with selected node view of node A A,15 B,10 D,5 E,3 X,8 S,12 W,2 E,15 J,14 C,9 D,8 H,10 L,14 Z,2 view of node E A E 33

34 Newscast - View exchange (cont.) 3. Merge views, and order by timestamp 4. Keep c most recent entries E,15 J,14 L,14 S,12 H,10 B,10 C,9 X,8 D,8 D,5 E,3 W,2 Z,2 merge result E,15 J,14 L,14 S,12 H,10 B,10 new view of node A (c = 6) 34

35 Newscast - Average path length Newscast overlays have a low average path length, i.e., O(log N) (average number of hops between any two nodes) 35

36 Newscast - Static resilience The overlay shows high static resilience 36

37 Newscast - Summary Simple peer-to-peer algorithm Nodes use only local information Periodic peer-wise data exchanges Emergent properties: - low average path length - resistance to high churn 37

38 Security Security in peer-to-peer systems is hard to enforce: Users have full control on their computers Modified clients may not follow the standard protocol Communications may be eavesdropped Data may be corrupted Private data stored on remote computers may be disclosed 38

39 Security - Weak identities The user may leave the system and rejoin it with a new identity (i.e, user id) If an attack is detected, the attacker can reenter the system with a new id An attacker may create a large number of false identities (Sybil attack) S6 S1 S5 A S2 S4 S3 Example of Sybil Attack: Nodes S1 to S6 are actually 6 instances of the P2P client running on the same machine The attacker can intercept all traffic coming from or going to node A 39

40 Security - Strong identities The user cannot change its identity Solution: use a centralized, trusted Certification Authority (CA) - Each new user must obtain an identity certificate: certificate = { user id, IP address, user s public key, signature CA } - The certificate is digitally signed by the CA, whose public key is known by all users - A certificate cannot be forged (would require the CA s private key) -To prove his identity, a user signs a message with his private key, and attaches the corresponding certificate signed by the CA Strong identities prevent Sybil Attacks If an attacker is caught, it cannot easily rejoin the system 40

41 Security Weak vs. strong identities Strong identities requires a centralized CA new nodes must contact the CA before joining the network: - the CA response may be slow (a few days) - if the CA is unavailable, new nodes cannot join the system the security of the system depends on the CA: - the CA must correctly verify the identity of the requester - the CA s private key must be kept secret Many P2P systems use weak identities IP address already gives some identity information Some systems ensure anonymity (e.g., FreeNet) 41

42 The end You can get these slides from For any questions, mail me to: 42

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today Network Science: Peer-to-Peer Systems Ozalp Babaoglu Dipartimento di Informatica Scienza e Ingegneria Università di Bologna www.cs.unibo.it/babaoglu/ Introduction Peer-to-peer (PP) systems have become

More information

Introduction to Peer-to-Peer Systems

Introduction to Peer-to-Peer Systems Introduction Introduction to Peer-to-Peer Systems Peer-to-peer (PP) systems have become extremely popular and contribute to vast amounts of Internet traffic PP basic definition: A PP system is a distributed

More information

Introduction to P2P Computing

Introduction to P2P Computing Introduction to P2P Computing Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Introduction A. Peer-to-Peer vs. Client/Server B. Overlay Networks 2. Common Topologies 3. Data Location 4. Gnutella

More information

Peer-to-Peer Systems. Chapter General Characteristics

Peer-to-Peer Systems. Chapter General Characteristics Chapter 2 Peer-to-Peer Systems Abstract In this chapter, a basic overview is given of P2P systems, architectures, and search strategies in P2P systems. More specific concepts that are outlined include

More information

Content Overlays. Nick Feamster CS 7260 March 12, 2007

Content Overlays. Nick Feamster CS 7260 March 12, 2007 Content Overlays Nick Feamster CS 7260 March 12, 2007 Content Overlays Distributed content storage and retrieval Two primary approaches: Structured overlay Unstructured overlay Today s paper: Chord Not

More information

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University CS 555: DISTRIBUTED SYSTEMS [P2P SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Byzantine failures vs malicious nodes

More information

The Design and Implementation of a Next Generation Name Service for the Internet (CoDoNS) Presented By: Kamalakar Kambhatla

The Design and Implementation of a Next Generation Name Service for the Internet (CoDoNS) Presented By: Kamalakar Kambhatla The Design and Implementation of a Next Generation Name Service for the Internet (CoDoNS) Venugopalan Ramasubramanian Emin Gün Sirer Presented By: Kamalakar Kambhatla * Slides adapted from the paper -

More information

Fast Topology Management in Large Overlay Networks

Fast Topology Management in Large Overlay Networks Topology as a key abstraction Fast Topology Management in Large Overlay Networks Ozalp Babaoglu Márk Jelasity Alberto Montresor Dipartimento di Scienze dell Informazione Università di Bologna! Topology

More information

Department of Computer Science Institute for System Architecture, Chair for Computer Networks. File Sharing

Department of Computer Science Institute for System Architecture, Chair for Computer Networks. File Sharing Department of Computer Science Institute for System Architecture, Chair for Computer Networks File Sharing What is file sharing? File sharing is the practice of making files available for other users to

More information

Making Gnutella-like P2P Systems Scalable

Making Gnutella-like P2P Systems Scalable Making Gnutella-like P2P Systems Scalable Y. Chawathe, S. Ratnasamy, L. Breslau, N. Lanham, S. Shenker Presented by: Herman Li Mar 2, 2005 Outline What are peer-to-peer (P2P) systems? Early P2P systems

More information

EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Overlay Networks: Motivations

EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Overlay Networks: Motivations EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley

More information

Handling Churn in a DHT

Handling Churn in a DHT Handling Churn in a DHT Sean Rhea, Dennis Geels, Timothy Roscoe, and John Kubiatowicz UC Berkeley and Intel Research Berkeley What s a DHT? Distributed Hash Table Peer-to-peer algorithm to offering put/get

More information

Scalable overlay Networks

Scalable overlay Networks overlay Networks Dr. Samu Varjonen 1 Lectures MO 15.01. C122 Introduction. Exercises. Motivation. TH 18.01. DK117 Unstructured networks I MO 22.01. C122 Unstructured networks II TH 25.01. DK117 Bittorrent

More information

Ossification of the Internet

Ossification of the Internet Ossification of the Internet The Internet evolved as an experimental packet-switched network Today, many aspects appear to be set in stone - Witness difficulty in getting IP multicast deployed - Major

More information

Security for Structured Peer-to-peer Overlay Networks. Acknowledgement. Outline. By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818

Security for Structured Peer-to-peer Overlay Networks. Acknowledgement. Outline. By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818 Security for Structured Peer-to-peer Overlay Networks By Miguel Castro et al. OSDI 02 Presented by Shiping Chen in IT818 1 Acknowledgement Some of the following slides are borrowed from talks by Yun Mao

More information

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline System Architectural Design Issues Centralized Architectures Application

More information

Telematics Chapter 9: Peer-to-Peer Networks

Telematics Chapter 9: Peer-to-Peer Networks Telematics Chapter 9: Peer-to-Peer Networks Beispielbild User watching video clip Server with video clips Application Layer Presentation Layer Application Layer Presentation Layer Session Layer Session

More information

Overlay Networks: Motivations. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Motivations (cont d) Goals.

Overlay Networks: Motivations. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Motivations (cont d) Goals. Overlay Networks: Motivations CS : Introduction to Computer Networks Overlay Networks and PP Networks Ion Stoica Computer Science Division Department of lectrical ngineering and Computer Sciences University

More information

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE for for March 10, 2006 Agenda for Peer-to-Peer Sytems Initial approaches to Their Limitations CAN - Applications of CAN Design Details Benefits for Distributed and a decentralized architecture No centralized

More information

CSCI-1680 P2P Rodrigo Fonseca

CSCI-1680 P2P Rodrigo Fonseca CSCI-1680 P2P Rodrigo Fonseca Based partly on lecture notes by Ion Stoica, Sco5 Shenker, Joe Hellerstein Today Overlay networks and Peer-to-Peer Motivation Suppose you want to write a routing protocol

More information

A Survey of Peer-to-Peer Content Distribution Technologies

A Survey of Peer-to-Peer Content Distribution Technologies A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004 Presenter: Seung-hwan Baek Ja-eun Choi Outline Overview

More information

Today. Why might P2P be a win? What is a Peer-to-Peer (P2P) system? Peer-to-Peer Systems and Distributed Hash Tables

Today. Why might P2P be a win? What is a Peer-to-Peer (P2P) system? Peer-to-Peer Systems and Distributed Hash Tables Peer-to-Peer Systems and Distributed Hash Tables COS 418: Distributed Systems Lecture 7 Today 1. Peer-to-Peer Systems Napster, Gnutella, BitTorrent, challenges 2. Distributed Hash Tables 3. The Chord Lookup

More information

CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang

CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4 Xiaowei Yang xwy@cs.duke.edu Overview Problem Evolving solutions IP multicast Proxy caching Content distribution networks

More information

EE 122: Peer-to-Peer Networks

EE 122: Peer-to-Peer Networks EE 122: Peer-to-Peer Networks Ion Stoica (and Brighten Godfrey) TAs: Lucian Popa, David Zats and Ganesh Ananthanarayanan http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer

More information

Goals. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Solution. Overlay Networks: Motivations.

Goals. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Solution. Overlay Networks: Motivations. Goals CS : Introduction to Computer Networks Overlay Networks and PP Networks Ion Stoica Computer Science Division Department of lectrical ngineering and Computer Sciences University of California, Berkeley

More information

GNUnet Distributed Data Storage

GNUnet Distributed Data Storage GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans 1 1 Technische Universität München Department of Computer Science Network Architectures and Services July, 24 2010 Overview

More information

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma Overlay and P2P Networks Unstructured networks Prof. Sasu Tarkoma 20.1.2014 Contents P2P index revisited Unstructured networks Gnutella Bloom filters BitTorrent Freenet Summary of unstructured networks

More information

Peer to Peer Networks

Peer to Peer Networks Sungkyunkwan University Peer to Peer Networks Prepared by T. Le-Duc and H. Choo Copyright 2000-2018 Networking Laboratory P2P Applications Traditional P2P applications: for file sharing BitTorrent, Emule

More information

Peer-to-Peer Systems and Distributed Hash Tables

Peer-to-Peer Systems and Distributed Hash Tables Peer-to-Peer Systems and Distributed Hash Tables CS 240: Computing Systems and Concurrency Lecture 8 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Selected

More information

Scaling Problem Millions of clients! server and network meltdown. Peer-to-Peer. P2P System Why p2p?

Scaling Problem Millions of clients! server and network meltdown. Peer-to-Peer. P2P System Why p2p? Peer-to-Peer Scaling Problem Millions of clients! server and network meltdown 15-441 2 P2P System Why p2p? Leverage the resources of client machines (peers) Computation, storage, bandwidth 3 Scaling: Create

More information

Architectures for Distributed Systems

Architectures for Distributed Systems Distributed Systems and Middleware 2013 2: Architectures Architectures for Distributed Systems Components A distributed system consists of components Each component has well-defined interface, can be replaced

More information

Overlay and P2P Networks. Unstructured networks. PhD. Samu Varjonen

Overlay and P2P Networks. Unstructured networks. PhD. Samu Varjonen Overlay and P2P Networks Unstructured networks PhD. Samu Varjonen 25.1.2016 Contents Unstructured networks Last week Napster Skype This week: Gnutella BitTorrent P2P Index It is crucial to be able to find

More information

CS 640 Introduction to Computer Networks. Today s lecture. What is P2P? Lecture30. Peer to peer applications

CS 640 Introduction to Computer Networks. Today s lecture. What is P2P? Lecture30. Peer to peer applications Introduction to Computer Networks Lecture30 Today s lecture Peer to peer applications Napster Gnutella KaZaA Chord What is P2P? Significant autonomy from central servers Exploits resources at the edges

More information

Page 1. How Did it Start?" Model" Main Challenge" CS162 Operating Systems and Systems Programming Lecture 24. Peer-to-Peer Networks"

Page 1. How Did it Start? Model Main Challenge CS162 Operating Systems and Systems Programming Lecture 24. Peer-to-Peer Networks How Did it Start?" CS162 Operating Systems and Systems Programming Lecture 24 Peer-to-Peer Networks" A killer application: Napster (1999) Free music over the Internet Key idea: share the storage and bandwidth

More information

: Scalable Lookup

: Scalable Lookup 6.824 2006: Scalable Lookup Prior focus has been on traditional distributed systems e.g. NFS, DSM/Hypervisor, Harp Machine room: well maintained, centrally located. Relatively stable population: can be

More information

Secure and Robust Overlay Content Distribution

Secure and Robust Overlay Content Distribution Secure and Robust Overlay Content Distribution A THESIS SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY Hun Jeong Kang IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE

More information

Slides for Chapter 10: Peer-to-Peer Systems

Slides for Chapter 10: Peer-to-Peer Systems Slides for Chapter 10: Peer-to-Peer Systems From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Napster

More information

EE 122: Peer-to-Peer (P2P) Networks. Ion Stoica November 27, 2002

EE 122: Peer-to-Peer (P2P) Networks. Ion Stoica November 27, 2002 EE 122: Peer-to-Peer (P2P) Networks Ion Stoica November 27, 22 How Did it Start? A killer application: Naptser - Free music over the Internet Key idea: share the storage and bandwidth of individual (home)

More information

Lecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011

Lecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011 Lecture 6: Overlay Networks CS 598: Advanced Internetworking Matthew Caesar February 15, 2011 1 Overlay networks: Motivations Protocol changes in the network happen very slowly Why? Internet is shared

More information

Overlay networks. To do. Overlay networks. P2P evolution DHTs in general, Chord and Kademlia. Turtles all the way down. q q q

Overlay networks. To do. Overlay networks. P2P evolution DHTs in general, Chord and Kademlia. Turtles all the way down. q q q Overlay networks To do q q q Overlay networks P2P evolution DHTs in general, Chord and Kademlia Turtles all the way down Overlay networks virtual networks Different applications with a wide range of needs

More information

12/5/16. Peer to Peer Systems. Peer-to-peer - definitions. Client-Server vs. Peer-to-peer. P2P use case file sharing. Topics

12/5/16. Peer to Peer Systems. Peer-to-peer - definitions. Client-Server vs. Peer-to-peer. P2P use case file sharing. Topics // Topics Peer to Peer Systems Introduction Client-server vs peer to peer Peer-to-peer networks Routing Overlays Structured vs unstructured Example PP Systems Skype login server Peer-to-peer - definitions

More information

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems P2P Alex S. 1 Introduction The systems we will examine are known as Peer-To-Peer, or P2P systems, meaning that in the network, the primary mode of communication is between equally capable peers. Basically

More information

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma

Overlay and P2P Networks. Unstructured networks. Prof. Sasu Tarkoma Overlay and P2P Networks Unstructured networks Prof. Sasu Tarkoma 19.1.2015 Contents Unstructured networks Last week Napster Skype This week: Gnutella BitTorrent P2P Index It is crucial to be able to find

More information

Peer to Peer Networks

Peer to Peer Networks Sungkyunkwan University Peer to Peer Networks Prepared by T. Le-Duc and H. Choo Copyright 2000-2017 Networking Laboratory Presentation Outline 2.1 Introduction 2.2 Client-Server Paradigm 2.3 Peer-To-Peer

More information

Distributed Hash Tables: Chord

Distributed Hash Tables: Chord Distributed Hash Tables: Chord Brad Karp (with many slides contributed by Robert Morris) UCL Computer Science CS M038 / GZ06 12 th February 2016 Today: DHTs, P2P Distributed Hash Tables: a building block

More information

Distributed Systems. 17. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2016

Distributed Systems. 17. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2016 Distributed Systems 17. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2016 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can

More information

S/Kademlia: A Practicable Approach Towards Secure Key Based Routing

S/Kademlia: A Practicable Approach Towards Secure Key Based Routing S/Kademlia: A Practicable Approach Towards Secure Key Based Routing Ingmar Baumgart, Sebastian Mies P2P NVE 2007, Hsinchu, Taiwan, Institute of Telematics Prof. Dr. M. Zitterbart Motivation Kademlia is

More information

416 Distributed Systems. Mar 3, Peer-to-Peer Part 2

416 Distributed Systems. Mar 3, Peer-to-Peer Part 2 416 Distributed Systems Mar 3, Peer-to-Peer Part 2 Scaling Problem Millions of clients server and network meltdown 2 P2P System Leverage the resources of client machines (peers) Traditional: Computation,

More information

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza P2P Applications Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Versione originale delle slides fornita da Dora Spenza e Marco Barbera P2P Paradigm Late 80

More information

PEER-TO-PEER NETWORKS, DHTS, AND CHORD

PEER-TO-PEER NETWORKS, DHTS, AND CHORD PEER-TO-PEER NETWORKS, DHTS, AND CHORD George Porter May 25, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license

More information

Peer-to-Peer Internet Applications: A Review

Peer-to-Peer Internet Applications: A Review Peer-to-Peer Internet Applications: A Review Davide Quaglia 01/14/10 Introduction Key points Lookup task Outline Centralized (Napster) Query flooding (Gnutella) Distributed Hash Table (Chord) Simulation

More information

Searching for Shared Resources: DHT in General

Searching for Shared Resources: DHT in General 1 ELT-53206 Peer-to-Peer Networks Searching for Shared Resources: DHT in General Mathieu Devos Tampere University of Technology Department of Electronics and Communications Engineering Based on the original

More information

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli

P2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli P2P Applications Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli Server-based Network Peer-to-peer networks A type of network

More information

Distributed Hash Tables

Distributed Hash Tables Distributed Hash Tables CS6450: Distributed Systems Lecture 11 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University.

More information

Scaling Problem Millions of clients! server and network meltdown. Peer-to-Peer. P2P System Why p2p?

Scaling Problem Millions of clients! server and network meltdown. Peer-to-Peer. P2P System Why p2p? Scaling Problem Millions of clients! server and network meltdown Peer-to-Peer 15-441 2 P2P System Why p2p? Leverage the resources of client machines (peers) Computation, storage, bandwidth Scaling: Create

More information

Advanced Distributed Systems. Peer to peer systems. Reference. Reference. What is P2P? Unstructured P2P Systems Structured P2P Systems

Advanced Distributed Systems. Peer to peer systems. Reference. Reference. What is P2P? Unstructured P2P Systems Structured P2P Systems Advanced Distributed Systems Peer to peer systems Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ AdvancedDistributedSystems/ What is P2P Unstructured P2P Systems

More information

CPSC 426/526. P2P Lookup Service. Ennan Zhai. Computer Science Department Yale University

CPSC 426/526. P2P Lookup Service. Ennan Zhai. Computer Science Department Yale University CPSC 4/5 PP Lookup Service Ennan Zhai Computer Science Department Yale University Recall: Lec- Network basics: - OSI model and how Internet works - Socket APIs red PP network (Gnutella, KaZaA, etc.) UseNet

More information

CIS 700/005 Networking Meets Databases

CIS 700/005 Networking Meets Databases Announcements CIS / Networking Meets Databases Boon Thau Loo Spring Lecture Paper summaries due at noon today. Office hours: Wed - pm ( Levine) Project proposal: due Feb. Student presenter: rd Jan: A Scalable

More information

Secure Distributed Storage in Peer-to-peer networks

Secure Distributed Storage in Peer-to-peer networks Secure Distributed Storage in Peer-to-peer networks Øyvind Hanssen 07.02.2007 Motivation Mobile and ubiquitous computing Persistent information in untrusted networks Sharing of storage and information

More information

L3S Research Center, University of Hannover

L3S Research Center, University of Hannover , University of Hannover Dynamics of Wolf-Tilo Balke and Wolf Siberski 21.11.2007 *Original slides provided by S. Rieche, H. Niedermayer, S. Götz, K. Wehrle (University of Tübingen) and A. Datta, K. Aberer

More information

Lecture 8: Application Layer P2P Applications and DHTs

Lecture 8: Application Layer P2P Applications and DHTs Lecture 8: Application Layer P2P Applications and DHTs COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

Content Search. Unstructured P2P. Jukka K. Nurminen

Content Search. Unstructured P2P. Jukka K. Nurminen Content Search Unstructured P2P Jukka K. Nurminen *Partly adapted from original slides provided by Rüdiger Schollmeier and Jörg Eberspächer (Technische Universität München) 1 V1-Filename.ppt / yyyy-mm-dd

More information

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

Fairness Example: high priority for nearby stations Optimality Efficiency overhead Routing Requirements: Correctness Simplicity Robustness Under localized failures and overloads Stability React too slow or too fast Fairness Example: high priority for nearby stations Optimality Efficiency

More information

Searching for Shared Resources: DHT in General

Searching for Shared Resources: DHT in General 1 ELT-53207 P2P & IoT Systems Searching for Shared Resources: DHT in General Mathieu Devos Tampere University of Technology Department of Electronics and Communications Engineering Based on the original

More information

Middleware and Distributed Systems. Peer-to-Peer Systems. Peter Tröger

Middleware and Distributed Systems. Peer-to-Peer Systems. Peter Tröger Middleware and Distributed Systems Peer-to-Peer Systems Peter Tröger Peer-to-Peer Systems (P2P) Concept of a decentralized large-scale distributed system Large number of networked computers (peers) Each

More information

Flooded Queries (Gnutella) Centralized Lookup (Napster) Routed Queries (Freenet, Chord, etc.) Overview N 2 N 1 N 3 N 4 N 8 N 9 N N 7 N 6 N 9

Flooded Queries (Gnutella) Centralized Lookup (Napster) Routed Queries (Freenet, Chord, etc.) Overview N 2 N 1 N 3 N 4 N 8 N 9 N N 7 N 6 N 9 Peer-to-Peer Networks -: Computer Networking L-: PP Typically each member stores/provides access to content Has quickly grown in popularity Bulk of traffic from/to CMU is Kazaa! Basically a replication

More information

Overlay networks. Today. l Overlays networks l P2P evolution l Pastry as a routing overlay example

Overlay networks. Today. l Overlays networks l P2P evolution l Pastry as a routing overlay example Overlay networks Today l Overlays networks l P2P evolution l Pastry as a routing overlay eample Network virtualization and overlays " Different applications with a range of demands/needs network virtualization

More information

Peer-to-Peer (P2P) Systems

Peer-to-Peer (P2P) Systems Peer-to-Peer (P2P) Systems What Does Peer-to-Peer Mean? A generic name for systems in which peers communicate directly and not through a server Characteristics: decentralized self-organizing distributed

More information

Telecommunication Services Engineering Lab. Roch H. Glitho

Telecommunication Services Engineering Lab. Roch H. Glitho 1 Support Infrastructure Support infrastructure for application layer Why? Re-usability across application layer protocols Modularity (i.e. separation between application layer protocol specification /

More information

*Adapted from slides provided by Stefan Götz and Klaus Wehrle (University of Tübingen)

*Adapted from slides provided by Stefan Götz and Klaus Wehrle (University of Tübingen) Distributed Hash Tables (DHT) Jukka K. Nurminen *Adapted from slides provided by Stefan Götz and Klaus Wehrle (University of Tübingen) The Architectures of st and nd Gen. PP Client-Server Peer-to-Peer.

More information

Modern Technology of Internet

Modern Technology of Internet Modern Technology of Internet Jiří Navrátil, Josef Vojtěch, Jan Furman, Tomáš Košnar, Sven Ubik, Milan Šárek, Jan Růžička, Martin Pustka, Laban Mwansa, Rudolf Blažek Katedra počítačových systémů FIT České

More information

Distributed Hash Table

Distributed Hash Table Distributed Hash Table P2P Routing and Searching Algorithms Ruixuan Li College of Computer Science, HUST rxli@public.wh.hb.cn http://idc.hust.edu.cn/~rxli/ In Courtesy of Xiaodong Zhang, Ohio State Univ

More information

Lecture 17: Peer-to-Peer System and BitTorrent

Lecture 17: Peer-to-Peer System and BitTorrent CSCI-351 Data communication and Networks Lecture 17: Peer-to-Peer System and BitTorrent (I swear I only use it for Linux ISOs) The slide is built with the help of Prof. Alan Mislove, Christo Wilson, and

More information

08 Distributed Hash Tables

08 Distributed Hash Tables 08 Distributed Hash Tables 2/59 Chord Lookup Algorithm Properties Interface: lookup(key) IP address Efficient: O(log N) messages per lookup N is the total number of servers Scalable: O(log N) state per

More information

Scaling Problem Computer Networking. Lecture 23: Peer-Peer Systems. Fall P2P System. Why p2p?

Scaling Problem Computer Networking. Lecture 23: Peer-Peer Systems. Fall P2P System. Why p2p? Scaling Problem 15-441 Computer Networking Millions of clients server and network meltdown Lecture 23: Peer-Peer Systems Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 2 P2P System Why p2p?

More information

DISTRIBUTED SYSTEMS CSCI 4963/ /4/2015

DISTRIBUTED SYSTEMS CSCI 4963/ /4/2015 1 DISTRIBUTED SYSTEMS CSCI 4963/6963 12/4/2015 2 Info Quiz 7 on Tuesday. Project 2 submission URL is posted on the web site Submit your source code and project report (PDF!!!) in a single zip file. If

More information

Distributed Knowledge Organization and Peer-to-Peer Networks

Distributed Knowledge Organization and Peer-to-Peer Networks Knowledge Organization and Peer-to-Peer Networks Klaus Wehrle Group Chair of Computer Science IV RWTH Aachen University http://ds.cs.rwth-aachen.de 1 Organization of Information Essential challenge in?

More information

Peer- Peer to -peer Systems

Peer- Peer to -peer Systems Peer-to-peer Systems Brian Nielsen bnielsen@cs.aau.dk Client-Server Centralized Bottleneck Functional specialization Single point of failure Central administration NFS Client NFS Client NFS Server NFS

More information

CS514: Intermediate Course in Computer Systems

CS514: Intermediate Course in Computer Systems Distributed Hash Tables (DHT) Overview and Issues Paul Francis CS514: Intermediate Course in Computer Systems Lecture 26: Nov 19, 2003 Distributed Hash Tables (DHT): Overview and Issues What is a Distributed

More information

Scalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou

Scalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou Scalability In Peer-to-Peer Systems Presented by Stavros Nikolaou Background on Peer-to-Peer Systems Definition: Distributed systems/applications featuring: No centralized control, no hierarchical organization

More information

Debunking some myths about structured and unstructured overlays

Debunking some myths about structured and unstructured overlays Debunking some myths about structured and unstructured overlays Miguel Castro Manuel Costa Antony Rowstron Microsoft Research, 7 J J Thomson Avenue, Cambridge, UK Abstract We present a comparison of structured

More information

Peer-to-Peer Semantic Search Engine

Peer-to-Peer Semantic Search Engine Peer-to-Peer Semantic Search Engine Tomáš Havryluk, Ivan Jelínek Abstract: Peer-to-Peer is a relatively old but still an evolving branch of web technologies. This article gives a survey of Peer-to-Peer

More information

L3S Research Center, University of Hannover

L3S Research Center, University of Hannover , University of Hannover Structured Peer-to to-peer Networks Wolf-Tilo Balke and Wolf Siberski 3..6 *Original slides provided by K. Wehrle, S. Götz, S. Rieche (University of Tübingen) Peer-to-Peer Systems

More information

Distributed Systems. 16. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2017

Distributed Systems. 16. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2017 Distributed Systems 16. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2017 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can

More information

Constructing Overlay Networks through Gossip

Constructing Overlay Networks through Gossip Constructing Overlay Networks through Gossip Márk Jelasity Università di Bologna Project funded by the Future and Emerging Technologies arm of the IST Programme The Four Main Theses 1: Topology (network

More information

Peer-to-Peer Protocols and Systems. TA: David Murray Spring /19/2006

Peer-to-Peer Protocols and Systems. TA: David Murray Spring /19/2006 Peer-to-Peer Protocols and Systems TA: David Murray 15-441 Spring 2006 4/19/2006 P2P - Outline What is P2P? P2P System Types 1) File-sharing 2) File distribution 3) Streaming Uses & Challenges 2 Problem:

More information

Distributed Information Processing

Distributed Information Processing Distributed Information Processing 14 th Lecture Eom, Hyeonsang ( 엄현상 ) Department of Computer Science & Engineering Seoul National University Copyrights 2016 Eom, Hyeonsang All Rights Reserved Outline

More information

P2PNS: A Secure Distributed Name Service for P2PSIP

P2PNS: A Secure Distributed Name Service for P2PSIP P2PNS: A Secure Distributed Name Service for P2PSIP Mobile P2P 2008, Hong Kong, China Outline Decentralized VoIP (P2PSIP) Peer-to-Peer name service (P2PNS) Architecture Two-stage name resolution P2PNS

More information

Content Search. Unstructured P2P

Content Search. Unstructured P2P Content Search Unstructured P2P Prof. Jukka K. Nurminen Data Communications Software (DCS) Lab, Department of Computer Science and Engineering, Aalto University *Partly adapted from original slides provided

More information

Architectures for distributed systems (Chapter 2)

Architectures for distributed systems (Chapter 2) Today Architectures for distributed systems (Chapter 2) Architectural styles Client-server architectures Decentralized and peer-to-peer architectures Lecture 2, page!1 Module 1: Architectural Styles Important

More information

Problems in Reputation based Methods in P2P Networks

Problems in Reputation based Methods in P2P Networks WDS'08 Proceedings of Contributed Papers, Part I, 235 239, 2008. ISBN 978-80-7378-065-4 MATFYZPRESS Problems in Reputation based Methods in P2P Networks M. Novotný Charles University, Faculty of Mathematics

More information

INF5070 media storage and distribution systems. to-peer Systems 10/

INF5070 media storage and distribution systems. to-peer Systems 10/ INF5070 Media Storage and Distribution Systems: Peer-to to-peer Systems 10/11 2003 Client-Server! Traditional distributed computing! Successful architecture, and will continue to be so (adding proxy servers)!

More information

Overview Computer Networking Lecture 16: Delivering Content: Peer to Peer and CDNs Peter Steenkiste

Overview Computer Networking Lecture 16: Delivering Content: Peer to Peer and CDNs Peter Steenkiste Overview 5-44 5-44 Computer Networking 5-64 Lecture 6: Delivering Content: Peer to Peer and CDNs Peter Steenkiste Web Consistent hashing Peer-to-peer Motivation Architectures Discussion CDN Video Fall

More information

Cooperation in Open Distributed Systems. Stefan Schmid

Cooperation in Open Distributed Systems. Stefan Schmid Cooperation in Open Distributed Systems Stefan Schmid T-Labs, Berlin, July 2, 2009 Distributed Systems 2008/9 Wireless: Many mobile phones today have WLAN (and even Skype) P2P: Olympic games 2008 live-broadcast

More information

Chapter 10: Peer-to-Peer Systems

Chapter 10: Peer-to-Peer Systems Chapter 10: Peer-to-Peer Systems From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Addison-Wesley 2005 Introduction To enable the sharing of data and resources

More information

Peer to Peer Systems and Probabilistic Protocols

Peer to Peer Systems and Probabilistic Protocols Distributed Systems 600.437 Peer to Peer Systems & Probabilistic Protocols Department of Computer Science The Johns Hopkins University 1 Peer to Peer Systems and Probabilistic Protocols Lecture 11 Good

More information

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Distributed and Agent Systems Peer-to-Peer Systems & JXTA Prof. Agostino Poggi What is Peer-to-Peer

More information

Overlay Networks. Behnam Momeni Computer Engineering Department Sharif University of Technology

Overlay Networks. Behnam Momeni Computer Engineering Department Sharif University of Technology CE443 Computer Networks Overlay Networks Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer

More information

Today. Architectural Styles

Today. Architectural Styles Today Architectures for distributed systems (Chapter 2) Centralized, decentralized, hybrid Middleware Self-managing systems Lecture 2, page 1 Architectural Styles Important styles of architecture for distributed

More information

Distributed Systems. peer-to-peer Johan Montelius ID2201. Distributed Systems ID2201

Distributed Systems. peer-to-peer Johan Montelius ID2201. Distributed Systems ID2201 Distributed Systems ID2201 peer-to-peer Johan Montelius 1 Idéa use resources in edge of network computing storage communication 2 Computing 3 seti@home central server millions of clients hundred of thousands

More information