Quality of Service (QoS) Provisions in Wireless Sensor Networks and Related Challenges

Wireless sensor networks (WSNs) are required to provide different levels of Quality of Services (QoS) based on the type of applications. Providing QoS support in wireless sensor networks is an emerging area of research. Due to resource constraints like processing power, memory, bandwidth and power sources in sensor networks, QoS support in WSNs is a challenging task. In this paper, we discuss the QoS requirements in WSNs and present a survey of some of the QoS aware routing techniques in WSNs. We also explore the middleware approaches for QoS support in WSNs and finally, highlight some open issues and future direction of research for providing QoS in WSNs.

section_content: In recent years, Wireless Sensor Network (WSN) has become one of the cutting edge technologies for low power wireless communication. The fast development of low power wireless communication devices, the significant development of distributed signal processing, adhoc network protocols and pervasive computing have collectively set a new vision for wireless sensor networks [1, 2]. In majority of WSN applications, a large number of sensor nodes are deployed to gather data based on application domains. This data collection process can be continuous, event driven and query based [3]. WSN can be deployed in various domains and applications such as agriculture and environmental sensing, wild life monitoring, health care, military surveillance, industrial control, home automation, security etc. Lot of research works have been done on various aspects of WSNs includingprotocol and architecture, routing, power conservation etc. Quality of Service (QoS) support in WSNs is still remained as an open field of research from various perspectives. QoS is interpreted by different technical communities by different ways [3]. In general, QoS refers to quality as perceived by the user or application. In networking community, QoS is interpreted as a measure of service quality that the network offers to the end user or application. Figure 1 shows a general QoS model for network which is redrawn from [3]. In RFC 2386 [4], QoS has been defined as a set of service requirements to be fulfilled when transmitting a stream of packets from source to destination. 

In traditional data network, QoS defines certain parameters such as packet loss, delay, jitter, bandwidth etc. However, the QoS requirements in WSNs such as data accuracy, aggregation delay, coverage, fault tolerance and network lifetime etc. are application specific and they are different from the traditional end-to-end QoS requirements due to the difference in application domains and network properties. Although, some QoS solutions (like IntServ, DiffServ etc) are developed for traditional networks, these cannot be easily ported in WSNs due to 1) severe resource constraints in sensors nodes, 2) largescale and random deployment of sensors nodes and 3) application specific and data-centric communication protocols in WSNs. Researchers have been working continuously towards QoS support in WSNs and have proposed some methodologies for that purpose. To name a few, Network Layer based QoS support in terms of routing protocols [12],Cross Layer based QoS support [27] and Middleware layer based QoS support [13] are the most prominent types of approaches for QoS support in WSNs. 

It is envisioned that WSNs will gradually become pervasive in our daily life and will finally revolutionize the way we understand and manage our physical world. This trend drives the WSN to provide QoS support to meet service requirement of its diverse applications. This motivates us to explore this challenging area and bring to the focus the possible research problems and their solutions. 

The rest of the paper is organized as follows. In Section 2 we have discussed the characteristics of WSN which pose challenge for QoS support. Section 3 makes a survey of the existing approaches for QoS support in WSN. Some open research issues for QoS support in WSNs are listed in Section 4 and finally Section 5 concludes the paper.
section_name: Introduction

