280 likes | 555 Vues
The Tenet Architecture for Tiered Sensor Networks. O. Gnawali, B. Greenstein, K-Y. Jang, A. Joki, J. Paek, M. Viera, D. Estrin, R. Govindan, E. Kohler USC, UCLA SenSys 2006. The Tenet Two-Tier Architecture. Motes and Masters Multi-node data fusion done on masters
E N D
The Tenet Architecture for Tiered Sensor Networks O. Gnawali, B. Greenstein, K-Y. Jang, A. Joki, J. Paek, M. Viera, D. Estrin, R. Govindan, E. Kohler USC, UCLASenSys 2006
The Tenet Two-Tier Architecture • Motes and Masters • Multi-node data fusion done on masters • Masters program motes using tasks
Example Task • Notify application when temperature > 50F • A task contains an arbitrary number of tasklets linked together.
Efficiency Costs • Opportunity cost of multi-mote data fusion • Motes can still fuse locally-generated data • Sensor data have high temporal but low spatial redundancy • More data routed to the masters • A well-designed WSN will have a small diameter • Higher congestion • Application parameters can be tuned, e.g., only high-confidence pursuers report to masters
Five Design Principles • Asymmetric Task Communication • Master send mote tasks, mote send master reply, mote cannot initiate tasks (no inter-mote communication) • Addressability • Masters can talk to each other, any master can talk to any mote, a mote can reply to its tasking master • Task Library • Each task is a subset of a mote’s generic functionality • Robustness • Resilience to extensive network failures • Manageability • Tools must offer useful insight into network failures
Tenet Task and Task Library • Focus on simplicity rather than expressiveness • A task is composed of tasklets, which are parameterized services • Linear composition • Tasklets maximize flexibility while remaining simple • Each task has a unique ID, a list of tasklets, and their parameters • Task library composed at compile-time due to TinyOS
Tasklets • Can be composed into a wide range of tasks
Task Data Structure • Tasks are dynamically allocated • Active Containers hold task data • Cloned when a tasklet repeats Attributes are 3-tuples: <tag, length, value>
The Mote Runtime • Task-aware queues used by services (e.g., wait) • Tenet scheduler operates at tasklet-level granularity • Allows multiple tasks to execute concurrently
Three Task Operations • Installation • Receive a task with a new ID • Modification • Receive a task with an existing ID and a body • Deletion • Receive a task with an existing ID and no body • All active containers associated with a task are destroyed
Example Tasks • Blink • CntToLedsAndRfm • Ping and MeasureHeap • SenseToRfm
Data Fusion Example • Take 10 samples, timestamp it • classify as interesting if 3 or more samples > 45 • calculates the deviation from the running mean • displays the sample on the LEDs • sends the statistic, timestamp, and sample if interesting
Network Subsystem Requirements • Must support different applications on tiered networks • Routing must be robust and scalable • Master-to-mote • Mote-to-master • Small memory footprint • Tasks must be reliably disseminated from any master to all motes • Results must be delivered with end-to-end reliability
Addressing and Routing • Every mote and master has a globally unique 16-bit address • Motes use TinyOS address • Masters use last 16-bits of IP address • Master-to-master: IP routing • Mote-to-master: tiered routing • First route to nearest master, then to destination master • Use standard WSN tree-routing protocol like MintRoute
Tiered Task Dissemination • Reliably floods tasks to all motes • Partial network re-tasking achieved using a predicate tasklet • Implemented in a generic packet flooding protocol called TRD • Reliably floods packets to all nodes (both motes and masters) • Based on beaconing
Reliable Transport • Transmits responses from motes to masters • Three types • Best effort • Reliable transactional • Stream transport for high data rate applications • All use hop-by-hop retransmissions • The reliable protocols use a simplified version of TCP
Evalution: Concurrency • How many tasks can a tmote support at once?
Execution Time • Most CPU-intensive tasklet, GatherStatistics, can process 1200 samples in 14.8ms • CPU-bound max sampling rate is 81,000 samples per second
Application: PEG • PEG = Pursuit-Evasion Game • One or more pursuers collaborate to corral one or more evaders • Use WSN to help pursuers detect non-line-of-sight evaders • Native implementation uses a leader • Multiple nodes sense the evader, leader fuses the data • Stress tests Tenet (no mote-level fusion) • Tenet implementation adjusts the detection threshold
PEG Experimental Setup • 56 tmotes, 6 stargates • Simplifications • Evader detected using RSSI • Radio transmit power limited to achieve multihop • 9-hop diameter • One evader, one stationary pursuer on central master
PEG Evaluation • Tenet has higher accuracy but higher latency • Tenet has lower message overhead
Vibration Monitoring Case Study • Tenet used to implement Wisden • DetectOnSet reduces network traffic • Tenet simplifies programming
Manageability • The following task can be used to capture the routing trees: • This can be used to evaluate the task dissemination latency:
Robustness • Failure of a master forces routing algorithm to adjust
Future Work • Near term • Actuation • Mote-tier storage • Bounded-latency communication • Long term • Impact of disconnection due to mobility • Authenticity • Data Integrity • Multi-user control and resource management
Conclusion • Tenet simplifies programming while not significantly increasing overhead
Application • Pursuit-Evasion • Pursuer mobile robots chase after evader robots with the help of a sensor network • Traditional implementation employs mote-tier data aggregation to reduce redundant evader reports