Download presentation
Presentation is loading. Please wait.
Published byYasmine Vause Modified over 9 years ago
1
Beacon Vector Routing: Scalable Point-to-Point Routing in Wireless Sensornets R. Fonseca, Berkeley; S. Ratnasamy, Intel Research; J. Zhao, ICI; C. T. Ee, D. Culler, S. Shenker, and I. Stoica, Berkeley NSDI 2005
2
The BVR Algorithm Algorithm in three distinct parts: –Greedy forwarding –Fallback Mode –Scoped Flooding
3
The BVR Algorithm Define location based on number of hops to the routing beacons Each node stores its location as a vector of hop counts. P(q) = e.g. Packets are routed based on these vectors
4
The BVR Algorithm Nodes retain the position of their neighboring nodes. A nodes neighborhood is the collection of nodes one hop away, for most nodes.
5
The BVR Algorithm The algorithm compares the difference between the packet’s destination and the current node’s neighbors. Main Rule: Minimize the sum of the differences for the beacons that are closer to the destination d than to the current routing node p Ties in the Above are broken by this rule: Minimize the sum of the distances to the farther beacons Distance function
6
BVR Algorithm
7
Algorithm in operation
8
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
9
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 1: - only one decision
10
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
11
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 2: 1: = 8 3: = 4 Choose node 3
12
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
13
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 3: 2: = 6 4: = 5 7: = 4 Choose node 7
14
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
15
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 4: 3: = 4 5: = 2 8: = 2 -> tie!
16
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 4: 3: = 4 5: = 2 8: = 2 -> tie! Reverse metrics: 5: = 3 8: = 5 Choose 5
17
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
18
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 5: 4: = 5 6: = 3 7: = 4 Choose node 6
19
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
20
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 6: 5: = 2 15: = 2 -> tie!
21
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 6: 5: = 2 15: = 2 -> tie! Reverse metrics: 5: = 3 15: = 1 Choose 15
22
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
23
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11 Hop 7: 14: = 0 Found node!
24
9 14 3 1 b1b1 b2b2 Beacon Source Destination 2 4 5 13 b3b3 7 8 12 10 6 15 11
25
BVR: Fallback Mode It is possible for greedy forwarding to fail. This happens when no neighbor would improve the minimum distance metric When this happens the protocol uses fallback mode
26
BVR: Fallback Mode Forward packet towards the beacon closest to the destination Parent goes back to forwarding normally: first with greedy forwarding and then fallback mode
27
BVR: Scoped Flooding When fallback mode fails the algorithm resorts to scoped flooding In scoped flooding the node knows the number of hops away the destination is, but not the direction Floods only the number of hops needed
28
Example: non-ideal case Example where algorithm resorts to flooding
29
b2b2 b1b1 Beacon Source Destination
30
b2b2 b1b1 Beacon Source Destination Calculate forward: = Calculate reverse: =
31
b2b2 b1b1 Beacon Source Destination Calculate forward: = Calculate reverse: = Would forward to, but not closer then where we’ve already been. Initiate scoped flooding for 3 units away. For such a small network, touches every node.
32
b2b2 b1b1 Beacon Source Destination Calculate forward: = Calculate reverse: = Would forward to, but not closer then where we’ve already been. Initiate scoped flooding for 3 units away. For such a small network, touches every node.
33
b2b2 b1b1 Beacon Source Destination Adding another beacon fixes problem b3b3 Calculate forward: =
34
b2b2 b1b1 Beacon Source Destination Adding another beacon fixes problem b3b3 Calculate forward: =
35
b2b2 b1b1 Beacon Source Destination Adding another beacon fixes problem b3b3 Calculate forward: =
36
b2b2 b1b1 Beacon Source Destination Adding another beacon fixes problem b3b3 Calculate forward: =
37
b2b2 b1b1 Beacon Source Destination Adding another beacon fixes problem b3b3 Calculate forward: = Tie! Calculate reverse: = -> forward to destination
38
Location Directory How does the sender get the coordinates of the destination? Like a DNS service. –Submits node ID –Responds with location Hash function correlates nodes with certain beacons Beacons must store all the state data of the nodes associated with it
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.