section_content: The characteristics of WSNs are different from other networks. Such a network requires to sense data from the surrounding environment and finally forwards the sensed data towards a remote and resourceful node called sink or base station. Therefore, QoS provisioning in WSN has some significant challenges. Some of such challenges are as follows. 

 Extreme Resource Constraint: Some of the very significant resource constraints in WSN are energy, bandwidth, buffer size and transmission capacity of the sensor nodes. Among these, efficient energy utilization of sensor nodes is a crucial issue as in most of the cases the batteries of the sensor nodes are not rechargeable or replaceable. Efficient bandwidth utilization is also a significant challenge in WSN. plication some sensory data may be created aperiodically and these are mainly due to the detection of some critical events at unpredictable times. Again there can be some sensory data which are created at a regular interval of time e. g., continuous real time monitoring of some environmental parameters. Moreover the period of periodic data may or may not be known apriori and this may depend on the kind of application. Therefore data to be handled in a typical WSN may be a mixture of periodic and aperiodic type. This mix nature of data poses significant challenges in designing QoS based schemes (i. e., for guaranteeing timely and reliable delivery) for WSN.  Multiple Sinks or Base Stations: Even though most of the sensor networks have only single sink or base station, there can be multiple sink nodes depending on the application's requirements. Wireless Sensor Networks should be able to maintain diversified level of QoS support associated with multiple of sinks or base stations.
section_name: Challenges for QoS Support in WSNs

section_content: In this section, we have first discussed about the quality of service requirements in WSNs followed by the major existing approaches for supporting QoS in WSNs, specially focusing at QoS aware routing protocols.
section_name: Existing Approaches for QoS Support in WSNs

section_content: The requirement of QoS in WSNs can be specified from two perspectives [3]. These are application specific QoS and Network QoS.
section_name: QoS Requirements in WSNs

section_content: As discussed in Section 1, QoS parameters in WSNs may vary depending on the application domain. Some of the application specific QoS parameters are data accuracy, aggregation delay, fault tolerance, coverage [6], optimum number of active sensors [5] etc. The application demands certain requirements from the deployment of sensors which are directly related to the quality of application.
section_name: Application Specific QoS

section_content: From the network perspective, it has been considered as how to provide QoS constrained sensor data while optimally utilizing sensor resources. Every class of application has some common requirements in network. The network is concerned with how to transmit the sensed data from the sensor field to the sink node fulfilling the required QoS. There are three data delivery models in sensor network [7]. These are event driven, query driven and continuous. The event driven application in WSNs is mostly delay tolerant, interactive and non end-to-end. The sensors detect the occurrence of certain event and to take action accordingly. In one side of the application there is a sink node and the other side a group of sensor nodes which are affected by certain events. The data sent by sensor nodes are highly redundant and has to be sent quickly and reliably to the sink node. The query driven application WSNs are interactive, query based, delay tolerant, mission critical and non end to end. The queries are generated by the sink node on demand and sent to sensor nodes enquiring occurrence of certain event. In the continuous model sensor nodes send data to the sink node at a pre specified rate. The data can be real time audio, video, image or non real time data as well.
section_name: Network QoS

section_content: The application areas of WSN are diverse in nature. For example, WSN has applications in many areas such as battlefield awareness, many mission critical applications such as target tracking and various applications in which emergency response is a requirement. In such type of applications timely delivery of sensory data that too with reliability plays a very vital role. Therefore we classify the QoS requirements into two domains namely Timeliness and Reliability. It is important to note that sensory data may have diverse real-time requirements. For example different types of data may have different deadlines and some may be shorter whereas some may be longer. 

Similarly the sensory data may also have diverse reliability requirements depending on the type of content. Therefore some data can tolerate a certain percentage of loss during transmission towards the control center whereas some data need to be delivered at the control centre without any loss during transmission. In summary the Timeliness domain may again have different levels of QoS requirements and also the Reliability domain may have distinguished levels of QoS requirements.
section_name: Note on QoS Domain Classification

section_content: QoS aware routing is one of the most essential parts of the Quality of Service framework for wireless networks. Under QoS routing schemes, the data delivery routes are computed with the knowledge of various resources availability in the network along with the QoS requirements of the corresponding flows. There are several issues to be considered during the design of the QoS based routing algorithms for multi-hop wireless sensor networks. Those are: 1) metric selection (e. g., bandwidth, delay etc) and route computation 2) QoS state propagation and maintenance 3) scalability and 4) domain of QoS such as reliability or timeliness (or both). In a system like wireless sensor network the QoS aware routing protocols need to deal with imprecise state information due to the frequent topology changes. Moreover a QoS aware routing scheme for multi-hop WSNs should also balance efficiency and adaptability while maintaining low control overhead in the system. In recent years, several routing algorithms have been proposed by research communities which aim to provide QoS in Wireless Sensor Networks. Some of these algorithms are briefly discussed below:
section_name: QoS Aware Routing Protocols

