Structured P2P Overlays

Size: px
Start display at page:

Download "Structured P2P Overlays"

Transcription

1 Structured P2P Overlays Project Group A Distributed Framework for Social Networks UPB SS2011 PG-Framework Lecture-03 Structured-Overlays-Pastry.ppt Dr.-Ing. Kalman Graffi graffi@mail.upb.de Fachgruppe Theorie verteilter Systeme Fakultät für Elektrotechnik, Informatik und Mathematik Universität Paderborn Fürstenallee 11, D Paderborn, Deutschland Tel , Fax This slide set is based on the lecture "Communication Networks 2" of Prof. Dr.-Ing. Ralf Steinmetz at TU Darmstadt

2 Some relevant books Monitoring and Management of Peer-to-Peer Systems Kalman Graffi Handbook of P2P Networking Xuemen Shen, Heather Yu, John Buford, Mursalin Akon Peer-to-Peer Systems and Applications Ralf Steinmetz, Klaus Wehrle (Editors) /content/g6h805426g7t H( m y data ) = 3107? berkeley.edu planet-lab.org peer-to-peer.info Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 2

3 Overview 1 Wrap-up: Peer-to-Peer 9 Properties 2 Structured Overlay Networks 2.1 Major Query Types 3 Fundamentals of Hash Tables 3.1 Recall Hash Function & Hash Table 3.2 Distributed Hash Table: Steps of Operation 3.3 Step 1: Addressing in Distributed Hash Tables 3.4 Step 2: Association of Address Space with Nodes 3.5 Step 3: Locating a Data Item 3.6 Step 4: Routing to a Data Item 3.7 Step 5: Data Retrieval Usage of located Resource 3.8 Step 6: Where is the Data located? 3.9 Distributed Hash Table: to Insert and to Delete a Node 3.10 Properties and Components of DHTs 4 Chord 5 Pastry, FreePastry and PAST 5.1 Pastry Routing Table 5.2 Joining the Network 5.3 Key-based Routing Interface 5.4 FreePastry Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 3

4 1 Wrap-up: Peer-to-Peer 9 Properties 1. relevant resources located at nodes ( peers ) at the edges of a network 2. peers share their resources 3. resource locations widely distributed most often largely replicated 4. variable connectivity is the norm 5. combined Client and Server functionality 6. direct interaction (provision of services, e.g. file transfer) between peers (= peer to peer ) 7. peers have significant autonomy and mostly similar rights 8. no central control or centralized usage/provisioning of a service 9. self-organizing system Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 4

5 Success of P2P Networking One of the newest buzzwords in networking is Peer-to-Peer (P2P) Is it only a hype? initially 40 million Napster users in 2 years integrated into commercial systems, e.g., Microsoft P2P SDK Advanced Networking Pack for Windows XP open source, e.g., JXTA (Sun) with Protocols & Services strong presence at international networking conferences Above logos copied from the respective web page Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 5

6 P2P Traffic P2P traffic is the major traffic source, since at least 2003 of overall Internet traffic more than ~50% is P2P traffic and P2P traffic in the Internet 60% 80% P2P file sharing traffic on backbones P2P generates most traffic in all regions Source: Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 6

7 Ipoque Internet Study 2008/ Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 7

8 Enabling Effects File sharing: highly attractive and cheap content users share their content with other users attractive content copyrights are usually not respected (problem!) cheap content Publishing: exploding amount of data 2 x 1E+18 Bytes are produced per year 3 x 1E+12 Bytes are published per year only 1.3x1E+8 websites indexed by search engines like Google see Gong: JXTA: A Network Programming Environment, IEEE Computing 2001 Unused resources at the edges more processing power, memory, bandwidth, storage available 1 TB hard disk for letters? 100 Mbit/s for sending s? new compression mechanisms (mp3, mpeg), no problem for CPUs assume e.g. a Small-Medium Enterprise (SME) with 100 desktop computers: spare storage space: 100 x 1 TB = 100 TB spare processing power: 100 x 2 x 2 GHz x 5 ops/cycle = 2 trillion ops/sec Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 8

9 Client / Server Model vs. P2P Technology Situation: 1 server, n * clients Issue:??? E.g. on which server is the information wanted? Solution: Look it up on another server (or google, which does this for you) Advantages: Reliable, well known behavior Drawbacks: Server need to provide (almost) all resources Client / Server model is not P2P: Communication only between clients and server, not between clients and clients Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 9

10 GRID Computing vs. P2P Technology Similar idea, similar concept as in P2P High performance data processing centers needed for scientific applications but expensive to provide often do not offer enough performance Solution: GRID to interconnect the existing data processing centers to Virtual Organization and operate it as distributed processing center (the GRID) History Participation Typical Transfer Volume Typical Service Typical Problems P2P Sharing MP3 files & illegal content Voluntarily Small (MP3) to medium (video) File Sharing Hugh number of users cause scalability issues GRID Saving costs for data processing centers By contract Huge (often terabytes) Processing Sharing Transferring huge amounts of data Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 10

11 Cloud Computing vs. P2P Technology Cloud and P2P Access to a distributed pool of resources Resources: storage, bandwidth, computational power Cloud computing Resource providers: companies Controlled environment No malicious providers No (/minimal) churn Homogenous devices Selective centralized structures OK Accounting, monitoring Single access point Centralized updates P2P systems Resource providers: user devices Uncontrolled environment Churn, malicious providers Heterogeneous devices Uncertainty / unpredictability Distributed access points Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 11

12 P2P in Business World New services at the edge of the network P2P overlay networks make it relatively easy to deploy new services Group collaboration superior for business processes grow organically, non-uniform and highly dynamic largely manual, ad-hoc, iterative and document-intensive work often distributed, not centralized no single person/organization understands the entire process from beginning to end Cost effectiveness reduces centralized management resources optimizes computing, storage and communication resources rapid deployment P2P applications/protocols tailored for user s needs Napster s success depended to a great amount on its ease of use Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 12

13 2 Structured Overlay Networks Unstructured P2P Structured P2P Centralized P2P Pure P2P Hybrid P2P DHT-Based Hybrid P2P 1. All features of Peerto-Peer included 2. Central entity is necessary to provide the service 3. Central entity is some kind of index/group database Examples: Napster 1. All features of Peerto-Peer included 2. Any terminal entity can be removed without loss of functionality 3. no central entities Examples: Gnutella 0.4 Freenet 1. All features of Peerto-Peer included 2. Any terminal entity can be removed without loss of functionality 3. dynamic central entities Examples: Gnutella 0.6 Fasttrack edonkey 1. All features of Peer-to-Peer included 2. Any terminal entity can be removed without loss of functionality 3. No central entities 4. Connections in the overlay are fixed Examples: Chord CAN Kademlia 1. All features of Peerto-Peer included 2. Peers are organized in a hierarchical manner 3. Any terminal entity can be removed without loss of functionality Examples: RecNet Globase.KOM from R.Schollmeier and J.Eberspächer, TU München Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 13

14 P2P Overlay Networks: What is Structure? Mapping Function: F R : R I Mapping Function: F P : P I Legend: I := Identifier space P := Set of peers R := Resources Source:Karl Aberer, The essence of P2P: A reference architecture for overlay networks Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 14

15 Review of Principles - Unstructured Overlay Networks Unstructured overlay networks Location of resource ONLY known to submitter Peers & resources have NO SPECIAL identifier Each peer is responsible ONLY for the resources it submitted Introduction of new resource at any location Main task: to search To find all peers storing/being in charge of resources fitting to some criteria And later to communicate directly peerto-peers having identified these peers Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 15

