Rapid Prototyping and Quick Deployment of Sensor Networks

Mahesh Arumugam


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}.


Return to the publication list
Return to the Sandeep's home page