/[gzz]/gzz/Documentation/misc/hemppah-progradu/existing_systems_overview
ViewVC logotype

Diff of /gzz/Documentation/misc/hemppah-progradu/existing_systems_overview

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.4 by hemppah, Fri Nov 1 09:43:12 2002 UTC revision 1.5 by hemppah, Thu Nov 7 08:25:49 2002 UTC
# Line 1  Line 1 
1  [This document is meant to be an overview of existing p2p systems.  [hh@gzz.info's Master Thesis project.
2  Document is related to hh@gzz.info's Master Thesis project.  Text is based on bibliography, which can be found from progradu.bib file.
3    Please notice that document's contents are updated constantly.
4  Please notice that document's contents are updated constantly.]  There are no bibliography reference in the text yet...
5    ]
6    
7    0. Introduction
8    
9    -There are two approaches for distributed key/value lookup operation in
10    p2p environment: broadcast searches (e.g. Gnutella and Freenet) and location-deterministic
11     algorithms (e.g. CAN, Pastry, Chord, Tapestry and Kademlia)
12    -Additionally, there is method which is based on Distributed Trie
13    -Lookup algorithms deploy a lookup structure (e.g. hash table, trie, binary tree, B-tree etc.)
14    -Distributed lookup algorithm trades between the efficiency of lookup and the maintenance of lookup structure
15    -Lookup structures maintenace is needed by either key/value pair insert or by node join/delete operation
16    -Replication is one way to make lookups more effiecinet. However, maintenance is slow because all peers
17     must keep their local lookup structure updated (replicas have to be consistent)
18    -Gnutella and Freenet eliminates the lookup structure and thus requires no maintenance. Lookups, however, are
19    implemented by a broadcase-like search on all know peers which costs efficiency and scalability
20    -Location-deterministic techiques partitions the lookup structure and distributes a small subset of partitions
21     on each peer. Maintenance updates only are tycally localized, peers update only a smaller number of partition
22     replicas. The system assigns partitions to peers either statically or dynamically In the static method, peer
23     addresses map to the key space and each node replicates only those partitions which are close enough to node's
24     ID. In the dynamic approach, peers replicate only partitions that they frequently access.
25    
26    
27  1. A summary of algorithms used in existing systems  1. A summary of algorithms used in existing systems
# Line 25  How many neighbour nodes each node maint Line 44  How many neighbour nodes each node maint
44  Search:  Search:
45  Number of messages when an object lookup is performed  Number of messages when an object lookup is performed
46    
47  The table above has been presented in [1].  The table above has been presented in.
48    
49  2. A brief description of existing systems  2. A brief description of existing systems
50    
# Line 50  maintained which cross a greater distanc Line 69  maintained which cross a greater distanc
69  using global hash funktions  using global hash funktions
70  -Queries are routed along axes in this space until they reach their  -Queries are routed along axes in this space until they reach their
71  destination.  destination.
72  -Consistent hashing (distributed hash table)  -Routing on a d-dimensional torus (distributed hash table)
73    
74  2.3. Tapestry  2.3. Tapestry
75    
# Line 58  destination. Line 77  destination.
77  -Distributed data structure  -Distributed data structure
78  -Employs randomness to achieve both load distribution and routing  -Employs randomness to achieve both load distribution and routing
79  locality  locality
80    -Based on Plaxton trees
81    
82  2.4. Pastry  2.4. Pastry
83    
# Line 65  locality Line 85  locality
85  -Peer-to-Peer anonymous storage  -Peer-to-Peer anonymous storage
86  -Location protocol sharing many similarities with Tapestry  -Location protocol sharing many similarities with Tapestry
87  -Objects are replicated without any permission of the owner  -Objects are replicated without any permission of the owner
88    -Based on Plaxton trees
   
89    
90  2.3. Gnutella  2.3. Gnutella
91    
92  -Bounded broadcast mechanism used for searching  -Bounded broadcast mechanism used for searching
93  -Power law degree distribution  -Power law degree distribution
94    -Gnutella makes a trade-off between a much greater search effort in return
95     for optimal paths and better worst-case performance
96    -Link distribution: Poisson distribution
97    -Fault tolerance: Random: Highly connected nodes are less factor than in Freenet. Targeted: Not a bib problem,
98     because of link distribution (Poisson distribution)
99    
100    
101  2.4. FreeNet  2.4. FreeNet
102    -Freenet is based on the small-world effect
103    -Freenet has good average performance but poor worstcase performance in object lookups. This
104     is because a few bad local routing decisions can throw a request off the track
105    -In Freenet, distribution of links follows the power law theory
106    -Network growth: at the beginning, random routing should find the data quicly. As the network grows,
107     the request pathlength remains low
108    -Fault tolerance: Random removing of nodes: not a big problem. Targeted attach: bigger problem.
109  -Chaotic routing scheme where objects are published to a few nearest  -Chaotic routing scheme where objects are published to a few nearest
110  neighbors  neighbors
111  -Queries follow gradients generated by object pointers  -Queries follow gradients generated by object pointers
# Line 85  documents Line 116  documents
116  -Key types are defined with URI: freenet:keytype@data  -Key types are defined with URI: freenet:keytype@data
117  -Content Hash Key (CHK), Keyword Signed Key (KSK), Signature  -Content Hash Key (CHK), Keyword Signed Key (KSK), Signature
118  Verification Key (SVK)  Verification Key (SVK)
 -Write more about these key techiques later !!  
119    
120  3. Different architectures for p2p networks [2]:  
121    3. Different architectures for p2p networks:
122    
123  3.1 Centralized  3.1 Centralized
124    
# Line 134  on the network during search requests Line 165  on the network during search requests
165  Miscellaneous notes:  Miscellaneous notes:
166    
167  -Object's popularity: studies have shown that Napster, Gnutella and Web  -Object's popularity: studies have shown that Napster, Gnutella and Web
168  queries follow Zipf-like distributions (1/2, 1/3, 1/4 etc.) [3, 4]  queries follow Zipf-like distributions (1/2, 1/3, 1/4 etc.)
   
   
 Bibliography:  
   
 [1] Hildrum Kirsten, Kubiatowicz John D., Rao Satish and Zhao Ben Y.,  
 Distributed Object Location in a Dynamic Network  
   
 [2] Lv, Qin, Cao Pei, Cohen Edith, Li Kai, Shenker Scott, Search and  
 Replication in Unstructured Peer-to-Peer Networks  
   
 [3] Aiello W., A Random graph model for massive graphs  
   
 [4] Sripanidkulchai K., The popularity of gnutella queries and its  
 implications on scalability  

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26