16 Principles - Structured Overlay Networks Unstructured overlay networks Location of resource ONLY known to submitter Peers & resources have NO SPECIAL identifier Each peer is responsible ONLY for the resources it submitted Introduction of new resource at any location Main task: to search To find all peers storing/being in charge of resources fitting to some criteria And later to communicate directly peerto-peers having identified these peers Structured overlay networks Location of resources NOT only known to submitter Each peer may well be responsible for resources IT HAS NOT submitted Introduction of new resource(s) at SPECIFIC location i.e. to give peers and resources (unique) identifier PeerIDs and ObjectIDs (RessourceIDs) shall be from the SAME key set Each peer is responsible for a specific range of ObjectIDs (i.e. RessourceIDs) Challenge: to find peer(s) with specific ID in overlay to lookup To route queries across the overlay network to peer with specific ID i.e. no search needed anymore Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 16

17 2.1 Major Query Types Lookup Key-Value lookup as known from hash tables look up objects by addressing them with their unique name (cf. URLs in web) Given: Key Return: Single value Full Text Search Find objects by searching with keywords that match object s description Given: sequence of word (search term) Return: all entries / articles matching the search terms Range Query Given: Range [ X, Y] Return: all stored entries within range Location based search Matching Query Given: logical condition (A && B C) Return: all entries fulfilling logical condition Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 17

18 Motivation Distributed Indexing Communication overhead vs. node state Communication Overhead O(N) O(log N) O(1) Flooding Bottleneck: Communication Overhead False negatives Distributed Hash Table Scalability: O(log N) No false negatives i.e. Never ( answer YES.. if it is NOT there ) More resistant against changes Failures, Attacks Short time users Bottlenecks: Memory, CPU, Network Availability Central Server O(1) O(log N) Node State O(N) The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 18

19 Mode of Operation of a Distributed Hash Table applications publish/insert (key, data) get/lookup (key) data distributed hash table DHT node node node. every object / resource has a (hash) key is stored at node responsible for its key every node stores and maintains part of hash table lookup(key) node or data directly lookup (ObjID 0x0E ) where it is stored and how it is identified there Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 19

20 3 Fundamentals of Hash Tables Challenges for designing DHTs: 1. Desired Characteristics Flexibility Reliability Scalability 2. Equal distribution of content among nodes Crucial for efficient lookup of content 3. Permanent adaptation to faults, join, leave of nodes Assignment of responsibilities to new nodes Re-assignment and re-distribution of responsibilities in case of node failure or departure The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 20

21 3.1 Recall Hash Function & Hash Table Hash function H(x) maps large input domain onto smaller target domain/range (most often subset of integer) such that we get few collisions i.e. it would be possible to uniquely identify most of these strings using this hash hash table data structure that provides fast lookup of a record indexed by a key where the domain of the key is too large for simple indexing; as would occur if an array were used Like arrays, hash tables can provide O(1) lookup with respect to the number of records in the table. And.. Question IF H(x) H(y) THEN (implies) x y? IF H(x) = H(y) THEN (most probably implies) x = y? Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 21

22 Recall Hash Tables & Hash Functions Hash tables are a well-known data structure A fixed-size array Elements of array also called hash buckets Properties Allow for insertions allow for deletions allow to find entry in constant (average) time Hash functions map keys to elements onto (in) the array Properties of good hash functions: Fast to compute Good distribution of keys into hash table Example: SHA-1 algorithm SHA = Secure Hash Algorithm Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 22

23 Hash Tables: An Example Hash function: hash(x) = x mod 10 Example Insert numbers 0, 1, 4, 9, 16, and 25 Properties Easy to find if a given key is present in the table Hash Table, an example Keys Values Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 23

24 Hash Tables: An Example Drawback of the example Collisions are likely to happen i.e. Additional processing as additional list at node use appropriate function Time to search grows linearly with amount of peers To insert and remove a peer scales also linearly e.g. appropriate Distributed Hash Table DHT Hash function must be adapted to the amount of available peers and it is extremely time consuming Distributed Hash Table DHT Distributed Hash Table DHT Assigns concatenated input RANGE to peers (instead of individual numbers) Hash Table, an example Keys Values Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 24

25 Application-specific Object IDs Content-based Hash Hash(filecontent) = Object ID Exact identification of files possible Locality-sensitive hashing like SimHash [Charikar, 2002] Family of functions that hash similar inputs to the same buckets with high probability Thus, similar input vectors get similar hashes, unlike e.g. MD5 or SHA Geographical position Object ID = X position Y position random identifier Allows for range queries in a multidimensional space Logical structure Hash ( Username:Alice Plugin:Profile Content:All ) = Object ID Allows to construct / lookup simple keys based on application Distributed linked lists Distributed data structures consisting of Pointer objects Payload items Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 25

26 3.2 Distributed Hash Table: Steps of Operation Sequence of operations (at beginning) Mapping of nodes and data same address space Peers and content are addressed using flat identifiers (IDs) Common address space for data and nodes Nodes are responsible for data in certain parts of the address space Association of data to nodes may change since nodes may disappear (later) Storing / Looking up data in the DHT Look-up for data = routing to the responsible node Responsible node not necessarily known in advance Deterministic statement about availability of data The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 26

27 3.3 Step 1: Addressing in Distributed Hash Tables ( ) 2 m -1 0 H(Node Y)=3485 Data item D : H( D )=3107 Y X H(Node X)=2906 Often, the address space is viewed as a circle. Mapping of content/nodes into linear space Usually: 0,, 2 m -1 >> number of objects to be stored Mapping of data and nodes onto same address space (e.g. 0 to 2 m -1) with hash function e.g., Hash(string) mod 2 m : H( my data ) 2313 Association of parts of address space to DHT nodes The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 27

28 3.4 Step 2: Association of Address Space with Nodes Logical view of the Distributed Hash Table Node 3485 is responsible for data items in range 2907 to 3485 (in case of a Chord-DHT) Mapping on the real topology Arrangement of the range of values Each node is responsible for part of the value range Often with redundancy (overlapping of parts) Continuous adaptation Real (underlay) and logical (overlay) topology are (mostly) uncorrelated The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 28

29 3.5 Step 3: Locating a Data Item Locating the data content-based routing Goal: Small and scalable effort O(1) with centralized hash table But: Management of a centralized hash table too costly (server) Minimum overhead with distributed hash tables O(log N): DHT hops to locate object O(log N): number of keys and routing information per node (N = no. of nodes) The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 29

30 3.6 Step 4: Routing to a Data Item Routing to a key/value-pair Start lookup at arbitrary node of DHT Routing to requested data item (key) H( my data ) = 3107? Node 3485 manages keys , Key = H( my data ) Initial node (arbitrary) (3107, (ip, port)) Value = pointer to location of data OR (small data itself) The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 30

31 3.7 Step 5: Data Retrieval Usage of located Resource Accessing the content Key/value-pair is delivered to requester Requester analyzes key/value-tuple (and downloads data from actual location in case of indirect storage) H( my data ) = 3107 Get_Data(ip, port) In case of indirect storage: After knowing the actual location, data is requested ? Node 3485 sends (3107, (ip/port)) to requester The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 31

32 3.8 Step 6: Where is the Data located? Association of Data with IDs Direct Storage D 611 D D H SHA-1 ( D )= Indirect Storage D H SHA-1 ( D )=3107 Item D: The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 32

33 Association of Data with IDs Direct Storage How is content stored at the nodes? Example: H( my data ) = 3107 is mapped onto DHT address space Direct storage Content is stored at responsible node for H( my data ) Content is transferred at publication INFLEXIBLE for large amount of content only OK if small amount (<2KB) Not recommended for most applications Suitable for social information? D 611 D D H SHA-1 ( D )= The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 33

