inc 2005 - rome: optimising dht-based peer-to-peer networks

27
ROME: Optimising DHT-based Peer-to-Peer Networks James Salter and Nick Antonopoulos Department of Computing, University of Surrey, UK 6 th July 2005 The financial support of the UK Engineering and Physical Sciences Research Council (EPSRC) (for JS) is gratefully acknowledged

Upload: james-salter

Post on 26-Jan-2017

124 views

Category:

Internet


8 download

TRANSCRIPT

Page 1: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

ROME: Optimising DHT-basedPeer-to-Peer Networks

James Salter and Nick AntonopoulosDepartment of Computing, University of Surrey, UK

6th July 2005

The financial support of the UK Engineering and Physical Sciences Research Council (EPSRC) (for JS) is gratefully acknowledged

Page 2: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Outline

Introduction and Background

ROME Architecture

Processes for Expansion

Evaluation

Conclusions and Future Work

Page 3: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

What is P2P?

Client/ServerPeer-to-Peer

No central server Node to node

connections Resilient Large #messages

Clients send requests to/via a central server

Small #messages Single point of failure

File sharing, distributed computing, instant messaging

Page 4: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

P2P Network Characteristics

Nodes can act as clients and servers No centralised server/authority

In Pure P2P Networks Network is highly dynamic

Nodes join and leave regularly Large-scale

Potentially millions of nodes Nodes are autonomous

But co-operate to share/retrieve resources

Page 5: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Chord

Structured Peer-to-Peer architecture Well-known in the research field Combines advantages of other P2P

architectures: An index of resources (e.g. Napster) But distributed over multiple nodes (e.g. Gnutella)

Based on Distributed Hash Tables Simple lookup mechanism

Given a key, it will return associated value(s)

Page 6: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Chord

20

0 1

8

12

15

2 3 4 5 6 7 8

Page 7: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Chord

log2(n) hops worst case½log2(n) hops average

Page 8: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

ROME Concept

Message cost is proportional to number of nodes in network (n)

Reduce n, reduce message cost Goal: Keep the ring “just big enough”

Must always support current workload Not unnecessarily large

Workload should determine ring size, not number of nodes in the network

Adding additional functionality to Chord

Page 9: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

ROME Architecture

ROMEChordLowerLayers

Page 10: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Normal

Node Workload Monitoring

Zero LimitTarget Threshold

Overloaded

Page 11: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Node Workload Monitoring

Node-level monitoring only shows the status of a single node

Ring-level monitoring would provide a complete view

Why not monitor at the ring level? Requires global knowledge Nodes need to report to a central entity Workload can fluctuate rapidly Many regular update messages Defeats the object of reducing message cost

Page 12: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Replace Operation

Overloaded

Page 13: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Replace Operation

Overloaded

Page 14: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Replace Operation

Page 15: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Add Operation

Overloaded

Page 16: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Add Operation

1615 17 18 19 20 22 23 24 25 2621 2714

ID: 27ID: 14

wor

kloa

d

ID: ??

Page 17: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Add Operation

Overloaded

Page 18: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Add Operation

Page 19: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Dynamic Ring Performance

Reduction in hop count by controlling network size based on theoretical work: Max hops per lookup = log2(n) Mean hops per lookup = ½ log2(n) If ring A < ring B, then log2(A) < log2(B) - in a static ring with correct routing information

Does this hold true in more realistic dynamic scenarios, with nodes joining/leaving or failing?

Page 20: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Dynamic Ring: Mean Hop Count

0

1

2

3

4

5

6

3000 5000 7000 9000Mean Node Lifetime (secs)

Mea

n H

op C

ount

128 nodes256 nodes512 nodes1024 nodes

Page 21: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Effect on Query Failure Rates

0%

20%

40%

60%

80%

100%

1000 3000 5000 7000 9000Mean Node Lifetime (secs)

% C

orre

ct L

ooku

ps

1024 nodes512 nodes256 nodes128 Nodes64 Nodes

Page 22: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Reducing Ring Size with ROME

Node Pool: 1 million nodes Node Capacity: 100 units Upper Threshold: 95% (95 units)

Initial network-wide workload: 1 unit ROME Ring size: 1 node Chord Ring size: 1 million nodes

What happens as we increasenetwork-wide workload?

Page 23: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Effect on Ring Size

0

200000

400000

600000

800000

1000000

1200000

0 30000000 60000000 90000000

Network-wide Workload

Rin

g Si

ze

ChordROME

Page 24: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Mean Hops per Lookup

0

2

4

6

8

10

12

0 30000000 60000000 90000000

Network-wide Workload

Mea

n H

ops/

Look

up

ChordROME

Page 25: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Utilisation of Ring Capacity

0%

20%

40%

60%

80%

100%

0 30000000 60000000 90000000Network-wide Workload

Cap

acity

Util

isat

ion

ChordROME

Page 26: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks

             

Conclusions

Chord: DHT-based structured P2P architecture with message cost proportional to nodes in structure

ROME: Reduce number of nodes in structure, reduce message cost Add/replace processes on each node allow

Chord ring to grow as necessary Workload controls size, not nodes in network

Smaller message costs than standard Chord when control ring building

What if workload decreases?

Page 27: INC 2005 - ROME: Optimising DHT-based Peer-to-Peer Networks