Wireless Embedded Systems (0120442x) Routing

Post on 02-Jan-2016

28 views 1 download

description

Wireless Embedded Systems (0120442x) Routing. Chaiporn Jaikaeo chaiporn.j@ku.ac.th 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

Network Kernel Architectures

and Implementation(01204423)

Routing

Chaiporn Jaikaeochaiporn.j@ku.ac.th

Department of Computer EngineeringKasetsart University

Materials taken from lecture slides by Karl and Willig

2

Overview Unicast routing in MANETs Energy efficiency & unicast routing Multi-/broadcast routing Geographical 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

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

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

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

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

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?

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

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)

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

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]

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

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

15

Overview Unicast routing in MANETs Energy efficiency & unicast

routing Multi-/broadcast routing Geographical 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

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

18

Overview Unicast routing in MANETs Energy efficiency & unicast routing Multicast/broadcast routing Geographical 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

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

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)

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

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

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

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

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:

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

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

29

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

Position-based routing Geocasting

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

31

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

Position-based routing Geocasting

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!

33

Problem: Dead Ends Simple strategies might send a

packet into a dead end

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

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)

36

Face Routing Example

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

38

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

Position-based routing Geocasting

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

40

Determining Next Hops Use Voronoi diagram

S

A

B

C

D

DestinationZone

41

Determining Next Hops Use convex hulls

S

A

B C

E

DestinationZone

D

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