section_content: SAR is the first routing protocol providing QoS support in WSN. This is a multi path, table driven routing protocol which tries to achieve both energy efficiency and fault tolerance [8]. This protocol creates a tree of sensor nodes having root at the one hop neighbor of the sink node. It takes into account the QoS metrics, energy resource in each path and priority of each packet. Using the created tree, multiple paths are selected based on the energy resource and QoS on each path. SAR takes care of the failure recovery by enforcing routing table consistency between upstream and downstream node on each path. Although SAR provides fault tolerance and recovery, it suffers from the overhead of maintaining routing tables and states at each sensor node particularly when the number of sensor nodes deployed is large.
section_name: SAR (Sequential Assignment Routing)

section_content: This protocol finds the minimum cost path in a large sensor network. It is simple and scalable protocol. The details of this protocol can be found in [20]. A cost function is used for noting the delay, throughput and energy consumption from any sensor node to sink node in the sensor network. The protocol is divided into two phases. In the first phase the cost value in each node is set starting from the sink node and diffuses across the network. Each node calculates its cost by addition of the cost value of the node received from in a message and the cost of the link. 

Here the forwarding of message is deferred for preset time duration to minimize the cost to arrive. So this algorithm determines the optimal cost of all nodes to the sink nodes by exchanging only one message. The next hop state information is not required after the value of the cost fields is set. 

In the second phase of the protocol, the source node starts broadcasting the data to its neighbors. When a node receives this broadcast message, it adds the transmission cost to the sink node to the cost of the packet and checks the remaining cost in the packet. If the remaining cost is sufficient to reach the sink node, the packet is forwarded to its neighbor node. Otherwise the packet will be discarded. From the simulation result it has been found that the protocol achieves optimal forwarding with minimum number of advertised messages
section_name: Minimum Cost Forwarding

section_content: It is a QoS aware soft real time routing protocol in Wireless Sensor Networks that ensures end to end QoS guarantees [9]. Three types of real time communication services provided by this protocol. They are real-time unicast, real-time area multicast and real time area any cast [10]. Each node in this protocol maintains information about its neighbors and it utilizes geographic forwarding technique to find a path. It also tries to maintain a certain delivery speed for each packet in the network. SPEED maintains this speed by diverting the traffic at the network layer and regulating the traffic sent to the MAC layer locally. The aim of doing this is to estimate end to end delay for the packets by dividing the distance to sink by speed of the packet [9]. This is done before taking an admission decision. SPEED can also provide congestion avoidance in the event of congestion in the network. SPEED has a routing module called Stateless Geographic Nondeterministic Forwarding (SNGF). It works with other four modules at the network layer. Figure 2 shows the relationship of SNGF with other modules which is redrawn from [10]. The Backpressure Rerouting module works in collaboration with Neighborhood Feed back Loop (NFL) module and SNGF to reduce or to divert traffic in the event of congestion. The Beacon Exchange module gather information about the geographic location of its neighbor nodes to do geographic based routing by the SNGF module. Delay Estimation module is used to determine the occurrence of congestion in the network. It is done by calculating the elapsed time between transmitted data packet and corresponding acknowledgement packet. The Last Mile Process is used to provide the three communication services mentioned above.
section_name: SPEED

section_content: This protocol finds a least cost and energy efficient path that meets end to end delay during its connection [11]. The cost of a link is a function of node's reserved energy, transmission energy, error rate and some other communication parameters. Imaging sensors are used to generate real time traffic. In this protocol a class based queuing model is used for the support of real time and best effort traffic which shares the services for real time and non real time traffic. The queuing model is shown below in Figure 3 which is redrawn from [11]. 

