TY - JOUR
T1 - Adaptive service provisioning for enhanced energy efficiency and flexibility in wireless sensor networks
AU - Fok, Chien Liang
AU - Roman, Gruia Catalin
AU - Lu, Chenyang
PY - 2013/2/1
Y1 - 2013/2/1
N2 - Energy constraints and high connectivity dynamics render Wireless Sensor Networks (WSNs) difficult to program and use. Software applications must be coordinated not only functionally, as is traditionally done, but also in terms of resource utilization and adaptation to a dynamic environment. This paper presents Adaptive Servilla, a middleware that provides adaptive service provisioning capabilities to coordinate the resources used by WSN applications. It demonstrates how adaptive service provisioning enables WSN applications to be more energy efficient while better able to adapt to the changing availability of network resources. This is achieved through novel service binding strategies that automatically adapt application behavior when opportunities for energy savings surface, and switching providers in response to changes in the network topology. The former is accomplished by providing limited information about a provider's energy efficiency, systematically exploiting opportunities for sharing service invocations, and exploiting the broadcast nature of wireless communication in WSNs. The latter is accomplished by monitoring provider availability, seamlessly switching providers when necessary, and judiciously searching for new providers. Adaptive Servilla was implemented on TinyOS and evaluated using two disparate WSN platforms, the TelosB and Imote2. Empirical results show that adaptive service provisioning enables energy-aware service binding decisions that result in increased energy efficiency and service availability, while imposing minimal additional burden on the application, service, and device developers. Two applications, medical patient monitoring and structural health monitoring, demonstrate the efficacy of Adaptive Servilla.
AB - Energy constraints and high connectivity dynamics render Wireless Sensor Networks (WSNs) difficult to program and use. Software applications must be coordinated not only functionally, as is traditionally done, but also in terms of resource utilization and adaptation to a dynamic environment. This paper presents Adaptive Servilla, a middleware that provides adaptive service provisioning capabilities to coordinate the resources used by WSN applications. It demonstrates how adaptive service provisioning enables WSN applications to be more energy efficient while better able to adapt to the changing availability of network resources. This is achieved through novel service binding strategies that automatically adapt application behavior when opportunities for energy savings surface, and switching providers in response to changes in the network topology. The former is accomplished by providing limited information about a provider's energy efficiency, systematically exploiting opportunities for sharing service invocations, and exploiting the broadcast nature of wireless communication in WSNs. The latter is accomplished by monitoring provider availability, seamlessly switching providers when necessary, and judiciously searching for new providers. Adaptive Servilla was implemented on TinyOS and evaluated using two disparate WSN platforms, the TelosB and Imote2. Empirical results show that adaptive service provisioning enables energy-aware service binding decisions that result in increased energy efficiency and service availability, while imposing minimal additional burden on the application, service, and device developers. Two applications, medical patient monitoring and structural health monitoring, demonstrate the efficacy of Adaptive Servilla.
KW - Adaptation
KW - Energy efficiency
KW - Middleware
KW - Resource availability
KW - Service-oriented computing
KW - Wireless sensor networks
UR - https://www.scopus.com/pages/publications/84869508848
U2 - 10.1016/j.scico.2011.12.006
DO - 10.1016/j.scico.2011.12.006
M3 - Article
AN - SCOPUS:84869508848
SN - 0167-6423
VL - 78
SP - 195
EP - 217
JO - Science of Computer Programming
JF - Science of Computer Programming
IS - 2
ER -