Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash...

55

Transcript of Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash...

Page 1: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Distributed Hash-tables and Scalable Content-AddressableNetwork (CAN)

Ines Abdelghani

Ferienakademie im Sarntal 2008

FAU Erlangen-Nürnberg, TU München, Uni Stuttgart

September 2008

Page 2: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Overview

1 Introduction

2 Distributed Hash Tables (DHT)

Basic Concept of DHT

DHT Categories

DHT Properties

DHT Based Peer-to-Peer Networks

3 CAN: Scalable Content Addressable Network

Generalities about CAN

CAN Design

CAN Design Improvements

4 Conclusion

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 2 / 38

Page 3: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Overview

1 Introduction

2 Distributed Hash Tables (DHT)

Basic Concept of DHT

DHT Categories

DHT Properties

DHT Based Peer-to-Peer Networks

3 CAN: Scalable Content Addressable Network

Generalities about CAN

CAN Design

CAN Design Improvements

4 Conclusion

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 2 / 38

Page 4: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Overview

1 Introduction

2 Distributed Hash Tables (DHT)

Basic Concept of DHT

DHT Categories

DHT Properties

DHT Based Peer-to-Peer Networks

3 CAN: Scalable Content Addressable Network

Generalities about CAN

CAN Design

CAN Design Improvements

4 Conclusion

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 2 / 38

Page 5: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Overview

1 Introduction

2 Distributed Hash Tables (DHT)

Basic Concept of DHT

DHT Categories

DHT Properties

DHT Based Peer-to-Peer Networks

3 CAN: Scalable Content Addressable Network

Generalities about CAN

CAN Design

CAN Design Improvements

4 Conclusion

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 2 / 38

Page 6: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Possible Peer-to-Peer Networks Structures

Client-Server Structure:

Information about data locations stored by a central serverLimits: scalability, update of data, single-point-failureExample: Napster

Flooding:

Not all data can be foundExample: Gnutella

Distributed Hash Tables:

Decentralized, distributed system

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 3 / 38

Page 7: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Hash Tables

Definition: Data structure, array for storing a set of data bymapping every item x to a hash value h(x) with:

Universe UArray T [1, . . . ,m], Table size mHash function h : U → {0, 1, . . . ,m − 1}

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 4 / 38

Page 8: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Properties of hash function h

Choice of h: Need to meet quite demanding properties

High e�ciency: h (V ) easy to compute

Security: h one-way, hard to invert⇒ cryptographically secure functions(MD-5, SHA-2,. . .)

Collision-free: for any x , infeasibility of �nding another x ′ such ash (x) = h (x ′)⇒ Hard to satisfy: Image set is usually smaller than input set

Balanced mapping

→ Designing such functions: challenging task

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 5 / 38

Page 9: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Example for a hash function

h: Modulo 5 function

h (x) = x mod 5

Let x be the �le name 'music.mp3 '

ASCII code of x = 870.920.545.682.538.843.149

Hash Value of x :

h (music.mp3 ) =ASCII-code(music.mp3) mod 5 = 4

→ Store item x at the position 4 in the array T [1, . . . ,m]

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 6 / 38

Page 10: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Basic Concept of Distributed Hash Tables

Array T is divided among peers

Figure: Distributed Hash Tables

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 7 / 38

Page 11: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Dynamic Partitioning of the Keys Set Among Nodes

Node arrival:

Division of a certain keys subset between the active node responsiblefor this subset and the new node

Adding the node in the routing structure

Updating the routing information

Figure: DHT: Node insertion

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 8 / 38

Page 12: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Dynamic Partitioning of Keys'Set Among Nodes

Node departure:

Allocation of associated keys subset to neighboring nodes

Data migration to new responsible nodes

Node failure:

Use of redundant routing paths and nodes

New allocation of corresponding keys subset to active nodes

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 9 / 38

Page 13: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

DHT Categories

Deterministic DHTs:

First deterministic DHTs: CAN, Chord, Pastry

Overlay connection: function of the current set of node IDs

Only two sources of uncertainty:

Size of the network not known accurately to all participants

Mapping of subset of keys to nodes not exactly even

Randomized DHTs

Viceroy: �rst randomized protocol for DHT routing

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 10 / 38

Page 14: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

DHT Properties

High scalability

High robustness against frequent peers departures and arrivals

Self organization: No need for a central server

→ No single-point failure problem

→ Higher fault tolerance

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 11 / 38

Page 15: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Why DHT in Peer-to-Peer Networks?

Balanced distribution of data among nodes:

Avoid having nodes overloaded with data

Minimum disruption by nodes joining, leaving and failing:

