controller and estimator for dynamic networks
Post on 21-Jan-2016
35 Views
Preview:
DESCRIPTION
TRANSCRIPT
Controller and Estimator
for Dynamic Networks
Amos Korman Shay Kutten
Technion
MotivationMany known algorithms are static. However, in most realistic contexts, and especially distributed contexts,
(the Internet, peer to peer networks etc ).setting is dynamic:
Add node
Remove edge
Add edge
Remove node
Motivation – cont.
Therefore, for a distributed scheme to be useful, it should be capable of reflecting up-to date information in dynamic setting,
which may require occasional updates.
A
B
C
D
A removed
Basic update problems
Size-estimation : some center node
maintains an approximation of # nodes.
Name assignment : maintain at each node u, a unique short identity id(u). )Typically O)log n( bits, n is current # nodes(.
Dynamic models
For simplicity, in this talk, we assume the Serialized model : a topological changeoccurs only after all updates concerningprevious topology changes have occurred.
In fact, the protocols work also under the
Controlled model [Afek et at.], in which topology changesmay occur concurrently, as long as we candelay for arbitrary )but finite( time periods.The Controlled model, may be useful in
overlay networks
Related workAfek, Awerbuch, Plotkin, and Saks showed (J. of ACM) how to solve the size-estimation and name-assignment problems on growing trees using O(log2n) amortized message complexity ,
per topology change. They assumed thatthe tree can only grow and
only by allowing leaves to join.
To solve the problems, they use a machinery called (M,W)-CONTROLLER
An (M,W)-controller
Requests arrive )from environment( to nodes. Each request is eventually either granted
a permit or rejected .
If a request is to perform a topology change is granted a permit then the change occurs .
uRequest
v
signal control protocolMessages are sent to update
nodes
permit or reject
An (M,W)-controller : Requirements:
Safety:
At most M permits are given.
Liveness:
If the controller gives a reject then
at least M-W permits were given
(W is the waste)
MM-W
Controller knows how to stop when the #of permits is between M and M-W
)in case w=0, the controller stops after precisely M permits were given(.
Trivial controller
Whenever a vertex u asks for a request ,
a signal is sent to the root .
In turn, the root returns a permit to u ,
unless is has already given M permits.
If the root has already given M permits ,
it returns reject to u.
Problem: message complexity Ω(Mn).
ROOT
M permits
request
reduction from size-estimation and name assignment to controller
(n/2,n/4-)controller with O)π( amortized message complexity
size estimation and name assignment protocols with O)π( amortized message complexity.
(Even if the number of topology changes is not bounded )using iterations( [Afek et. Al] .)
E
The (M,W)-controller of [AAPS]
Can operate on a growing tree allowing
only leaves to join the tree.
Has O)n·log2n·log ) ( message complexity .
(n is the final number of nodes)
Therefore, if W=M/2 then their controller can solve the size estimation and name assignment problems with O)log2n(
amortized message complexity .
W+1M
New Extended (M,W)-controller
In this paper, we give an
extended )M,W(-controller operating
under a more general model allowing
both additions and deletions of
both leaves and internal nodes.
Same amortized
message complexity: O)log2n log) ((. W+1M
Size estimation and name assignment in extended
dynamic model
Constant size estimation with
amortized message complexity=O)log2n(.
Mainiatining unique identities
using log n+O)1( bits per identity and O)log2n( amortized message complexity.
Remark The behavior of node v in the controller of AAPS depends strongly on the depth of v which does not change in their scenario.
Therefore it is not clear how to adapt the previous controller
to the more general dynamic setting.
ROOT
Extended (M,W)-controller
ROOT
M permits root sends packages of different sizes containing permits.Total # permits sent:no more than M.large package
small package
Safety
The root does not send more than M permits .
If it has sent M permits then
it broadcasts a reject message to all nodes.
Message complexity resulting from this
`reject’ broadcast is O(n).
Extended (M,W)-controller
ROOT
M permits
0
root sends packages of different sizes containing permits.
i
Level i package contains preciselyρ2i permits
Level 0 package contains between
1 and ρ permits
ROOT
requestrequest (to add a child)
0
One permit from P is given to the request. Subsequently: a) size(P)=size(P)-1, b) a child is added.
If size(P)=0, P is canceled.
P
The algorithm
ROOT
requestrequest)to delete the node(
0
One permit from P is given to request. Subsequently: a) size(P)=size(P)-1, b) all packages move to parent.c) the node is deleted.
P
Pi
ROOT
request
0Looking for a level-0 package
at distance between0 and 2Ψ.
Issue permit
u
If no level 0 package at u
ROOT
request
iLooking for a level-i package
at distance between2i Ψ and 2i+1 Ψ
u
request
2Ψ
22Ψ
23Ψ
24Ψroot
Look for level-0
Look for level-1
Look for level-2
Look for level-3
U
request
2Ψ
22Ψ
23Ψ
24Ψroot
Look for level-0
Look for level-1
Look for level-2
Look for level-3
U
3If not find, then a package of the
appropriate size is issued at the root)unless it issued already M permits(
request
2Ψ
22Ψ
23Ψ
24Ψ
3
Move & split
request
2Ψ
22Ψ
23Ψ
24Ψ
3
1
0
2
0
No other level-2 package
CorrectnessSafety: The root does issue more that M permits.
Liveness : If a request is rejected, and at most W are stuck in packages then # granted requests is at least M-W .
. ROOT
M permits were sentAt most W are stuck
At least M-W were given
The waste is at most W
ROOT
Level i package contains preciselyρ2i permits i
j
i
request
2Ψ
22Ψ
23Ψ
24Ψ
3
1
0
2
0
No other level-2 package
Domain
Domain invariants1 (Domain of level-i package is of size ~2iΨ
2 (Domains of two level-i package are disjoint.
i
Therefore, # of level-i packages is at most n/ 2iΨ
i
i
What happens to a domain when a topology change
occurs?i
DomainWhen a node leaves a domain it is
still considered as part of the domain
i
DomainWhen a node joins a domain it is considered as part of the domain
and the bottom node leave the domain
#of wasted tokens #of wasted permits in all level-i packages is
n (ρ/Ψ).
We fix ρ and Ψ so that ρ/Ψ= W/(n log n).
Therefore wasted permits in level-i packages ≤ W/log n.
Altogether, wasted permits is at most W.
request
2Ψ
22Ψ
23Ψ
24Ψ
3
Move & split Search for package
communication:Need only bound move of packages
Communication – cont.
Fix level i. A permit belongs to at most
one level i package.
request
3
1
0
2
0
At most M/(size(i))=M/2iρ level-i packages ever exist.Each level-i package travels to distance O(2iΨ).
Total messages incurred by level-i packages ≤ O(M(Ψ/ρ)) = O(n·log n·(M/W)).
Summing over all levels: # messages is O(n·log2n·(M/W)).
Using iterations, reduce to O(n·log2 n·log(M/(W+1))).
Communication –cont.
conclusion
The field of dynamic distributed algorithms brings many challenging and important problems. )In particular, transform known static schemes to dynamic ones.(
We managed to solve the size estimation and dynamic name assignment problems using O)log2n( amortized massage complexity.
Can we do better?
THANK YOU
top related