34 Association of Data with IDs Indirect Storage Indirect storage Nodes in a DHT store tuples like (key,value) Key = Hash( my data ) 2313 Value is often real storage address of content: (IP, Port) = ( , 4711) MORE FLEXIBLE, but one step more to reach content D H SHA-1 ( D )=3107 Item D: The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 34

35 3.9 Distributed Hash Table: to Insert and to Delete a Node Join of a new node 1. Calculation of node ID 2. New node contacts DHT via arbitrary node 3. Assignment of a particular hash range 4. Copying of key/value-pairs of hash range (usually with redundancy) 5. Binding into routing environment ID: The content of this slide has been adapted from Peer-to-Peer Systems and Applications, ed. by Steinmetz, Wehrle Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 35

36 Node Failure and Node Departure Failure of a node Use of redundant key/value pairs (if a node fails) Use of redundant / alternative routing paths Key-value usually still retrievable if at least one copy remains Departure of a node Partitioning of hash range to neighbor nodes Copying of key/value pairs to corresponding nodes Unbinding from routing environment Research challenges Constant replacement of key/value pairs induces costs Replication of key/value pairs needed to avoid data loss Heterogeneity of peer capacities often ignored Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 36

37 3.10 Properties and Components of DHTs Properties: Hash buckets distributed over nodes Nodes form an overlay network Route messages in overlay to find responsible node Routing and ID labeling scheme in the overlay network is the difference between different DHTs DHT behavior and usage: Node knows object/resource name and wants to find it Unique and known object/resource names assumed Node routes a message in overlay to the responsible node Responsible node replies with object/resource Semantics of object/resource are application defined Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 37

38 Core Components of Distributed Hash Tables Hash table Uniform distribution Shifted view for each node (adding a node-related offset) Mapping function Node IDs and item keys share the same key-space Rules for associating keys to particular nodes Routing tables Per-node routing tables that refer to other nodes Rules for updating tables as nodes join and leave/fail Routing algorithms (operations on keys): XOR-based (e.g. Kademlia) Shift operations (e.g. D2B) Distance-based (e.g. Chord) Prefix-based (e.g. Pastry) Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 38

39 4 Chord Chord uses secure hash algorithm SHA-1 hash function Results in a 160-bit object/node identifier Same hash function for objects and nodes Node ID hashed from e.g., IP address Object ID hashed from object name Object names assumed to be known Chord is organized in a ring which wraps around Nodes keep track of predecessor and successor System invariant for valid network operation Node responsible for objects between its predecessor and itself Fingers used to enable efficient content addressing O(log(N)) fingers lead to lookup operation of O(log(N)) length Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications (2001) by Ion Stoica, et.al. Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 39

40 Chord: Network Topology Circular Key Space Link to ring successor Peers are responsible for own ID and IDs back to predecessor Uses SHA-1 (secure hash algorithm) to map IP address/object name onto 160 Bit ID Basic ring topology Successor/ Predecessor Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 40

41 Chord: Network Topology Fingers points to peers with ObjectIDs increasing exponentially. Here: k =, 965, 1221, 1733, Enhanced topology k th finger of Peer n is shortcut pointing to peers being responsible for Object ID (n + 2 k ) k ranges from 0 to log(n) O(log(N)) fingers lead to lookup operation of O(log(N)) Finger k Object ID = = = = = = 1733 Peer ID = 2757 Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 41

42 Chord: Join Procedure (1) Request to join the Chord ring Route the query in the ring Provide new peer s successor 1. Contact a member of the ring New Peer 1289 Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 42

43 Chord: Join Procedure (2) Request to join the Chord ring 1. Set successor 2. Redistribute indexing information (e.g ) Ny: Nx: Nz: Update successor of predecessor 1. & 2. Notify Successor Actions: N Z : Set Successor (N X ) N Z : Notify N X N X : Set Predecessor N X : Copy items (index) to N Z Build fingers & 4. Stabilize Actions: N Y : Ask Predecessor of N X N Y : Set Successor (N Z ) N Y : Notify N Z N Z : Set Predecessor (N Y ) N X : Clear moved items All: Fix Fingers Fingers of peer n pointing to peers responsible for ObjectID n + 2 k thus, log(n) fingers are built Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 43

44 Chord: Addressing Content Query Contains the hash value of the queried content On each step the distance from the destination is halved (remember fingers) Node 1008 queries item 3000 Use Fingers to locate the destination faster Without fingers: no shortcuts, walk the circle Responsible for Responsible for Responsible peer found Responsible for 3000 Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 44

45 Properties of Chord Advantages Disadvantages Efficient look up functionality Messages are routed within O(log N) steps Not churn resistant Chord ring is likely to fail Insufficient stabilization mechanism Low maintenance overhead Easy to implement Intuitive concept due to ring structure No support for heterogeneity All peers are treated equally Overloading of peers may happen No built-in security mechanisms Sensitive to malicious nodes Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 45

46 5 Pastry, FreePastry and PAST Pastry P2P overlay based on the Plaxton et al. DHT with prefix-based routing Developed by Microsoft and Rice Uni. FreePastry Prototypical Implementation of Pastry Most used by scientific community Comes with a set of extensions PAST Replication layer on top of FreePastry Write once, read many Prefix routing Equivalent to postfix routing Similar to DNS Both peer ID and object ID hashed Expressed in 32 hexadecimal numbers Base is important, here: 16 Besides (prefix-) routing table Leaf set: closest neighbors Neighborhood set: locally close nodes Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 46

47 5.1 Pastry Routing Table Example (Partial) routing mesh for a single node 4227 Neighbors on higher levels match more digits Routing table Each node has a neighbor map with multiple levels Each level represents a matching prefix up to digit position in ID A given level has number of entries equal to the base of ID ith entry in jth level is closest node which starts prefix(n,j-1)+ i Example: 3th entry of 2th level for node 4227 is the closest node with ID beginning with 43 Routing table of 4227 Some rows missing, table size: 32 x 16 normally more (most) entries filled Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 47

