Performance scalability of the JXTA P2P framework

Let = size (global peerview). ▫ Each has its own version (local peerview). ▫ Let = size ( ). ▫ Goal of the peerview protocol. ⇨If property satisfied: optimal queries ...
854KB taille 3 téléchargements 340 vues
Performance scalability of the JXTA P2P framework Gabriel Antoniu1, Loïc Cudennec1, Mathieu Jan1 & Mike Duigou2 1PARIS

Research Group, IRISA / INRIA, France 2Project JXTA, Sun Microsystems, USA

GdX meeting - November 2006

Why an experimental evaluation of P2P systems? 

The P2P model has interesting properties 



But most evaluations are simulations   



Metric used: number of logical hops Few practical experiments on testbeds Does the simulation model match the reality?

Generic P2P libraries are available: JXTA, FreePastry, etc 



Scalability, volatility tolerance, high-availability, etc

Useful for building higher-level services & applications

What performance can be expected by higher-levels?



Focus of this study: the JXTA P2P framework 2

Challenge: large-scale performance evaluation of JXTA 

What is the best structure for a JXTA overlay? 

To how many peers a JXTA overlay can scale? 





How peers should be interconnected?

What are the performance of a JXTA overlay?   



Bandwidth and memory consumption

Time to discover resources? Time for resolving a communication channel? Latency and bandwidth of communication channels?

Our focus: adapt JXTA to grid architectures

3

Related work 

Focus of current evaluations of DHTs 

Study of DHT under realistic conditions (churns for instance)  





Theoretical analysis Based on traces of real systems

But: few large-scale experiments on a testbed

JXTA field Cost of loosely-consistent DHT algorithm [Halepovic et al. 2003]  But: no in-depth explanations, tests not well-defined and not at large scale (up to 32 peers) No clear view of the performance of JXTA! 



Our past experiments on Grid’5000 

Performance evaluations and optimizations of JXTA communication layers (GP2PC’2005, HPCC’2005) 4

Short overview of JXTA 

Open-source platform for programming P2P applications   



Peer  

 

Specify a set of protocols using XML Several bindings (J2SE, J2ME, C, etc) http://www.jxta.org/ Uniquely identified (Peer ID) Multiple network access points (TCP, HTTP, etc)

Peer groups (= overlay) Not part of the specification  

Algorithms for the implementation of protocols Structure of a JXTA overlay 5

JXTA protocol stack

Peer Discovery Protocol

Protocol

JXTA standard protocol

Protocol

JXTA core protocol

Pipe Binding Protocol

Pipe Binding Protocol

Peer Discovery Protocol

Peer Resolver Protocol

Peer Resolver Protocol

Rendezvous Protocol

Rendezvous Protocol

Endpoint Routing Protocol

Endpoint Routing Protocol

Physical Transport Protocols

TCP, HTTP, etc

Physical Transport Protocols 6

Focus: rendezvous and discovery protocol 

Type of peer involved  

Rendezvous: Edge:



We note S a JXTA overlay



Rendezvous protocol   



Peerview protocol Rendezvous lease protocol Rendezvous propagation protocol

Discovery protocol 7

The peerview protocol: managing an overlay 

Each overlay 

 





Ordered list (by peerID) of peers currently acting as rendezvous peers Used for routing messages Let = size (global peerview)

Each 

has a global peerview

Let

has its own version = size (

(local peerview)

)

Goal of the peerview protocol

If property satisfied: optimal queries propagation 8

The peerview protocol: managing an overlay

9

The peerview protocol: managing an overlay 

Probe: message from 







Contains rendezvous advertisement of

In response, 

to

returns

Its own rendezvous advertisement Referral response: randomly chosen rendezvous advertisement from

needs to probe

before adding it to



10

Time for the PV to converge across rendezvous peers? (1/4) 

Testbed: Grid’5000 with up to 580 nodes 



Logical overlay:   



Multi-site experiments (up to 6 sites simultaneously)

Only rendezvous peers = 10, 45, 50, 80, 160, 580 (for chain topology) = 160, 220, 338 (for tree topology)

Goal of experiments:

= 11

Time for the PV to converge across rendezvous peers? (2/4)

12

Time for the PV to converge across rendezvous peers? (3/4)

13

Time for the PV to converge across rendezvous peers? (4/4)

14

The discovery protocol: advertisements 

Loosely-Consistent Distributed Hash Table (LC-DHT) 



Advertisements defines attributes for indexing 



Publish and discover advertisements within a given

Attribute table = (index attribute, value) + lifetime + peerID of the publishing edge peer

Rendezvous peers  

Keep attribute tables pushed by Replicate them on other rendezvous peers: replica peer

15

How advertisements are published? We assume that property (1) is satisfied: Overlay:

 

0

006

1 2

020 036

3 4 5

050 088 180

16

How advertisements are searched? 

We again assume that property (1) is satisfied

17

Analysis of the discovery protocol 

Link with the peerview protocol 





Complexity:   



Consistent locals peerview ensure optimal discovery query propagation (property 1) Fall-back mechanism: walk the global peerview

Publish: for DHTs, for LC-DHT Lookup: for DHTS, for LC-DHT If locals peerview are consistent : for LC-DHT

Motivation for LC-DHT 

Handle volatility conditions without the maintenance cost of classical DHTs

18

Time to discover a specific advertisement? 

Testbed: Grid’5000 with up to 255 nodes 



Logical overlay:   



Multi-site experiments

Rendezvous peers + edge peers = 5, 50, 100, 150, 200 = 2, 52

Noiser edges: publish 100 extra advertisements 19

Time to discover a specific advertisement?

20

Conclusion 

Large-scale evaluation of two main protocols of JXTA  

Management of a JXTA overlay (peerview protocol) Publish and discovery mechanism (discovery protocol) 



Loosely-Consistent Distributed Hash Table

Answer to questions such as  

How many rendezvous peers should I deploy? What is the performance of a JXTA overlay?

Default values need to be tuned (we show how) 21

Future work  

Model for the convergence of local peerviews More evaluations of the discovery protocol 

Complex queries (range queries)



Study volatility impact on both protocols



Benchmark of other services at a large scale  



Resolver service (RPC in a P2P fashion) Pipe binding protocol, etc

Benchmark of JXTA-based services at a large scale (JuxMem) 22

Performance scalability of the JXTA P2P framework Gabriel Antoniu1, Loïc Cudennec1, Mathieu Jan1 & Mike Duigou2 1PARIS

Research Group, IRISA / INRIA, France 2Project JXTA, Sun Microsystems, USA

GdX meeting - November 2006