400 likes | 525 Views
Distributed algorithm for efficient construction and maintenance of connected k-hop dominating sets in mobile ad hoc networks. Virtual Backbone. The virtual backbone (VBB) is usually formed by a connected dominating set
E N D
Distributed algorithm for efficient construction and maintenance of connected k-hop dominating sets in mobile ad hoc networks
Virtual Backbone • The virtual backbone (VBB) is usually formed by a connected dominating set • Each node not in the dominating set is a neighbor of a node in the dominating set • The nodes in the dominating set induce a connected subgraph l k n m o q p b a g i j h c d f e A connected dominating set
Connected K-Hop Dominating Set • A connected k-hop dominating set (CKDS) can further reduce the flooding search space • Each node not in CKDS can be reached within k hops from at least one node in CKDS • The nodes in CKDS induce a connected subgraph l k n m o q p Require a distributed algorithm to construct and maintain a CKDS ! b a g i j h c d f e A connected 2-hop dominating set
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Difficulty of Verifying Connectivity of VBB • Each node knowing the disappearance of node b has the same two hop information in two cases b b VBB
Notations • x.num: each node x is assigned a chosen number • P(x): x’s neighbor with larger chosen number or equal chosen number and larger ID • EX: P(e)={i, j, f} l 12 11 k n m 269 268 ∞ ∞ o q ∞ p 257 b a 264 (j.num,j.id)>(e.mum,e.id) (f.num,f.id)>(e.num,e.id) g 1 265 262 i j j h 8 c d f f e e 3 5 4 5
Sufficient Condition for the Connectivity of VBB Theorem 3.1.Assume that G is connected graph in which each node x has a chosen number such that x.num= ∞ if and only if x belongs to VBB. If P(x) induces a connected subgraph of G for all x does not belong to VBB, then VBB is connected l 12 11 k n m 269 268 ∞ ∞ o o q q ∞ p p 257 b a 264 g 1 265 262 i i j j h 8 c d f f e e 3 5 4 5 • If P(x) induces a connected subgraph of G for all x does not belong to VBB, then VBB is connected • x.num=∞ if and only if x belongs to VBB • o, p, q are in VBB
Sufficient Condition for the Connectivity of VBB Theorem 3.1.Assume that G is connected graph in which each node x has a chosen number such that x.num= ∞ if and only if x belongs to VBB. If P(x) induces a connected subgraph of G for all x does not belong to VBB, then VBB is connected 1) It suffices to show there is a path in VBB between any two nodes I and j in VBB ∞ ∞ x i y j a a c c X b b • Select a node x such that (x.num,x.id)<(y.num,y.id) for all nodes y in the path • Nodes a and c must be in P(b) • The path is updated to i,a,…,c,j • b no longer appears in the updated path
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Dai and Wu’s Pruning Rule • Node x is pruned by Dai and Wu’s method if • 1) All x’s neighbors are directly connected (Marking Process) • 2) x’s neighbors are covered by a connected subgraph induced by x’s neighbors having larger ID than x (K-Pruning) l k l k n m n m o q o q p p b b a a g b a i i j j g h h j i h c d f f e e c d f e “An Extended Localized Algorithm for Connected Dominating Set Formation in Ad Hoc Networks,” IEEE TPDS, 2004.
Construction of CKDS • Use Dai and Wu’s method to prune nodes in k rounds • if x is pruned in round t, x’s chosen number is assigned to (t-1)max_id+x.id l 12 11 k n m ∞ ∞ ∞ ∞ o q ∞ p ∞ b a ∞ g 1 ∞ ∞ i j h e.num=(1-1)*255+5=5 8 c d f e e 3 5 6 4 • Assume max_id=255 • Assume a.id=1, b.id=2, and so on
Construction of CKDS • Use Dai and Wu’s method to prune nodes in k rounds • if x is pruned in round t, x’s chosen number is assigned to (t-1)max_id+x.id l 12 11 k n m 269 268 ∞ ∞ o q ∞ p 257 b a 264 g 1 265 262 i j h 8 c d f e 3 6 4 5 A connected 2-hop DS
Theorem 3.2.At the end of the construction process, CKDS={x|x.num= ∞} is a connected k-hop dominating set and P(x) induces a connected subgraph of G for all x does not belong to CKDS 1) Nodes pruned in round t1 has a smaller chosen number than nodes pruned in round t2 if t1<t2 2) P(x) are x’s neighbors in round t having a larger ID than x if x is pruned in round t 3) It suffices to show P(x) induces a connected subgraph of G if Case 3.1: x is pruned by Marking Process in round t Case 3.2: x is pruned by K-Pruning in round t Analysis of Construction Process l 12 11 k n m 269 268 ∞ ∞ o q ∞ p p 257 P(i)={p,j} b a 264 g g 1 265 262 j i i j h 8 c d d f e e 6 3 4 5
Theorem 3.2.At the end of the construction process, CKDS={x|x.num= ∞} is a connected k-hop dominating set and P(x) induces a connected subgraph of G for all x does not belong to CKDS 3.1) x is pruned by Marking Process in round t • x’s neighbors in round t are directly connected • P(x) are x’s neighbors in round t having a larger ID than x if x is pruned in round t (by 2) Analysis of Construction Process l 12 11 k n m 269 268 ∞ ∞ o o q ∞ p 257 b b a 264 g 1 265 262 i j h 8 c d f e 6 3 4 5
Theorem 3.2.At the end of the construction process, CKDS={x|x.num= ∞} is a connected k-hop dominating set and P(x) induces a connected subgraph of G for all x does not belong to CKDS 3.2) x is pruned by K-Pruning in round t • x’s neighbors in round t are covered by a connected subgraph induced by x’s neighbors in round t having larger ID than x • P(x) are x’s neighbors in round t having a larger ID than x if x is pruned in round t (by 2) Analysis of Construction Process l 12 11 k n m 269 268 ∞ ∞ o q ∞ p p 257 b a 264 g 1 265 262 i i j j h 8 c d f e 6 3 4 5
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Keep each node not in CKDS is reached within k hops from at least one node in CKDS Keep the connectivity of CKDS Maintenance of CKDS
Keep the Distance Property • x.parent: a node in P(x) • x.down: the maximum hop distance from x to its descendants • x.up: the hop distance from x to its dominator l 12 11 k n m o.up=0 269 268 ∞ ∞ b.up=1 o o q b.down=1 ∞ a.down=0 p 257 b b a a 264 g 1 265 262 i j h 8 c d f e 6 3 4 5 • x.down+z.up < k, where z=x.parent • x.down=0 if x is not the parent of any node • x.down=1+max{y.down|y.parent=x} • x.up=0 if x is in CKDS • x.up =1+y.up if y=x.parent
Keep the Distance Property • x.parent: a node in P(x) • x.down: the maximum hop distance from x to its descendants • x.up: the hop distance from x to its dominator l 12 11 k n m o.up=0 269 268 ∞ ∞ b.up=1 o q b.down=1 ∞ r.up=1 r r a.down=0 p 257 r.down=0 b a 264 g 1 265 262 i j h e.up=1+1=2 8 c d f e.down=0 e e 6 3 4 5 • Example of switch-on • Example of switches-off
Keep each node not in CKDS is reached within k hops from at least one node in CKDS Keep the connectivity of CKDS Maintenance of CKDS
Keep the Connectivity of CKDS • Sufficient Condition: each node x not in CKDS keeps P(x) induces a connected subgraph • Switch-on • Switch-off • Movement 267 ∞ l 12 11 k r r r n n m m 269 268 s s s ∞ ∞ ∞ 10 o o q q q ∞ p p 257 b a 264 g 1 265 262 i j h 8 c d f e 6 3 4 5
Size Reduction of CKDS • Each node in CKDS is expected to be removed from CKDS • CKDS may become disconnected due to the simultaneous removal of two neighboring nodes in CKDS l 12 11 k n m 269 o.pri=5 268 ∞ ∞ p.pri=3 p.pri=7 q.pri=6 o q ∞ p p 257 b a 266 ∞ g 1 265 262 i i i j h 8 c d f e 6 3 4 5 1 1 4 1 1
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Routing Based on CKDS • Each node keeps a descendant list • Each node in CKDS keeps a dominator routing table Source Destination o’s dominator routing table l l k n’s descendant list={l} r n m o q q’s descendant list={l,n,r} p b a a g j i h c d f e
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Theorem 3.9.The computation complexity of the maintenance of a CKDS for each node is O(∆2), where ∆ is and the maximum degree of a node in the network 1) Each node x needs O(∆2) time to verify if P(x) induces a connected subgraph using depth-first search 2) Each node x needs O(∆) time to 2.1) Set a maximum or minimum chosen number among neighbors 2.2) Find a parent 2.3) Update down and priority numbers 2.4) …etc Computation Complexity of the Maintenance of CKDS l 12 11 k n m 269 268 ∞ ∞ o q ∞ p 257 b a 265 g 264 262 j i h 8 c d f e 6 3 4 5
Theorem 3.10.In the maintenance of a CKDS, the node sends O(logn) and O(∆logn) bits in a round if each node has and has not the position information, respectively, where n denotes the number of nodes in the network 1) To check if P(x) induces a connected subgraph 1.1) x.id: O(logn) 1.2) x.num O(logn) 1.3.1) x’s neighbor set if x has not location information: O(∆ logn) 1.3.2) x’s position if x has location information: O(1) 2) To keep the distance property 2.1) x.parent: O(logn) 2.2) x.up: O(1) 2.3) x.down: O(1) 3) To prevent the simultaneous removal of two neighboring nodes in CKDS 3.1) x.pri: O(1) Message Complexity of the Maintenance of CKDS
Lemma 3.3.Given an area A having measure equal to |A| and k cells in A a1, a2,…,ak eachhaving measure equal to |a|. If j nodes are randomly distributed in A, the probability that at least one node exists in each of k cell is at least 1) Let pk,i be the probability that at least one node exists in cell ai+1 under the condition that at least one node exists in each of cells a1, a2,…,ai. 2) pk,i is not less than the probability that at least one node exists in cell ai+1 as j-I nodes are randomly distributed in A Analysis of Size of CKDS A a1 a2 ak • Pk,3 • Under a1, a2, a3 each has at least one node • the probability of a4 has a least one node • i nodes in cell a1, a2,…,ai • j-i nodes at least one in cell ai+1
Theorem 3.4.The probability that node y is pruned by K-Pruning is at least Where and Analysis of Size of CKDS y • Q(y): the set of y’s neighbor having larger ID than y • Pt,1: the probability that |Q(y)|is t • Pt,2: the probability that no node exists in all square cells with x • Pt,3: the probability that each square cell with has at least one node in Q(y) as |Q(y)|=j and no node exists in all square cells with x (by Lemma 3.3) • y is located on the center of the circle with radius R • A node in a square cell can communicate with any node in the neighboring square cells • The square cell with contains at least one node having larger ID than y • The square cell with х contains no node
Theorem 3.4.The probability that node y is pruned by K-Pruning is at least Where and Analysis of Size of CKDS
Lemma 3.6.The expected overlapped area of two circles each containing the center of the other and having radius r is Analysis of Reformation Rounds x y r “Computing Subgraph Probability of Random Geometric Graphs: Quantitative Analysis of Wireless Ad Hoc Networks,” FORTE, 2005
Lemma 3.7.The expected number of nodes in S(x) is at most where and Analysis of Reformation Rounds • S(x): the set of x’s neighbors entering CKDS after x.num is reset to ∞ • y is x’s neighbor • P(y) induces a connected subgraph of G before x.num is reset to ∞ • P(y) does not induce a connected subgraph of G after x.num is reset to ∞ l 1 1 k n m 2 2 ∞ ∞ o q ∞ 6 p ∞ S(r)={b,g} b b a ∞ 9 g g 1 2 2 j i r h 1 c d f ∞ e 1 4 1 1
Lemma 3.7.The expected number of nodes in S(x) is at most , if d<<|V| where and Analysis of Reformation Rounds y2 y2 • p’0 : no neighbor in CKDS • p’1 : one neighbor in CKDS y3 y3 y1 yd x x ∞ • Let (yi.num.yi.id)>(yi+1.num.yi+1.id) • Pi,1: the probability of yi.num≠∞ • Pi,2: the probability that P(yi) does not induce a connected subgraph of G after x.num is reset to ∞ under the condition yi.num≠∞ • The probability of y1, y2, …,yi-1 are not the neighbor of yi (not in the overlap area of the transmission ranges of yi and x)
Theorem 3.8.Assume that nodes are uniformly distributed in the network with degree d<<|V|. If node x switches on, switches off, moves, and is removed from CKDS, the expected numbers of reformation rounds are at most , , , and equal to 0, respectively, if α < 1, where and 1) In each round, at least one node enters CKDS if CKDS needs reformation 2) Switch-on: 3) Switch-off: 4) Movement: 5) Removed from CKDS:0 Analysis of Reformation Rounds
Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations Outline of Part II
Simulation Setup • Random-Walk Mobility and Gauss-Markov Mobility Models • 0~100 km/hr (0~27.7m/s) • A message-passing synchronous network • Communication proceed in synchronous rounds • Every node exchanged message with its neighbors and did some computation in each round • Compared to • MCDS (Algorithmica, 1998) • Dai and Wu’s method (TPDS, 2004) • Alzoubi’s method (MobiHoc, 2004)
Average Size of VBB Alzoubi 1-CKDS, Dai 2-CKDS 3-CKDS 1-MCDS 2-MCDS 3-MCDS (a) (b) • (a) Number of nodes:50~150, mobile nodes:0, (α=1,β=1,γ=0.5) lower density • (b) Number of nodes:50~150, mobile nodes:0, (α=0.5,β=0.1,γ=1) larger density • 1-MCDS < 1-CKDS = Dai and Wu’s method < Alzoubi’s method • The size of VBB decreases as • The density increases • k increases
Average Size of VBB Alzoubi Dai 1-CKDS 2-CKDS 3-CKDS (a) (b) • (a) Number of nodes:100, Random-Walk, mobile nodes:5~25, lower density • (b) Number of nodes:100, Random-Walk, mobile nodes:5~25, larger density • K-CKDS < Dai and Wu’s method < Alzoubi’s method
Number of Reformation Rounds Alzoubi Dai, K-CKDS (a) (b) • (a) Number of nodes:100, Random-Walk, mobile nodes:5~25, lower density • (b) Number of nodes:100, Random-Walk, mobile nodes:5~25, larger density • Dai and Wu’s method < K-CKDS << Alzoubi’s method • The number of reformation rounds increases as • The number of mobile nodes increases • The density decreases • k increases
Number of Changed Nodes Alzoubi Dai 3-CKDS 2-CKDS 1-CKDS (a) (b) • (a) Number of nodes:100, Random-Walk, mobile nodes:5~25, lower density • (b) Number of nodes:100, Random-Walk, mobile nodes:5~25, larger density • K-CKDS < Dai and Wu’s method < Alzoubi’s method • The number of changed nodes increases as • The number of mobile nodes increases • The density decreases • k increases