Presentation is loading. Please wait.

Presentation is loading. Please wait.

Analysis of Link Reversal Routing Algorithms

Similar presentations


Presentation on theme: "Analysis of Link Reversal Routing Algorithms"— Presentation transcript:

1 Analysis of Link Reversal Routing Algorithms
Srikanta Tirthapura (Iowa State University) joint work with Costas Busch (Renssaeler Polytechnic Institute)

2 Wireless Ad Hoc and Sensor Networks
Node Failures Nodes might go to sleep Nodes might move

3 Algorithms for Wireless Ad Hoc and Sensor Networks
Algorithms should be simple and distributed Self-stabilizing (or self-healing) in the face of failures

4 Research Goal Design Algorithms for which we can
Prove convergence Analyze performance Predict behavior on large scale networks Complementary to evaluation through simulation and experiments

5 Link Reversal Algorithms
Very simple Been around for 20 years Gafni-Bertsekas Full Reversal Algorithm Partial Reversal Algorithm Our Contribution: First formal performance analysis of link reversal in terms of work and time

6 Talk Outline Link Reversal Routing Previous Work & Contributions
Our Analysis Basic Properties of Link Reversal Full Reversal Algorithm Partial Reversal Algorithm Lower Bounds Conclusions

7 Distributed Dynamic Graph Problem
Communication Graph: Vertices = Computers (perhaps mobile) Edges = Wireless communication links Task: Maintain a distributed structure on this graph Routing Leader Election Issues: Deal with node and link failures Acyclicity

8 Aim of Link Reversal Destination oriented, Connection graph
of a wireless network Destination oriented, directed acyclic graph Destination

9 Link Failure node moves

10 A bad state A good state Bad node: no path to destination Good node: at least one path to destination

11 Full Link Reversal Algorithm
sink sink sink sink Sinks reverse all their links #reversals = 7 time = 5

12 Partial Link Reversal Algorithm
sink sink sink sink Sinks reverse some of their links #reversals = 5 time = 5

13 Heights and Acyclicity
General height: higher lower Heights are ordered in lexicographic order Observation: Directed Graph is always acyclic

14 Full Link Reversal Algorithm
Node Real height Node ID (breaks ties)

15 Full Link Reversal Algorithm
sink Sink before reversal after reversal

16 Full Link Reversal Algorithm

17 Partial Link Reversal Algorithm
Node memory Node ID Real height (breaks ties)

18 Partial Link Reversal Algorithm
sink Sink before reversal after reversal

19 Partial Link Reversal Algorithm

20 Deterministic Link Reversal Algorithms
Sink before reversal after reversal Deterministic function

21 Metrics # reversals: total number of node reversals
till stabilization (work) Time: number of parallel time steps till stabilization

22 Talk Outline Link Reversal Routing Previous Work & Contributions
Our Analysis Basic Properties of Link Reversal Full Reversal Algorithm Partial Reversal Algorithm Lower Bounds Conclusions

23 Previous Work Gafni and Bertsekas: 1981
Designed First Reversal Algorithms Proof of stability (eventual convergence) Corson and Ephremides: Wireless Net. Jour. 1995 LMR – Lightweight Mobile Routing Alg. Park and Corson: INFOCOM 1997 TORA – Temporally Ordered Routing Alg. - Variation of partial reversal - Deals with partitions

24 Previous Work Malpani, Welch and Vaidya.: DIAL-M 2000
Distributed Leader election based on TORA (partial) proof of stability Intanagonwiwat, Govindan, Estrin: MOBICOM 00 “Directed Diffusion” – Sensor network routing Similar to the TORA algorithm Experimental work and surveys: Broch et al.: MOBICOM 1998 Samir et al.: IC3N 1998 Perkins: “Ad Hoc Networking”, Rajamaran: SIGACT news 2002

25 Contributions First formal performance analysis
of link reversal routing algorithms in terms of #reversals and time

26 The Good News The work and time taken depend only on the number of nodes which have lost their paths to destination Algorithm is Local

27 Further News bad nodes Full reversal algorithm:
#reversals and time: There are worst-cases with: Partial reversal algorithm: #reversals and time: There are worst-cases with: depends on the network state

28 More News – Lower Bound bad nodes Any deterministic algorithm:
There are states such that #reversals and time: Full reversal alg. is worst-case optimal Partial reversal alg. is not!

29 Talk Outline Link Reversal Routing Previous Work & Contributions
Our Analysis Basic Properties of Link Reversal Full Reversal Algorithm Partial Reversal Algorithm Lower Bounds Conclusions

30 Definitions dest. Good nodes Bad nodes Bad state

31 Resulting Good state dest.

32 Good Nodes Never Reverse
dest. Good nodes Proof by a simple induction on distance from dest.

