Abstract
In recent years, advances in hardware and software tools have led to many realworld
sensor network deployments. Management of already deployed sensor networks
is a very important issue. One of the crucial management tasks is that of software
reconfiguration. During the lifetime of a sensor network, software running on the sensor
nodes may need to be changed for various reasons like correcting software bugs,
modifying the application to meet the changing environmental conditions in which
the network is deployed, adapting to evloving user requirements, etc. The frequency
of software updates is very high in sensor networks due to various reasons — harsh
and unpredictable environments in which the sensor nodes are deployed, time-varying
nature of the wireless channel, lack of robust tools for developing software, interference
in the unlicensed ISM band, topology change casued by node mobility, battery
outages, etc. Since a sensor network may consist of hundreds or even thousands of
nodes which may be situated at places which are difficult or, sometimes, impossible to
access physically, remote reprogramming of sensor networks is essential. This thesis
presents energy efficient and fast reprogramming services for wireless sensor networks.
Sensor networks are often battery-powered and need to be operated unattended for
long periods of time. Radio transmission is often the most energy-expensive operation
in sensor networks. Since energy is a very scarce resource, this thesis focuses
on conserving energy during reprogramming. Also, since the performance of the network
may be degraded, or even reduced to zero, during software update process, the
reprogramming techniques proposed here minimize reprogramming time significantly
compared to existing reprogramming protocols.