An Introduction to Structured P2P Overlay Networks With Cakes - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

An Introduction to Structured P2P Overlay Networks With Cakes

Description:

Peer-to-Peer overlay technology is mature and widely deployed. ... Azeurus, BitTorrent Mainline) All use essentially the same ideas. Structured Networks ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 30
Provided by: rzm
Category:

less

Transcript and Presenter's Notes

Title: An Introduction to Structured P2P Overlay Networks With Cakes


1
An Introduction to Structured P2P Overlay
Networks (With Cakes)
  • Rob Minson
  • Rich Price
  • Tien Tuan Anh Dinh

2
Overview
  • Peer-to-Peer overlay technology is mature and
    widely deployed.
  • Largely unstructured, used in non-critical
    (usually nefarious) environments
  • Since 2000 much research in to turning P2P
    overlays in to powerful distributed computing
    platforms.

3
Unstructured Networks
  • Example Application Network File System
  • Strings (home/x) map to data
  • All data located at globally known IP

4
Unstructured Networks
  • Unstructured P2P implementation
  • Each node knows the IPs of a random subset of
    others

5
Unstructured Networks
  • Searching an unstructured network
  • Flooding each node forwards to all neighbours.
  • Guaranteed to locate data if it exists
  • Very inefficient for non-trivial networks

6
Unstructured Networks
7
Unstructured Networks
  • Searching an unstructured network
  • Constrained flooding each query only traverses a
    distance from its origin equal to its
    time-to-live value (TTL).
  • Reduces bandwidth forwarding overhead
  • Only locates data with probabilistic guarantees

8
Unstructured Networks
9
Unstructured Networks
10
Adding Structure
  • Key Points for this section
  • Super node network has very high degree
  • High maintenance cost (join/leave)
  • Low latency traversals
  • Standard node network has very low degree
  • Low maintenance cost
  • High latency traversals
  • This is essential trade-off

11
Adding Structure
12
Structured Networks
  • Basic motivations
  • Deterministic searches (flooding)
  • Low bandwidth usage (constrained flooding)
  • Low latency (high-degree)
  • Low maintenance overhead (low-degree)

13
Structured Networks
  • Chord
  • Globally known low-collision hash function
  • IP addresses and data items both hashed using
    same function in to a single address space

/home/rzm/mp3s
788
1000
0
1024
348
/home/ttd/donuts
147.188.43.53
14
Structured Networks
  • Chord
  • Address space is arranged in to a ring
  • Nodes are attached to their neighbours

0
1000
114
609
15
Structured Networks
  • Searching in Chord
  • Each node stores the data between itself and its
    predecessor in the ring.

0
1000
114
/home/ttd/donuts
348
788
/home/rzm/mp3s
609
16
Structured Networks
  • Searching in Chord
  • Long-distance links (fingers) are added to each
    node at logarithmically increasing distances
    (allows a binary search)

target
peer
1000
114 1
609
114
114 2
609
114 4
609
114 8
609
114 16
609
114 32
609
114 64
609
114 128
609
114 256
609
114 512
1000
609
114 1024
self
17
Structured Networks
  • Searching in Chord
  • Long-distance links (fingers) are added to each
    node at logarithmically increasing distances
    (allows a binary search)

target
peer
1000
114 1
296
114
114 2
296
114 4
296
114 8
296
114 16
296
114 32
296
114 64
296
296
114 128
296
114 256
609
114 512
1000
609
114 1024
self
18
Structured Networks
  • Searching in Chord
  • Nodes forward queries to the finger pointer with
    the highest address less than the target address
    (eg. lookup(744))

1000
Q
114
296
775
744
609
498
19
Structured Networks
  • Searching in Chord
  • Nodes forward queries to the finger pointer with
    the highest address less than the target address
    (eg. lookup(744))

1000
114
296
775
744
Q
609
498
20
Structured Networks
  • Searching in Chord
  • Nodes forward queries to the finger pointer with
    the highest address less than the target address
    (eg. lookup(744))
  • Unless the target is between you and your
    successor!

1000
114
296
775
744
609
498
Q
21
Structured Networks
  • Several Structured Networks exist
  • CAN (2000)
  • N-Dimensional toroidal address space
  • Pastry (2001)
  • Hybrid tree/ring routing IP latency estimation
  • Kademlia (2002)
  • Widely deployed (eg. Azeurus, BitTorrent
    Mainline)
  • All use essentially the same ideas

22
Structured Networks
  • Structured network essentials
  • Deterministic
  • Unique, deterministic responsibility for data
  • Low Bandwidth
  • No route-branching
  • Low Latency
  • O(logn)-hop routing
  • Low Maintenance
  • But significantly higher than unstructured
    networks

23
Nodes joining (1)
  • Picks a bootstrapping node
  • Initializes successor,
  • predecessor and fingers

0
1000
114
/home/ttd/donuts
788
348
/home/rzm/mp3s
Search using 144 Successor key 4501 -gt Node
609 Predecessor successors predecessor -gt Node
114 Finger2 key 4502 -gt Node 609 Finger9
key 450256-gt Node 1000 Finger10 key 450512
-gt Node 1000
450
500
609
/home/rzm/makeup
24
Nodes joining (2)
  • Update other nodes
  • Transfer keys from successor node

Node 114s changes Successor Node 609 -gt
450 Finger2 to Finger9 Node 609 -gt 450
0
Node 1000s changes Finger9 Node 609 -gt 450
1000
114
/home/ttd/donuts
788
348
/home/rzm/mp3s
450
500
609
/home/rzm/makeup
Node 609s changes Predecessor Node 114 -gt 450
25
Nodes leaving
  • Leaving in Chord (gracefully)
  • Update other nodes
  • Move keys to successor nodes

Node 114s changes Successor Node 609 -gt
450 Finger2 to Finger9 Node 609 -gt 450
0
1000
Node 1000s changes Predecessor Node 609 -gt
450 Finger10 Node 609 -gt 1000
114
/home/ttd/donuts
788
348
/home/rzm/mp3s
450
500
Node 450s changes Successor Node 609 -gt
1000 Finger2 to Finger8 Node 609 -gt 1000
609
/home/rzm/makeup
26
Concurrent joins/leaves
  • Frequent join/leave (high churn rate)
  • Maintenance protocol
  • Can overload the network
  • Can jeopardise deterministic routing
  • Longer routing path
  • Query failure

A
B
C
27
Open Research Topics
  • Complex queries
  • Load balancing
  • Maintenance under churn
  • Security
  • Applications
  • Application-Layer Multicast
  • Distributed Storage
  • P2P Gaming
  • Streaming Media
  • etc

28
Overlay Research at cs.bham
  • Simulation (rmp/ttd)
  • Security (ttd)
  • Advanced Search (rzm)
  • Robustness (rmp)
  • etc?

29
Thanks!
  • (cakes may have contained nuts)
Write a Comment
User Comments (0)
About PowerShow.com