SOCA(2001)5:71–85
沐斌DOI10.1007/s11761-011-0083-x
ORIGINAL RESEARCH PAPER
厨余垃圾简笔画
A survey on rvice-oriented middleware for wireless nsor networks
Nader Mohamed·Jameela Al-Jaroodi
Received:4March2010/Revid:27March2011/Accepted:28March2011/Published online:13April2011
©Springer-Verlag London Limited2011
Abstract Wireless nsor networks(WSN)are ud for many applications such as environmental monitoring,infra-structure curity,healthcare applications,and traffic con-trol.The design and development of such applications must address many challenges dictated by WSN characteristics on one hand and the targeted applications on the other.One of the emerging approaches ud for relaxing the challenges is using rvice-oriented middleware(SOM).Service-oriented computing,in general,aims to make rvices available and easily accessible through standardized models and proto
cols without having to worry about the underlying infrastructures, development models,or implementation details.SOM could play an important role in facilitating the design,development, and implementation of rvice-oriented systems.This will help achieve interoperability,loo coupling,and heteroge-neity support.Furthermore,SOM approaches will provision non-functional requirements like scalability,reliability,flex-ibility,and Quality of Service(QoS)assurance.This paper surveys the current work in SOM and the trends and chal-lenges to be addresd when designing and developing the solutions for WSN.
Keywords Service-oriented middleware·
Service-oriented computing·Wireless nsor networks·RFID·Middleware·Interoperability
N.Mohamed(B)·J.Al-Jaroodi
Faculty of Information Technology,
UAEU,P.O.Box17551,Al Ain,UAE
e-mail:nader.m@uaeu.ac.ae
J.Al-Jaroodi
e-mail: 1Introduction
WSN applications have gained a strong momentum through the advances of technology in distributed computing,net-working,wireless communications,nsor technologies,and embedded systems.The advances offered an exceptional opportunity for developing a wide array of WSN applica-tions like production lines controls,shipping,pollution mon-itoring,disaster prevention,infrastructure curity,habitat monitoring,remote health monitoring,and traffic control, which are esntial for the progress of differentfields such as medicine,environment protection,manufacturing,engi-neering,and business.In general,the applications are built utilizing different heterogeneous devices such as high-end rvers,RFID components,mobile devices,storage devices, nsors,and robots.The devices communicate through a variety of wireless/wired networking technologies.In addition,the devices are usually controlled by veral soft-ware components developed by different vendors and imple-mented using different programming languages and models. Due to the high distribution,dynamic properties,and het-erogeneity of the devices,communication technologies and software components ud;implementing such applications is non-trivial.There are usually integration,scalability,reli-ability,curity,usability,QoS,and operational issues to be considered.
Incorporating a middleware layer is a novel approach to attempt to meet the design and implementation issues of WSN applications.There are different middleware approa-ches for WSN[27].The approaches provide important functions for different applications such as efficient software installation and data aggregation.However,more advanced functions are needed in the middleware to reduce the com-plexity of the design and implementation of the needed soft-ware for different WSN applications.
One of the most recent approaches that provide highflex-ibility for adding new and advanced functions to WSN mid-dleware is the rvice-oriented approach.Service-oriented middleware(SOM)logically views WSNs as a rvice pro-vider for ur applications.The SOM provides abstractions for the complex underlining WSN through a t of rvices needed by WSN applications.The rvices can be data aggregation,adaptation,curity,lf-organization,reliabil-ity,and management rvices.All the and other advanced rvices can be designed,implemented,and integrated in an SOM framework to provide aflexible and easy environment to develop effective WSN applications.
Some rearch efforts have been done on surveying the different aspects of middleware and programming para-digms for WSN.For example,[26]reviewed some mid-dleware projects for WSN;di呢喃细语
fferent middleware challenges and approaches for WSN were surveyed in[27];and[18] prented and classified virtual machines for WSN.Further-more,[46]surveyed the programming models for nsor net-works,while the state of the art in programming approaches for WSN were surveyed in[38].The rearch efforts are for general programming and middleware for nsor net-works.However,none of the existing work investigated the current state of rearch on the design and development of SOM for WSN.In this paper,we review and discuss differ-ent approaches of SOM for WSN,and prent some of the challenges they faced.Thus,in Section2,we provide some background information and related concepts.Section3dis-cuss the general middleware challenges for WSN.The SOM requirements for WSN are discusd in Section4and the current SOM approaches for WSN are discusd in Sec-tion5.Section6provides a discussion of the categories of application bad on their different needs for middleware r-vices.Section7provides a discussion of the SOM challenges for WSN,and Section8concludes the paper.
2Background and concepts
Recently,rvice-oriented computing(SOC)[9,25]has become a preferred model over the more traditional mono-lithic and client/rver development models.It overcomes veral problems and challenges the two types have faced. SOC offers a promising way for enabling software vendors t
o prent their software applications as rvices.It provides a framework to reprent business process as indepen-dent modules(rvices)with clear and accessible interfaces. The interactions among rvices are done through a standard description language such as XML,which makes it easy to integrate different rvices to build a business application and address problems related to the integration of hetero-geneous applications in a distributed environment.Services can implement a single business process or a t of different process that are made available for integration with other heterogeneous rvices.Services can be developed using a wide range of technologies,including SOAP,REST,RPC, DCOM,CORBA,and Web Services.
The generalized model—rvice-oriented architecture (SOA)—basically involves three main players:the rvice provider,the rvice broker,and the rvice requester.The rvice provider designs and develops a rvice.The r-vice broker makes this rvice available to the rest of world through public registries such as Universal Description Dis-covery and Integration(UDDI)for web rvices.The rvice requester locates the entries in the public registry and binds with the rvice provider to invoke the web rvices required. There are many people(rearchers and practitioners)with many different levels of understandings and us of rvice-oriented computing.According to[40],the SOA approach makes the following things possible:
•Multiple applications executing in varied platforms can effectively communicate with each other •Software rvices are provided to end-ur applications through published/discoverable interfaces •Services are looly coupled thus reducing dependencies and facilitating reu
•Service callers are coupled with rvices needed for the duration of the utilization only
•A relationship is created among the participants:rvice provider,discovery agency,and rvice requester •Interactions between the participants involve the publish,find and bind operations
•Service consumers target-specific rvices through spe-cific interfaces that are expod by the rvice registry and discovery mechanisms
Middleware,in general,offers the capabilities to inte-grate and reu software components on demand and helps abstract the distribution and heterogeneity of the underly-ing computing environment and rvices available.It also supports the addition of non-functional values such as interoperability,load balancing,scalability,reliability,avail-ability,usability,extensibility,manageability,reusability, rvices discovery,Quality of Service(QoS)stability,effi-ciency,autonomocity,and curity.A number of middleware platforms were developed to add new values for different systems such as enterpri systems[11],cluster computing
[2],mobile ad hoc networks[10,28],and robotics[37].The mechanisms and approaches are usually bad on the reu of existing methods,protocols,software,and systems to add the needed values.
There are different middleware approaches for WSN. Some of the approaches are the virtual machine,data-ba,application driven,and message-oriented middleware [27].The virtual machine approach contains interpreters and mobile codes written in modules that reprent the
application and are interpreted by the virtual machine.The system injects and distributes the modules through the net-work using tailored algorithms such as one for minimizing overall energy consumption.In the databa approach,the whole network is viewed as a virtual databa system.This approach provides an easy-to-u interface that lets the ur issue queries to the nsor network to extract the nd data of interest.The application driven approach provides an architecture that reaches the network protocol stack.This allows programmers tofine-tune the network on the basis of application requirements such as QoS,configuration,and management.Although,this approach has great performance advantages,it may provide a specialized middleware that is tightly coupled with the application instead of a general pur-po middleware.Finally,the message-oriented middleware approach provides publish-subscribe mechanisms to facil-itate message exchange between the nsors and the sink nodes.The strength
of this paradigm lies in its support for asynchronous communication that helps in saving energy in the WSN.This approach is very suitable for WSN where most applications are bad on events.
The middleware approaches for WSN provide some important functions for different applications such as effi-cient software installation and efficient data aggregation. However,more advanced functions are needed in the middle-ware to reduce the complexity of designing and implement-ing software for different WSN applications.Examples of the advanced functions are adaptation,curity,lf-orga-nization,control,QoS,reliability,context-awareness,and management.There are some successful efforts to design middleware platforms for WSN to provide one or few of the advanced functions.However,most of the are considered specialized middleware platforms that could be best ud for certain types of applications and needs.This is becau they offer limited functions,while most WSN applications usually need veral or most of the possible advanced functions.
Using SOM to support rvices development and utiliza-tion has been advocated by many rearchers who call for using rvice-oriented middleware(SOM)over traditional middleware that connects diver components and systems and provides multiple-channel access to ,via mobile and handheld-devices and nsor devices over a vari-ety of networks includi
ng the Internet,UMTS,XDSL,and bluetooth[41].On another aspect,the authors[36]iden-tify the requirements and challenges of SOM for pervasive environments.Among the requirements,there are primary requirements such as message exchange,mobility support, curity and rvice description,discovery,and coordina-tion.There are also cross-cutting requirements including QoS support,autonomy and context awareness.Therefore,recent efforts have targeted the u of SOM for WSN to provide highflexibility for adding new functions to WSN middle-ware.Unlike other approaches,new functions can be added to the middleware simply by adding new rvices.SOM log-ically views WSN as a rvice provider for ur applications. SOM provides abstractions for the complex underlying WSN through a t of advanced rvices needed by WSN appli-cations.The rvices can be designed,implemented,and easily integrated in the SOM to provide aflexible and easy environment to develop WSN applications.
3Middleware challenges for WSN
WSN middleware is a software infrastructure that glues together the nsor network hardware,operating systems, network stacks,and applications.A complete middleware solution should contain a runtime environment that supports and coordinates multiple applications and standardized sys-tem rvices such as data aggregation,control,and man-agement policies that can 生孩子发朋友圈
郁金香花语是什么
adapt to target applications.In addition,it should include mechanisms to achieve adaptive, cure,and efficient system resources utilization to prolong the nsor network’s life.The WSN middleware layer hides the complexity of the network environment by isolating the application from the communication and hardware details.
The design and development of a successful middleware layer for WSN is not trivial.It needs to deal with many chal-lenges dictated by the WSN characteristics on one hand and the applications demands on the other.Following is a discus-sion of the challenges:
3.1Hardware resources
The advent in microelectronics technology made it possible to design miniaturized devices in the order of cubic centi-meters end even smaller.Limited in energy and individual resources,the tiny devices could be deployed in hun-dreds or thousands in harsh and hostile environments,where in some cas no physical contact could be possible for replacement or any maintenance scope;therefore,wireless communication is the only way for remote accessibility.
A middleware should provide mechanisms for an efficient u of the processor and memory while enabling lower power communication.A nsor node should accomplish its three basic operations(
nsing,data processing,and communi-cation)while minimizing resources utilization to avoid fast resources exhaustion.As an example of energy aware mid-dleware,it should be able to force most of the device’s com-ponents including the radio are likely to be turned off most of the time and only activate them depending on the application needs.
3.2Changes in network topology and size
The topology of the network is subject to frequent changes due to different factors such as device failure,device
mobility,moving obstacles,and interferences.If an appli-cation gets bigger,the network should beflexible enough to allow the addition of more nodes anywhere any time without affecting network performance.In addition,if some nodes or links fail,the middleware should be able to report the failure and take automatic measures to either correct the problem or take alternative actions to maintain network operations until the failure isfixed.Also,middleware should support mecha-nisms for lf-configuration and lf-maintenance of collec-tions of nsor nodes.Furthermore,the middleware should be able to adjust network devices properties such as trans-mission ranges and sleep periods to adjust to any changes in the topology.车牌字母
3.3Heterogeneity
As mentioned earlier,in a WSN,devices,links,software components may be heterogeneous and require special pro-gramming models and tools to utilize and integrate them within a WSN application.Thus,the middleware should pro-vide some mechanisms to meet the major challenge of bridg-ing the gap between hardware technology’s raw potential and the broad needed activities.It should establish system mechanisms interfacing with the various types of hardware and networks,only supported by basic distributed primitive operating system abstractions.As a result,this should make it easier to develop the applications using the network without worrying about the low-level details.
3.4Network organization
Unlike traditional networks,nsor networks must deal with resources—energy,bandwidth,and processing power that are dynamically changing.Another important issue in nsor net-works is to support long-running applications,where efficient design of routing protocols are needed to allow the network could run as long as possible.An ad hoc network resources discovery mechanism should be provided,since knowledge of the network is esntial for a network to operate properly.
A nsor node needs to know its own location in the net-work in addition to the whole network topology.Some impor-tant issues on system parameters such as network size and density per square mile affect the tradeoffs between latency, reliability,and energy consumption.A middleware should support the robust operation of nsor networks despite the dynamics by adapting to the changing network environment.梦到外婆
3.5Application knowledge
Another important and unique property of middleware for WSN is dictated by the design principles of appli-cation knowledge.However,middleware has to include mechanisms for injecting application knowledge in the infrastructure of the WSN.This will allow mapping appli-cation communication requirements to network parameters that allowfine-tuning of the network monitoring process. For example,different applications have different reliabil-ity requirements and afixed measure is not suitable for all applications.Therefore,the middleware should be able to acquire the knowledge about the acceptable reliability lev-els of the application and map the needed functionality to the underlying infrastructure to maintain it.Another exam-ple is in the range of coverage where some applications cover very large geographical areas and require wide-range com-munication;while others are u mode den networks thus require shorter-range communication.The middleware r-vices should b
e able to adjust the needs and change trans-mission ranges bad on each application’s requirements.
3.6Security
WSN are being widely deployed in domains that involve nsitive information and critical rvices such as military, healthcare,and rescue rvices.In such domains,it is nec-essary to cure communication,rvice execution,and r-vice availability.Furthermore,the large deployment of WSN in harsh environments increas their exposure to malicious attacks such as denial of rvice and rogue nodes.In addition, the wireless medium facilitates eavesdropping and adversar-ial packet injection to compromi the network’s functions. All the factors make it extremely important to support cu-rity rvices for SOM for WSN.In such cas encryption rvices are required to hide critical information,WSN mon-itoring rvices are needed to protect from external attacks and report abnormal access and usage issues.In addition, it is important to deploy and enforce strong authentication and access control policies to ensure safe WSN functionality for the urs.On the other hand,nsor nodes have limited power and processing resources.Therefore,standard curity mechanisms that consume a lot of ,processing and communication)are not suitable.For example,encryp-tion/decryption process require very high computational power and a
uthenticating every correspondence and ur also requires high communication load.The challenges increa the need to develop comprehensive and cure solutions that achieve wider protection,while maintaining desirable network performance and acceptable power con-sumption when necessary.Middleware efforts should con-centrate on developing and integrating curity functions in the initial phas of software design,hence effectively achieving different curity requirements such as confiden-tiality,authentication,integrity,freshness,and availability. Some work in investigating possible curity approaches for SOM in general is available[3].However,more effort to adapt the curity functionalities to the specific needs of WSN is required.
3.7Quality of rvice
Quality of rvice is an overud term with multiple mean-ings and perspectives from different rearch and techni-cal communities.In WSN,we can view QoS from two perspectives:application specific and network.The former refers to QoS parameters specific to the application,such as nsor node measurement,deployment,and coverage and number of active nsor nodes.The latter refers to how the supporting communication network can meet application needs while efficiently using network resources such as band-width and power consumption.Traditional QoS mechanisms ud in wired networks are not adequate for WSN becau of constraints such as resource limitations and d
ynamic topol-ogy.Therefore,middleware should provide new mechanisms to maintain QoS over an extended period and even adjust itlf when the required QoS and the state of the application changes.Middleware should be designed bad on trade-offs among performance metrics such as network capacity or throughput,data delivery delay,and energy consumption.
3.8Integration with other systems
Most nsor network applications consist of nsor or RFID networks and their supporting software components that need to be integrated with other systems such as enterpri or web systems.This integration is necessary to achieve the intended goals of using nsor networks to begin with since collected data are uless unless it is given to its intended target to achieve the ultimate goal.Middleware can facilitate that inte-gration by allowing enterpri and web systems to smoothly and correctly connect to,control and collect the needed information from WSN or RFID networks.This requires pro-viding a t of interfaces that facilitate the integration and validate the exchanged information between the WSN and the external system.
4SOM requirements for WSN
SOM for WSN is necessary to support veral,otherwi hard to incorporate,functionalities in the SO
C model.The functionalities include not only the functional requirements, but also the non-functional requirements that different r-vices might need to offer.In many application domains,r-vices provide a t of specific functions bad on the required application logic that will be different for each rvice and each application.However,tho rvices and rvice pro-viders also need to support veral common functionalities that are generally irrelevant to the main application.For example,most rvices will have to support rvice regis-tries and discovery mechanisms and they will also need to provide some level of abstraction to hide the underlying envi-ronment and implementation details.Furthermore,all SOC applications need to support some levels of reliability,per-formance,curity,and QoS.All of the can be supported and made available through a common middleware platform instead of having to incorporate them into each and every rvice and application developed.In general,bad on our obrvations,an SOM for WSN should support a number of requirements(listed below).Thefirst three are the basic and general rvice-oriented requirements that must be available in any rvice-oriented system.The rest of the requirements are enforced by the characteristic of the WSN environment on one hand and the challenge of implementing and operating applications on that environment on the other.The require-ments are:
1.Runtime support for rvices deployment and execution:
as a WSN is viewed as a t of rvices provided for sup-porting some applications,SOM should provide mecha-nisms to deploy,load,and execute the rvices.
2.Support for rvice consumers to discover and u regis-
tered rvices:SOM should enable client applications to discover and u registered rvices.SOM should enable the integration between applications and registered r-vices.
3.Service transparency to client applications:SOM should
allow client applications to transparently u available rvices without exposing the rvices implementation details or in some situation its detailed components loca-tions.
4.Abstractions to hide the heterogeneity of underlying
nsor environments:all heterogeneity details of WSN hardware and network should be hidden from the appli-cations.SOM should provide high-level interfaces to utilize WSN resources without requiring the applica-tion developers to deal directly with the heterogeneity.
This requirement address the heterogeneity and net-work organization challenges mentioned in the previous ction.
5.Configurable rvices:This requirement is to help solve
the hardware resources and application knowledge chal-lenges mentioned in the previous ction.SOM should provide mechanisms for client applications to configure WSN rvices to meet specific application requirements such as QoS,curity,or reliability.Configuring WSN usually require dealing with details and parameters of some hardware and communication components.Doing this for configuring QoS for example will be a very com-plex task for regular urs.However,SOM can provide mechanisms to be ud easily by client applications to configure WSN for specific application requirements.
6.Support for lf-organization mechanisms:this can inc-
lude lf-x properties such lf-management,lf-heal-ing,lf-configuration,auto-discovery,lf-adaptation,
and lf-optimization of rvice providers.WSN are dynamic distributed environments where nodes can fail and new nodes can be added anytime.In addi-tion,mobile nodes with some rvices can be avail-able for some time.The availability of rvices in the nodes is also dynamic.Therefore,SOM should support lf-management,auto-discovery,auto-change,lf-optimization,and auto-change me
chanisms for efficient utilization of available rvices.For example,when a node provides a rvice for nsing a certain attribute the SOM should discover that rvice and allow the client applications to u it when they need it.When that node fails,SOM should automatically switch the applications to a similar rvice currently available on another node in the network.Furthermore,the middleware should be able to notify the applications if nothing matching their needs is currently available.This requirement helps in solving the scalability,heterogeneity,network organiza-tion,and application knowledge challenges mentioned in the previous ction.
7.Interoperability with a variety of devices:This require-
ment helps solve the heterogeneity challenges mentioned in the previous ction.Some nsor applications require variety of devices to be operated.SOM for WSN can be design to be interoperable with different devices such as devices with different types of nsors,RFID,and mobile nodes to enable easy application development and oper-ation.
8.Efficient handling of large volumes of data and high
communication loads:This requirement helps in solving the limited hardware resources and network organiza-tion challenges mentioned in the previous ction.Some WSN applications involve large vol
umes of data and high communication loads.As WSN have limited resources, SOM should efficiently and carefully deal with that load through trade-offs between application requirements in terms of accuracy,bandwidth,delay,and energy con-sumption.
9.Secure communication and execution:as WSN are being
widely deployed in domains that involve nsitive and critical information,cure communication and execu-tion becomes a very important aspect in SOM for WSN.
SOM should provide mechanisms to cure the utiliza-tion and operations of WSN rvices.All communica-tion and execution for supporting the rvices should be also cured.
语文议论文素材10.Support for QoS requirements:a large range of WSN
applications have QoS requirements.Mechanisms are needed to configure and satisfy the requirements in WSN environments.Example of QoS requirements in WSN can be reporting a critical reading within a cer-tain time frame and within a certain error level.In some situations,the QoS requirements can come from multi-
ple applications.SOM for WSN should provide uniform interfaces to configure the QoS requirements
for the applications as well as ensuring achieving the require-ments.
11.Support for integration with other systems:as WSN usu-
ally do not operate in isolation,SOM should enable the integration of WSN with other systems such as enter-pri or web systems.For example,some web applica-tions rely on WSN for their current information such as information on weather conditions,shipments locations, and traffic conditions.In this ca,SOM should enable that integration such that the applications can fulfill their goals.
In addition to the requirements,there are other advanced and specialized requirements that are needed for some advanced and specialized applications.One example of the requirements is support for mobility.This is important for applications with mobile nsor nodes in the WSN.Another requirement example is support for context awareness.SOM can provide some mechanisms for applications to easily and efficiently reason about and react to its environmental con-texts.
Some of the mentioned requirements are also required for some SOM implemented for other types of systems such as Grid and enterpri systems.However,the main character-istic that distinguishes WSN environments from others is that all the requirements must be designed and implemented on limited computation,communication,memory,and energy resources.The middleware
rvices within the SOM must be lightweight and very efficient in resources utilization.
Generally,rearchers propo SOM approaches best suited for their underlying environments.Therefore,many of the approaches may provide some of the requirements described above,but most of them do not support all require-ments.In the following ction,we provide a discussion of some reprentative approaches.
5SOM approaches for WSN
While conducting our rearch through the different approa-ches rearchers and practitioners are working on,we came across a large pool of examples on SOM for WSN.Several approaches are currently being investigated at the rearch level while a few are actually being ud in practice.The main issue to handle here is the diversity and heterogeneity of the nsors being ud and the networks connecting them.Sev-eral issues were addresd by this category of approaches like handling complex and/or continuous queries,data access, aggregation and management,rvice publishing,discovery and deployment,group management,real-time access to data