230 likes | 386 Views
NASA Ad Hoc Networking Demonstration. Dave Johnson Computer Science Department Rice University 30 September 2003. Wireless LAN. Wireless Cellular. Traditional Wireless Networks. Many forms, but all have similar architecture: Wireless cellular networks, wireless LANs, …
E N D
NASA Ad Hoc Networking Demonstration Dave JohnsonComputer Science DepartmentRice University 30 September 2003
Wireless LAN Wireless Cellular Traditional Wireless Networks Many forms, but all have similar architecture: • Wireless cellular networks, wireless LANs, … Relies on a fixed infrastructure: • Centralized base station or access point • All users within wireless range of it • Needs planning, installation, management, …
Wireless Ad Hoc Networking May be no network infrastructure available: • Remote areas • Unplanned meetings • Emergency relief personnel quickly deployed • Military troops May not want to use the available infrastructure: • Time or cost to access and register on the service • Performance or capacity of existing service and infrastructure Dynamically extend coverage of infrastructure: • Allow users to be further away from infrastructure
Ad Hoc Network Routing • May be out of wireless transmitter range of others • Need to use other nodes as routers for forwarding • Find new routes after movement or change A B C
DSR Overview Dynamic Source Routing: • Divides routing problem into two parts: • Route Discovery: only try to find route when you don’thave one and need one • Route Maintenance: only while you’re actually using a route, try to keep working or fix it • All parts of protocol operate entirely on-demand • Ignores all topology changes not affecting you • Overhead scales automatically with movement • No overhead when stationary and found routes
Basic DSR Route Discovery To discover a route to some address: • Broadcast ROUTE REQUEST with unique request id • When receiving a ROUTE REQUEST: • If target is yourself, return the recorded routeto the initiator in a ROUTE REPLY • Else, if recently seen this id, drop the REQUEST • Otherwise, append your own address and rebroadcast the ROUTE REQUEST
Basic DSR Route Maintenance After transmitting a packet to the next hop: • Listen for link-level per-hop acknowledgement, or • Listen for that node sending packet to next hop, or • Set a bit in the packet to request explicit next-hop acknowledgement When a problem with forwarding is detected: • Send a ROUTE ERROR to original sender • Sender removes the broken link from its cache
Ad Hoc Network Simulation Example: Compared DSR with 3 other routing protocols: • 50 nodes moving maximum 20 m/s • Route lengths: average 3 hops, max 8 Fraction of data packetssuccessfully delivered Number of routing overheadpackets sent
NASA Demo Overview A six-node ad hoc network: • Two mobile Koala robots: • FreeBSD 5.1 DSR implementation • Microsoft Windows NetMeetingvideo with Logitech QuickCamUSB cameras • Four stationary nodes: • FreeBSD 5.1 DSR implementation • Automatically used as part of routes as needed formobile communication • Each robot sends continuous video back to stationary endpoint node to display on screen in control room • Robots are remotely driven by user controls on this stationary endpoint node
Control Room Demo Area Map Duncan Hall third floor:
Control Room Demo Area Map Duncan Hall third floor:
DSR Implementation Overview A new DSR implementation: • Runs almost entirely in a single user-level process • Only very small tap inserted in kernel IP input and output • DSR code is shared with ns simulator DSR source code: • DSR is the identical code used in ns simulator • Just a few #ifdef’s due to different interface to link level • Advantages of the new implementation: • Runs on up-to-date versions of FreeBSD • Designed to be very portable to other Unix-like systems(NetBSD, OpenBSD, Linux, Mac OS X), and even Windows • Only need to implement protocol once, share with simulation • Can test real system in simulation • Can validate simulation in real experiments
Remote Robot Driving Interface • Can control by the mouse (FORWARD, BACKWARD, LEFT, RIGHT, STOP) • Can control by cursor keys (space bar for stop)
Challenges: FreeBSD Video FreeBSD doesn’t support video as well as we expected: • FreeBSD supports more desktop video hardware than laptop • FreeBSD’s USB support also could be better • The routing protocol and the network can carry the video,but we had to find a way to interface the camera • Solution: Two laptops on each robot: • One running FreeBSD for the routing software • One running Windows for the video • Plugged together with a cross-over Ethernet cable • Also demonstrates DSR protocol features: • Compatible with standard IP applications (running unmodified Windows and unmodified NetMeeting) • Can route to/from nodes behind DSR “gateway” into thead hoc network
Challenges: Weight and Robots • The Koala robots can only carry limited weight: • K-Team specification says 3 kg (6.6 lbs) • Our weight problem was made worse by the video solution: • The two laptops alone weigh about 6.5 lbs • K-Team said extra weight can’t break the robots: • It monitors current draw from motor, shuts down before overload • We have had problems with this, but the robots generally tolerate the load • Could be solved better by running everything on a single laptop, or by using ultra-lightweight laptops • We also had one robot die during development: • The wheel motor doesn’t turn on its right side
Thanks! My students: • Santashil PalChaudhuri • Amit Saha • Shu Du • Khoa To • Jorjeta Jetcheva • Yih-Chun Hu (now graduated) Rice CS administrative support: • Darnell Price • Rhonda Guajardo Funding: • NASA, NSF, Schlumberger