Middleware: Middleware Challenges and Approaches for Wireless Sensor Networks
IEEE Distributed Systems Online
Using middleware to bridge the gap between applications and low-level constructs is a novel approach to resolving many wireless sensor network issues and enhancing application development. This survey discusses representative WSN middleware, presenting the state of the research. Military applications such as target detection, battlefield surveillance, and counterterrorism originally motivated sensor network applications. However, their advantages over traditional networks resulted in many other
... ulted in many other potential applications, ranging from infrastructure security to industrial sensing for example, environment and habitat monitoring, 6 healthcare applications, home automation, and traffic control. The design and development of a successful middleware layer must address many challenges dictated by WSN characteristics on one hand and the applications on the other. Managing limited power and resources The advent in microelectronics technology made it possible to design miniaturized devices on the order of one cubic centimeter. 7 Limited in energy and individual resources (such as CPU and memory), these tiny devices could be deployed in hundreds or even thousands in harsh and hostile environments. In cases where physical contact for replacement or maintenance is impossible, wireless media is the only way for remote accessibility. Hence, middleware should provide mechanisms for efficient processor and memory use while enabling lower-power communication. A sensor node should accomplish its three basic operations sensing, data processing, and communication without exhausting resources. 7 In energy-aware middleware, for example, most of the device's components (including the radio) are likely turned off most of the time depending on the application. Scalability, mobility, and dynamic network topology Scalability is defined as follows: if an application grows, the network should be flexible enough to allow this growth anywhere and anytime without affecting network performance. Efficient middleware services must be capable of maintaining acceptable performance levels as the network grows. Network topology is subject to frequent changes owing to factors such as malfunctioning, device failure, moving obstacles, mobility, and interference. Middleware should support sensor networks' robust operation despite these dynamics by adapting to the changing network environment. Middleware also should support mechanisms for fault tolerance and sensor node self-configuration and self-maintenance. Heterogeneity Middleware should provide low-level programming models to meet the major challenge of bridging the gap between hardware technology's raw potential and the necessary broad activities such as reconfiguration, execution, and communication. It should establish system mechanisms that interface to the various types of hardware and networks, supported only by distributed, primitive operatingsystem abstractions.