Download view - LaBRI

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Ordered slicing of very large scale
overlay networks
Mark Jelasity
University of Bologna, Italy
Anne-Marie Kermarrec
INRIA Rennes/IRISA, France
20/10/2006
ALPAGE
1
Motivation
• Potential of P2P technology
• Several applications running on the same
infrastructure
• Need for network partitioning
•
•
•
•
Decentralized
Robust
Handle dynamics
Customizable
Gossip-based approach to “slice” the network
20/10/2006
ALPAGE
2
Outline
1. Introduction
2. Background of gossip-based
membership algorithms
3. Ordered slicing
4. Simulation results
5. Conclusion
20/10/2006
ALPAGE
3
Objective
• Targeted applications
• Deskstop grids
• Testbed platforms (PlanetLab)
• Telco applications
• Resource assignment
• Objective
• Create and maintain partitions (slices) as subsets of the
network in a fully decentralized manner
• Ordered nature: along a single attribute (memory, bandwidth,
computing power)
• Our approach: Use a gossip-based approach to estimate to
which partition a node belongs
• Scalable
• Robust
• Based on local knowledge
20/10/2006
ALPAGE
4
Gossip-based protocols
• Unstructured peer to peer networks
• Highly resilient to failure and dynamics
• Gossip-based membership protocols
• Periodic exchange of information between nodes
• Basic functionality: Peer sampling
• Provide a sample of peers given a metric
• Random sampling
• Applications
• Event dissemination
• Recovery protocols
• Aggregation
20/10/2006
ALPAGE
5
Gossip-based generic protocol
1295
1
3
2
2 6 10 3
10
4
9
8
6
5
7
20/10/2006
ALPAGE
6
Gossip-based generic protocol
3
2
1 2 9 5 6 10 3
1
10
4
9
8
6
5
7
20/10/2006
ALPAGE
7
Gossip-based generic protocol
2 9 10
3
2
1
10
4
9
8
6
5
7
20/10/2006
ALPAGE
8
Design space
• Periodically each peer initiates communication
with another peer
• Peer selection
Selectpeer(): return the IP@ of an alive peer
• View propagation
How peers exchange their membership
information
• View selection: Select (c, buffer)
• c: size of the resulting view
• Buffer: information exchanged
20/10/2006
ALPAGE
9
Peer sampling algorithm
• Common framework for existing
gossip-based protocols
• Lpbcast [Eugster & al, ACM TOCS 2003]
• Cyclon [Voulgaris & al JNSM 2005]
• Newscast [Jelasity & van Steen, 2002]
• Peer selection: Select a peer at random from the
view
• View propagation: Pushpull
• View selection: Select the freshest entries
20/10/2006
ALPAGE
10
Random slices
3
2
1
10
4
9
8
6
5
7
20/10/2006
ALPAGE
11
Random slices
3
0.52
2
0.11
1
0.21
10
0.98
8
0.67
9
0.43
6
0.55
4
0.22
5
0.87
7
0.09
20/10/2006
ALPAGE
12
Random slices
3
0.52
2
0.11
1
0.21
10
0.98
8
0.67
9
0.43
6
0.55
4
0.22
5
0.87
7
0.09
20/10/2006
ALPAGE
13
Random slices
3
0.52
2
0.11
1
0.21
10
0.98
8
0.67
9
0.43
6
0.55
4
0.22
5
0.87
7
0.09
20/10/2006
ALPAGE
14
Ordered slices: System model
• Problem
• Automatically assign a node to a slice
• Along an attribute metric
• System model
• Crash-only nodes
• Each node i has
• an attribute i
• a random number i
• a view of c entries (peer sampling)
• a time stamp
• Each node belongs to one slice
x
20/10/2006
r
ALPAGE
15
Ordered slicing algorithm: basic
operation
Node a
xi
ri
xi
ri
xi
ri
20/10/2006
12
34
22
0.6
0.4
0.3
12
34
22
0.6
0.4
2
12
0.12 0.21
Node b
35
56
78
98
2
37
13
0.45 0.87 0.77 0.21 0.65 0.98 0.12
35
56
78
98
0.65 0.45 0.87 0.77 0.21
13
22
0.3
0.4
34
35
37
2
0.3
56
37
13
0.98 0.12
78
98
0.45 0.6 0.65 0.77 0.87 0.98
ALPAGE
16
Ordered slicing algorithm
Wait (t)
p<- random element from view
buffer<-view U {(my@,
my_stamp, xq , rq )}
Send buffer to p
Receive buffer(p)
view<-freshest c entries from
{buffer(p) U view}
i<- peer such that ( xi  xq )( ri  rq )  0
Send ( xq , rq ) to i
Receive buffer(q) from q
buffer<-view U {(my@,
my_stamp, x p , rp)}
Send buffer to q
view<-freshest c entries from
{buffer(p) U view}
rq  ri
Active thread at peer q
20/10/2006
ALPAGE
Passive thread at peer p
17
Ordered slicing algorithm: maintenance
• New nodes discovered using the random
peer sampling
• Random number ensures uniform spread
• Once the order stabilizes: each node knows
to which slice it belongs
• Example
• A peer with a number <0.5 knows in the first
50% of the nodes according to the metric
• Slice creation and maintenance
20/10/2006
ALPAGE
18
Disorder measure
 (t , ri (t ) ,...., ri
1
20/10/2006
N
2
)


(
t
)

1
/
N
(
j

i
(
t
))
 j
N (t )
j 1
ALPAGE
19
Analogy with average
• Weight conserving property
N
N
N
j 1
j 1
j 1
1 / N  j  i j (t )  1 / N  j  1 / N  i j (t )  0
• The swapping does not influence this
value (=0) but always reduces the
disorder value
20/10/2006
ALPAGE
20
Exponential decrease of the disorder
20/10/2006
ALPAGE
21
Swaps over time
20/10/2006
ALPAGE
22
Simulation set-up
• PeerSim simulator
• Configurations
• Network size: 30,000 – 100,000 – 300,000 node
overlay
• Views: c=20, 40 and 80
• Unreliable communication channels
• Churn
• Age bias: peer selection based on age similarity
• Metric: disorder
20/10/2006
ALPAGE
23
Churn
0.1%
20/10/2006
1%
ALPAGE
24
Age-based technique
Young nodes disordered
Old nodes protected
20/10/2006
ALPAGE
25
Example
• Quick stabilization
• Relatively welldefined slices
• constant churn
• massive failure
• massive join
• Stabilizes as soon
as churn stops
20/10/2006
ALPAGE
26
Conclusion & future work
• Gossip-based solution to partition a
dynamic network according to a given
metric
• Resilient to churn
• Future work
• Slices maintenance
• Improve the peer selection
20/10/2006
ALPAGE
27
Thank you !
20/10/2006
ALPAGE
28
Related documents