Rapid
Prototyping and Quick Deployment of Sensor Networks
Event-driven
programming platforms for sensor networks require the programmers to deal with
several challenges including buffer management, stack management, and flow
control. To simplify the design of sensor network protocols, several high-level
primitives are proposed. However, these primitives have to be implemented in an
existing event-driven programming platform and most of them still require the
programmers to use the same platform (though some intricate details of the
platform are hidden).
In this dissertation, we develop tools and protocols that enable the
programmers to rapidly prototype and quickly deploy sensor network protocols.
We propose to reuse existing abstract models from distributed computing
literature (e.g., read/write model, shared-memory model). Since these models
hide several low-level challenges of the target system, programs written in
these models are simple, easy to understand, and concise. These abstract
programs must then be transformed into a model consistent with sensor networks.
The main contributions of this dissertation are as follows.
We consider a new computational model for sensor networks, namely, {\em write all with collision} (WAC) model and develop algorithms that transform programs
written in traditional abstract models into sensor networks. We show that the
transformation algorithms preserve the self-stabilization property of the
original programs.
Based on this theoretical foundation, we propose {\em
ProSe}, a programming tool for sensor networks. ProSe enables the programmers to (1) specify protocols in
simple abstract models, (2) reuse existing fault-tolerant/self-stabilizing
protocols from the literature in the context of sensor networks, and (3)
automatically generate and deploy code.
To quickly deploy the generated programs, we propose {\em
Infuse}, a bulk data dissemination protocol for reprogramming the sensors
in-place. To deal with arbitrary channel errors, we extend the sliding window
mechanisms of TCP/IP. We show that Infuse provides a reliable and
energy-efficient data dissemination service through simulations and real-world
experiments.
Based on our experience in developing sensor network applications, we expect
that these results would simplify the protocol design, implementation,
evaluation, and deployment. As a result, it enables the transition where
protocols are designed by {\em domain experts} rather
than {\em experts in sensor networks}.
Paper:
Return to the publication list
Return to the Sandeep's
home page