Only a small part of the network concerned by a change in the set of

participants

→ Consistency

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 12 / 38

Page 16: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

DHT Based Peer-to-Peer Networks

CAN

Chord

Tapestry

Pastry

Kademlia

P-Grid

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 13 / 38

Page 17: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN: Historical Context

Most of in that period existing Peer-to-Peer designs not scalable:

Napster (central structure), Gnutella (unsecured, �ooding for data

lookup)

→ 2001: Content-addressable Network CAN

Literature: Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard

M. Karp, Scott Schenker: A Scalable Content-Addressable Network.

SIGCOMM 2001 : 161− 172

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 14 / 38

Page 18: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Design

Figure: Ideal structure of a two-dimensional CAN

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 15 / 38

Page 19: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Design

Figure: Typical Structure of a two-dimensional CAN

* Torus Edges not visualized

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 16 / 38

Page 20: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Construction

Finding any existing node

in CAN

Finding the corresponding

zone to be split

Notifying the neighbors of

the split zone with the

new node coordinates and

IP adress:

→ Allocation of data to

all other peers remain

unchanged: consistency

Figure: CAN Construction

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 17 / 38

Page 21: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Data Distribution Among Nodes in CAN

Question: How uniform is the distribution of the data after peers insertion?

Data load proportional to zone area

Low probability of perfect uniform partitioning

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 18 / 38

Page 22: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Data Distribution Among Nodes in CAN

Question: How uniform is the distribution of the data after peers insertion?

Data load proportional to zone area

Low probability of perfect uniform partitioning

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 18 / 38

Page 23: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Data Distribution Among Nodes in CAN

Let p be a peer in CAN

R (p) rectangle associated to peer p

A (p) area of the rectangle R (p)

PR,n Probability that the rectangle R (p) is not split after having n

peers joining the network

Lemma 1:

PR,n ≤ e−nA(p)

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 19 / 38

Page 24: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Lemma 1

Let q = A (p)

PR Probability that R (p) is not split after the insertion of a new peer

PR = 1− q

PR,n Probability that the rectangle R (p) is not split after having n

peers joining the network:

⇒ PR,n = (PR)n = (1− q)n

For ∀m � 0: (1− 1m

)m ≤ 1e

⇒ PR,n = (1− q)n = ((1− q)1q )nq ≤ 1

e

nq= e−nq = e−nA(p)

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 20 / 38

Page 25: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Lemma 1

Let q = A (p)

PR Probability that R (p) is not split after the insertion of a new peer

PR = 1− q

PR,n Probability that the rectangle R (p) is not split after having n

peers joining the network:

⇒ PR,n = (PR)n = (1− q)n

For ∀m � 0: (1− 1m

)m ≤ 1e

⇒ PR,n = (1− q)n = ((1− q)1q )nq ≤ 1

e

nq= e−nq = e−nA(p)

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 20 / 38

Page 26: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Data Distribution Among Nodes in CAN

Let p be a peer in CAN

R (p) rectangle associated to peer p

A (p) area of the rectangle R (p)

c constant

Theorem 1: In CAN, after the insertion of n peers, for the probability

PA of having a rectangle R (p) with area A (p) ≥ 2c · ln(n)n

we have:

PA ≤ n−c

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 21 / 38

Page 27: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Data Distribution Among Nodes in CAN

Let p be a peer in CAN

R (p) rectangle associated to peer p

A (p) area of the rectangle R (p)

c constant

Theorem 1: In CAN, after the insertion of n peers, for the probability

PA of having a rectangle R (p) with area A (p) ≥ 2c · ln(n)n

we have:

PA ≤ n−c

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 21 / 38

Page 28: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Interpretation of Theorem 1

Theorem 1: In CAN, after the insertion of n peers, the probability PA

of having a rectangle R (p) with area A (p) ≥ 2c · ln(n)n

is very low, i.e.

PA ≤ n−c

Interpretation: The probability that a zone associated to a given

peer is 2clnn times larger than the average area 1nis smaller than

n−c .

Same interpretation for the amount of data managed by one peer

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 22 / 38

Page 29: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Basic Operations

Insertion of (key, value) pairs

Lookup for (key, value) pairs

Deletion of (key, value) pairs

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 23 / 38

Page 30: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Insertion of (key, value) pairs

Key K1 mapped onto a point O1 in the coordinate space by a uniform

hash function

Point R1 in a zone Z1

Peer P1 owns zone Z1

Peer P1 stores the (K1,V1) data

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 24 / 38

Page 31: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Lookup/deletion of (key, value) pairs

Requesting peer: PR

Requested data (KR ,VR)

Coordinates of point OR calculated by NR

