47
Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Embed Size (px)

Citation preview

Page 1: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Scalable Location Service for Geographic Ad Hoc Routing

Acknowledgments to Robert Morris for slides

Page 2: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Ad-Hoc Nets: The Dream

Nodes forward each others’ packets.No infrastructure; easy to deploy; fault tolerant.Short hops are good for power and spectrum.Can it be made to work?

Robert

Liuba

Page 3: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Ad-Hoc Nets: The Reality

Flooding-based on-demand routing works best in small nets.

Can we route without global topology knowledge?

Number of nodes

Avg

. pa

cket

s t r

ansm

i tted

pe

r no

de p

er s

econ

d

Page 4: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Geographic Forwarding Scales Well

A

B

CD F

C’s radio range

E

G

• A addresses a packet to G’s latitude, longitude• C needs to know its immediate neighbors to forward to G• Geographic forwarding needs a location service!

• Assume each node knows its geographic location.

Page 5: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Possible Designs for a Location Service

• Flood to get a node’s location (LAR, DREAM).• excessive flooding messages

• Central static location server.• not fault tolerant• too much load on central server and nearby nodes• the server might be far away / partitioned

• Every node acts as server for a few others.• good for spreading load and tolerating failures.

Page 6: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Desirable Properties of a Distributed Location Service

• Spread load evenly over all nodes.

• Degrade gracefully as nodes fail.

• Queries for nearby nodes stay local.

• Per-node storage and communication costs grow slowly as the network size grows.

Page 7: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Grid Location Service (GLS) Overview

A

EH

G

B

D

FC

J

I K

L

Each node has a few servers that know its location.1. Node D sends location updates to its servers (B, H, K).2. Node J sends a query for D to one of D’s close servers.

“D?”

Page 8: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Grid Node Identifiers

• Each Grid node has a unique identifier.• Identifiers are numbers.• Perhaps a hash of the node’s IP address.

• Identifier X is the “successor” of Y if X is the smallest identifier greater than Y.

Page 9: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

GLS’s spatial hierarchy

level-0

level-1

level-2

level-3

All nodes agree on the global origin of the grid hierarchy

Page 10: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

3 Servers Per Node Per Level

n

s

s

s

s

s

s

s

s s

• s is n’s successor in that square. (Successor is the node with “least ID greater than” n )

sibling level-0squares

sibling level-1squares

sibling level-2squares

Page 11: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Queries Search for Destination’s Successors

Each query step: visit n’s successor at surrounding level.

n

s

s

s

s

s

s

s

s s3

xs2

s1

location query path

Page 12: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

9

11

23

6

9

112

1623

6

1726

21

525

8

1

7

29

GLS Update (level 0)

Base case:Each node in a level-0 square “knows” about all other nodes in the same square.

location table content

Invariant (for all levels):For node n in a square, n’s successor in each sibling square “knows” about n.

19

4

3

Page 13: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

GLS Update (level 1)9

11

23

6

29

112

1623

6

17

4

26

21

5

19

25

8

1

7

292

2

Invariant (for all levels):For node n in a square, n’s successor in each sibling square “knows” about n.

location table content

location update

3

Page 14: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

...

...

...

GLS Update (level 1)9

11, 2

23, 2

6

9

11

1623

6

17

4

26

21

19

25

1

3

2

...

...

...

...

...

...

......

...

8

5

29

7

...

location table content

2Invariant (for all levels):For node n in a square, n’s successor in each sibling square “knows” about n.

Page 15: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

... 1

...

...

...

GLS Update (level 2)9

23, 2

11, 2

6

9

11

1623

6

17

4

26

21

5

19

25

7

3

292

...

...

...

...

...

...

......

...

1

8

1

location table content

location update

2Invariant (for all levels):For node n in a square, n’s successor in each sibling square “knows” about n.

Page 16: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

1

...

...

...

GLS Query9

23, 2

11, 2

6

9

112

1623

6

17

4

26

21

5

19

25

7

3

292

...

...

...

...

...

...

......

...

1

8

... 1

location table content

query from 23 for 1

Page 17: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Challenges for GLS in a Mobile Network

• Slow updates risk out-of-date information.• Packets dropped because we can’t find dest.

• Aggressive updates risk congestion.• Update packets leave no bandwidth for data.

Page 18: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Performance Analysis

• How well does GLS cope with mobility?• How scalable is GLS?

Page 19: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Simulation Environment

• Simulations using ns2 with IEEE 802.11

• Random way-point mobility: 0 to 10m/s (22mph)

• Area grows with the number of nodes• Achieve spatial reuse of the spectrum

• GLS level-0 square is 250m x 250m

• 300 seconds per simulation

Page 20: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

GLS Finds Nodes in Big Mobile Networks

• Failed queries are not retransmitted in this simulation• Queries fail because of out-of-date information for destination nodes or intermediate servers

Number of nodes

quer

y su

c ces

s ra

te

Biggest network simulated:600 nodes, 2900x2900m(4-level grid hierarchy)

Page 21: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

GLS Protocol Overhead Grows Slowly

• Protocol packets include: GLS update, GLS query/reply

Number of nodes

Avg

. pa

cket

s t r

ansm

i tted

pe

r no

de p

er s

econ

d

Page 22: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Fraction of Data Packets Delivered

• Geographic forwarding is less fragile than source routing.• DSR queries use too much b/w with > 300 nodes.

Su c

cess

f ul ly

del

ive r

e d d

ata

Number of nodes

DSR

Grid

Page 23: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Grid Deployment

• Deployed 16 nodes with partial software.• 12 fixed relays.• 4 Compaq iPaq handhelds.

• Linux, 802.11 radios.

• Aiming for campus-wide deployment.