A list of minimum cost path is determined by this protocol by using an extended version of Dijkstra's algorithms and selects a path from that list which satisfies the end to end delay requirement. The gateway sets an initial bandwidth ratio which is defined as the amount of bandwidth to be dedicated both to the non real time and real time traffic on a particular outgoing link.
section_name: Energy Aware Routing

section_content: This protocol is an extension of SPEED [10] providing multi path multi speed of packets across the network. The protocol spans over network layer and medium access control (MAC) layer and provides QoS support in terms of reliability and timeliness [12]. The protocol does probabilistic multi-path packet forwarding to meet various reliability requirements. The protocol provides multi network wide speed in such way that the various packets can choose the appropriate speed dynamically depending on the end to end deadlines. Here packet can choose the best combination of service option depending on the reliability and timeliness requirement. This protocol also makes provision for end to end QoS with local decision at each intermediate node without doing path maintenance and end to end path discovery. The purpose of localized geographic forwarding is for scalability for larger sensor network, adaptability to dynamic sensor network and appropriateness to both periodic and non periodic traffic flows. To ensure end to end QoS provision results in global sense, the concept of dynamic compensation is proposed which compensates inaccuracy of local decision in a global way as packets traverse toward the destination. 

Although packet forwarding decisions are made locally, packets can meet their end to end requirement with high probability. Although this protocol provides QoS support in timeliness and reliability domain, however efficient power consumption is not in the scope of this protocol.
section_name: MMSPEED (Multi-Path Multi-Speed Protocol)

section_content: Reliable Information Forwarding using Multipath is a routing protocol which provides desired reliability in data delivery based on packet priority [21]. It provides reliability in data delivery by sending multiple copies of each packet through multiple paths from source to sink. The source transmits multiple copies of each packet based on the local knowledge of channel error rate. The header of each packet contains information about the network conditions which is used for forwarding the packets. The information in the packet header is updated as it traverses towards to the sink to account for local deviation in network conditions. This method is similar to Dynamic Packet State (DPS) found in the literature [22, 23]. This algorithm also does not require any data caching at any node which is useful in sensor networks for its limited memory. Because of the usage of dynamic packet state and randomized forwarding, this protocol exploits all the nodes randomly between source and sink. Thus it also provides load balancing effect among the sensor nodes.
section_name: ReInForM

section_content: This protocol deals with a multicast based routing protocol to track a mobile object dynamically [24]. It guides a mobile user to chase a mobile object accurately without flooding request to locate the mobile object. This protocol helps in saving power consumption of the sensor nodes and as a result of which overall life time of the sensor network is increased. Here a mobile user is called source and the mobile object is called target. The sensor network helps the source detecting the target and keeping the tracked information of the target. To save energy, some of the senor nodes remain in active state while others are in sleeping state. The sensor that keeps the track information of the target acts as a beacon node. It waits for the source and guides the source in chasing the target. The source does not need to send frequent request packets to the present location of target in the course of chasing. The sensor also does not require to transmit the present location of the target when the source detects the target. When the source reaches the location of the beacon sensor, it makes a query asking about the present location of the target or the location of the next beacon sensor. This protocol uses face routing [26] based on the concept of Gabriel Graph [28] for tracking the target accurately. It also considers the moving direction and velocity of the target. Based on the experimental results it has been found that the protocol can save more energy than other flooding based protocol used in object tracking.
section_name: Mobicast

section_content: Directed Alternative Spanning Tree [DAST] considers three important QoS parameters namely energy efficiency, network communication traffic and failure tolerance (i. e. reliability) [25]. In this protocol a directed tree-based model is constructed to make data transmission more efficient. A Markov based communication state predicting mechanism is used to choose reasonable parent and packet transmission to double-parent is submitted with alternative algorithm. Various nodes in the network are prioritized and this is used to decide different functions of nodes in WSN. It is worthy to mention that DAST achieves data aggregation. From analysis of the above mentioned routing approaches we find out some important parameters and summarize their comparisons in Table 1.
section_name: DAST

