1 |
|
To be included in text: |
2 |
We (footonote) |
We (footonote) |
3 |
footnote:use of the plural is customary even if research paper is authored solely |
footnote:use of the plural is customary even if research paper is authored solely |
4 |
|
|
5 |
|
Stretch is the ratio between the distance traveled by a query to an specific object |
6 |
|
and the minimal distance from the query origin to the object |
7 |
|
|
8 |
1. Approaches |
1. Approaches |
9 |
|
|
10 |
-there are five approaches when performing searches in p2p networks. |
-there are five approaches when performing searches in p2p networks. |
46 |
-Example systems: Chord \cite{stoica01chord}, CAN \cite{ratnasamy01can}, Kademlia \cite{maymounkov02kademlia}, Pastry \cite{rowston01pastry}, Tapestry \cite{zhao01tapestry}, Viceroy \cite{malkhi02viceroy}, Symphony \cite{gurmeet03symphony}, SkipNet \cite{harvey03skipnet2}, Skip Graph \cite{AspnesS2003} |
-Example systems: Chord \cite{stoica01chord}, CAN \cite{ratnasamy01can}, Kademlia \cite{maymounkov02kademlia}, Pastry \cite{rowston01pastry}, Tapestry \cite{zhao01tapestry}, Viceroy \cite{malkhi02viceroy}, Symphony \cite{gurmeet03symphony}, SkipNet \cite{harvey03skipnet2}, Skip Graph \cite{AspnesS2003} |
47 |
Plaxton \cite{plaxton97accessingnearby}, Kelips \cite{gupta03kelips}, Overlapping Distance Halving DHT \cite{naor03simpledht} |
Plaxton \cite{plaxton97accessingnearby}, Kelips \cite{gupta03kelips}, Overlapping Distance Halving DHT \cite{naor03simpledht} |
48 |
-Example applications: CFS \cite{dabek01widearea}, PAST \cite{rowstron01storage}, Oceanstore \cite{kubiatowicz00oceanstore} |
-Example applications: CFS \cite{dabek01widearea}, PAST \cite{rowstron01storage}, Oceanstore \cite{kubiatowicz00oceanstore} |
49 |
|
-data distribution approaches (like in Squirrel \cite{iyer02squirrel}): home node approach and directory approach |
50 |
|
-CFS splits files into blocks (<50Kb), PAST distributed whole files |
51 |
|
|
52 |
*Update* |
*Update* |
53 |
-Viceroy system achieves O(log n) hops with only O(1) neighbors |
-Viceroy system achieves O(log n) hops with only O(1) neighbors |
169 |
Kademlia: O(log n)* O(log n) O(log n) 2(log n) |
Kademlia: O(log n)* O(log n) O(log n) 2(log n) |
170 |
Viceroy: O(log n) O(1) O(log n) 11 |
Viceroy: O(log n) O(1) O(log n) 11 |
171 |
SWAN 1): O(1) O(1) O(log^2 n) r(2b+2s+2l) (r=# of resurces provided, b=boot, s=short, l=long), typical link conf: 2*(6+7+8)=36 |
SWAN 1): O(1) O(1) O(log^2 n) r(2b+2s+2l) (r=# of resurces provided, b=boot, s=short, l=long), typical link conf: 2*(6+7+8)=36 |
172 |
Flooding: O(1) O(1) O(n)** typical conf: 5, depends on implementation --> 2*5=10 total |
Gnutellas: O(1) O(1) O(n)** typical conf: 5, depends on implementation --> 2*5=10 total |
173 |
Social: O(1)*** O(1)*** O(n)*** can be 1-10000 connections (aka social connections, connections are permament) |
Social: O(1)*** O(1)*** O(n)*** can be 1-10000 connections (aka social connections, connections are permament) |
174 |
Skip graphs 1): O(log n) O(log n) O(log n) 4r(log n) + (log n) (r=# of resurces provided) |
Skip graphs 1): O(log n) O(log n) O(log n) 4r(log n) + (log n) (r=# of resurces provided) |
175 |
SkipNet: O(log n) O(log n) O(log n) 2(log n) |
SkipNet: O(log n) O(log n) O(log n) 2(log n) |
178 |
Plaxton et al 3): not supported O(log n) O(log n) 2(log n) |
Plaxton et al 3): not supported O(log n) O(log n) 2(log n) |
179 |
PeerNet 4): O(log n) O(log n) O(log n) O(log n) |
PeerNet 4): O(log n) O(log n) O(log n) O(log n) |
180 |
Kelips: ***** O(sqrt(n)) O(1) n/sqrt(n) + c*(sqrt(n)-1) + 'Total number of files'/sqrt(n) |
Kelips: ***** O(sqrt(n)) O(1) n/sqrt(n) + c*(sqrt(n)-1) + 'Total number of files'/sqrt(n) |
181 |
|
Freenet: O(1) O(1) O(n) ?? |
182 |
|
|
183 |
* = In Kademlia, there is no action required when nodes leaves the system |
* = In Kademlia, there is no action required when nodes leaves the system |
184 |
|
|
190 |
|
|
191 |
***** = constant background overhead is: O(2(sqrt(n)*(log^2 n)) + (sqrt(n) + (log^3 n))) (which includes convergence times for insertion/deletion of node) |
***** = constant background overhead is: O(2(sqrt(n)*(log^2 n)) + (sqrt(n) + (log^3 n))) (which includes convergence times for insertion/deletion of node) |
192 |
|
|
193 |
|
|
194 |
1) = In these approaches, node is treated as 'named resource'; in this approach, *resources* self-organise (opposite to DHTs). |
1) = In these approaches, node is treated as 'named resource'; in this approach, *resources* self-organise (opposite to DHTs). |
195 |
E.g., in Skip graphs, a peer (i.e. computer) needs 2k(log n) space for k resources. SWAN requires O(1) space.. |
E.g., in Skip graphs, a peer (i.e. computer) needs 2k(log n) space for k resources. SWAN requires O(1) space.. |
196 |
|
|