Peer-to-Peer Networks 03 CAN (Content Addressable Network) - - PowerPoint PPT Presentation

peer to peer networks
SMART_READER_LITE
LIVE PREVIEW

Peer-to-Peer Networks 03 CAN (Content Addressable Network) - - PowerPoint PPT Presentation

Peer-to-Peer Networks 03 CAN (Content Addressable Network) Christian Ortolf Technical Faculty Computer-Networks and Telematics University of Freiburg CAN Playground Index entries are mapped to the square [0,1] 2 - using two hash


slide-1
SLIDE 1

Peer-to-Peer Networks

03 CAN (Content Addressable Network)

Christian Ortolf

Technical Faculty Computer-Networks and Telematics University of Freiburg

slide-2
SLIDE 2

CAN Playground

  • Index entries

are mapped to the square [0,1]2

  • using two hash

functions to the real numbers

  • according to

the search key

  • Assumption:
  • hash functions

behave a like a random mapping

2

slide-3
SLIDE 3

CAN Index Entries

  • Index entries are mapped to

the square [0,1[^2

  • using two hash functions to

the real numbers

  • according to the search key
  • Assumption:
  • hash functions behave a like

a random mapping

  • Literature
  • Ratnasamy, S., Francis, P.,

Handley, M., Karp, R., Shenker, S.: A scalable content- addressable network. In: Computer Communication

  • Review. Volume 31., Dept. of
  • Elec. Eng. and Comp. Sci.,

University of California, Berkeley (2001) 161–172

Dick Karp Mark Handley Sylvia Ratnasamy Paul Francis Scott Shenker

3

slide-4
SLIDE 4

First Peer in CAN

  • In the beginning

there is one peer

  • wning the whole

square

  • All data is

assigned to the (green) peer

4

slide-5
SLIDE 5

CAN: The 2nd Peer Arrives

  • The new peer

chooses a random point in the square

  • or uses a hash

function applied to the peers Internet address

  • The peer looks up

the owner of the point

  • and contacts the
  • wner

5

slide-6
SLIDE 6

CAN: 2nd Peer Has Settled Down

  • The new peer

chooses a random point in the square

  • or uses a hash function

applied to the peers Internet address

  • The peer looks up the
  • wner of the point
  • and contacts the owner
  • The original owner

divides his rectangle in the middle and shares the data with the new peer

6

slide-7
SLIDE 7

3rd Peer

7

slide-8
SLIDE 8

CAN: 3rd Peer

8

slide-9
SLIDE 9

CAN: 4th Peer

9

slide-10
SLIDE 10

CAN: 4th Peer Added

10

slide-11
SLIDE 11

CAN: 5th Peer

11

slide-12
SLIDE 12

CAN: All Peers Added

12

slide-13
SLIDE 13

On the Size of a Peer‘s Area

  • R(p): rectangle of

peer p

  • A(p): area of the

R(p)

  • n: number of peers
  • area of playground

square: 1

  • Lemma
  • For all peers we have
  • Lemma
  • Let PR,n denote the

probability that no peers falls into an area R. Then we have

13

slide-14
SLIDE 14

An Area Not being Hit

  • Lemma
  • Let PR,n denote the probability that

no peers falls into an area R. Then

  • Proof
  • Let x=Vol(R)
  • The probability that a peer does

not fall into R is

  • The probability that n peers do not

fall into R is

  • So, the probability is bounded by
  • because

R

14

slide-15
SLIDE 15

How Fair Are the Data Balanced

  • Lemma
  • With probability n-c a rectangle of size

(c ln n)/n is not further divided

  • Proof
  • Let PR,n denote the probability that no

peers falls into an area R. Then we have

  • Every peer receives at most

c (ln n) m/n elements

  • if all m elements are stored equally

distributed over the area

  • While the average peer stores

m/n elements

  • So, the number of data stored on

a peer is bounded by c (ln n) times the average amount

15

slide-16
SLIDE 16

Network Structure of CAN

  • Let d be the dimension
  • f the square, cube,

hyper-cube

  • 1: line
  • 2: square
  • 3: cube
  • 4: ...
  • Peers connect
  • if the areas of peers share

a (d-1)-dimensional area

  • e.g. for d=2 if the

rectangles touch by more than a point

16

slide-17
SLIDE 17

Lookup in CAN

  • Compute the position of

the index using the hash function on the key value

  • Forward lookup to the

neighbored peer which is closer to the index

  • Expected number of

hops for CAN in d dimensions:

  • Average degree of a

node

  • 17
slide-18
SLIDE 18

Insertions in CAN = Random Tree

  • Random Tree
  • new leaves are inserted

randomly

  • if node is internal then flip

coin to forward to left or right sub-tree

  • if node is leaf then insert

two leafs to this node

  • Depth of Tree
  • in the expectation: O(log n)
  • Depth O(log n) with high

probability, i.e. 1-n-c

  • Observation
  • CAN inserts new peers like

leafs in a random tree

18

slide-19
SLIDE 19

Leaving Peers in CAN

  • If a peer leafs
  • he does not announce it
  • Neighbors continue testing on the

neighborhood

  • to find out whether peer has left
  • the first neighboir who finds a missing neighbor

takes over the area of the missing peer

  • Peers can be responsible for many

rectangles

  • Repeated insertions and deletions of peers

leed to fragmentation

19

slide-20
SLIDE 20

Defragmentation — The Simple Case

  • To heal fragmented areas
  • from time to to time areas are

freshly assigned

  • Every peer with at least two

zones

  • erases smalles zone
  • finds replacement peer for this

zone

  • 1st case: neighboring zone

is undivided

  • both peers are leafs in the

random tree

  • transfer zone to the neighbor

20

slide-21
SLIDE 21

Defragmentation — The Difficult Case

  • Every peer with at least two

zones

  • erases smalles zone
  • finds replacement peer for this

zone

  • 2nd case: neighboring zone

is further divided

  • Perform DFS (depth first

search) in neighbor tree until two neighbored leafs are found

  • Transfer the zone to one leaf

which gives up his zone

  • Choose the other leaf to

receive the latter zone

21

DFS

slide-22
SLIDE 22

Improvements for CAN

  • More dimensions
  • Multiples realities
  • Distance metric for routing
  • Overloading of zones
  • Multiple hasing
  • Topology adapted network construction
  • Fairer partitioning
  • Caching, replication and hot-spot management

22

slide-23
SLIDE 23

Higher Dimensions

  • Let d be the

dimension of the square, cube, hyper- cube

  • 1: line
  • 2: square
  • 3: cube
  • 4: ...
  • The expected

path length is O(n1/d)

  • Average

number of neighbors O(d)

23

slide-24
SLIDE 24

More Realities

  • Build simultanously

r CANs with the same peers

  • Each CAN is called

a reality

  • For lookup
  • greedily jump

between realities

  • choose reality with

the closest distance to the target

  • Advantanges
  • robuster network
  • faster search

24

slide-25
SLIDE 25

More Realities

  • Advantages
  • robuster
  • shorter paths

25

slide-26
SLIDE 26
  • Dimensionens

reduce the lookup path length more effciently

  • Realities

produce more robust networks

26

Realities vs. Dimensions

slide-27
SLIDE 27

Peer-to-Peer Networks

03 CAN (Content Addressable Network)

Christian Ortolf

Technical Faculty Computer-Networks and Telematics University of Freiburg