33 Many possible reversal schedules

34 Schedule of Reversals is NOT important
Lemma: For all executions of any deterministic reversal algorithm starting from the same initial state # of reversals is the same Final state is the same For upper bounds and lower bounds, we can choose a “convenient” execution schedule

35 Talk Outline Link Reversal Routing Previous Work & Contributions
Our Analysis Basic Properties of Link Reversal Full Reversal Algorithm Partial Reversal Algorithm Lower Bounds Conclusions

36 Bad state dest. Good nodes Bad nodes

37 Layers of bad nodes dest. Good nodes Bad nodes

38 Layers of bad nodes dest. A layer:

39 There is an execution segment such that:
Every bad node reverses exactly once dest.

40 There is an execution segment such that:
Every bad node reverses exactly once r r dest. r

41 There is an execution segment such that:
Every bad node reverses exactly once r r dest. r r r

42 There is an execution segment such that:
Every bad node reverses exactly once r r dest. r r r r r r

43 At the end of execution :
All nodes of layer become good nodes The remaining bad nodes return to the same state as before the execution r r r r r dest. r r r r r r r

44 At the end of execution :
All nodes of layer become good nodes The remaining bad nodes return to the same state as before the execution dest.

45 There is an execution such that:
Every (remaining) bad node reverses exactly once dest.

46 At the end of execution :
All nodes of layer become good nodes The remaining bad nodes return to the same state as before the execution dest.

47 At the end of execution :
All nodes of layer become good nodes The remaining bad nodes return to the same state as before the execution dest.

48 At the end of execution :
All nodes of layer become good nodes dest.

49 At the end of execution :
All nodes of layer become good nodes dest.

50 dest. Reversals per node:

51 dest. Reversals per node: End of execution

52 dest. Reversals per node: End of execution

53 dest. Reversals per node: End of execution

54 dest. Reversals per node: End of execution

55 dest. Reversals per node: Each node in layer reverses times

56 dest. Reversals per node: Nodes per layer: #reversals:

57 dest. For bad nodes, trivial upper bound: (#reversals and time) #reversals:

58 #reversals bound is tight
dest. Reversals per node: #reversals:

59 None of these reversals are performed in parallel
time bound is tight #nodes = dest. #reversals in layer : Time needed None of these reversals are performed in parallel

60 Complete Solution to Full Reversal
Given any initial state of the Full Reversal algorithm, our analysis can predict the number of reversals of each node exactly the time taken to convergence

61 Talk Outline Link Reversal Routing Previous Work & Contributions
Our Analysis Basic Properties of Link Reversal Full Reversal Algorithm Partial Reversal Algorithm Lower Bounds Conclusions

62 Partial Link Reversal Algorithm
sink Sink before reversal after reversal

63 Bad state dest. Good nodes Bad nodes

64 Layers of bad nodes dest. Good nodes Bad nodes Nodes at layer are at distance from good nodes

65 Layers of bad nodes dest. alpha value Max alpha Min alpha

66 when the network reaches a good state:
dest. upper bound on alpha value

67 when the network reaches a good state:
dest. upper bound on #reversals Reason: Each partial reversal increases alpha value by at least 1.

68 when the network reaches a good state:
dest. For bad nodes: a bad node reverses at most times #reversals and time:

69 #reversals bound is tight
dest. Reversals per node: #reversals:

70 None of these reversals are performed in parallel
time bound is tight dest. #reversals in layer : #nodes = Time needed None of these reversals are performed in parallel

71 Lower Bound for any Deterministic Algorithm
For any deterministic reversal algorithm, there is an assignment of heights such that: Nodes at a distance of d from a good node have to reverse d times

72 Layers of bad nodes dest. Good nodes Bad nodes Nodes at layer are at distance from good nodes

73 Layers of bad nodes dest. for any height function g, there is an initial assignment of heights such that……

74 when the network reaches a good state:
dest. lower bound on reversals per node

75 Lower Bound on #reversals on worst case graphs
dest. Reversals per node: #reversals:

76 None of these reversals are performed in parallel
Lower Bound on time dest. #reversals in layer : #nodes = Time needed None of these reversals are performed in parallel

77 Conclusions We gave the first formal performance analysis of deterministic link reversal algorithms Worst case performance-wise Full Link Reversal is optimal (surprisingly) Partial Link Reversal is not Good News: The time and work to stabilization depend only on the number of bad nodes Bad News: There is an inherent lower bound on efficiency of link reversal algorithms

78 Open Problems Improve worst-case performance of partial link reversal algorithm Analyze randomized algorithms Analyze average-case performance


Download ppt "Analysis of Link Reversal Routing Algorithms"

Similar presentations


Ads by Google