250 likes | 422 Views
Internet system technology. Active Sensor Networks(Mate) (Published by Philip Levis, David Gay, and David Culler in NSDI 2005). 11/11/09 Internet System technology Kim Young-Sun, Choi Sun-Tae. Table of Content. Internet system technology. Introduction Background Design Evaluation
E N D
Internet system technology Active Sensor Networks(Mate) (Published by Philip Levis, David Gay, and David Culler in NSDI 2005) 11/11/09 Internet System technology Kim Young-Sun, Choi Sun-Tae
Table of Content Internet system technology • Introduction • Background • Design • Evaluation • Pros and Cons
Introduction Internet system technology • Wireless sensor networks have limited resources and • tight energy budgets. • These constraints make in-network processing a prerequisite for scalable and long-lived applications. • as sensor networks are embedded in uncontrolled environments, a user often does not know exactly what the sensor data will look like, and so must be able to reprogram sensor network nodes after deployment. • ※ This paper propose using application specific virtual machines • (ASVMs) to reprogram deployed wireless sensor networks
Background(Requirement) Internet system technology • Requirement extraction from Maté v1.0 • Flexibility : Maté VM : Very concise programs, but is designed for a single application domain. To provide support for in-network processing, a runtime must be flexible enough to be customized to a wide range of application domains. • Concurrency : Limited resources and a constrained application domain allowed Mate to address the corresponding synchronization and atomicity issues by only having a single shared variable. This restriction is not suitable for all VMs.
Background(Requirement) Internet system technology • Propagation : As every handler could fit in a single packet, these instructions were just a simple broadcast. it requires every program to include propagation algorithms. As not all programming models can fit their programs in a single packet, a runtime needs to be able to handle larger data images and should provide an efficient but rapid propagation service. • To provide useful systems support for a wide range of programming models, a runtime must meet these three requirements without imposing a large energy burden.
Background(Mate) Internet system technology • Maté v1.0 - Architecture
Background(Mate) Internet system technology • Maté v1.0 - instructions • 0 OPhalt 0x00 00000000 • 1 OPreset 0x01 00000001 clear stack • 2 OPand 0x02 00000010 push($0 & $1), 3 OPor 0x03 00000011 push($0 | $1) … SCLASS • 72 OPgetmb 0x48-4f 01001xxx push(byte xxx from msg header) • 108 OPsetfs 0x70-77 01110xxx short xxx of frame = $0 … XCLASS • 128 OPpushc 0x80-bf 10xxxxxx push(xxxxxx) (unsigned) • 192 OPblez 0xC0-ff 11xxxxxx if ($0 <= 0) jump xxxxxx
Design Internet system technology • ASVMs have three major abstractions. • Handlers : Code routines that run in response to system events • Operations : The units of execution functionality • Capsules : The units of code propagation
Design Internet system technology • The components of an ASVM. • Template : Which every ASVM includes - Scheduler : executes runnable threads in a FIFO round-robin fashion - Concurrency manager : controls what Threads are runnable, ensuring race-free and deadlock-free handler execution - Capsule store : manages code storage and loading, propagating code capsules and notifying the ASVM when new code arrives • Extensions : The application-specific components that define a particular ASVM
Design Internet system technology • Scheduler : Execution • The core of an ASVM : a simple FIFO thread scheduler. • Maintains a run queue. • Interleaves execution at a very fine granularity. • Executes a thread by fetching its next bytecode from the capsule store. • Dispatching to the corresponding operation component through a nesC parameterized interface.
Design Internet system technology • Concurrency Manager : Parallelism • The concurrency manager of the ASVM template supports race free execution through implicit synchronization based on a handler’s operation. • When a handler event occurs, the handler’s implementation submits a run request to the concurrency manager. • The concurrency manager only allows a handler to run if it can exclusively access all of the shared resources it needs.
Design Internet system technology • Capsule Store: Propagation • ASVM template’s capsule store follows a policy of propagating new code to every node. (Rather than selective propagation) but only some nodes execute it. • To propagate code,capsule store maintains three network trickles - Version packets, which contain the 32-bit version numbers of all installed capsules, - Capsule status packets, which describe what fragments a mote needs (essentially, a bitmask) - Capsule fragments, which are pieces of a capsule.
Design Internet system technology • Building an ASVM
Evaluation Internet system technology • Concurrency • Propagation • Flexibility: Languages • Flexibility: Applications • Efficiency: Microbenchmarks • Efficiency: Application • Efficiency: Interpretation
Evaluation Internet system technology • Concurrency • measured the overhead of ASVM concurrency control, using the cycle counter of a mica mote.
Evaluation Internet system technology • Propagation
Evaluation Internet system technology • Flexibility: Languages • Support three languages • TinyScript • Mottle • TinySQL
Evaluation Internet system technology • Flexibility: Applications • Specific sample ASVMs • RegionsVM • QueryVM
Evaluation Internet system technology • Efficiency: Microbenchmarks • Tradeoff between including functions and writingoperations in script code… • operations are powerful but what about energy efficient?
Evaluation Internet system technology • Efficiency: Application • QueryVM • motlle-based ASVM • execution of TinySQLdata collection queries.
Evaluation Internet system technology • Efficiency: Application
Evaluation Internet system technology • Efficiency: Interpretation
Evaluation(Pros) Internet system technology • Performance • Low power consumption • very efficient propagation • can be optimized in specific condition • Developer's view • an ASVM would be a component in TinyOS • When a developer has to choose an OS for WSN… • Choose TinyOS and utilize an ASVM for functionsneed to be update frequently
Evaluation(Cons) Internet system technology • Approach • Extend and generalize prior work (Maté) • Maintain basic characteristics of prior work • Impact and influence could be restricted • Performance • High-level abstraction might not be helpful to implement complex algorithms • Would be appropriated for specific situations • Updates occur frequently • Long term, low-duty-cycle data collection
Evaluation(Cons) Internet system technology • Flexibility • Application level propagationis very concise.But, we cannot update low level binaries such asan interpreter • Flexible enough?