6.964 pervasive computing grid: scalable ad hoc networking 1 november 2001 douglas s. j. de couto...

32
6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT Laboratory For Computer Science http://www.pdos.lcs.mit.edu/grid

Upload: gladys-morrison

Post on 19-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking

1 November 2001

Douglas S. J. De Couto

Parallel and Distributed Operating Systems Group

MIT Laboratory For Computer Science

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

Page 2: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Who are we?

• Grid project in PDOS• Professor: Robert Morris• Students:

– Douglas De Couto– Dan Aguayo– Jinyang Li– Ben Chambers– Hu Imm Lee

Page 3: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Outline

• Motivation

• “Classic” ad hoc protocol

• Geographic forwarding

• Grid location service (GLS)

• Location proxies

• The Grid network

Page 4: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

So you want to build a pervasive network?

• Assumptions– Wireless, packet-based, mobile– Bigger than just your living room (multihop)

• Today’s approach: IEEE 802.11 base stations– Site survey, measure radio performance– Channel Allocation– Inter-base-station network (wiring?)– …

Page 5: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

B1

Base-station example

B2

4

Wired network

2

13

Page 6: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Ad hoc: a better way

• “Ad hoc” means no infrastructure, no planning– Normally implies wireless, mobile, multihop

• Place devices (nodes) anywhere

• Constraint: devices should form connected network– If not, add “relay nodes”

• Costs less!

Page 7: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Ad hoc example

r

4

2

13

Page 8: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Ad hoc scenarios• Temporary, fast setup

– Emergencies– Social events

• Rooftop networks– Connect neighborhoods– No wires, trenches, etc.

• Developing communities– Ad hoc is cheaper, more incremental– Automatic protocols no technicians needed

Page 9: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Other ad hoc benefits

• Better spectrum reuse (spatial)

• Better scalability

• Possibly better power

Page 10: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Ad hoc challenges

• How do we find multihop routes?

• Is there enough network capacity?

• Does it use too much device power?– Span: Chen et al., Mobicom 2001

Page 11: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

“Classic” protocol

• Dynamic Source Routing (DSR) – Flooding route discovery finds source routes as

needed– Aggressive caching helps performance

Page 12: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Why not use DSR?

• Protocol works well with about a hundred nodes– Simulation results; vary with movement, data

traffic

• Protocols scales poorly– Propagates topology information throughout

network– Overhead grows too fast with network size,

especially with mobility

Page 13: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

DSR overhead

Number of nodes

Avg

. pa

cket

s t r

ansm

i tted

per

no

d e p

er s

e con

d

Page 14: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Geographic forwarding (GF)

• Packets addressed to id,location• Next hop is chosen from neighbors to move packet

geographically closer to destination location

• Routing overhead constant as network size (nodes, area) grows

A

B

CD F

C’s radio range

E

G

Page 15: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

A B

C DE

F

A’s nbrs:B, 1 hop (nh: B)C, 2 hops (nh: B)C, 2 hops (nh: B)

B’s nbrs:A, 1 hop (nh: A)C, 1 hop (nh: C)D, 2 hops (nh: C)

• Local protocol is 2-hop distance vector• A sends packets to F• dcf > dbf but…• ddf < dbf and• C is B’s next hop to D

D, 2 hops (nh: C)

GF With a Local Protocol

Page 16: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Geo. forwarding challenges

• How do we find destination locations?

• How do nodes find their own locations?– Location sensors not always practical

• Topology problems (“holes”)

• General ad hoc problems– Power, capacity

Page 17: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

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?”

Grid Location Service (GLS) overview

Page 18: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

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 19: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

level-0

level-1

level-2

level-3

All nodes agree on the global origin of the grid hierarchy

GLS’s Spatial Hierarchy

Page 20: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

3 servers per node per leveln

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 21: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Queries search for destination’s successors

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

n

s

s

s

s

s

s

s

s s3

xs2

s1

location query path

Page 22: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

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

Fra

cti o

n of

da t

a pa

c ket

s de

l iver

ed s

ucce

ssfu

l ly

Number of nodes

DSR

Grid

GF + GLS performs well

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

Page 23: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

GLS properties

• Spreads load evenly over all nodes• Degrades gracefully as nodes fail• Queries for nearby nodes stay local• Per-node storage and communication

costs grow slowly as the network size grows: O(log n), n nodes

• More details: Li et al, Mobicom 2000

Page 24: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Geo. forwarding challenges

• How do we find destination locations?

• How do nodes find their own locations?– Location sensors not always practical

Page 25: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Location Proxies

• Nodes that know their location can act as location proxies

• Location proxies can communicate with each other using geographic forwarding and the local routing protocol

• Nodes without location select proxies, and communicate through them using the local protocol

• Nodes advertise proxy locations as their own• Proxies not special besides knowing locations

Page 26: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Proxies Increase Delivery Rate

Page 27: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

The Grid network

• Red: 5th floor• Blue: 6th floor• > 20 “relay” nodes• About 2 to 4 hops across each floor

Page 28: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Current Grid services• IP routing, including Internet gateway

– E.g. supports traceroute

• Grid specific information– Who can my radio talk to?– Who do I have routes to?

Page 29: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Grid services “in progress”

• Location service– Where is node X?

• Geocast– Send message m to every node in region R

• Position estimation protocol– I don’t have a position sensor– Where am I?

Page 30: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Grid Applications

• What is a “Grid application”– Uses unique Grid services

• Under development: Grid chat– Regular text + voice chat– Who’s nearby? (ask Grid)– Who’s at the student center? (ask Grid)

Page 31: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Grid details

• Protocol software implemented in the Click modular router – Runs at userlevel, easy to interface to applications

– Very portable

• Nodes:– Mobile: iPaqs + 802.11 PCMCIA + Linux

– “Relay” : small PCs + 802.11 PCI cards + OpenBSD

• Global distance vector (DV), or k-hop DV + GF

Page 32: 6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT

Grid Summary

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

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

ipkg: http://www.pdos.lcs.mit.edu/~decouto/grid-feed

ipkg install grid