wireless embedded systems (0120442x) routing
DESCRIPTION
Wireless Embedded Systems (0120442x) Routing. Chaiporn Jaikaeo [email protected] Department of Computer Engineering Kasetsart University. Materials taken from lecture slides by Karl and Willig. Overview. Unicast routing in MANETs Energy efficiency & unicast routing - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/1.jpg)
Network Kernel Architectures
and Implementation(01204423)
Routing
Chaiporn [email protected]
Department of Computer EngineeringKasetsart University
Materials taken from lecture slides by Karl and Willig
![Page 2: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/2.jpg)
2
Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical routing
![Page 3: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/3.jpg)
3
Unicast, ID-Centric Routing Given: a network/a graph
Each node has a unique identifier (ID) Goal: Send a packet from one node
to another The routing & forwarding problem Routing: Construct a table telling how
can reach a given destination Forwarding: Consult this table to
forward a given packet to its next hop Challenges
![Page 4: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/4.jpg)
4
Challenges in WSNs/MANETs Nodes may move around,
neighborhood relations change
Optimization metrics may be more complicated Not just “smallest hop count”
A
BC
![Page 5: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/5.jpg)
5
Ad hoc Routing Protocols Because of challenges, standard
routing approaches not really applicable Too big an overhead, too slow in
reacting to changes Examples: Dijkstra, Bellman-Ford
Simple solution: Flooding No routing table needed Packets are usually delivered to
destination But: overhead is prohibitive Usually not acceptable in most cases
![Page 6: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/6.jpg)
6
Gossiping Needs no routing table
Similar to flooding Nodes forward packets with some
probability Haas et al. studies gossiping
behavior and found that There is a critical probability, x p < x: gossip dies out very quickly p > x: gossip reaches most nodes
![Page 7: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/7.jpg)
7
Routing Protocol Classification Main question: When does the
routing protocol operate? Option 1: Always tries to keep
routing data up-to-date Protocol is proactive / table-driven
Option 2: Route is only determined when actually needed Protocol operates on demand
Option 3: Combine these behaviors Hybrid protocols
![Page 8: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/8.jpg)
8
Routing Protocol Classification Which data is used to identify nodes?
An arbitrary identifier? The position of a node?
Can be used to assist in geographic routing protocols
Identifiers that are not arbitrary, but carry some structure? As in traditional routing Structure akin to position, on a logical
level?
![Page 9: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/9.jpg)
9
Proactive Protocols – Example Fisheye State Routing (FSR)
Basic observation: When destination is far away, details about path are not relevant
Look at the graph as if through a fisheye lens
Regions of different accuracy of routing information
LS information about closer nodes is exchanged more frequently
![Page 10: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/10.jpg)
10
Reactive Protocols – Example Recall reactive routing protocols
Initially, no information about next hop is available at all
One possibility: Send packet to everyone
Hope: At some point, packet will reach destination and an answer is sent pack – use this answer for backward learning the route from destination to source
Examples Ad hoc On-demand Distance Vector
(AODV) Dynamic Source Routing (DSR)
![Page 11: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/11.jpg)
11
DSR Dynamic Source Routing protocol Use separate route request/route
reply packets to discover route Data packets only sent once route has
been established Discovery packets smaller than data
packets Store routing information in the
discovery packets
![Page 12: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/12.jpg)
12
DSR Route Discovery Search for route from 1 to 5
17
6
5
34
2[1]
[1] 17
6
5
34
2[1,7]
[1,7]
[1,4][1,7]
17
6
5
34
2[1,7,2]
[1,4,6]
[1,7,2]
[1,7,3]
17
6
5
34
2
Node 5 uses route information recorded in RREQ to send back, via source routing, a route reply
[5,3,7,1]
![Page 13: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/13.jpg)
13
AODV Ad hoc On-demand Distance Vector Very popular routing protocol Same basic idea as DSR for
discovery procedure Nodes maintain routing tables
instead of source routing
![Page 14: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/14.jpg)
14
Alternative - Rumor Routing Think of an “agent” wandering
through the network, looking for data/events
?
Agent initially perform random walk
Leave “traces” in the network
Later agents can use these traces to find data
![Page 15: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/15.jpg)
15
Overview Unicast routing in MANETs Energy efficiency & unicast
routing Multi-/broadcast routing Geographical routing
![Page 16: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/16.jpg)
16
Energy-Efficient Unicast: Goals
C1
4A
2G
3D
4H
4F
2E
2B
1
1
1
2
2
22
2
3
3
Minimize energy/bit Eg., A-B-E-H
Maximize network "lifetime" Time until first
node failure loss of coverage partitioning Example: Send data from node A to node H
![Page 17: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/17.jpg)
17
Basic options for path metrics Max total
available battery capacity Sum of batt.
levels without needless detours
Example: A-C-F-H Min battery cost
Sum of reciprocal battery levels
Example: A-D-H Min-Max batt.
cost Largest
reciprocal level of all nodes in path
Minimize variance in power levels
C1
4A
2G
3D
4H
4F
2E
2B
1
1
1
2
2
22
2
3
3
![Page 18: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/18.jpg)
18
Overview Unicast routing in MANETs Energy efficiency & unicast routing Multicast/broadcast routing Geographical routing
![Page 19: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/19.jpg)
19
Broadcast & Multicast Distribute a packet to all reachable
nodes (broadcast) or to a subgroup (multicast)
Basic options Source-based tree: one tree per source
Minimize total cost Minimize maximum cost to each destination
Shared, core-based trees Mesh
Provides redundancy in data transfer
![Page 20: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/20.jpg)
20
Goals for Source-Based Trees For each source,
minimize total cost The Steiner tree
problem For each source,
minimize maximum cost to each destination Obtained by
overlapping the individual shortest paths
Steiner tree
Src
Dest 1
Dest 2
2
2
1
Src
Dest 1
Dest 2
2
2
1
Shortest-path tree
![Page 21: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/21.jpg)
21
Broadcast/Multicast Classification
Broadcast Multicast
MeshShared tree(core-based tree)
Single core
Multiple core
One treeper source
Minimizetotal cost
(Steiner tree)
Minimizecost to each node
(e.g., Dijkstra)
![Page 22: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/22.jpg)
22
Wireless Multicast Advantage Wires
Locally distributing a packet to n neighbors n times the cost of a unicast packet
Wireless: sending to n neighbors can incur costs
= tx to a single neighbor – if receive costs are ignored = One tx, n rx – if receives are correctly tuned= send n unicasts – if multicast not supported by MAC
If local multicast is cheaper, then wireless multicast advantage is present Can be assumed realistically
![Page 23: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/23.jpg)
23
Steiner Tree Approximations Computing Steiner tree is NP
complete A simple approximation
Pick some arbitrary order of all destination nodes + source node
Successively add these nodes to the tree For every next node, construct a shortest
path to some other node already on the tree
Performs reasonably well in practice
![Page 24: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/24.jpg)
24
Steiner Tree Approximations Takahashi Matsuyama heuristic
Similar, but let algorithm decide which is the next node to be added
Start with source node, add that destination node to the tree which has shortest path
Iterate, picking that destination node which has the shortest path to some node already on the tree
Problem: Wireless multicast advantage not exploited! And does not really fit to the Steiner
tree formulation
![Page 25: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/25.jpg)
25
Broadcast Incremental Power Or BIP Exploits multicast wireless
advantage Goal: use as little transmission power
as possible Based on Prim's MST algorithm Once a node transmits and reaches
some neighbors, it becomes cheaper to reach additional neighbors
![Page 26: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/26.jpg)
26
BIP – Example
S (3)
A
B
C (1)D
2 3
67
Round 4:
S (5)
A
B
C (1)D
3
710
Round 5:
S
A
B
CD
1
5 3
73
1
10
Round 1:
S (1)
A
B
CD
4 3
72
1
9
Round 2:
S (3)
A
B
CD
2 3
7
1
7
Round 3:
![Page 27: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/27.jpg)
27
Multicast Incremental Power Or MIP Start with broadcast tree
construction, then prune unnecessary edges out of the tree
S
A
B
CD
3
710
S
A
B
CD
3
710
![Page 28: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/28.jpg)
28
Mesh-Based Multicast Example – ODMRP (On-Demand
Multicast Routing Protocol)
F
A
B
ED
G
H
I
SenderNextHop
H C
SenderNextHop
H D
SenderNextHop
H HC
![Page 29: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/29.jpg)
29
Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical routing
Position-based routing Geocasting
![Page 30: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/30.jpg)
30
Geographic Routing Implicitly infer routing information from
physical placement of nodes E.g., position of current node, current
neighbors, destination known Send to a neighbor in the right direction as
next hop Geographic routing
Position-based routing Use position information to aid in routing
Geocasting Send to any node in a given area
![Page 31: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/31.jpg)
31
Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical routing
Position-based routing Geocasting
![Page 32: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/32.jpg)
32
Position-Based Routing “Most forward within range r” strategy
Send to that neighbor that realizes the most forward progress towards destination
Nearest node with forward progress Idea: Minimize transmission power
Directional routing Choose next hop that is angularly closest to
destination Choose next hop that is closest to the
connecting line to destination Problem: Might result in loops!
![Page 33: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/33.jpg)
33
Problem: Dead Ends Simple strategies might send a
packet into a dead end
![Page 34: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/34.jpg)
34
Right Hand Rule Basic idea to get out of a dead end:
Put right hand to the wall, follow the wall Does not work if on some inner wall –
will walk in circles Need some additional rules to detect
such circles
![Page 35: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/35.jpg)
35
Right Hand Rule – GPSR Greedy Perimeter Stateless
Routing Use greedy, “most forward” routing as
long as possible If no progress possible: Switch to “face”
routing Face: largest possible region of the plane
that is not cut by any edge of the graph Send packet around the face using right-
hand rule Use position where face was entered and
destination position to determine when face can be left again, switch back to greedy routing
Requires: planar graph! (topology control can ensure that)
![Page 36: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/36.jpg)
36
Face Routing Example
![Page 37: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/37.jpg)
37
GPSR – Example Route packet from node A to node Z
AZ
D
C
B
E
F
G
I
H
J
K
LEnter face
routing
Enter next face
![Page 38: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/38.jpg)
38
Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical routing
Position-based routing Geocasting
![Page 39: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/39.jpg)
39
Location-based Multicast (LBM) Geocasting by geographically
restricted flooding Define a “forwarding” zone – nodes
in this zone will forward the packet to make it reach the destination zone
Packet is always forwarded by nodes within the destination zone itself
![Page 40: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/40.jpg)
40
Determining Next Hops Use Voronoi diagram
S
A
B
C
D
DestinationZone
![Page 41: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/41.jpg)
41
Determining Next Hops Use convex hulls
S
A
B C
E
DestinationZone
D
![Page 42: Wireless Embedded Systems (0120442x) Routing](https://reader030.vdocument.in/reader030/viewer/2022032805/568132d7550346895d999bfe/html5/thumbnails/42.jpg)
42
Conclusion Routing exploit various sources of
information to find destination of a packet
Routing can make some difference for network lifetime
Non-standard routing tasks (multicasting, geocasting) require adapted protocols