The Research Advances in P2P Systems

Effect of links on DHT routing
algorithms
Zou FuTai
[email protected]
Internet Computing Lab
12/5/2003
Outline
1.What is DHT?
 2.Motivation and goals
 3.Links in current DHT routing algorithms
 4.The effect of links on routing performance
 5.Improved CAN
 6.Conclusions
 7.Ongoing works

2
1.What is DHT?

Distributed Hash Table (DHT)

DHT is structured overlays that offer
– extreme scalability
– hash-table-like lookup interface

Ideal substrate for many distributed
applications
– file-systems, storage, backups, event-notification, e-mail,
chat, databases, sensor networks ...

Applications need reliable and efficient DHT
routing
3
2.Motivation
DHT routing algorithms have been
proposing such as Chord,CAN, Pastry,
Tapestry,Koorde,Symphony,…
 Each has different performances: path hops,
resilience, load balance…..
 What makes them different? What could be
the direction for the improvement of the
routing performance?

4
Goals
Understand the basic principles of designing
DHT routing DHT.
 Provide the insight into the improvement of
the routing performances and the feasible
approach to design new DHT routing
algorithms.

5
3.Links in DHT

A structured geometry presented by DHT routing
algorithms
– Chord: circle, CAN: hypercube, Tapestry:tree
– Each node can determinedly be routed to any other
nodes in the geometry.
– However, it is a dynamic geometry, So we use the link
to catch its characteristics.
– Link: A link is referred to an edge but it is very different
the edge from the dynamic characteristic. The link can
be dynamically adjusted according to the change of
peer’s neighbors and it reflects how well the peer
senses the system.
6
Links in DHT

Three kinds of links exist in the geometry from the
view of the distance and are maintained by each
peer.
– Basic short link
– Redundant short link
– Long link

The distance:
– Distance d=Xdest - Xsrc (Xdest,Xsrc is node ID)
– Hamming Distance: h=the number of 1’s in Xdest XOR
Xsrc
7
Model
No loss of generality, considering a
cycle graph on n nodes where vertices
are labeled 1, 2, . . . , n, we use links to
express the relation between nodes.
 A message can be routed clockwise
from a node to any other node
according to these links.

8
Basic short link: 1
 Redundant short link: 2, 3
 Long link: 4, 5

9
4.The effect of links on routing
performance
1.Average Path Length:the average hops
between every pair of nodes.It identifies
how quickly a request is forwarded to the
destination.
 It is a tradeoff between the number of links
and the maintaining overheads. Average
path length can vary from 1 to n.
 The key is how to arrange long links. There
are diversified approaches.

10
2.Resilience: measure the extent to which
DHT can route around failure even without
the aid of recovery mechanisms that fix the
failure.
 Short links is the key. . It can improve the
resilience by adding the redundant short
links.

11
Current DHT Routing Algorithms
12
5.Improved CAN
1.Add long links
 2.Add redundant short links

13
Add long links
Case one: add additional 2 long links to
CAN and compare it with the original CAN.
 Case two: add additional 4 long links to 4
dimensional CAN and compare it with 6
dimensional CAN. In this way, both have
the same number of links.

14
Path Hops vs. Long Links (Case One)
15
Path Hops vs. Long Links (Case Two)
16
Add redundant short links
Case one: add redundant short links to 2
dimensional CAN. The number of
additional short links is varied form 0 to 4 .
 Case two: add 2 additional redundant short
links to 2,4,6 dimensional CAN respectively.

17
Resilience vs. Redundant Short Links
(Case One)
18
Resilience vs. Redundant Short Links
(Case Two)
19
6.Conclusions
1. Links has great effects on the
performances of DHT routing algorithms
 2. According to the analysis of links in
current DHT routing algorithms, the possible
improvement of routing performances can be
suggested .
 3. New DHT routing algorithms should take
the effect of links into account.

20
7.Ongoing Works
1.Fixed Links vs. Randomized Links
 2.More performance arguments need to be
investigated such as load balance, delay….

21
Thank You!
22