virtual backbone

40
Distributed algorithm for efficient construction and maintenance of connected k- hop dominating sets in mobile ad hoc networks 1

Upload: istas

Post on 11-Jan-2016

84 views

Category:

Documents


1 download

DESCRIPTION

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 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Virtual Backbone

Distributed algorithm for efficient construction and

maintenance of connected k-hop dominating sets in mobile

ad hoc networks

1

Page 2: 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

2

m

o

n

ba

h

q

p

gi j

c de

f

lk

A connected dominating set

Page 3: Virtual Backbone

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

3

m

o

n

ba

h

q

p

gi j

c de

f

lk

A connected 2-hop dominating set

Require a distributed algorithm to construct and maintain a CKDS !

Page 4: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

4

Page 5: Virtual Backbone

5

bb

Each node knowing the disappearance of node b has the same two hop information in two cases

VBB

Page 6: Virtual Backbone

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}

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 5e

j

f

(j.num,j.id)>(e.mum,e.id)

6

(f.num,f.id)>(e.num,e.id)

Page 7: Virtual Backbone

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 5e

j

f

i

o

p

q

7

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

x.num=∞ if and only if x belongs to VBB o, p, q are in VBB

If P(x) induces a connected subgraph of G for all x does not belong to VBB, then VBB is connected

Page 8: Virtual Backbone

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 connected1) It suffices to show there is a path in VBB between any two nodes I and j in VBB

x yi ja

b

c

b

∞ ∞

a c

8

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

X

Page 9: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

9

Page 10: Virtual Backbone

m

o

n

ba

h

q

p

gj i

c de

f

lk

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)

m

o

n

ba

h

q

p

gi j

c de

f

lk

a b

h

e

ji

f

“An Extended Localized Algorithm for Connected Dominating Set Formation in Ad Hoc Networks,” IEEE TPDS, 2004.

10

Page 11: Virtual Backbone

Assume max_id=255 Assume a.id=1, b.id=2, and so on

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

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

∞ ∞

1

8

3 4 5 6

∞∞

∞ ∞

11

e

e.num=(1-1)*255+5=5

Page 12: Virtual Backbone

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

A connected 2-hop DS

12

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

Page 13: Virtual Backbone

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 CKDS1) 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 t3) 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

m

o

n

ba

h

q

p

gj i

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

i

de

p

jg

P(i)={p,j}

Page 14: Virtual Backbone

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

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

b

o

Page 15: Virtual Backbone

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

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 56

i

p

j

Page 16: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

16

Page 17: Virtual Backbone

Keep each node not in CKDS is reached within k hops from at least one node in CKDS

Keep the connectivity of CKDS

17

Page 18: Virtual Backbone

m

o

n

ba

h

q

p

gi j

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

a

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

18

x.down=0 if x is not the parent of any node

x.up=0 if x is in CKDS

b.up=1

o.up=0

b.down=1a.down=0

x.down=1+max{y.down|y.parent=x}

b

x.up =1+y.up if y=x.parent

o

x.down+z.up < k, where z=x.parent

Page 19: Virtual Backbone

r

i

19

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

Example of switch-on

m

o

n

ba

h

q

p

gj

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

b.up=1

o.up=0

b.down=1a.down=0

r r.up=1r.down=0

e e.down=0e.up=1+1=2

Example of switches-off

Page 20: Virtual Backbone

Keep each node not in CKDS is reached within k hops from at least one node in CKDS

Keep the connectivity of CKDS

20

Page 21: Virtual Backbone

10s

i

21

Sufficient Condition: each node x not in CKDS keeps P(x) induces a connected subgraph Switch-on Switch-off Movement

m

o

n

ba

h

q

p

gj

c de

f

lk 11 12

269268∞ ∞

265264

262

257

1

8

3 4 5 6

r

267

m

q

n

r

s

r

p

o ∞s

q

Page 22: Virtual Backbone

i

22

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

i

m

o

n

ba

h

q

p

gj

c de

f

lk 11 12

269268∞ ∞

265∞

262

257

1

8

3 4 5 6

i266

o.pri=5

q.pri=6p.pri=3p.pri=7

p

Page 23: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

23

Page 24: Virtual Backbone

j

24

m

o

n

ba

h

q

p

gi

c de

f

lk

Each node keeps a descendant list Each node in CKDS keeps a dominator routing table

p (c,f,g,i) …

q (l,n,r) …

j (d,e) … q’s descendant list={l,n,r}

o’s dominator routing table

SourceDestination

a

l

r n’s descendant list={l}

Page 25: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

25

Page 26: Virtual Backbone