Page 24: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Grid Summary

• Grid routing protocols are• Self-configuring.• Easy to deploy.• Scalable.

http://www.pdos.lcs.mit.edu/grid

Page 25: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Rumor Routing in Sensor Networks

David Braginsky and Deborah Estrin

LECS – UCLA

Acknowledgments to Sugata Hazarika for the slides

Page 26: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Sensor Data Routing

• Several sensor based applications• Some require frequent querying• Or unsure where events occur

• Pull mechanism (google map sensors)

• Some require frequent event broadcast• Push mechanism (earthquake monitoring)

Page 27: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Issues• Query flooding

• Expensive for high query/event ratio• Allows for optimal reverse path setup• Gossiping scheme possible to reduce overhead

• Event Flooding• Expensive for low query/event ratio

• Both provide shortest delay paths• But can have high energy cost

Page 28: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Rumor Routing

• Designed for query/event ratios between query and event flooding

• Motivation• Sometimes a non-optimal route is satisfactory

• Advantages• Tunable best effort delivery• Tunable for a range of query/event ratios

• Disadvantages• Optimal parameters depend heavily on topology • Does not guarantee delivery

Page 29: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Rumor Routing

Page 30: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Basis for Algorithm

• Observation: Two lines in a bounded rectangle have a 69% chance of intersecting

• Create a set of straight line gradients from event, then send query along a random straight line from source.

• Thought: Can this bound be proved for a random walk . What is this bound if the line is not really straight?

Event

Source

Page 31: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Creating Paths

• Nodes having observed an event send out agents which leave routing info to the event as state in nodes

• Agents attempt to travel in a straight line

• If an agent crosses a path to another event, it begins to build the path to both

• Agent also optimizes paths if they find shorter ones.

Page 32: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Algorithm Basics

• All nodes maintain a neighbor list.

• Nodes also maintain a event table• When it observes event:

• event is added with distance 0.

• Agents• Packets that carry event info across network.• Aggregate events as they go.

Page 33: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Agents

Page 34: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Agent Path

• Agent tries to travel “somewhat” straight• Maintains a list of recently seen nodes.

• When it arrives at a node adds the node’s neighbors to the list.

• For the next tries to find a node not in the recently seen list.

• Avoids loops

Page 35: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Forwarding Queries

• Forwarding Rules:• If a node has seen the query before, it is sent

to a random neighbor

• If a node has a route to the event, forward to neighbor along the route

• Otherwise, forward to random neighbor using straightening algorithm

Page 36: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Simulation Results

• Assume that undelivered queries are flooded

• Wide range of parameters allow for energy saving over either of the naïve alternatives

• Optimal parameters depend on network topology, query/event distribution and frequency

• Algorithm was very sensitive to event distribution

10 Events, 4000 Nodes

0

5

10

15

20

25

30

35

40

45

50

0 10 20 30 40

Number of Queries

Number of Transmissions

(thousands)

Query Flooding

A=28, La=500, Lq=1000

A=52, La=100, Lq=2000

Event Flooding

Page 37: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Fault Tolerance

• After agents propagated paths to events, some nodes were disabled.

• Delivery probability degraded linearly up to 20% node failure, then dropped sharply

• Both random and clustered failure were simulated with similar results

Page 38: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Some Thoughts

• The effect of event distribution on the results is not clear.• The straightening algorithm used is essentially only a

random walk … can something better be done.• The tuning of parameters for different network sizes and

different node densities is not clear.• There are no clear guidelines for parameter tuning, only

simulation results in a particular environment.

Page 39: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Questions?

Page 40: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Let’s Talk about Projects

Email me descriptionDeadline: Feb 22, Thursday.

Email me descriptionDeadline: Feb 22, Thursday.

Page 41: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Groups• Brian, Ashwin, Roman: senor network on maps• Pradeep, Thilee: model based suppression • Ola, Soji, Tom: DTN• Michael, Kunal: ??• TingYu, Gary, Yuanchi: intrusion detection in SN• Ian, William: DTN gossip• Wayne, Tray: beam overlap not harmful• Deepak, Karthik, Boyeum: ??• Tong: DTN ??• Shawn, Simrat: ??

Page 42: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Thanks!

Page 43: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Can we analyze

• The inherent concept looks powerful.• Even though not presented in this way … this algorithm is just an

example of gossip routing.• There are two types of gossip, gossip of events and gossip of

queries.• With the same gossip probability = 1/number of neighbors. (change

this, would that help)• It maybe possible to find the probability of intersection of these two.• That might lead to a set of techniques for parameter estimation, or

an optimal setting.

Page 44: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Other similar algos.

• Content based pub/sub .• Both the subscription and notification meet inside the

network. • Can we borrow some ideas from wired networks

• DHT• DHTs can also be used to locate events.• Underlying routing is the problem. DHT over DSR or

AODV may not be suitable.

Page 45: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

Future Work

• Network dynamics

• Realistic environment

• Non-localized Events

• Asynchronous Events

• Self-tuning algorithm dynamics

Page 46: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

In Progress: Power-Saving Backbone

W

W

W

W

W

WS

S

S

SS

S

S

S S

S

S

S

S

S

• Most nodes “sleep,” waking every second to poll for packets.• “W” nodes stay awake to form low-delay backbone.• Works well with high node densities.• Algorithm: wake only to connect two neighbors.

S

S

Page 47: Scalable Location Service for Geographic Ad Hoc Routing Acknowledgments to Robert Morris for slides

In Progress: Geographic “Hole” Avoidance

A B

FEG

H

D

C ?

• Node C has no neighbor closer than it to H.• There’s a “hole” between C and H.

• Use right-hand rule to traverse perimeter?• Pick a random intermediate point?