p2p simulation platform enhancement shih chin, chai superviser: dr. tim moors assessor: dr. robert...

31
P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Post on 18-Dec-2015

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

P2P Simulation Platform Enhancement

Shih Chin, ChaiSuperviser: Dr. Tim MoorsAssessor: Dr. Robert Malaney

Page 2: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

INTRODUCTION

Part of the Peer-to-Peer (P2P) Sharing of Networks Performance Measurements Project

Focus on enhancing the current simulation platform for the development of meaningful simulations

Page 3: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

P2P Network

A distributed system architecture:No centralized controlNodes are symmetric in

function Large number of unreliable

nodes

Bob Alice

JaneJudy

001 012

212305

332

212 ?212 ?

Fully decentralised

Centralised

Page 4: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

P2P networking Focus at the application level

Page 5: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

MOTIVATION

Many internet applications, currently based on the client-server architecture, will be more robust if built on decentralized self-organizing overlays (aka Peer-to-Peer Systems).

Page 6: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

More Robust????

Reliable: no single point of failure, many replicas.

Scalable: evolves smoothly to millions of nodes.

High capacity through parallelism: many disks, many network connections, many CPUs.

Page 7: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Latest Generation

Chord (MIT) Tapestry (UCB) Pastry (Microsoft & Rice) CAN (UCB & ACIRI) ………..

Page 8: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Basic lookup in Chord

N32

N90

N105

N60

N10N120

K80

“Where is key 80?”

“N90 has K80”

Consistent Hashing

keyID = SHA_1(key)

nodeID = SHA_1(IP)

7-bit ID space

K15, K30

Page 9: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

P2P networking

Page 10: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Locality Awareness

Minimize wide-area traffic, bandwidth utilization, congestion, and sensitivity to wide-area faults

Performance in the local area is particulary important when many paths can stay entirely within the local area.

We want to make sure that the lookup path stay locally whenever it’s possible.

Page 11: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Search for Low Stretch

The measure of locality efficiency is stretch, the ratio of the distance traveled to find a copy of an object to the distance to the closest copy.

Two of the Distributed Hash Tables(DHT): Tapestry & Pastry

Page 12: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Roles of Simulators

Evaluate the performance of p2p systems, in terms of cost (e.g. bandwidth) and value (e.g. reliability)

Provide a "good" abstraction of the real network and application for experimental purposes.

Page 13: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

The Dangers in Simulating P2P

Differences in performance may be due to simulator, not p2p system, if different simulators are used.

Simplified to the point where key facets of the network behavior have been lost

Page 14: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Today’s P2P Research

Lack of common simulation platform until recently p2psim, peersim have been developed, & publicly available.

Current projects still mainly use own simulators. (Bad..)

Q: Could a small change in the model result in a large change in the outputs? More treacherous..

Page 15: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

My Approach

The most useful simulator for long-term research interests would be the one that incorporates various proposals by different researchers, e.g. ns-2, Opnet

This thesis is about a collaborative effort to contribute toward a common network simulator in P2P networking.

Page 16: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Intro to p2psim

Developed by MIT research group Written in C++ Multi-threaded Discrete-event simulator Currently supports Chord, Accordion,

Koorde, Kelips, Tapestry, and Kademlia.

Page 17: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Initial (Part A) simulation results

Aim: To evaluate the stretch performance of Tapestry

Setup: Hardware: Pentium 4 CPU 3GHz OS: Linux 9, gcc version 3.2.2 Topology: King-topology Node: 1740 Run Time: ~40hours Method: Evaluation under churn

Page 18: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Simulation Results

Page 19: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Analysis

The graph shows that the stretch decreases as bandwitch per node increases. However, the actual path of a query takes does not show.

Conclusion: More aggressive approach is needed to evaluate the actual locality performance

Page 20: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Goals for thesis part B

Modify p2psim to output path information for individual queries so that complete stretch characteristics can be determined

& Implement DHTs that have good support

for locality, proximity and stretch in p2psim, such as Pastry

Page 21: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Plan Part I

Expected challenge: Current simulator only supports end-to-end latencies.

Possible solution: Use an IP-layer topology file, GT-ITM with p2psim, because GT-ITM deals with IP-layer nodes, which possibly enable us to count IP hops of a query.

Page 22: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Plan Part II

Expected challenge: Huge program. >3000 lines of C++ code as the outcome.

Proposed tools:The Tapestry codeBased on the paper, “Pastry: Scalable,

decentralised object location and routing for large-scale p2p systems.” (Microsoft & Rice)

P2psim mailing list

Page 23: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Task Schedule

Week 1-4: Modify p2psim to output stretch

Week 5 – 10: Implement Pastry

Week 11 – 12: Evaluation and Testing

Debugging & Refinement

Documentation & Project Management

Week 13 – 14: Final Report and Open Day

Page 24: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Summary

Enhance p2psim Add in new features:

Output query pathNew protocol

To evaluate the stretch issues our project after. Nonetheless,

For long term research interest.

Page 25: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Reference

Li JY, Stribling J, Morris R., Kaashock M.F., Gil T.M., A performance vs. cost framwork for evaluating DHT design tradeoffs under churn, MIT.

Stoica I., Morris R., Karger D., Kaashock MF., Balakrishnan H., Chord, MIT and Berkeley.

Zhao B.Y, Kubiatowicz J., Joseph AD., Tapestry, UCB. Rowstron A., Druschel P., Pastry, Microsoft and Rice University. Kurose J., Levine B., Towsley D., Peer-peer and Application level

networking, http://gaia.cs.umass.edu/cs791n Floyd S., Paxson V., 2001, Difficulties in simulating the Internet,

ACIRI, Berkeley. Risson J., Moors T., Towards Robust Internet Applications: Self-

Organizing Overlays, UNSW.

Page 26: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

ANY QUESTION?

Page 27: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

4

2

3

3

3

2

2

1

2

4

1

2

3

3

1

34

1

1

4 3

2

4

Tapestry MeshIncremental suffix-based routing

NodeID0x43FE

NodeID0x13FENodeID

0xABFE

NodeID0x1290

NodeID0x239E

NodeID0x73FE

NodeID0x423E

NodeID0x79FE

NodeID0x23FE

NodeID0x73FF

NodeID0x555E

NodeID0x035E

NodeID0x44FE

NodeID0x9990

NodeID0xF990

NodeID0x993E

NodeID0x04FE

NodeID0x43FE

Page 28: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Routing to NodesExample: Octal digits, 218 namespace, 005712 627510

005712

340880 943210

387510

834510

727510

627510

Neighbor MapFor “5712” (Octal)

Routing Levels1234

xxx1

5712

xxx0

xxx3

xxx4

xxx5

xxx6

xxx7

xx02

5712

xx22

xx32

xx42

xx52

xx62

xx72

x012

x112

x212

x312

x412

x512

x612

5712

0712

1712

2712

3712

4712

5712

6712

7712

005712 0 1 2 3 4 5 6 7

340880 0 1 2 3 4 5 6 7

943210 0 1 2 3 4 5 6 7

834510 0 1 2 3 4 5 6 7

387510 0 1 2 3 4 5 6 7

727510 0 1 2 3 4 5 6 7

627510 0 1 2 3 4 5 6 7

Page 29: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Object LocationRandomization and Locality

Page 30: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Pastry: Routing

Page 31: P2P Simulation Platform Enhancement Shih Chin, Chai Superviser: Dr. Tim Moors Assessor: Dr. Robert Malaney

Proximity Neighbor Selection

Node is chosen based on the proximity metric

Routing step: 1. check the

leaf set 2. then the

routing table