270 likes | 451 Views
Network Architecture for General-purpose Sensor Networks. Omprakash Gnawali gnawali@usc.edu http://enl.usc.edu/ CSSE March 17, 2009. Sensor Network. Network of small form-factor sensors Resource constraints CPU (<10 MHz) RAM (<10 KB) Low power Embedded in the physical world
E N D
Network ArchitectureforGeneral-purpose Sensor Networks Omprakash Gnawali gnawali@usc.edu http://enl.usc.edu/ CSSE March 17, 2009
Sensor Network • Network of small form-factor sensors • Resource constraints • CPU (<10 MHz) • RAM (<10 KB) • Low power • Embedded in the physical world • Wireless communication
Building Vibrations Forced Vibration Testing at the Four Seasons Building in Los Angeles
Habitat Imaging James Reserve, Riverside, CA
Sensor Network Applications • Examples • Industrial space • Environment • Infrastructure • Hardware and Software Optimizations • Components • Scenarios
Outline • Sensor Network • Programming a Sensor Network • Tenet: A General-purpose Sensor Network
Programming a SensorNet Programming Abstraction Services
Programming Abstraction • Node-level API • “Node x: execute program y” • Reasoning and Debugging Challenging • Program the network • “Network: Collect light readings” • No fine-grained control • Network and Node Services
Collection Routing • Collect data from the network • From all the nodes • To a small number of “sinks” • Challenges • Link estimation • Dynamics • Tree Routing • CTP, MultihopLQI
Reliable Transport • Prevent data-loss • End-to-end retransmission • Used with Collection • Challenges • Limited RAM • Congestion
Congestion Collapse • Four Seasons building deployment • Some packets took more than an hour to recover while collecting 10 minutes worth of data Loss recovery latency 14
Dissemination • Delivers data to every node in a network • Challenges • Rate • “Broadcast storm” • Many uses • Reconfiguring a network • Injecting queries and tasks • Substrate for more complex protocols
Timing • Timestamps for sensor readings • Globally synchronized time • Challenges • Different clock rates on the nodes • Wireless • Approaches • Hardware: GPS • Software: FTSP
Sensing and Actuation • Sensors • Light, Temperature, Accelerometer • Actuators • LED, Relays • Portable abstraction
Data Processing Services • Raw data not always needed • Data filters • Specify (un)wanted data • Data processing • Statistics • Transforms, Coefficients
General-purpose API • Provides Services • Collection routing • Reliable transport • Dissemination • Timing • Sensing and Actuation • Data processing • Allows flexible composition of services
Outline • Sensor Network • Programming a Sensor Network • Tenet: A General-purpose Sensor Network
Tenet • Masters and Motes • Tasks and Responses • Linear data-flow programs repeat(1s)->sense(LIGHT)->send(RELIABLE)
Tenet Programs • Linear data flow language • natural choice for sensor data processing • Tasklets specify elementary actions • sense(), set_leds(), avg() • Tasklets can be composed to form a task • sense(LIGHT,10 samples)avg(LIGHT)send() • repeat(10 mins)get(ROUTING_PARENT)send() • No branches
Motes produce, process data, and return responses Executing Tenet Programs Applications run on masters, and masters task motes 24
Tenet Performance Tenet applications perform comparably with software optimized for a particular application.
Conclusion • Deployments • Software reuse • No performance penalty • Looking ahead • General-purpose radio duty-cycling