Grid: Scalable Ad Hoc Wireless Networking
570 likes | 587 Views
This article discusses the concepts and research results in scalable ad hoc wireless networking, including geographic forwarding, Grid location service, capacity of ad hoc networks, and testbed implementations.
Grid: Scalable Ad Hoc Wireless Networking
E N D
Presentation Transcript
Grid: Scalable Ad Hoc Wireless Networking Douglas De Couto http://pdos.lcs.mit.edu/grid
What is “Ad Hoc”? • 802.11 “Ad hoc mode” • Single-hop communications • Bluetooth: master/slave • All communication goes through master device • We will mean multihop wireless networks without infrastructure, possibly mobile.
Talk Outline • Motivation • Research Results • Geographic forwarding • Grid location service (GLS) • Capacity of ad hoc networks • 802.11 performance • Testbed Implementations • In-building net • Rooftop net
Access Point Application: Smart Devices Remote Control Print Share E-Mail Internet
Application: Rooftop Nets School/Homework Server Internet Access Game server
Application: Community Nets • Cheap • Incremental • Automatic
Application: Disaster Services • Disaster may have damaged phone system etc. • Want to avoid N2 plans for N services to communicate
A F D B E C G J I H Goal: Networks out of chaos
A F D B E C G J I H Direct Contact Scales Badly “Hello J!”
A F D B E C G J I H Solution: Multi-hop Forwarding “A to J: Hello!”
Design Challenges • Finding routes • Cope with mobile nodes • Conserving battery power • Coping with malicious/faulty nodes • Scaling to large networks
Completed Research • Scalable routing: • Geographic forwarding • Distributed P2P location database • Low-power forwarding • Understanding capacity limits • Avoiding malicious nodes • Current research: 802.11 link selection
Geographic forwarding (GF) N3’s radio range N1 N4 N5 N3 N6 N2 N7 • Packets addressed to id, location • Next hop is chosen from neighbors to move packet geographically closer to destination location • Per-node routing overhead constant as network size (nodes, area) grows • Requires location service, which adds overhead
Grid Location Service (GLS) overview E H L B D J G A “D?” I F K C 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.
GLS’s Spatial Hierarchy level-0 level-1 level-2 level-3 All nodes agree on the global origin of the grid hierarchy
sibling level-0 squares s n s s s s sibling level-1 squares s s sibling level-2 squares s s 3 servers per node per level Node updates servers with GLS protocol
location query path Queries search for destination’s servers s n s s s s Queries search with same protocol as updates. Guaranteed to find closest location server. s s s1 x s2 s s3
GF + GLS performs well Grid DSR Number of nodes Biggest network simulated: 600 nodes, 2900x2900m (4-level grid hierarchy) Fraction of data packets delivered successfully • Geographic forwarding is less fragile than source routing. • DSR queries use too much b/w with > 300 nodes.
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
Enlarge network by adding nodes, area Constant density Ideally, there is more “packet-hop” capacity, due to spatial reuse of spectrum But: more nodes producing traffic to be forwarded across network 802.11 Capacity
Per-node capacity depends on traffic patterns • “Random” traffic patterns won’t scale • Per-node capacity decreases like O(1/sqrt(n)) • “Local” traffic patterns scale, capacity remains constant if number of hops follows a power law distribution (e.g. GLS) • More details: Li et al., Mobicom 2001
Implementation and Testbeds • Software distributions for • Linux, BSD • PC, iPAQ • Works with unmodified Internet software • Two Grid nets deployed
LCS Grid Net 5 5 6 5 6 5 5 5 6 5 6 6 5 6 5 5 5 • 17 static nodes on 5th/6th floors • A dozen iPaq hand-helds wired gateway
Roof-Top Grid Net 6 5 4 3 2 1 LCS
Distance Vector Protocol *Nodes periodically broadcast route tables *Nodes choose route with fewest hops E D C F B’s nbrs: A, 1 hop (nh: A) C, 1 hop (nh: C) D, 2 hops (nh: C) … B A C, 1 hop (nh: C) A’s nbrs: B, 1 hop (nh: B) C, 2 hops (nh: B) D, 3 hops (nh: B) … C, 2 hops (nh: B)
Implementation • Click modular software router (userlevel) • Portable: userlevel or kernel • Rich APIs, e.g. Vector, HashMap, etc. • Any 802.11 card with std. “ad hoc mode” • Aironet 340/350 cards on Linux/BSD • Lucent-based cards on Linux • Best performance with driver support for signal statistics (minor patches)
Grid Protocol • All packets have Grid header • Own Ethernet type code (not IP packets) • Transmitter information: ID, location • Control packets • Route advertisements (broadcasts) • Location queries and replies • Data packets • Encapsulated IP • Link information is included
Packet Handling Grid routing process Route table Control packets (broadcast) Encapsulated data packets demux Route lookup Applications Add/remove encapsulation Grid packets (via pcap) IP packets (via tun/tap) Userlevel Kernel IP Stack eth0
Packet Handling: Control Grid routing process Route table Control packets (broadcast) Encapsulated data packets demux Route lookup Applications Add/remove encapsulation Grid packets (via pcap) IP packets (via tun/tap) Userlevel Kernel IP Stack eth0
Packet Handling: Data Grid routing process Route table Control packets (broadcast) Encapsulated data packets demux Route lookup Applications Add/remove encapsulation Grid packets (via pcap) IP packets (via tun/tap) Userlevel Kernel IP Stack eth0
A F D B E C G J I H Does Grid Find Useful Paths?
A F D B E C G J I H Mistake: Shortest-Path Routes A’s max range
Obstacles to Better Routing • Use low-loss paths, but… • Loss rate masked by 802.11 re-sends • Changes quickly with time, motion • What’s the best metric to minimize? • Expected total packet transmissions • Fight strong bias towards shortest paths
How to choose links? • Signal strength?
Should we use “quality”? Aironet “quality”
Current Approach: Measure loss rates • Receiver measures loss rate of sender • Receiver ping-pongs loss rate to sender • Meaured with broadcast • But: each node broadcasts every ~1.3s • What period to measure over? • How to smooth? • Trying exponentially time-weighted avg.
Installing Grid • ipkg install grid • Follow prompts, be sure to set IPADDR • Is it working?
Grid Summary • Grid routing protocols are • Self-configuring • Easy to deploy • Scalable Software etc. at: http://www.pdos.lcs.mit.edu/grid
References • GLS: Li et al., “A Scalable Location Service for Geographic Ad Hoc Routing”. Proc. ACM MobiCom, August 2000. pp. 120--130 • Capacity: Li et al., “Capacity of Ad Hoc Wireless Networks”. Proc. ACM MobiCom, July 2001. pp. 61--69 • Link quality: De Couto et al., “Effects of Loss Rate on Ad Hoc Wireless Routing”. MIT LCS TR #836
Access Point Application: Smart Devices Remote Control Print Share E-Mail Internet
Application: Rooftop Nets School/Homework Server Internet Access Game server
Application: Disaster Services • Disaster may have damaged phone system &c • Want to avoid N2 plans for N services to communicate
A F D B E C G J I H Direct Contact Scales Badly “Hello J!”
Design Challenges • Cope with mobile nodes • Finding routes • Conserving battery power • Coping with malicious/faulty nodes • Scaling to large networks
A B C D F G Topology Distribution Scales Badly 1. “C can reach A and B.” 3. Data from F to B. 2. “D can reach A, B, and C.”
A F D B E C G Geographic Forwarding Scales Well “Send towards latG / lonG.” Latitude Longitude