Wireless Sensor Networks – Abstract Regions
Unlike central networks which can perform algorithms across the entire network of nodes, wireless sensor networks decentralize the control and allow each node to communicate only with its neighbors. This decentralized control requires a new set of spatial operators to handle communication, data caching, and data reduction.
The first step in building up this programming abstraction is neighbor discovery. Nodes send out broadcast messages and then build up a neighbor list by capturing the signal strength and direction of neighboring nodes. A “region” of nodes is then declared based on number of hops, geographical positioning, RF signal strength, or some other mechanism. Attributes and their value pairs are then shared among the nodes in the region. Finally, the data is analyzed across the region either by bringing the data to a central node or hub, or propagating the data through a tree-like structure and analyzing at each steps along the tree.
Applications for Abstract Region programming include edge detection, object tracking, environmental monitoring, and more. One advantage of it is that it allows for multiple programs to run on a single set of wireless sensor nodes. In this paper the concept of “scopes” is raised. Scope defines a group of components (i.e. a set of nodes) and limits the visibility of messages sent within groups. Scope can be applied in a descriptive manner, for example defining those nodes that can measure temperature data or in a deployment manner—defining those nodes that are close to each other geographically.
Scoping uses a set of selection rules that define which nodes belong to a group and which do not. This is more complicated than it seems since nodes can be mobile and can drop out of a group based on battery failure or weak signal strength.
One of the major advantages of scoping is that it limits messages to only those nodes relevant to it. Since wireless sensor nodes are resource limited to begin with, limiting their usage is a key consideration.
Abstract regions work well on applications such as object tracking in which one must examine a set of nodes (those near the object) and compare their information. Abstract regions provide a region-based collective communication interface.
In this paper the researchers create a programming model called Kairos which aggregates nodes together into a logical unit. Kairos uses shared memory-based parallel programming models. It provides three programming constructions: shortest path routing, localization, and object tracking. For localization and object-tracking applications, the researchers reported a 2x increase in performance over other wireless sensor networks.
In conclusion, clustering nodes either logically or geographically simplifies the programming challenge in building wireless sensor networks.