Title: Controller and Estimator for Dynamic Networks
1Controller and Estimator for Dynamic Networks
- Amos Korman Shay Kutten
- Technion
2Motivation
- Many known algorithms are static. However, in
most realistic contexts, and especially
distributed contexts, - (the Internet, peer to peer networks etc.)
setting is dynamic
Remove edge
Remove node
Add node
Add edge
3Motivation 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.
C
A removed
A
D
B
4Basic 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).
5Dynamic models
- For simplicity, in this talk, we assume the
- Serialized model a topological change
- occurs only after all updates concerning
- previous topology changes have occurred.
- In fact, the protocols work also under the
- Controlled model Afek et at.,
- in which topology changes
- may occur concurrently, as long as we can
- delay for arbitrary (but finite) time periods.
- The Controlled model, may be useful in
- overlay networks
6Related work
- Afek, 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 that
- the tree can only grow and
- only by allowing leaves to join.
- To solve the problems, they use a machinery
called (M,W)-CONTROLLER
7An (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.
u
control protocol
Request
signal
Messages are sent to update nodes
v
permit or reject
8An (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)
9Controller knows how to stop when the of
permits is between M and M-W
M
M-W
(in case w0, the controller stops after
precisely M permits were given.)
10Trivial controller
M permits
- 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 O(Mn).
ROOT
request
11reduction from size-estimation and name
assignment to controller
E
(n/2,n/4)-controller with O(p) amortized message
complexity size estimation and name assignment
protocols with O(p) amortized message
complexity. (Even if the number of topology
changes is not bounded (using iterations) Afek
et. Al).
12The (M,W)-controller of AAPS
- Can operate on a growing tree allowing
- only leaves to join the tree.
- Has O(nlog2nlog ( ) message complexity.
- (n is the final number of nodes)
- Therefore, if WM/2 then their controller can
solve the size estimation and name assignment
problems with O(log2n) amortized message
complexity.
M
W1
13New 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( )).
M
W1
14Size estimation and name assignment in extended
dynamic model
- Constant size estimation with
- amortized message complexityO(log2n).
- Mainiatining unique identities
- using log nO(1) bits per identity and O(log2n)
amortized message complexity.
15Remark
- 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
16Extended (M,W)-controller
M permits
root sends packages of different sizes containing
permits. Total permits sent no more than M.
ROOT
large package
small package
17Safety
- 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).
18Extended (M,W)-controller
M permits
ROOT
root sends packages of different sizes containing
permits.
Level i package contains precisely ?2i permits
i
0
Level 0 package contains between 1 and ? permits
19The algorithm
ROOT
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
0
request
(to add a child)
request
20ROOT
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.
Pi
P
0
request
request
(to delete the node)
21If no level 0 package at u
ROOT
0
Looking for a level-0 package at distance
between 0 and 2?.
Issue permit
u
request
22ROOT
Looking for a level-i package at distance
between 2i ? and 2i1 ?
i
u
request
23root
24?
Look for level-3
23?
Look for level-2
22?
Look for level-1
2?
Look for level-0
request
U
24root
3
24?
If not find, then a package of the
appropriate size is issued at the root (unless
it issued already M permits)
Look for level-3
23?
Look for level-2
22?
Look for level-1
2?
Look for level-0
request
U
2524?
3
23?
Move split
22?
2?
request
2624?
3
23?
2
No other level-2 package
22?
1
2?
0
request
0
27Correctness
- Safety 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. - .
M permits were sent
ROOT
At most W are stuck
At least M-W were given
28The waste is at most W
ROOT
Level i package contains precisely ?2i permits
j
i
i
2924?
3
23?
No other level-2 package
2
Domain
22?
1
2?
0
request
0
30Domain invariants
- 1) Domain of level-i package is of size 2i?
- 2) Domains of two level-i package are disjoint.
i
i
i
Therefore, of level-i packages is at most n/ 2i?
31What happens to a domain when a topology change
occurs?
i
Domain
When a node leaves a domain it is still
considered as part of the domain
i
Domain
When a node joins a domain it is considered as
part of the domain and the bottom node leave the
domain
32 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.
33- communication
- Need only bound move of packages
24?
3
23?
Move split
Search for package
22?
2?
request
34Communication cont.
- Fix level i.
- A permit belongs to at most
- one level i package.
3
2
1
0
request
0
35Communication cont.
- 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(nlog n(M/W)).
- Summing over all levels messages is
- O(nlog2n(M/W)).
- Using iterations, reduce to O(nlog2
nlog(M/(W1))).
36conclusion
- 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?
37THANK YOU