section_content: There are wide variety of application of WSNs including real time and mission critical application in aerospace, [14]. Some of the QoS parameters at the middleware and application layers are accuracy, aggregation degree, aggregation delay, coverage and optimum number of sensor nodes etc., while the QoS parameters at the network layer are delay, jitter, communication bandwidth and packet loss [13]. In [3] it was proposed that for middleware layer QoS support collective QoS parameters should be considered. QoS support at WSN middleware depends on the middleware services [14] for example resource discovery and resource management service. QoS support at the middleware may also affect some other services such as data acquisition in the data management service. In [15] a framework is proposed which uses services and function for fault detection without recovery. Milan [16] is a middleware approach to provide QoS between the application and the underlying sensor network. Milan allows the applications to specify their quality requirements and adjust the network characteristics for longer lifetime of application and meeting the QoS requirement. In [17] a middleware architecture, MidFusion, is proposed which makes use of Bayesian theory to support information fusion by the sensor network application. It selects and discovers the best possible set of sensor nodes based on the QoS requirement and the QoS that can be provided for the applications. In [18] a reflective and service-oriented middleware is proposed. It provides an abstraction layer between application layer and the underlying sensor network infrastructure. It uses QoS parameters such as data accuracy and energy awareness in its evaluation [13] and keeps a balance between application QoS requirements and the network life time. The main features of this middleware are divided into three parts [18]. Firstly, an interoperable layer is provided by the system between different application and WSNs. Secondly, the services provided by the middleware are accessed in a flexible way by some standard high level language. Lastly, the provided service for network configuration and adaptation increases the overall lifetime of the network meeting the application requirements. In [13] a cluster based mechanism of QoS support at the middleware layer is proposed. 

The middleware is based on publish-subscriber [19] model of communication and provides real time and fault tolerant services to its application.
section_name: Middleware Layer Based QoS Support in Wireless Sensor Networks

section_content: Although various techniques have been found in literatures for QoS support in WSNs, there still exist many open problems to be solved for QoS provisioning in WSNs. Here we highlight some of the issues as directions of researches in the near future. Most of the sensor network models assume that the sensor nodes and the sink are stationary in nature. However, there exist certain scenarios, for example battlefield environment, where the sensor nodes and the sink are required to be made mobile. Moreover, the topology of the network may also keep on changing dynamically. Therefore, efficient routing protocols are required to address mobility and dynamicity of the wireless sensor network. 

The deployment of heterogeneous multimedia sensor nodes and providing the QoS support to those resource constraint sensor nodes is another possible area of research in wireless sensor networks. 

Integration of the wireless sensor network to Internet, to enable global information sharing, is also an open area of research. Here the user's application will access the sink node through Internet for the needful data analysis. So incorporation of secure data routing is also an important aspect to be considered. Different services may demand different levels of QoS from the network. Depending upon the requirements of the applications, the network should be able to dynamically adjust the QoS levels and provide Service Differentiation based Quality of Service. This is another open area where effort may be put. 

Localized Packet Delivery inside the Wireless Sensor Network maintaining the Quality of Service demands of the applications is another new area of research. 

Wireless links are always vulnerable to different security attacks and also signal interference probability is very high. Thus providing required Quality of Service under all sorts of constraints of Wireless Sensor Networks is a very challenging task.
section_name: Some Open Research Directions

section_content: In this paper we have studied the QoS requirement in WSNs and highlighted some of the challenges posed by the unique characteristics of wireless sensor network. 

We have reviewed some of the QoS aware routing protocols for WSNs. A comparative study of some of the QoS aware routing protocols, taking few important parameters in context of WSNs is done. We have also discussed about the middleware based QoS support in WSNs. Finally, we have concluded by mentioning some of the open research problems in WSNs to initiate further research in the subject.
section_name: Conclusions