48 Pastry, FreePastry and PAST ID Space: [0, 2^128[ Randomly assigned while joining Base b (4 or 16) Routing table Used for prefix-based routing Typical size: log_(2^b) (N) rows 2^b 1 entries per row Row nr. i contains only nodeids sharing a prefix of length i with current node Leaf set L closest node IDs Typical size: L = 2^b or 2x2^b Neighborhood set M entries (typically M = 2x2^b) Contains the nodeids and IP addresses of locally closest nodes Routing state of node , base 4 Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 48

49 Routing Example Routing Route message from 5230 to 42AD Always route to node closer to target At nth hop, look at n+1th level in neighbor map always one digit more Not all nodes and links are shown Object reponsibility Node responsible for objects which have same ID Unlikely to find such node for every object Node responsible also for nearby objects Responsibility area Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 49

50 Routing Protocol Message for key K arrives at node X Let X= , b=4 1. Check if K in scope of Leaf Set E.g. K = Direct forwarding to If not (1) use Routing Table Let l:= prefix length of K and X E.g. K = , l=2 Check level 3, prefix If not (1) and no routing table entry E.g. K = Pick closest peer from routing table: , as closer than If X is closest to K than any node in Leaf Set (and Routing Table) X is responsible for K, routing ends Routing state of node , base 4 Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 50

51 5.2 Joining the Network New node: Y (node ID 6) Existing nodes: H (ID 1), B (ID 2), C (ID 3), W (ID 4) Protocol: Let H be the locally closest node (known) to Y Y sends a (join request) message addressing ID 6 to node H H forwards the message along the path to the responsible node W (ID 4) All nodes on the path answer their own state information to node Y Y s Neighborhood Set: taken from H Y s Leaf Set: taken from W Y s Routing Table: Row i taken from node i on the path Row 1 taken from H Row 2 taken from B Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 51

52 Joining the Network (continued) New node: Y (node ID 6) Existing nodes: H (ID 1), B (ID 2), C (ID 3), W (ID 4) Protocol: Y s final state information: sent to every node in Y s routing table/leaf set/nbr set All nodes update their tables Y checks locality of nodes in routing table/leaf set updates its nbr set Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 52

53 Robustness against Failures Coping with departures and failures Nodes leave unexpectedly (fail) For detection: Periodic checks of table entries Keep-alive messages If node does not answer: failed Failure in Leaf Set: Update entry with leaf set of furthest node Failure in Routing Table: Ask nodes in same row as failed node If all in row failed: as nodes in higher row Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 53

54 5.3 Key-based Routing Interface Towards a Common API for Structured Peer-to-Peer Overlays Dabek, Zhao, Druschel (Pastry), Kubiatowicz, Stoica (Chord) Allows to exchange the used DHT!!! Notation: read only, read and write Routing API void route(key K, msg M, nodehandle hint) K or hint may be NULL void forward(key K, msg M, nodehandle nexthopnode) Upcall at receiving node, that may read all parameters deliver(key K, msg M) Delivers the message to the receiving application Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 54

55 KBR: Routing state access nodehandle[] local lookup(key K, int num, boolean safe) Returns a list of possible (num) hops for routing to (key K) nodehandle [] neighborset (int num) Returns unordered list of (num) peers in the neighborhood list nodehandle [] replicaset (key k, int max rank) Returns an ordered set of peers of magnitude (max rank) on which replicas of the object with key k can be stored The nodes which become roots for the key k when the local node fails update(nodehandle n, bool joined) Upcall: informs that node n has either joined or left the local neighbor set boolean range (nodehandle N, rank r, key lkey, key rkey) Provides information about ranges of keys for which the node N is responsible Returns false if the range could not be determined, true otherwise Can only be used for nodes in neighbor set lkey and rkey are modified by the method inclusive range Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 55

56 5.4 FreePastry Prototypical implementation of Pastry Current version 2.1: released on Java based, Sun JDK version NodeID: 160 bits, 20 byte: 10 hexadecimal number Replication Applications like DHTs use replication to ensure that stored data survives node failure. To replicate a newly received key (K) _r_times, the application calls replicaset (k,r) and sends a copy of the key to each returned node If the implementation is not able to return r suitable neighbors, then the application itself is responsible for determining replica locations More details: FreePastry documentation Replication: PAST see seminar talk Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 56

57 Properties of Pastry / FreePastry Advantages Disadvantages Well documented, clear APIs Modular, extendable software Large user base, still maintained No support for heterogeneity All nodes are treated equally Strong, long-living peers should do more Basic functionality Routing, DHT (key-value mapping) Distributed storage No further built-in security mechanisms Besides resistance against DoS Sensitive to malicious nodes However, some changes in LifeSocial Limited API Only DHT Also requires sufficient replication, additional services Dr.-Ing. Kalman Graffi, FG Theorie verteilter Systeme 57

P2P Characteristics and Applications

P2P Characteristics and Applications P2P Characteristics and Applications Lecture for the Project Group A Distributed Framework for Social Networks Dr.-Ing. Kalman Graffi Email: graffi@mail.upb.de Fachgruppe Theorie verteilter Systeme Fakultät

More information

An Introduction to Peer-to-Peer Networks

An Introduction to Peer-to-Peer Networks An Introduction to Peer-to-Peer Networks Presentation for MIE456 - Information Systems Infrastructure II Vinod Muthusamy October 30, 2003 Agenda Overview of P2P Characteristics Benefits Unstructured P2P

More information

Chord - A Distributed Hash Table

Chord - A Distributed Hash Table Kurt Tutschku Vertretung - Professur Rechnernetze und verteilte Systeme Chord - A Distributed Hash Table Outline Lookup problem in Peer-to-Peer systems and Solutions Chord Algorithm Consistent Hashing

More information

Plaxton routing. Systems. (Pastry, Tapestry and Kademlia) Pastry: Routing Basics. Pastry: Topology. Pastry: Routing Basics /3

Plaxton routing. Systems. (Pastry, Tapestry and Kademlia) Pastry: Routing Basics. Pastry: Topology. Pastry: Routing Basics /3 Uni Innsbruck Informatik Uni Innsbruck Informatik Peerto topeer Systems DHT examples, part (Pastry, Tapestry and Kademlia) Michael Welzl michael.welzl@uibk.ac.at DPS NSG Team http://dps.uibk.ac.at dps.uibk.ac.at/nsg

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

How To Create A P2P Network

How To Create A P2P Network Peer-to-peer systems INF 5040 autumn 2007 lecturer: Roman Vitenberg INF5040, Frank Eliassen & Roman Vitenberg 1 Motivation for peer-to-peer Inherent restrictions of the standard client/server model Centralised

More information

A PROXIMITY-AWARE INTEREST-CLUSTERED P2P FILE SHARING SYSTEM

A PROXIMITY-AWARE INTEREST-CLUSTERED P2P FILE SHARING SYSTEM A PROXIMITY-AWARE INTEREST-CLUSTERED P2P FILE SHARING SYSTEM Dr.S. DHANALAKSHMI 1, R. ANUPRIYA 2 1 Prof & Head, 2 Research Scholar Computer Science and Applications, Vivekanandha College of Arts and Sciences

More information

Chord. A scalable peer-to-peer look-up protocol for internet applications

Chord. A scalable peer-to-peer look-up protocol for internet applications Chord A scalable peer-to-peer look-up protocol for internet applications by Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan Overview Introduction The Chord Algorithm Construction

More information

p2p: systems and applications Internet Avanzado, QoS, Multimedia 2006-2007 Carmen Guerrero carmen.guerrero@uc3m.es

p2p: systems and applications Internet Avanzado, QoS, Multimedia 2006-2007 Carmen Guerrero carmen.guerrero@uc3m.es p2p: systems and applications Internet Avanzado, QoS, Multimedia 2006-2007 Carmen Guerrero carmen.guerrero@uc3m.es Dpto. Ingeniería Telemática Index Introduction Taxonomy Classification of p2p overlay

More information

Distributed Framework for Social Networks

Distributed Framework for Social Networks Distributed Framework for Social Networks Dr.-Ing. Kalman Graffi graffi@mail.upb.de Tel. +49 5251 606730 Fachgebiet Multimedia Kommunikation Prof. Dr. Christian Scheideler Fakultät für Elektrotechnik,

More information

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 349 ISSN 2229-5518

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 349 ISSN 2229-5518 International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 349 Load Balancing Heterogeneous Request in DHT-based P2P Systems Mrs. Yogita A. Dalvi Dr. R. Shankar Mr. Atesh

More information

Storage Systems Autumn 2009. Chapter 6: Distributed Hash Tables and their Applications André Brinkmann

Storage Systems Autumn 2009. Chapter 6: Distributed Hash Tables and their Applications André Brinkmann Storage Systems Autumn 2009 Chapter 6: Distributed Hash Tables and their Applications André Brinkmann Scaling RAID architectures Using traditional RAID architecture does not scale Adding news disk implies

More information

P2P: centralized directory (Napster s Approach)

P2P: centralized directory (Napster s Approach) P2P File Sharing P2P file sharing Example Alice runs P2P client application on her notebook computer Intermittently connects to Internet; gets new IP address for each connection Asks for Hey Jude Application

More information

Using Peer to Peer Dynamic Querying in Grid Information Services

Using Peer to Peer Dynamic Querying in Grid Information Services Using Peer to Peer Dynamic Querying in Grid Information Services Domenico Talia and Paolo Trunfio DEIS University of Calabria HPC 2008 July 2, 2008 Cetraro, Italy Using P2P for Large scale Grid Information

More information

Project Group NODES - Offering Dynamics to Emerging Structures www.peerfact.org

Project Group NODES - Offering Dynamics to Emerging Structures www.peerfact.org PeerfactSim: A Simulation Framework for Peer-to-Peer Systems (and more) Project Group NODES - Offering Dynamics to Emerging Structures www.peerfact.org UPB SS2011 PG-Nodes Lecture-06 P2P-Simulations.ppt

More information

A Survey and Comparison of Peer-to-Peer Overlay Network Schemes

A Survey and Comparison of Peer-to-Peer Overlay Network Schemes % " #$! IEEE COMMUNICATIONS SURVEY AND TUTORIAL, MARCH 2004 1 A Survey and Comparison of Peer-to-Peer Overlay Network Schemes Eng Keong Lua, Jon Crowcroft, Marcelo Pias, Ravi Sharma and Steven Lim Abstract

More information

P2P Storage Systems. Prof. Chun-Hsin Wu Dept. Computer Science & Info. Eng. National University of Kaohsiung

P2P Storage Systems. Prof. Chun-Hsin Wu Dept. Computer Science & Info. Eng. National University of Kaohsiung P2P Storage Systems Prof. Chun-Hsin Wu Dept. Computer Science & Info. Eng. National University of Kaohsiung Outline Introduction Distributed file systems P2P file-swapping systems P2P storage systems Strengths

More information

Distributed Computing over Communication Networks: Topology. (with an excursion to P2P)

Distributed Computing over Communication Networks: Topology. (with an excursion to P2P) Distributed Computing over Communication Networks: Topology (with an excursion to P2P) Some administrative comments... There will be a Skript for this part of the lecture. (Same as slides, except for today...

More information

Calto: A Self Sufficient Presence System for Autonomous Networks

Calto: A Self Sufficient Presence System for Autonomous Networks Calto: A Self Sufficient Presence System for Autonomous Networks Abstract In recent years much attention has been paid to spontaneously formed Ad Hoc networks. These networks can be formed without central

More information

Healthy P2P Systems Overview

Healthy P2P Systems Overview Monitoring and Management of Peer-to-Peer Systems Project Group A Distributed Framework for Social Networks www.p2pframework.com UPB SS2011 PG-Framework Lecture-04 Monitoring-and-Management.ppt Dr.-Ing.

More information

Load Balancing in Structured Overlay Networks. Tallat M. Shafaat tallat(@)kth.se

Load Balancing in Structured Overlay Networks. Tallat M. Shafaat tallat(@)kth.se Load Balancing in Structured Overlay Networks Tallat M. Shafaat tallat(@)kth.se Overview Background The problem : load imbalance Causes of load imbalance Solutions But first, some slides from previous

More information

GISP: Global Information Sharing Protocol a distributed index for peer-to-peer systems

GISP: Global Information Sharing Protocol a distributed index for peer-to-peer systems GISP: Global Information Sharing Protocol a distributed index for peer-to-peer systems Daishi Kato Computer Science Department, Stanford University Visiting from NEC Corporation Abstract This paper proposes

More information

Varalakshmi.T #1, Arul Murugan.R #2 # Department of Information Technology, Bannari Amman Institute of Technology, Sathyamangalam

Varalakshmi.T #1, Arul Murugan.R #2 # Department of Information Technology, Bannari Amman Institute of Technology, Sathyamangalam A Survey on P2P File Sharing Systems Using Proximity-aware interest Clustering Varalakshmi.T #1, Arul Murugan.R #2 # Department of Information Technology, Bannari Amman Institute of Technology, Sathyamangalam

More information

Online Social Networks and Network Layers

Online Social Networks and Network Layers Online Social Networks and Network Layers Lecture for the Project Group A Distributed Framework for Social Networks UPB SS2011 PG-Framework Lecture-01 Online-Social-Networks-Network-Layer.ppt Dr.-Ing.

More information

RESEARCH ISSUES IN PEER-TO-PEER DATA MANAGEMENT

RESEARCH ISSUES IN PEER-TO-PEER DATA MANAGEMENT RESEARCH ISSUES IN PEER-TO-PEER DATA MANAGEMENT Bilkent University 1 OUTLINE P2P computing systems Representative P2P systems P2P data management Incentive mechanisms Concluding remarks Bilkent University

More information

Acknowledgements. Peer to Peer File Storage Systems. Target Uses. P2P File Systems CS 699. Serving data with inexpensive hosts:

Acknowledgements. Peer to Peer File Storage Systems. Target Uses. P2P File Systems CS 699. Serving data with inexpensive hosts: Acknowledgements Peer to Peer File Storage Systems CS 699 Some of the followings slides are borrowed from a talk by Robert Morris (MIT) 1 2 P2P File Systems Target Uses File Sharing is one of the most

More information

query enabled P2P networks 2009. 08. 27 Park, Byunggyu

query enabled P2P networks 2009. 08. 27 Park, Byunggyu Load balancing mechanism in range query enabled P2P networks 2009. 08. 27 Park, Byunggyu Background Contents DHT(Distributed Hash Table) Motivation Proposed scheme Compression based Hashing Load balancing

More information

Adapting Distributed Hash Tables for Mobile Ad Hoc Networks

Adapting Distributed Hash Tables for Mobile Ad Hoc Networks University of Tübingen Chair for Computer Networks and Internet Adapting Distributed Hash Tables for Mobile Ad Hoc Networks Tobias Heer, Stefan Götz, Simon Rieche, Klaus Wehrle Protocol Engineering and

More information

Decentralized Peer-to-Peer Network Architecture: Gnutella and Freenet

Decentralized Peer-to-Peer Network Architecture: Gnutella and Freenet Decentralized Peer-to-Peer Network Architecture: Gnutella and Freenet AUTHOR: Jem E. Berkes umberkes@cc.umanitoba.ca University of Manitoba Winnipeg, Manitoba Canada April 9, 2003 Introduction Although

More information

T he Electronic Magazine of O riginal Peer-Reviewed Survey Articles ABSTRACT

T he Electronic Magazine of O riginal Peer-Reviewed Survey Articles ABSTRACT SECOND QUARTER 2005, VOLUME 7, NO. 2 IEEE C OMMUNICATIONS SURVEYS T he Electronic Magazine of O riginal -Reviewed Survey Articles www.comsoc.org/pubs/surveys A SURVEY AND COMPARISON OF PEER-TO-PEER OVERLAY

More information

Architectures and protocols in Peer-to-Peer networks

Architectures and protocols in Peer-to-Peer networks Architectures and protocols in Peer-to-Peer networks Ing. Michele Amoretti [amoretti@ce.unipr.it] II INFN SECURITY WORKSHOP Parma 24-25 February 2004 Contents - Definition of Peer-to-Peer network - P2P

More information

PEER TO PEER FILE SHARING USING NETWORK CODING

PEER TO PEER FILE SHARING USING NETWORK CODING PEER TO PEER FILE SHARING USING NETWORK CODING Ajay Choudhary 1, Nilesh Akhade 2, Aditya Narke 3, Ajit Deshmane 4 Department of Computer Engineering, University of Pune Imperial College of Engineering

More information

IPTV AND VOD NETWORK ARCHITECTURES. Diogo Miguel Mateus Farinha

IPTV AND VOD NETWORK ARCHITECTURES. Diogo Miguel Mateus Farinha IPTV AND VOD NETWORK ARCHITECTURES Diogo Miguel Mateus Farinha Instituto Superior Técnico Av. Rovisco Pais, 1049-001 Lisboa, Portugal E-mail: diogo.farinha@ist.utl.pt ABSTRACT IPTV and Video on Demand

More information

Peer-to-Peer Systems. Winter semester 2014 Jun.-Prof. Dr.-Ing. Kalman Graffi Heinrich Heine University Düsseldorf

Peer-to-Peer Systems. Winter semester 2014 Jun.-Prof. Dr.-Ing. Kalman Graffi Heinrich Heine University Düsseldorf Peer-to-Peer Systems Winter semester 2014 Jun.-Prof. Dr.-Ing. Kalman Graffi Heinrich Heine University Düsseldorf Peer-to-Peer Systems Organizational Information Organisational matters Lecturer Jun.-Prof.

More information

Object Request Reduction in Home Nodes and Load Balancing of Object Request in Hybrid Decentralized Web Caching

Object Request Reduction in Home Nodes and Load Balancing of Object Request in Hybrid Decentralized Web Caching 2012 2 nd International Conference on Information Communication and Management (ICICM 2012) IPCSIT vol. 55 (2012) (2012) IACSIT Press, Singapore DOI: 10.7763/IPCSIT.2012.V55.5 Object Request Reduction

More information

Peer-to-Peer Networks Organization and Introduction 1st Week

Peer-to-Peer Networks Organization and Introduction 1st Week Peer-to-Peer Networks Organization and Introduction 1st Week Department of Computer Science 1 Peer-to-Peer Networks Organization 2 2 Web & Dates Web page http://cone.informatik.uni-freiburg.de/lehre/vorlesung/

More information

Decentralized supplementary services for Voice-over-IP telephony

Decentralized supplementary services for Voice-over-IP telephony Decentralized supplementary services for Voice-over-IP telephony Christoph Spleiß and Gerald Kunzmann Technische Universität München 80333 Munich, Germany {christoph.spleiss,gerald.kunzmann}@tum.de Abstract.

More information

Distributed Hash Tables in P2P Systems - A literary survey

Distributed Hash Tables in P2P Systems - A literary survey Distributed Hash Tables in P2P Systems - A literary survey Timo Tanner Helsinki University of Technology tstanner@cc.hut.fi Abstract Distributed Hash Tables (DHT) are algorithms used in modern peer-to-peer

More information

Tornado: A Capability-Aware Peer-to-Peer Storage Network

Tornado: A Capability-Aware Peer-to-Peer Storage Network Tornado: A Capability-Aware Peer-to-Peer Storage Network Hung-Chang Hsiao hsiao@pads1.cs.nthu.edu.tw Chung-Ta King* king@cs.nthu.edu.tw Department of Computer Science National Tsing Hua University Hsinchu,

More information

5. Peer-to-peer (P2P) networks

5. Peer-to-peer (P2P) networks 5. Peer-to-peer (P2P) networks PA191: Advanced Computer Networking I. Eva Hladká Slides by: Tomáš Rebok Faculty of Informatics Masaryk University Autumn 2015 Eva Hladká (FI MU) 5. P2P networks Autumn 2015

More information

Middleware and Distributed Systems. Peer-to-Peer Systems. Martin v. Löwis. Montag, 30. Januar 12

Middleware and Distributed Systems. Peer-to-Peer Systems. Martin v. Löwis. Montag, 30. Januar 12 Middleware and Distributed Systems Peer-to-Peer Systems Martin v. Löwis Peer-to-Peer Systems (P2P) Concept of a decentralized large-scale distributed system Large number of networked computers (peers)

More information

Scalable Source Routing

Scalable Source Routing Scalable Source Routing January 2010 Thomas Fuhrmann Department of Informatics, Self-Organizing Systems Group, Technical University Munich, Germany Routing in Networks You re there. I m here. Scalable

More information

Methods & Tools Peer-to-Peer Jakob Jenkov

Methods & Tools Peer-to-Peer Jakob Jenkov Methods & Tools Peer-to-Peer Jakob Jenkov Peer-to-Peer (P2P) Definition(s) Potential Routing and Locating Proxy through firewalls and NAT Searching Security Pure P2P There is no central server or router.

More information

CS5412: TIER 2 OVERLAYS

CS5412: TIER 2 OVERLAYS 1 CS5412: TIER 2 OVERLAYS Lecture VI Ken Birman Recap 2 A week ago we discussed RON and Chord: typical examples of P2P network tools popular in the cloud Then we shifted attention and peeked into the data

More information

LifeSocial A P2P-based Online Social Network

LifeSocial A P2P-based Online Social Network LifeSocial A P2P-based Online Social Network Project Group A Distributed Framework for Social Networks www.p2pframework.com UPB SS2011 PG-Framework Lecture-05 LifeSocial-a-P2P-based-OSN.ppt Dr.-Ing. Kalman

More information

PEER-TO-PEER (P2P) systems have emerged as an appealing

PEER-TO-PEER (P2P) systems have emerged as an appealing IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 21, NO. 4, APRIL 2009 595 Histogram-Based Global Load Balancing in Structured Peer-to-Peer Systems Quang Hieu Vu, Member, IEEE, Beng Chin Ooi,

More information

Security in Structured P2P Systems

Security in Structured P2P Systems P2P Systems, Security and Overlays Presented by Vishal thanks to Dan Rubenstein Columbia University 1 Security in Structured P2P Systems Structured Systems assume all nodes behave Position themselves in

More information

Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications

Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT Laboratory for Computer Science chord@lcs.mit.edu

More information

LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM

LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM IN PEER TO PEER NETWORKS R. Vijayalakshmi and S. Muthu Kumarasamy Dept. of Computer Science & Engineering, S.A. Engineering College Anna University, Chennai,

More information

LOOKING UP DATA IN P2P SYSTEMS

LOOKING UP DATA IN P2P SYSTEMS LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan, M. Frans Kaashoek, David Karger, Robert Morris, Ion Stoica MIT Laboratory for Computer Science 1. Introduction The recent success of some widely deployed

More information

File sharing using IP-Multicast

File sharing using IP-Multicast File sharing using IP-Multicast Kai Trojahner, Peter Sobe University of Luebeck, Germany Institute of Computer Engineering email: sobe@iti.uni-luebeck.de Abstract: File sharing systems cause a huge portion

More information

Plaxton Routing. - From a peer - to - peer network point of view. Lars P. Wederhake

Plaxton Routing. - From a peer - to - peer network point of view. Lars P. Wederhake Plaxton Routing - From a peer - to - peer network point of view Lars P. Wederhake Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart September 2008 Overview 1 Introduction

More information

Overlay Networks. Slides adopted from Prof. Böszörményi, Distributed Systems, Summer 2004.

Overlay Networks. Slides adopted from Prof. Böszörményi, Distributed Systems, Summer 2004. Overlay Networks An overlay is a logical network on top of the physical network Routing Overlays The simplest kind of overlay Virtual Private Networks (VPN), supported by the routers If no router support

More information

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The

More information

Async: Secure File Synchronization

Async: Secure File Synchronization Async: Secure File Synchronization Vera Schaaber, Alois Schuette University of Applied Sciences Darmstadt, Department of Computer Science, Schoefferstr. 8a, 64295 Darmstadt, Germany vera.schaaber@stud.h-da.de

More information

Peer-to-Peer Networks

Peer-to-Peer Networks Peer-to-Peer Networks Chapter 1: Introduction Jussi Kangasharju Chapter Outline Course outline and practical matters Peer-to-peer (P2P) overview Definition of P2P What is P2P and how it is different from

More information

Application Layer. CMPT371 12-1 Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2

Application Layer. CMPT371 12-1 Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2 CMPT371 12-1 Application Layer 1 Application Layer Required Reading: Chapter 2 of the text book. Outline of Chapter 2 Network applications HTTP, protocol for web application FTP, file transfer protocol

More information

The Role and uses of Peer-to-Peer in file-sharing. Computer Communication & Distributed Systems EDA 390

The Role and uses of Peer-to-Peer in file-sharing. Computer Communication & Distributed Systems EDA 390 The Role and uses of Peer-to-Peer in file-sharing Computer Communication & Distributed Systems EDA 390 Jenny Bengtsson Prarthanaa Khokar jenben@dtek.chalmers.se prarthan@dtek.chalmers.se Gothenburg, May

More information

Approximate Object Location and Spam Filtering on Peer-to-Peer Systems

Approximate Object Location and Spam Filtering on Peer-to-Peer Systems Approximate Object Location and Spam Filtering on Peer-to-Peer Systems Feng Zhou, Li Zhuang, Ben Y. Zhao, Ling Huang, Anthony D. Joseph and John D. Kubiatowicz University of California, Berkeley The Problem

More information

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------ Computer Networks - CS132/EECS148 - Spring 2013 Instructor: Karim El Defrawy Assignment 2 Deadline : April 25 th 9:30pm (hard and soft copies required) ------------------------------------------------------------------------------

More information

8 Conclusion and Future Work

8 Conclusion and Future Work 8 Conclusion and Future Work This chapter concludes this thesis and provides an outlook on future work in the area of mobile ad hoc networks and peer-to-peer overlay networks 8.1 Conclusion Due to the

More information

A Survey on Distributed Hash Table (DHT): Theory, Platforms, and Applications. Hao Zhang, Yonggang Wen, Haiyong Xie, and Nenghai Yu

A Survey on Distributed Hash Table (DHT): Theory, Platforms, and Applications. Hao Zhang, Yonggang Wen, Haiyong Xie, and Nenghai Yu A Survey on Distributed Hash Table (DHT): Theory, Platforms, and Applications Hao Zhang, Yonggang Wen, Haiyong Xie, and Nenghai Yu July 5, 2013 2 ABSTRACT Distributed Hash Table (DHT) plays an important

More information

New Structured P2P Network with Dynamic Load Balancing Scheme

New Structured P2P Network with Dynamic Load Balancing Scheme New Structured P2P Network with Dynamic Load Balancing Scheme Atushi TAKEDA, Takuma OIDE and Akiko TAKAHASHI Department of Information Science, Tohoku Gakuin University Department of Information Engineering,

More information

Anonymous Communication in Peer-to-Peer Networks for Providing more Privacy and Security

Anonymous Communication in Peer-to-Peer Networks for Providing more Privacy and Security Anonymous Communication in Peer-to-Peer Networks for Providing more Privacy and Security Ehsan Saboori and Shahriar Mohammadi Abstract One of the most important issues in peer-to-peer networks is anonymity.

More information

Peer-to-Peer Networks 02: Napster & Gnutella. Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg

Peer-to-Peer Networks 02: Napster & Gnutella. Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg Peer-to-Peer Networks 02: Napster & Gnutella Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg Napster Shawn (Napster) Fanning - published 1999 his beta

More information

A P2P SERVICE DISCOVERY STRATEGY BASED ON CONTENT

A P2P SERVICE DISCOVERY STRATEGY BASED ON CONTENT A P2P SERVICE DISCOVERY STRATEGY BASED ON CONTENT CATALOGUES Lican Huang Institute of Network & Distributed Computing, Zhejiang Sci-Tech University, No.5, St.2, Xiasha Higher Education Zone, Hangzhou,

More information

International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online http://www.ijoer.

International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online http://www.ijoer. RESEARCH ARTICLE ISSN: 2321-7758 GLOBAL LOAD DISTRIBUTION USING SKIP GRAPH, BATON AND CHORD J.K.JEEVITHA, B.KARTHIKA* Information Technology,PSNA College of Engineering & Technology, Dindigul, India Article

More information

A Peer-to-Peer File Sharing System for Wireless Ad-Hoc Networks

A Peer-to-Peer File Sharing System for Wireless Ad-Hoc Networks 1 A Peer-to-Peer File Sharing System for Wireless Ad-Hoc Networks Hasan Sözer, Metin Tekkalmaz, and İbrahim Körpeoğlu Abstract File sharing in wireless ad-hoc networks in a peerto-peer manner imposes many

More information

Topic Communities in P2P Networks

Topic Communities in P2P Networks Topic Communities in P2P Networks Joint work with A. Löser (IBM), C. Tempich (AIFB) SNA@ESWC 2006 Budva, Montenegro, June 12, 2006 Two opposite challenges when considering Social Networks Analysis Nodes/Agents

More information

Cassandra A Decentralized, Structured Storage System

Cassandra A Decentralized, Structured Storage System Cassandra A Decentralized, Structured Storage System Avinash Lakshman and Prashant Malik Facebook Published: April 2010, Volume 44, Issue 2 Communications of the ACM http://dl.acm.org/citation.cfm?id=1773922

More information

Lecture 25: Security Issues in Structured Peer-to-Peer Networks. Lecture Notes on Computer and Network Security. by Avi Kak (kak@purdue.

Lecture 25: Security Issues in Structured Peer-to-Peer Networks. Lecture Notes on Computer and Network Security. by Avi Kak (kak@purdue. Lecture 25: Security Issues in Structured Peer-to-Peer Networks Lecture Notes on Computer and Network Security by Avi Kak (kak@purdue.edu) April 16, 2015 10:33am c 2015 Avinash Kak, Purdue University Goals:

More information

Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at

Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at distributing load b. QUESTION: What is the context? i. How

More information

Peer-VM: A Peer-to-Peer Network of Virtual Machines for Grid Computing

Peer-VM: A Peer-to-Peer Network of Virtual Machines for Grid Computing Peer-VM: A Peer-to-Peer Network of Virtual Machines for Grid Computing (Research Proposal) Abhishek Agrawal (aagrawal@acis.ufl.edu) Abstract This proposal discusses details about Peer-VM which is a peer-to-peer

More information

MIDAS: Multi-Attribute Indexing for Distributed Architecture Systems

MIDAS: Multi-Attribute Indexing for Distributed Architecture Systems MIDAS: Multi-Attribute Indexing for Distributed Architecture Systems George Tsatsanifos (NTUA) Dimitris Sacharidis (R.C. Athena ) Timos Sellis (NTUA, R.C. Athena ) 12 th International Symposium on Spatial

More information

A Survey of Peer-to-Peer File Sharing Technologies

A Survey of Peer-to-Peer File Sharing Technologies Athens University of Economics and Business The ebusiness Centre (www.eltrun.gr) A Survey of Peer-to-Peer File Sharing Technologies White Paper Page 1 of 1 A Survey of Peer-to-Peer File Sharing Technologies

More information

I. Middleboxes No Longer Considered Harmful II. A Layered Naming Architecture for the Internet

I. Middleboxes No Longer Considered Harmful II. A Layered Naming Architecture for the Internet I. Middleboxes No Longer Considered Harmful II. A Layered Naming Architecture for the Internet Seminar in Distributed Computing Louis Woods / 14.11.2007 Intermediaries NATs (NAPTs), firewalls and other

More information

A Review on Efficient File Sharing in Clustered P2P System

A Review on Efficient File Sharing in Clustered P2P System A Review on Efficient File Sharing in Clustered P2P System Anju S Kumar 1, Ratheesh S 2, Manoj M 3 1 PG scholar, Dept. of Computer Science, College of Engineering Perumon, Kerala, India 2 Assisstant Professor,

More information

A SURVEY OF P2P OVERLAYS IN VARIOUS NETWORKS

A SURVEY OF P2P OVERLAYS IN VARIOUS NETWORKS A SURVEY OF P2P OVERLAYS IN VARIOUS Mrs. A. Anitha Dr. J. JayaKumari Department of computer science & engineering Department of Electronics & communication Engineering anidathi@yahoo.co.in jkumaribharat@yahoo.com

More information

Identity Theft Protection in Structured Overlays

Identity Theft Protection in Structured Overlays Identity Theft Protection in Structured Overlays Lakshmi Ganesh Ben Y. Zhao University of California, Santa Barbara NPSec 2005 Background: Structured Overlays network abstraction IDs, not IPs app level

More information

The p2pweb model: a glue for the Web

The p2pweb model: a glue for the Web The p2pweb model: a glue for the Web Pedro García López, Marc Sánchez Artigas, Jordi Pujol Ahulló Universitat Rovira i Virgili Tarragona, Spain { pedro.garcia, marc.sanchez, jordi.pujol}@urv.cat Abstract

More information

Performance of networks containing both MaxNet and SumNet links

Performance of networks containing both MaxNet and SumNet links Performance of networks containing both MaxNet and SumNet links Lachlan L. H. Andrew and Bartek P. Wydrowski Abstract Both MaxNet and SumNet are distributed congestion control architectures suitable for

More information

Introduction to Computer Networks

Introduction to Computer Networks Introduction to Computer Networks Chen Yu Indiana University Basic Building Blocks for Computer Networks Nodes PC, server, special-purpose hardware, sensors Switches Links: Twisted pair, coaxial cable,

More information

DFSgc. Distributed File System for Multipurpose Grid Applications and Cloud Computing

DFSgc. Distributed File System for Multipurpose Grid Applications and Cloud Computing DFSgc Distributed File System for Multipurpose Grid Applications and Cloud Computing Introduction to DFSgc. Motivation: Grid Computing currently needs support for managing huge quantities of storage. Lacks

More information

Politehnica University of Timisoara. Distributed Mailing System PhD Report I

Politehnica University of Timisoara. Distributed Mailing System PhD Report I Politehnica University of Timisoara PhD Report I Patrik Emanuel Mezo Prof. Dr. Ing. Mircea Vladutiu PhD Student PhD Coordinator ABSTRACT This PhD Report describes the research activity carried on as part

More information

Hashing in Networked Systems

Hashing in Networked Systems LB Server Cluster Switches Hashing in Networked Systems COS 461: Computer Networks Spring 2011 Mike Freedman h@p://www.cs.princeton.edu/courses/archive/spring11/cos461/ 2 Hash funcion Hashing FuncIon that

More information

Facebook: Cassandra. Smruti R. Sarangi. Department of Computer Science Indian Institute of Technology New Delhi, India. Overview Design Evaluation

Facebook: Cassandra. Smruti R. Sarangi. Department of Computer Science Indian Institute of Technology New Delhi, India. Overview Design Evaluation Facebook: Cassandra Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi Leader Election 1/24 Outline 1 2 3 Smruti R. Sarangi Leader Election

More information

Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications

Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica Robert Morris David Liben-Nowell David Karger M. Frans Kaashoek Frank Dabek Hari Balakrishnan January 10, 2002 Abstract

More information

Load Balancing in Distributed Systems: A survey

Load Balancing in Distributed Systems: A survey Load Balancing in Distributed Systems: A survey Amit S Hanamakkanavar * and Prof. Vidya S.Handur # * (amitsh2190@gmail.com) Dept of Computer Science & Engg, B.V.B.College of Engg. & Tech, Hubli # (vidya_handur@bvb.edu)

More information

Load Re-Balancing for Distributed File. System with Replication Strategies in Cloud

Load Re-Balancing for Distributed File. System with Replication Strategies in Cloud Contemporary Engineering Sciences, Vol. 8, 2015, no. 10, 447-451 HIKARI Ltd, www.m-hikari.com http://dx.doi.org/10.12988/ces.2015.5263 Load Re-Balancing for Distributed File System with Replication Strategies

More information

1. Comments on reviews a. Need to avoid just summarizing web page asks you for:

1. Comments on reviews a. Need to avoid just summarizing web page asks you for: 1. Comments on reviews a. Need to avoid just summarizing web page asks you for: i. A one or two sentence summary of the paper ii. A description of the problem they were trying to solve iii. A summary of

More information

P2P File Sharing: BitTorrent in Detail

P2P File Sharing: BitTorrent in Detail ELT-53206 Peer-to-Peer Networks P2P File Sharing: BitTorrent in Detail Mathieu Devos Tampere University of Technology Department of Electronics & Communications Engineering mathieu.devos@tut.fi TG406 2

More information

Optimizing and Balancing Load in Fully Distributed P2P File Sharing Systems

Optimizing and Balancing Load in Fully Distributed P2P File Sharing Systems Optimizing and Balancing Load in Fully Distributed P2P File Sharing Systems (Scalable and Efficient Keyword Searching) Anh-Tuan Gai INRIA Rocquencourt anh-tuan.gai@inria.fr Laurent Viennot INRIA Rocquencourt

More information

High Throughput Computing on P2P Networks. Carlos Pérez Miguel carlos.perezm@ehu.es

High Throughput Computing on P2P Networks. Carlos Pérez Miguel carlos.perezm@ehu.es High Throughput Computing on P2P Networks Carlos Pérez Miguel carlos.perezm@ehu.es Overview High Throughput Computing Motivation All things distributed: Peer-to-peer Non structured overlays Structured

More information

Limitations of Packet Measurement

Limitations of Packet Measurement Limitations of Packet Measurement Collect and process less information: Only collect packet headers, not payload Ignore single packets (aggregate) Ignore some packets (sampling) Make collection and processing

More information

Load Balancing in Structured P2P Systems

Load Balancing in Structured P2P Systems 1 Load Balancing in Structured P2P Systems Ananth Rao Karthik Lakshminarayanan Sonesh Surana Richard Karp Ion Stoica ananthar, karthik, sonesh, karp, istoica @cs.berkeley.edu Abstract Most P2P systems

More information

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Scalability of web applications. CSCI 470: Web Science Keith Vertanen Scalability of web applications CSCI 470: Web Science Keith Vertanen Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing Approaches

More information

Peer-to-Peer Networks. Chapter 6: P2P Content Distribution

Peer-to-Peer Networks. Chapter 6: P2P Content Distribution Peer-to-Peer Networks Chapter 6: P2P Content Distribution Chapter Outline Content distribution overview Why P2P content distribution? Network coding Peer-to-peer multicast Kangasharju: Peer-to-Peer Networks

More information

Layer 3 Routing User s Manual

Layer 3 Routing User s Manual User s Manual Second Edition, July 2011 www.moxa.com/product 2011 Moxa Inc. All rights reserved. User s Manual The software described in this manual is furnished under a license agreement and may be used

More information

A network is a group of devices (Nodes) connected by media links. A node can be a computer, printer or any other device capable of sending and

A network is a group of devices (Nodes) connected by media links. A node can be a computer, printer or any other device capable of sending and NETWORK By Bhupendra Ratha, Lecturer School of Library and Information Science Devi Ahilya University, Indore Email: bhu261@gmail.com Network A network is a group of devices (Nodes) connected by media

More information

Exploring the Design Space of Distributed and Peer-to-Peer Systems: Comparing the Web, TRIAD, and Chord/CFS

Exploring the Design Space of Distributed and Peer-to-Peer Systems: Comparing the Web, TRIAD, and Chord/CFS Exploring the Design Space of Distributed and Peer-to-Peer Systems: Comparing the Web, TRIAD, and Chord/CFS Stefan Saroiu, P. Krishna Gummadi, Steven D. Gribble University of Washington Abstract: Despite

More information