controller and estimator for dynamic networks
DESCRIPTION
Controller and Estimator for Dynamic Networks. Amos Korman Shay Kutten Technion. Motivation. 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. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/1.jpg)
Controller and Estimator
for Dynamic Networks
Amos Korman Shay Kutten
Technion
![Page 2: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/2.jpg)
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
![Page 3: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/3.jpg)
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
![Page 4: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/4.jpg)
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(.
![Page 5: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/5.jpg)
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
![Page 6: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/6.jpg)
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
![Page 7: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/7.jpg)
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
![Page 8: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/8.jpg)
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)
![Page 9: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/9.jpg)
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(.
![Page 10: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/10.jpg)
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
![Page 11: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/11.jpg)
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
![Page 12: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/12.jpg)
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
![Page 13: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/13.jpg)
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
![Page 14: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/14.jpg)
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.
![Page 15: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/15.jpg)
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
![Page 16: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/16.jpg)
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
![Page 17: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/17.jpg)
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).
![Page 18: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/18.jpg)
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
![Page 19: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/19.jpg)
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
![Page 20: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/20.jpg)
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
![Page 21: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/21.jpg)
ROOT
request
0Looking for a level-0 package
at distance between0 and 2Ψ.
Issue permit
u
If no level 0 package at u
![Page 22: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/22.jpg)
ROOT
request
iLooking for a level-i package
at distance between2i Ψ and 2i+1 Ψ
u
![Page 23: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/23.jpg)
request
2Ψ
22Ψ
23Ψ
24Ψroot
Look for level-0
Look for level-1
Look for level-2
Look for level-3
U
![Page 24: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/24.jpg)
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(
![Page 25: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/25.jpg)
request
2Ψ
22Ψ
23Ψ
24Ψ
3
Move & split
![Page 26: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/26.jpg)
request
2Ψ
22Ψ
23Ψ
24Ψ
3
1
0
2
0
No other level-2 package
![Page 27: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/27.jpg)
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
![Page 28: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/28.jpg)
The waste is at most W
ROOT
Level i package contains preciselyρ2i permits i
j
i
![Page 29: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/29.jpg)
request
2Ψ
22Ψ
23Ψ
24Ψ
3
1
0
2
0
No other level-2 package
Domain
![Page 30: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/30.jpg)
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
![Page 31: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/31.jpg)
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
![Page 32: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/32.jpg)
#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.
![Page 33: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/33.jpg)
request
2Ψ
22Ψ
23Ψ
24Ψ
3
Move & split Search for package
communication:Need only bound move of packages
![Page 34: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/34.jpg)
Communication – cont.
Fix level i. A permit belongs to at most
one level i package.
request
3
1
0
2
0
![Page 35: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/35.jpg)
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.
![Page 36: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/36.jpg)
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?
![Page 37: Controller and Estimator for Dynamic Networks](https://reader035.vdocument.in/reader035/viewer/2022062409/56815024550346895dbe0bb4/html5/thumbnails/37.jpg)
THANK YOU