OR in Zone ZR

Routing from requesting peer to peer managing the zone ZR

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 25 / 38

Page 32: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Routing

Figure: Request Messages Routing in CAN

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 26 / 38

Page 33: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Routing

Coordinate Routing Table in each CAN node:

IP address and virtual coordinates of immediate neighbors

Greedy routing in CAN:

Straight line path: ZR → ZD with:

PR : Requesting peer, ZR : Requesting zone

PD : Destination peer, ZD : Destination zone

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 27 / 38

Page 34: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Maintenance

Node departure: Leaving procedure

Node failure: Immediate Takeover Algorithm

→ Problem: Space fragmentation

→ Solution: Background zone-reassignment algorithm

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 28 / 38

Page 35: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Maintenance

Node departure: Leaving procedure

Node failure:

Immediate Takeover Algorithm

→ Problem: Space fragmentation

→ Solution: Background zone-reassignment algorithm

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 28 / 38

Page 36: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Maintenance

Node departure: Leaving procedure

Node failure: Immediate Takeover Algorithm

→ Problem: Space fragmentation

→ Solution: Background zone-reassignment algorithm

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 28 / 38

Page 37: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Maintenance

Node departure: Leaving procedure

Node failure: Immediate Takeover Algorithm

→ Problem: Space fragmentation

→ Solution: Background zone-reassignment algorithm

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 28 / 38

Page 38: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

CAN Maintenance

Node departure: Leaving procedure

Node failure: Immediate Takeover Algorithm

→ Problem: Space fragmentation

→ Solution: Background zone-reassignment algorithm

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 28 / 38

Page 39: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Node Failure

Figure: CAN before node failures Figure: CAN after node failures

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 29 / 38

Page 40: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Example of CAN Binary Tree

Figure: CAN Tree Presentation

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 30 / 38

Page 41: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Background zone-reassignment algorithm: simple case

Figure: Zone-reassignment algorithm: simple case

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 31 / 38

Page 42: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Background zone-reassignment algorithm: complex case

Figure: Zone-reassignment algorithm: complex case

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 32 / 38

Page 43: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 44: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 45: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 46: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 47: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 48: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 49: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 50: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Design Improvements

Multi-dimensioned coordinate space

Realities: Multiple coordinate spaces

Overloading coordinate zones

Multiple hash functions

Topologically-sensitive CAN overlay network

Better CAN routing metrics

More uniform partitioning

Caching and replication techniques

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 33 / 38

Page 51: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Conclusion

Distributed Hash Tables:

DHT Basic conceptsDHT categoriesDHT properties

CAN:

Basic DesignDesign Improvements

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 34 / 38

Page 52: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Theorem 1

Let Ri be a rectangle with the area A(Ri ) = 2−i

c a constant

PRi ,c2ilnnthe probability that the rectangle Ri remains undivided after

the insertion of c2ilnn peers

Using Lemma 1:

PRi ,c2ilnn≤ e−A(Ri )c2

ilnn = e−clnn = n−c

⇒ PRi ,c2ilnn≤ n−c

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 35 / 38

Page 53: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Theorem 1 (Continue)

We obtained for PRi ,c2ilnnthe probability that the rectangle Ri

remains undivided after the insertion of c2ilnn peers:

PRi ,c2ilnn≤ n−c

Let's consider the insertion of peers stepwise i = 1, 2, . . . , log n2clnn

In step i , c2ilnn peers are inserted, that divide the rectangle Ri with

high probability

After the log n2clnn

-th step, is also the rectangle Ri with area equal to

2c lnnn

high probably divided

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 36 / 38

Page 54: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Theorem 1 (Continue)

After the log n2clnn

-th step, the number of peers N inserted is:

N =∑log n

2clnni=1 c2ilnn = c(lnn).

∑log n2clnn

i=1 2i

N ≤ c(lnn)2 n2clnn

= n

⇒ The number of peers in CAN in this case is at most equal to n

⇒ The rectangle with area 2c lnnn

remains undivided after the insertion

of n peers with a probability equal to n−c lnn

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 37 / 38

Page 55: Distributed Hash-tables and Scalable Content-Addressable ... · Basic Concept of Distributed Hash ablesT Array T is divided among peers Figure:Distributed Hash ablesT Abdelghani (

Proof of Theorem 1 (Continue)

There is at mnost n such rectangles

The probability that one of this rectangle remains undivided is at most

n.n−c .logn ≤ n−c+2

Abdelghani ( Ferienakademie im Sarntal 2008 FAU Erlangen-Nürnberg, TU München, Uni Stuttgart )DHT and CAN Sept. 2008 38 / 38