mutation routing

43
Mutation Routing 1

Upload: gwennan-parker

Post on 01-Jan-2016

43 views

Category:

Documents


2 download

DESCRIPTION

Mutation Routing. Kamin Whitehouse BLAM Workshop, UCLA 11/8/03. Outline. The problem Previous approaches Mutation Routing Overview and Demo Algorithm Analysis Future Work. 15. 15. 14. 14. 9. 9. 5. 5. 2. 2. 1. 1. Mobile-to-Mobile Routing. Stationary nodes. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mutation Routing

Mutation Routing 1

Page 2: Mutation Routing

Mutation Routing

Kamin Whitehouse

BLAM Workshop, UCLA

11/8/03

Page 3: Mutation Routing

Mutation Routing 3

Outline

• The problem

• Previous approaches

• Mutation Routing – Overview and Demo– Algorithm

• Analysis

• Future Work

Page 4: Mutation Routing

Mutation Routing 4

Mobile-to-Mobile Routing

• Stationary nodes

7

1

6

1112

34

8

9

1415

1310

5

2

9

14

9

1

5

21

5

21

5

2

1514

9

1514

9

• Two or more mobile objects

• Groups with unique leader for each object

• Must maintain communication between leaders as the objects move– i.e. mobile-group to

mobile-group routing

Page 5: Mutation Routing

Mutation Routing 5

Why is this hard?

• Source must know where destination is, but dest keeps moving

• Could dest just send source its location?– No! Source keeps moving also.– (One way to solve the problem is to have a

solution to the problem)

Page 6: Mutation Routing

Mutation Routing 6

Application: PEG

Page 7: Mutation Routing

Mutation Routing 7

Application: Ubicomp

Page 8: Mutation Routing

Mutation Routing 8

Assumptions

• Assume a dense network

• Assume homogenous nodes ??

• Assume ‘socket’ type of communication

• Always a clean hand-off between leaders

Page 9: Mutation Routing

Mutation Routing 9

Outline

• The problem: mobile to mobile routing

• Previous approaches

• Mutation Routing – Overview and Demo– Algorithm

• Analysis

• Future Work

Page 10: Mutation Routing

Mutation Routing 10

Routing Mini-Demo

• Any-to-one global broadcast

• Any-to-mobile ??

Page 11: Mutation Routing

Mutation Routing 11

Berkeley Landmark Routing

• Crumb-trail allows landmark to forward to mobile– Avoids repeated re-broadcast

• Questions: Bandwidth? Scalable?

Page 12: Mutation Routing

Mutation Routing 12

PARC Constrained Broadcast

• Receiver generates gradient; sender uses constrained broadcast– Robust to link/node failures, costs extra messages

• Question: Bandwidth? Energy?

Page 13: Mutation Routing

Mutation Routing 13

• Broadcast channel-> collisions

• Scales w/ network size

• #Msgs is high

1. Goal: high-bandwidth

1. Goal: scalable

1. Goal: energy-efficient

Problems

Latency??

Page 14: Mutation Routing

Mutation Routing 14

Outline

• The problem: mobile to mobile routing

• Previous approaches

• Mutation Routing – Overview and Demo– Algorithm

• Analysis

• Future Work

Page 15: Mutation Routing

Mutation Routing 15

Mutation Routing

• Follow destinations

7

1

6

1112

3

4

8

9

1415

1310

5

2

9

14

9

1

5

2

11

10

5

X

Page 16: Mutation Routing

Mutation Routing 16

Mutation Routing

• Follow destinations• Follow sources

7

1

6

1112

3

4

8

9

14

1310

5

2

9

1514

9

1

5

2

7

8

9

X

15

Page 17: Mutation Routing

Mutation Routing 17

Mutation Routing

• Follow destinations• Follow sources• Cut corners

7

1

6

1112

3

4

8

9

14

1310

5

2

9

1514

9

1

5

2

7

8

9XX

Page 18: Mutation Routing

Mutation Routing 18

Mutation Routing

• Follow destinations• Follow sources• Cut corners• Cut loops

7

1

6

1112

3

4

8

9

1415

1310

5

2

9

14

9

1

5

2 XX

XX

Page 19: Mutation Routing

Mutation Routing 19

Mutation Routing

• Follow destinations• Follow sources• Cut corners• Cut loops• Drop redundant

“baby-steps”

7

1

6

1112

3

4

8

9

1415

1310

5

2

9

14

9

1

5

2

0XX

Page 20: Mutation Routing

Mutation Routing 20

Mutation Routing

• Follow destinations• Follow sources• Cut corners• Cut loops• Drop redundant

“baby-steps”• Replace dead nodes

7

1

6

1112

3

4

8

9

1415

1310

5

2

9

14

9

1

5

2

XXX

Page 21: Mutation Routing

Mutation Routing 21

Mutation Routing

• Follow destinations• Follow sources• Cut corners• Cut loops• Drop redundant

“baby-steps”• Replace dead nodes• New nodes join route to shorten it

7

1

6

1112

3

4

8

9

1415

1310

5

2

9

14

9

1

5

2

0

XX

X

Page 22: Mutation Routing

Mutation Routing 22

Mutation Routing

• 7 behaviors

• 2 simple protocols– Pruning– Recruiting

Page 23: Mutation Routing

Mutation Routing 23