26

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 network1) Each node x needs O(∆2) time to verify if P(x) induces a connected subgraph using depth-first search2) 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

m

o

n

ba

h

q

p

gj i

c de

f

lk 11 12

269268∞ ∞

264265

262

257

8

3 4 65

Page 27: Virtual Backbone

27

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

Page 28: Virtual Backbone

Lemma 3.3. Given an area A having measure equal to |A| and k cells in A a 1, a2,…,ak each having 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 a i+1 under the condition that at least one node exists in each of cells a 1, 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

28

1

0

| |(1 (1 ) )

| |

kj i

i

a

A

1

,0

k

k k ii

p p

,

| | | |1 ( )

| |j i

k i

A ap

A

Pk,3

Under a1, a2, a3 each has at least one node

the probability of a4 has a least one node

1

0

| |(1 (1 ) )

| |

kj i

ki

ap

A

i nodes in cell a1, a2,…,ai

j-i nodes at least one in cell ai+1

A

ak

a2a1

Page 29: Virtual Backbone

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)

1

,30

| |(1 (1 ) )

| | | |

kt i

ti

ap

A u a

d

,2

| | | |( )

| |

where | | is circle size

and | | is cell size

t

A u ap

A

A

a

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

29

Theorem 3.4. The probability that node y is pruned by K-Pruning is at least

Where and (0,8) 8 (1,8) 28 (2,8) 34 (3,8) 4 (3.75,6) 8 (2.38,7) 8 (3.38,7),f f f f f f f

| ( ) |d N y

1

0

1(1 ) (1 (1 ) )

8 8( , )

1

kdd j i

j k i

u

f u kd

y

,1

1

d 1tp

,1 ,2 ,30

( , )d

t t tt

f u k p p p

Page 30: Virtual Backbone

30

Theorem 3.4. The probability that node y is pruned by K-Pruning is at least

Where and (0,8) 8 (1,8) 28 (2,8) 34 (3,8) 4 (3.75,6) 8 (2.38,7) 8 (3.38,7),f f f f f f f

| ( ) |d N y

1

0

1(1 ) (1 (1 ) )

8 8( , )

1

kdd j i

j k i

u

f u kd

Page 31: Virtual Backbone

31

Lemma 3.6. The expected overlapped area of two circles each containing

the center of the other and having radius r is

23 3( )

4r

x yr

“Computing Subgraph Probability of Random Geometric Graphs: Quantitative Analysis of Wireless Ad Hoc Networks,” FORTE, 2005

Page 32: Virtual Backbone

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 ∞

32

m

o

n

ba

h

q

p

gj i

c de

f

lk 1 1

22∞ ∞

229

6

1

1

4 1 1

r

1

gb S(r)={b,g

}

Lemma 3.7. The expected number of nodes in S(x) is at most where and

4 3 3(1 ) ,

44 3 3dp p

| |

| |

CKDSp

V | ( ) |d N x

Page 33: Virtual Backbone

33

Lemma 3.7. The expected number of nodes in S(x) is at most , if d<<|V| where and

4 3 3(1 ) ,

44 3 3dp p

y1

x

yd

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)

y3y3

2 2

1,2 2

3 3( )

4( )ii

r rp

r

,1 ,21

d

i ii

p p

1

,10

'i

i kk

p p

p’0 : no neighbor in CKDS

p’1 : one neighbor in CKDS

x

y2y2

' (1 )d d k kk kp C P P

| |

| |

CKDSp

V | ( ) |d N x

Page 34: Virtual Backbone

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 reformation2) Switch-on:

3) Switch-off:

4) Movement:

5) Removed from CKDS:0

34

1 1i

i

2 1

d

1 2 1

d

1

12 2

d

( 2)1

2 2

d

4 3 3(1 )

44 3 3dp p

| |

| |

CKDSp

V

Page 35: Virtual Backbone

Sufficient Condition Construction of CKDS Maintenance of CKDS Routing Based on CKDS Analyses Simulations

35

Page 36: Virtual Backbone

36

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)

Page 37: Virtual Backbone

37

(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

(a) (b)

1-MCDS2-MCDS3-MCDS

1-CKDS, Dai

2-CKDS

3-CKDS

Alzoubi

Page 38: Virtual Backbone

38

(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

(a) (b)

Dai1-CKDS

2-CKDS3-CKDS

Alzoubi

Page 39: Virtual Backbone

39

(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

(a) (b)

Dai, K-CKDS

Alzoubi

Page 40: Virtual Backbone

40

(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

(a) (b)

Dai

1-CKDS2-CKDS3-CKDS

Alzoubi