Presentation is loading. Please wait.

Presentation is loading. Please wait.

Controller and Estimator for Dynamic Networks Amos Korman Shay Kutten Technion.

Similar presentations


Presentation on theme: "Controller and Estimator for Dynamic Networks Amos Korman Shay Kutten Technion."— Presentation transcript:

1 Controller and Estimator for Dynamic Networks Amos Korman Shay Kutten Technion

2 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: Add node Remove edge Add edge Remove node

3 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

4 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).

5 Dynamic 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

6 Related 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(log 2 n) 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

7 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. u Request v signal control protocol Messages are sent to update nodes permit or reject

8 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)

9 M M-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.)

10 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

11 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

12 The (M,W)-controller of [AAPS] Can operate on a growing tree allowing only leaves to join the tree. Has O(n·log 2 n·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(log 2 n) amortized message complexity. W+1 M

13 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(log 2 n log( )). W+1 M

14 Size estimation and name assignment in extended dynamic model Constant size estimation with amortized message complexity=O(log 2 n). Mainiatining unique identities using log n+O(1) bits per identity and O(log 2 n) amortized message complexity.

15 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

16 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

17 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).

18 Extended (M,W)-controller ROOT M permits 0 root sends packages of different sizes containing permits. i Level i package contains precisely ρ2 i permits Level 0 package contains between 1 and ρ permits

19 ROOT request (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

20 ROOT request (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 PiPi

21 ROOT request 0 Looking for a level-0 package at distance between 0 and 2 Ψ. Issue permit u If no level 0 package at u

22 ROOT request i Looking for a level-i package at distance between 2 i Ψ and 2 i+1 Ψ u

23 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ root Look for level-0 Look for level-1 Look for level-2 Look for level-3 U

24 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ root Look for level-0 Look for level-1 Look for level-2 Look for level-3 U 3 If not find, then a package of the appropriate size is issued at the root (unless it issued already M permits)

25 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ 3 Move & split

26 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ 3 1 0 2 0 No other level-2 package

27 Correctness 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.. ROOT M permits were sent At most W are stuck At least M - W were given

28 The waste is at most W ROOT Level i package contains precisely ρ2 i permits i j i

29 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ 3 1 0 2 0 No other level-2 package Domain

30 Domain invariants 1) Domain of level-i package is of size ~2 i Ψ 2) Domains of two level-i package are disjoint. i Therefore, # of level-i packages is at most n/ 2 i Ψ i i

31 What 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 request 2Ψ2Ψ 22Ψ22Ψ 23Ψ23Ψ 24Ψ24Ψ 3 Move & split Search for package communication : Need only bound move of packages

34 Communication – cont. Fix level i. A permit belongs to at most one level i package. request 3 1 0 2 0

35 At most M/(size(i))=M/2 i ρ level-i packages ever exist. Each level-i package travels to distance O(2 i Ψ). Total messages incurred by level-i packages ≤ O(M(Ψ/ρ)) = O(n·log n·(M/W)). Summing over all levels: # messages is O(n·log 2 n·(M/W)). Using iterations, reduce to O(n·log 2 n·log(M/(W+1))). Communication –cont.

36 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(log 2 n) amortized massage complexity. Can we do better?

37 THANK YOU


Download ppt "Controller and Estimator for Dynamic Networks Amos Korman Shay Kutten Technion."

Similar presentations


Ads by Google