Wireless Embedded Systems (0120442x) Routing

42
Network Kernel Architectures and Implementation (01204423) Routing Chaiporn Jaikaeo [email protected] Department of Computer Engineering Kasetsart University Materials taken from lecture slides by Karl and Willig

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 Presentation

Transcript of Wireless Embedded Systems (0120442x) Routing

Page 1: Wireless Embedded Systems (0120442x) Routing

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

2

Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical routing

Page 3: Wireless Embedded Systems (0120442x) Routing

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

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

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

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

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

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

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

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

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

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

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

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

15

Overview Unicast routing in MANETs Energy efficiency & unicast

routing Multi-/broadcast routing Geographical routing

Page 16: Wireless Embedded Systems (0120442x) Routing

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

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

18

Overview Unicast routing in MANETs Energy efficiency & unicast routing Multicast/broadcast routing Geographical routing

Page 19: Wireless Embedded Systems (0120442x) Routing

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

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

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

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

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

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

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

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

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

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

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

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

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

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

33

Problem: Dead Ends Simple strategies might send a

packet into a dead end

Page 34: Wireless Embedded Systems (0120442x) Routing

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

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

36

Face Routing Example

Page 37: Wireless Embedded Systems (0120442x) Routing

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

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

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

40

Determining Next Hops Use Voronoi diagram

S

A

B

C

D

DestinationZone

Page 41: Wireless Embedded Systems (0120442x) Routing

41

Determining Next Hops Use convex hulls

S

A

B C

E

DestinationZone

D

Page 42: Wireless Embedded Systems (0120442x) Routing

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