240 likes | 369 Views
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications. Chien-Liang Fok , Gruia-Catalin Roman, Chenyang Lu http://mobilab.wustl.edu/projects/agilla Mobile Computing Laboratory Distributed Object Computing Laboratory
E N D
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications Chien-Liang Fok, Gruia-Catalin Roman, Chenyang Lu http://mobilab.wustl.edu/projects/agilla Mobile Computing Laboratory Distributed Object Computing Laboratory Department of Computer Science and Engineering
Motivation • Software development for sensor networks is hard • Limited resources • Difficult to debug • Large & highly dynamic network • Existing software lacks flexibility • Entire network runs just one application • Cannot adapt to changes in • the environment • user requirements
Motivating Example • Three applications: 1) Environmental Monitoring, 2) Fire Detection, 3) Fire Tracking
Agilla: A Flexible Middleware for Sensor Networks • Sensor network as a shared computing resource • Flexible application deployment Env. monitoring agent Fire detection agent Fire tracking agent
Agilla’s System Architecture Node @ (2,1) Node @ (1,1) Agents Agents migrate remote access Neighbor List Tuplespace Tuplespace Neighbor List Middleware Services Middleware Services Agilla Middleware Agilla Middleware TinyOS TinyOS
PC Code Clone orMigrate Stack ConditionCodes Heap Two variants of each: 1) Strong (code + state) 2) Weak (code only) Agilla’s Computational Model
Location-Base Addressing • Nodes are addressed by location (3,3) (3,1) (3,2) (2,2) clone to (3,3) clone to (3,1) Fire Detection Agent (1,3) (1,1)
Tuple Space-Based Coordination • Content-addressable shared memory • Tuple – A set of data fields • Template – A pattern that matches particular tuples • Provides spatiotemporal decoupling “rout” “in” “in” “out” Tuplespace Tuplespace
Implementation on TinyOS 1.1.13 • Agilla 1.x is available for Mica2 and MicaZ motes • 4 agents/node • Agent Injector • Written in Java • Remote Injection via RMI • Key Challenges: • Memory: • ROM: 54.7KB of 128KB • RAM: 3.5KB of 4KB • Message loss
Agilla 1.x Test Bed • 6x9 Mica2 Mote Test Bed • Multi-hop Grid • One base station Base Station
Performance Evaluation: migration vs. remote tuple space access Migration instructions are more reliable because of hop-by-hop acknowledgements… …but remote tuplespace operations have less overhead
Agilla Instruction Execution Times Local Operations Remote Operations
Application Experiences • Fire Detection & Tracking • Presented at MURI 3-Year Review and IPSN 2005 • Efficient Network Exploration • In collaboration with UCI • Presented at MURI 3-Year Review • Intruder Detection and Tracking • Yuling Liang’s CS 521S Class Project • Cargo Tracking • In collaboration with • Robot Navigation Around Fires • In collaboration with the Media Machines Lab
Tracker sends back a heartbeat. Base station re-deploys tracker if heartbeat goes away. Intruder Detection and Tracking Base Station
Cargo Tracking • 7 million containers arrive annually into the US • Impossible to check every container • Existing container security devices are limited: • Requires line-of-sight with satellite • Low-bandwidth (six 9B msgs/day) • $500/device, $34.95/mo
Internet AgiTrack: Cargo Tracking using Agilla • Find Cargo • Load Manifest • Find Intrusions base station base station • Manifest • Security Flags
base station base station Dynamic Context Discovery & Multi-Hop Network Formation Dock PDA Ship
Agilla 2.0 • Supports multiple base stations • Allows nodes to move (physical mobility) • Integrates wireless sensor networks with IP networks Limone agent encapsulatesAgilla agent Limone Tuple Space Agilla Tuple Space Limone Network(IP) Agilla Network Agilla Network Limone Service Registry
Robot Navigation • Mobile agents guide robot safely around the fires
Robot Navigation Videos Without sensor network data With sensor network data http://www.cse.wustl.edu/~bayazit/index.php?page=sensornet
System Challenges • Multi-Hop Routing • No geographic routing implementation available for Mica 2 • Not enough memory on Mica2 motes for Agilla & Mint • Indoor localization • Cricket motes use a different radio packet and don’t have enough memory to run Agilla • Use Cricket & Mica 2 platforms • Outdoor localization • Least Squares Scaling (LSS) • UIUC
Conclusions • Mobile agent middleware simplifies application deployment & increases network flexibility • Empirical results show that deploying sensor network applications via mobile agents is reliable and efficient • There are many applications for mobile agents in wireless sensor networks • Fire detection • Intruder detection • Cargo tracking • Robot navigation
Thank you! • Agilla URL:http://mobilab.wustl.edu/projects/agilla • Source Code • Documentation • Tutorials • Experience Reports