|
|
Hood: a
neighborhood programming abstraction
|
|
|
|
Overview |
Traditional distributed programming abstractions such as shared
memory are difficult to apply to sensor networks because of the
unreliable, low-bandwidth, geographically-constrained
communication model. Instead, many distributed sensor network
algorithms are based on the concept of a neighborhood in which
each node selects a set of important neighbors and maintains
state about them. However, programmers must still implement
neighborhoods in terms of their component parts: messaging, data
caching, and membership. We developed an abstraction called
Hood that unifies these fundamental concepts as a distributed
programming primitive for sensor networks. Using Hood, a
neighborhood can be defined by a set of criteria for choosing
neighbors and a set of variables to be shared, such as a one-hop
neighborhood over which light readings are shared and a two-hop
neighborhood over which both locations and temperature are
shared. Once the neighborhoods are defined, Hood provides an
interface to read the names and shared values of each neighbor.
Beneath this interface, Hood is hiding the complexity of
discovery and data sharing. We have shown that this abstraction
captures the common usage of neighborhoods in many publicly
available sensor network applications, and it has been used to
implement some of TinyOS's largest applications.
|
|
Publications
|
Kamin Whitehouse, Cory Sharp, Eric Brewer, David Culler.
"Hood: a Neighborhood Abstraction for Sensor Networks."
In Proceedings of ACM International Conference on Mobile Systems, Applications,
and Services (MobiSys '04).
Boston, MA, June, 2004.
ACM Press.
(ppt)
|
|
Software |
The code
for Hood is publicly available as part of the standard
tinyos-1.x software distribution. It requires the use of nesC
1.2 or greater.
|
|
Documentation
|
Documentation
for Hood is available via a public wiki, and explains the few
lines of code required by the use it.
|
|
|
|
Kamin Whitehouse
Computer Science Department
The University of Virginia
217 Olsson Hall
Charlottesville, Virginia 94720
|