Lawnmower Effect

Page 24: Mutation Routing

Mutation Routing 24

Outline

• The problem: mobile to mobile routing

• Previous approaches

• Mutation Routing – Overview and Demo– Algorithm (the 2 protocols)

• Analysis

• Future Work

Page 25: Mutation Routing

Mutation Routing 25

Preface• Router defined as node with both a child

and parent (strong definition)• Special Cases:

– Source: child=self– Destination: parent=broadcast address

• All messages have 3 extra fields ( 5 bytes)– ID– Child ID– Cost = child->cost + 1

80 03 40 02 01 00 00 00 22 02 33 02 33 02 17 00 56

1 2 3

Page 26: Mutation Routing

Mutation Routing 26

Protocol 1: Pruning

Page 27: Mutation Routing

Mutation Routing 27

Protocol 1: Pruning• When two nodes a and b hear each other and

cost(A)-cost(B) > 1, shortcut!– Ie: parent(B) := a

• To ensure symmetric links, protocol:– B sends message as normal– A overhears B’s message, becomes a SHORTCUT

by setting child field to B– B overhears A’s message, takes the shortcut by

setting parent to A– Next time B sends, will go to A, who will forward– If A does not get next message from B, (i.e. B did not

take the shortcut) A sets child back to old child (asymmetric link)

• Notice that shortcutting takes no extra messages

Page 28: Mutation Routing

Mutation Routing 28

Protocol 2: Recruiting

Page 29: Mutation Routing

Mutation Routing 29

Protocol 2: Recruiting

• When a node wants to join the route, first becomes a RECRUIT:=node trying to acquire a parent

• To ensure symmetric links, protocol:– Recruit sets parent to any likely candidate, sets cost to minimum

cost it would like to be, and child to self– Sends message to parent– If parent (or any other node) becomes a shortcut (i.e. sets child

to recruit’s ID), recruit also becomes shortcut and sets child to node it wants to have as child

• Note that recruiting does require an extra message, but will never be used unless that message is necessary anyway

Page 30: Mutation Routing

Mutation Routing 30

Recruitment Routing

• Mobile Destinations - pruning

• Mobile Sources - recruiting

• Cut corners - pruning

• Cut loops - pruning

• Drop “baby steps”- pruning

• Replace dead nodes – both

• New nodes join route to shorten it – both

Page 31: Mutation Routing

Mutation Routing 31

Outline

• The problem: mobile to mobile routing

• Previous approaches

• Recruitment Routing – Overview and Demo– Algorithm

• Analysis

• Future Work

Page 32: Mutation Routing

Mutation Routing 32

Analysis

• Properties:– Robust to asymmetric links– Robust to lossy links– Guarantee of consistent route

• Performance– Message cost– State cost

Page 33: Mutation Routing

Mutation Routing 33

Asymmetric Links

• Recruitment Routing is robust to asymmetric links

• Proof:– Discovery finds only symmetric links– Shortcutting preserves symmetric links– Recruiting preserves symmetric links– By induction…

Page 34: Mutation Routing

Mutation Routing 34

Lossy Links• Shortcutting:

– Since A and B are on the same route, they both know when the other should be sending.

– This allows silent link-quality estimation (at the cost of quick shortcuts)

– State can be maintained (because this is a static network) to expediate future shortcuts.

• Recruiting– Silent link-quality estimation is impossible– In presence of lossy links, all recruiting can be

suppressed except that supported by known bi-directional reliable links.

Page 35: Mutation Routing

Mutation Routing 35

Guarantee of Delivery

Page 36: Mutation Routing

Mutation Routing 36

Guarantee of Delivery

Page 37: Mutation Routing

Mutation Routing 37

Guarantee of Delivery

Page 38: Mutation Routing

Mutation Routing 38

Guarantee of Delivery

• All parents are on route at all times– All parents and children on initial route are on

the route, by definition– Node only change parents to nodes on the

route– If a parent leaves the route while a parent, it is

because child is not on route either, so it doesn’t matter

Page 39: Mutation Routing

Mutation Routing 39

Message Cost

• Shortcutting costs one message per routed packet

• Recruiting is done without any message cost for– Mobile-source following– Node replacement

• Recruiting costs multiple messages when non-routing nodes try to shortcut

Page 40: Mutation Routing

Mutation Routing 40

Space Cost

• Each node maintains state of each router within communication range– ID– Parent– Child– Cost

• Total of 7 bytes per neighbor/route• Should not have much more than 3

neighbors per route, i.e. 21 bytes per route

Page 41: Mutation Routing

Mutation Routing 41

Summary & Conclusion

Mutation Routing– Pruning– Recruiting

1. Near optimal bandwidth

2. Only 21 bytes of state per destination

3. Unbounded sub-optimal latency/energy

Page 42: Mutation Routing

Mutation Routing 42

Future Work

• Source Tracking

• Destination Tracking

• Local Optimizations

• Local Repairs

• Global Optimizations

• Global Repairs

Page 43: Mutation Routing

Mutation Routing 43

Routing Results

• Delivery Rate:

• # Messages

75

80

85

90

95

100

15cm/sec 100cm/sec 200cm/sec

Tree

Broadcast

0

10

20

30

40

50

60

15cm/sec 100cm/sec 200cm/sec

Tree

Broadcast