Journal of Sensors
Volume 2015 (2015), Article ID 716561, 7 pages
http://dx.doi.org/10.1155/2015/716561

Research Article

Model-Checking Driven Design of QoS-Based Routing Protocol for Wireless Sensor Networks

Zhi Chen,1,2,3 Ya Peng,1,2 and Wenjing Yue2,4

¹College of Computer, Nanjing University of Posts and Telecommunications, Nanjing 210023, China
²Institute of Computer Technology, Nanjing University of Posts and Telecommunications, Nanjing 210023, China
³State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing 210023, China
⁴College of Telecommunications and Information Engineering, Nanjing University of Posts and Telecommunications, Nanjing 210003, China

Received 7 February 2015; Revised 26 May 2015; Accepted 27 May 2015

Academic Editor: Jesus Corres

Copyright © 2015 Zhi Chen et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

Accurate and reliable routing protocols with Quality of Service (QoS) support determine the mission-critical application efficiency in WSNs. This paper proposes a model-checking design driven framework for designing the QoS-based routing protocols of WSNs, which involves the light-weight design process, the timed automata model, and the alternative QoS verification properties. The accurate feedback of continually model checking in the iterative design process effectively stimulates the parameter tuning of the protocols. We demonstrate the straightforward and modular characteristics of the proposed framework in designing a prototype QoS-based routing protocol. The prototype study shows that the model-checking design framework may complement other design methods and ensure the QoS implementation of the QoS-based routing protocol design for WSNs.

1. Introduction

Wireless sensor networks (WSNs) as the multihop self-organizing networks usually provide vital support for mission-critical applications [1] but have many design challenges such as routing [2], topology control [3], and coverage [4]. Quality of Service (QoS) support may determine the routing efficiency and effectiveness of real-time WSNs due to the constrained energy supply, bandwidth, and delay [5].

In order to design the QoS-based routing protocols for WSNs, we usually verify and evaluate the correctness and performance of these protocols using testing, simulation, and formal verification. Testing usually analyzes the implementations of these protocols and finds the protocol defects, but it is often achieved at a cost and cannot analyze all the conditions of these protocols. Simulation is commonly used in QoS-based routing protocol analysis, but it cannot analyze all the protocol behaviors. Formal verification, for example, model checking, can describe and analyze QoS-based routing protocols accurately and can make up the deficiency of testing and simulation [6–8]. Moreover, model checking can drive the design of some applications and systems, such as the interactive systems [9] and the web application [10] and may design the QoS-based routing protocols from model driven engineering to verification driven engineering [11].

In order to effectively design the QoS-based routing protocols for the mission-critical applications of WSNs, the paper proposes a model-checking driven design framework and demonstrates the effectiveness and advantages by the accurate feedback of continually model checking in the iterative design process. The rest of the paper is organized into five sections. Section 2 briefly introduces related work. Section 3 presents the model-checking driven design framework. Section 4 introduces a prototype of the QoS-based routing protocol. Section 5 presents the protocol verification and design improvement. Finally, the conclusions are offered in Section 6.

2. Related Work

Akkaya and Younis [12] presented an energy-aware QoS routing protocol for WSNs with best-effort traffic and validated the effectiveness of the protocol through simulation. Ben-Othman and Yahya [13] proposed a QoS aware multipath routing protocol based on the concept of service differentiation to control the delay and then used the NS-2 simulations to evaluate the performance of the protocol for WSNs. Sun et al. [14] presented a game-theoretic approach to coordinate the QoS routing for WSNs and used NS-2 to verify its performance with simulations. Cheng et al. [15] used the geographic opportunistic routing for QoS provisioning in WSNs and evaluated the protocol through NS-2 simulations and tests on the hardware nodes. Hu et al. [16] proposed a multihop heterogeneous cluster-based optimization algorithm (MHCOA) for WSNs and also used NS-2 simulation to show the better performance of MHCOA in heterogeneous WSNs.

Akbaş and Turgut [17] presented a routing protocol with QoS support for wireless sensor and actor networks and carried out a series of simulations in OPNET modeler to analyze the performance of the protocol. Hammoudeh and Newman [18] presented an adaptive routing protocol with QoS metrics to meet application requirements of WSNs and used the Dingo WSN simulator to evaluate the performance of the protocol. Tschirner et al. [19] presented the automata-based models for biomedical sensor networks (BSN) and successfully used the driven model-checking technique to complement the simulation techniques to validate QoS properties of BSN.

In the above-mentioned related work, the simulation-based method is the main design verification technique for the QoS-based routing protocols of WSNs [20], but it is possible that some errors which may only occur under special conditions cannot be found in the simulations; thus the QoS metrics may not meet the routing requirements of WSNs in the mission-critical applications.

3. Model-Checking Driven Design Framework

To ensure that the QoS-based routing protocol can save energy, reduce the transmission delay, increase the probability of successful transmission to the sink node, and provide high QoS for WSNs we propose the model-checking driven design framework consisting of the design process, the timed automata model, and the verification properties.

3.1. Design Process

In the model-checking driven design framework for the QoS-based routing protocols of WSNs, the model-checking driven design process shown in Pseudocode 1 uses the iterative and incremental development. A QoS-based routing protocol of WSNs is designed through repeated cycles and in smaller parts at one time and iteratively enhanced through model checking until the full protocol is implemented. At each iteration, the design improvement is made and one new QoS metric is added.

Input the network (), QoS metrics ()

Design QoSRP: the prototype of the QoS − based routing protocol with the metric

while () do

    Model QoSRP using Timed Automata

    Verify QoSRP via Model Checking and Output the verification results

    Evaluate the verification results and improve QoSRP

    if ()

        Redesign QoSRP with the metrics

    endif

endwhile

Output QoSRP

Pseudocode 1: Model-checking driven design process.

In the model-checking driven design process, we assume there are nodes in WSNs and QoS metrics from the application requirements of WSNs and, firstly, design one prototype of the QoS-based routing protocol using the QoS metric of , namely, QoSRP, which we can react with and is simple enough to be understood and implemented easily; then QoSRP is modeled using timed automata [21, 22], verified via model checking, and improved as a result of evaluating the verification results. After taking the first iteration of the design improvement, we add one new QoS metric as the new feature to redesign QoSRP and continue to perform the process.

3.2. Timed Automata Model

In the model-checking driven design framework, we define the timed automata model, including the timed automaton of the sink node and the timed automaton of the sensor nodes according to the behavior of nodes in WSNs.

The timed automaton of the sink node is formally described as

The timed automaton of the sensor nodes is formally described as

In the timed automata model of WSNs, is the probe information sending channel of the sink node, is the message transmitting starting channel of the sensor nodes, and is the message transmitting ending channel of the sensor nodes. When the timed automata work, the clock values increase all with the same speed, and, along the state transitions in every automaton of the sink node or one sensor node, clock values being compared to integers form the guards, which may enable or disable state transitions and inhabit the possible behaviors in the mission-critical applications of WSNs.

3.3. Verification Properties

In the model-checking driven design framework, we select four CTL properties, including no deadlock, network connectivity, delivery rate of data packet, and transmission delay [19], which may be used for model checking.

(1) No Deadlock. This property can be formally specified as follows:

(2) Network Connectivity. Any node of WSNs should communicate with the sink node, no matter directly or through the multihop paths within a certain time, and the isolated nodes should not exist in theory. This property can be formally specified as follows:

(3) Packet Delivery Success Rate. The channel access failure, data packet collision, information transmission error caused by the thermal noise, and external interference may result in the loss of the packets. Packet delivery success rate refers to the ratio of the number of packets successfully received by the sink node and the number of packets sent to the sink node by the sensor nodes. For example, if the sensor nodes send 10 packets to the sink node, we need to verify the packet delivery rate reaching 90%, this property can be formally specified as follows:

(4) Transmission Delay. Transmission delay is the effectiveness of data packets, which must be transmitted to the sink node through the multihop paths in a bounded time. This property of the transmission delay time not exceeding of sending a packet to the sink node by the sensor node can be formally specified as follows:

4. A Prototype of the QoS-Based Routing Protocol: QoSRP

We design a prototype of the QoS-based routing protocol for WSNs, namely, QoSRP. Assuming there are nodes in WSNs, including one sink node and sensor nodes, represents one node, where and the node is the sink node. is the link cost between the node and the node , where , , , and . is the end-to-end optimal transmission cost of the node and the sink node. We define , where ,   represents the set of sensor nodes without the optimal next-hop neighbor nodes, and is the set of sensor nodes with the optimal next-hop neighbor nodes.

(1) Initialization. In an initial state, every node in WSNs broadcasts the “detecting” message consisting of its location information, ideal transmitting radius, and residual energy information by flooding communication and calculates the link costs between it and other nodes according to the received “detecting” messages in the network. We select two QoS metrics, including the transmitting delay and the residual energy over the data transfer paths for calculating the link costs. All link costs of are stored in the node and if the node does not receive the “detecting” message of the node , , where is the ideal maximum value. Then, the sink node starts the process of obtaining the least cost paths. At first, , therefore, we can get

(2) Iteratively Updating the End-to-End Optimal Transmission Costs. For the node in WSNs, where , it updates its according to (3). Consider

According to (14), QoSRP selects as the node in the optimal path, removes from , and adds into . Consider

(3) Finding the Optimal Path and Steadily Sending Data. The sink node periodically broadcasts a message to form one optimal path; other nodes select a node as the parent node within the set of until all nodes can route to the sink node. After forming one optimal path, the sensor nodes steadily send data to the sink node via the path in one period.

5. Protocol Verification and Design Improvement

5.1. Protocol Modeling

We model QoSRP based on the timed automata model using the model checker UPPAAL [23]. In usual scenarios, all sensor nodes are modeled with the parametric timed automata in UPPAAL.

First of all, we set up a set of identifiers to record all nodes. Assuming that there are sensor nodes in WSNs, . In QoSRP, the identifier of the sink node is , and the identifier of one other node is , where . The behaviors of one sensor node in WSNs can be described using two-timed automaton: and . The timed automaton of shown in Figure 1 describes the sink node, and the timed automaton of shown in Figure 2 is responsible for message sending and receiving of other sensor nodes.

Figure 1: Timed automaton model of .

Figure 2: Timed automaton model of .

Not all nodes in a real-time system are turned on simultaneously, and we constrain the turn-on times of sensor nodes in during which any sensor node can be turned on. In Figure 1, indicates whether an acknowledge message of the node is received by the sink node and before the sink node receives the acknowledge message, .

and , respectively, indicate that one node starts transmitting messages and ends a message transmission; and are synchronized with and . means that the sink periodically sends probe information and is synchronization with ; indicates the connection matrix of the nodes in WSNs. represents the number of packets sent to the sink node by the node and also ensures that the node can eventually connect to the sink node if .

In Figure 2, the time automaton of is divided into two phases. The first phase in is to find out the minimum cost path from the node to the sink node, and the second phase is to the transmit data. In , represents the number of packets received by the node from the other node , and represents the number of packets sent by the node . We can compare and to illustrate the packet transmission success rate.

In Figure 2, indicates the shortest distances of the node to the sink node, and is the link communication cost between two nodes. In , the variable of records the identifier of the node sending messages. follows the task processing mechanism of first-come, first-served in TinyOS [24] and considers the transmission delay in modeling message sending. Message transmission may need a few seconds, change the order of message sending and receiving, and affect the protocol implementation, so it cannot be ignored. Therefore we add the variable of simulating the message delay, where and DELAY is the maximum value of the message transmission delay.

5.2. Protocol Verification

We verify QoSRP about the properties such as no deadlock, network connectivity, delivery rate of data packet, and transmission delay [19]. Table 1 is the verification results in the first iteration in which the QoS metric is the residual energy over the data transfer paths, and it shows that the performance properties were not satisfied if the sensor nodes send fewer packets to the sink node, and the packet successful delivery rates did not satisfy the network QoS requirements.

Table 1: Verification results in the first iteration.

Property
Network size
Results
CPU (s)
Memory (MB)

 not deadlock
5
Y
258.23
31.36

 not deadlock
6
Y
5640.44
1933.5

<>  received[] > 0
5
Y
326.67
93.45

<> received[] > 0
6
Y
633.52
530.5

 periods[] < 6
5
N
12.24
112.56

 periods[] < 7
5
Y
13.34
112.55

 periods[] < 2
5
N
11.86
112.62

 periods[] < 3
5
Y
12.11
112.58

 periods[] < 2
5
N
12.56
112.62

 periods[] < 3
5
Y
12.97
112.55

 periods[] < 5
6
N
12.83
112.57

 periods[] < 3
6
N
56.74
630.29

 (periods[] >= 10) imply (received[] >= 8)
5
Y
11.64
112.59

 (periods[] >= 10) imply (received[] >= 9)
5
N
5.25
107.63

 (periods[] >= 10) imply (received[] >= 7)
5
Y
11.58
112.53

 (periods[] >= 10) imply (received[] >= 8)
5
N
4.12
106.66

 (periods[] >= 10) imply (received[] >= 5)
5
Y
11.63
112.64

 (periods[] >= 10) imply (received[] >= 6)
5
N
4.95
106.68

time[] < 50
5
N
0.763
26.02

time[] < 80
5
N
63.63
161.99

time[] < 100
5
Y
360.5
431.13

5.3. Design Improvement

According to the verification results shown in Table 1, the performance of the current QoSRP still requires to be improved, so we continue to tune the parameters shown in Figures 1 and 2, such as , , , , and , and optimize QoSRP through model checking.

Now we combine the two QoS metrics of the transmitting delay and the residual energy over the data transfer paths to redesign QoSRP. The pseudocode of the redesigned QoSRP in one period is given in Pseudocode 2. According to the model-checking driven design framework, the new QoSRP is reevaluated through model checking and Table 2 presents the verification results which show a better performance of the protocol.

Table 2: Verification results in one next iteration.

Property
Network size
Results
CPU (s)
Memory (MB)

 not deadlock
5
Y
259.15
32.36

 not deadlock
6
Y
5587.29
2001.5

<> received[] > 0
5
Y
324.65
94.66

<> received[] > 0
6
Y
613.37
535.12

 periods[] < 6
5
Y
13.16
112.55

 periods[] < 7
5
Y
13.55
112.79

 periods[] < 2
5
Y
11.59
112.16

 periods[] < 3
5
Y
12.51
113.69

 periods[] < 2
5
Y
12.97
112.79

 periods[] < 3
5
Y
12.48
112.28

 periods[] < 5
6
Y
12.65
112.32

 periods[] < 3
6
N
56.29
631.55

 (periods[] >= 10) imply (received[] >= 8)
5
Y
12.15
114.43

 (periods[] >= 10) imply (received[] >= 9)
5
Y
5.65
108.63

 (periods[] >= 10) imply (received[] >= 7)
5
Y
12.01
113.18

 (periods[] >= 10) imply (received[] >= 8)
5
Y
4.23
105.08

 (periods[] >= 10) imply (received[] >= 5)
5
Y
12.03
111.98

 (periods[] >= 10) imply (received[] >= 6)
5
Y
4.98
105.76

time[] < 50
5
N
0.754
25.92

time[] < 80
5
Y
63.78
162.03

time[] < 100
5
Y
361.4
430.18

Input the network (), QoS metrics (Residual_Energy,  Transmitting_Delay)

Ouput QoSRP: the impoved prototype of the QoS − based  routing  protocol

BEGIN

    for node (  to  )

        Broadcast Detecting_Message(, , )

    endfor

    for node (  to  )

        for node (  to  )

             // Calculate   only for verifications

    //   for the normalization function

        endfor

    for node (  to  )

        Update

    endfor

    repeat

        Adjust

        Evalute QoS

    until Find one optimal path

    for node (  to  )

        Sending data via the optimal path

    endfor

END

Pseudocode 2: Pseudocode of the redesign QoSRP.

6. Conclusions

The QoS-based routing protocols are the mission-critical application requirements of WSNs and involve many verification and evaluation techniques such as testing, simulation, and formal verification. This paper proposes a model-checking driven framework for designing these protocols, including the iterative design process, the timed automata model, and the alternative verification properties. We design a prototype of the QoS-based routing protocol and demonstrate continuing improving the protocol using the proposed framework and UPPAAL model checking. The results of the prototype study show that the model-checking driven design framework is a straightforward and modular method and supports the light-weight iterative redesign for designing QoS-based routing protocols of WSNs, and the feedback of continually model checking accurately drives the performance improving of the protocols of real-time WSNs.

Conflict of Interests

The authors declare no conflict of interests.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (Grant no. 60905040), the Basic Research Program of Jiangsu Province (Natural Science Foundation) (Grant no. BK20131382), the 11th Six Talent Peaks Program of Jiangsu Province (Grant no. XXRJ-009), China Postdoctoral Science Foundation (Grant no. 2013M531393), and Jiangsu Planned Projects for Postdoctoral Research Funds (Grant no. 1102102C).

References

M. A. Mahmood, W. K. G. Seah, and I. Welch, “Reliability in wireless sensor networks: a survey and challenges ahead,” Computer Networks, vol. 79, pp. 166–187, 2015.

M. Radi, B. Dezfouli, K. A. Bakar, and M. Lee, “Multipath routing in wireless sensor networks: survey and research challenges,” Sensors, vol. 12, no. 1, pp. 650–685, 2012.

Z. Chen, S. Li, and W. Yue, “SOFM neural network based hierarchical topology control for wireless sensor networks,” Journal of Sensors, vol. 2014, Article ID 121278, 6 pages, 2014.

Z. Chen, S. Li, and W. Yue, “Memetic algorithm-based multi-objective coverage optimization for wireless sensor networks,” Sensors, vol. 14, no. 11, pp. 20500–20518, 2014.

R. A. Uthra and S. V. K. Raja, “QoS routing in wireless sensor networks—a survey,” ACM Computing Surveys, vol. 45, no. 1, article 9, 2012.

J. Woodcock, P. G. Larsen, J. Bicarregui, and J. Fitzgerald, “Formal methods: practice and experience,” ACM Computing Surveys, vol. 41, no. 4, article 19, 2009.

D. Le Metayer, “Formal methods as a link between software code and legal rules,” in Software Engineering and Formal Methods: 9th International Conference, SEFM 2011, Montevideo, Uruguay, November 14–18, 2011. Proceedings, vol. 7041 of Lecture Notes in Computer Science, pp. 3–18, Springer, Berlin, Germany, 2011.

E. M. Clarke, J. O. Grumberg, and D. A. Peled, Model Checking, MIT Press, Boston, Mass, USA, 1999.

A. Cerone and N. Elbegbayan, “Model-checking driven design of interactive systems,” Electronic Notes in Theoretical Computer Science, vol. 183, pp. 3–20, 2007.

F. M. Donini, M. Mongiello, M. Ruta, and R. Totaro, “A model checking-based method for verifying web application design,” Electronic Notes in Theoretical Computer Science, vol. 151, no. 2, pp. 19–32, 2006.

F. Kordon, J. Hugues, and X. Renault, “From model driven engineering to verification driven engineering,” in Software Technologies for Embedded and Ubiquitous Systems, vol. 5287 of Lecture Notes in Computer Science, pp. 381–393, Springer, Berlin, Germany, 2008.

K. Akkaya and M. Younis, “An energy-aware QoS routing protocol for wireless sensor networks,” in Proceedings of the 23rd IEEE International Conference on Distributed Computing Systems Workshops, pp. 710–715, Providence, RI, USA, May 2003.

J. Ben-Othman and B. Yahya, “Energy efficient and QoS based routing protocol for wireless sensor networks,” Journal of Parallel and Distributed Computing, vol. 70, no. 8, pp. 849–857, 2010.

R. Sun, E. Ding, H. Jiang, R. Geng, and W. Chen, “Game theoretic approach in adapting QoS routing protocol for wireless multimedia sensor networks,” International Journal of Distributed Sensor Networks, vol. 2014, Article ID 745252, 5 pages, 2014.

L. Cheng, J. Niu, J. Cao, S. K. Das, and Y. Gu, “QoS aware geographic opportunistic routing in wireless sensor networks,” IEEE Transactions on Parallel and Distributed Systems, vol. 25, no. 7, pp. 1864–1875, 2014.

S. Hu, J. Han, X. Wei, and Z. Chen, “A multi-hop heterogeneous cluster-based optimization algorithm for wireless sensor networks,” Wireless Networks, vol. 21, no. 1, pp. 57–65, 2015.

M. I. Akbaş and D. Turgut, “Lightweight routing with dynamic interests in wireless sensor and actor networks,” Ad Hoc Networks, vol. 11, no. 8, pp. 2313–2328, 2013.

M. Hammoudeh and R. Newman, “Adaptive routing in wireless sensor networks: QoS optimisation for enhanced application performance,” Information Fusion, vol. 22, pp. 3–15, 2015.

S. Tschirner, X. Liang, and Y. Wang, “Model-based validation of QoS properties of biomedical sensor networks,” in Proceedings of the 8th ACM International Conference on Embedded Software, pp. 69–78, October 2008.

S. Sridevi and M. Usha, “Energy-aware QoS based routing protocols for heterogeneous WSNs—a survey,” International Journal of Computer Science and Business Informatics, vol. 11, no. 1, pp. 1–19, 2014.

J. Bengtsson and Y. Wang, “Timed automata: semantics, algorithms and tools,” in Lectures on Concurrency and Petri Nets, vol. 3098 of Lecture Notes in Computer Science, pp. 87–124, Springer, Berlin, Germany, 2004.

P. Fontana and R. Cleaveland, “A menagerie of timed automata,” ACM Computing Surveys, vol. 46, no. 3, article 40, 2014.

G. Behrmann, A. David, and K. G. Larsen, “A tutorial on uppaal,” in Formal Methods for the Design of Real-Time Systems, vol. 3185 of Lecture Notes in Computer Science, pp. 200–236, Springer, Berlin, Germany, 2004.

P. Levis and D. Gay, TinyOS Programming, Cambridge University Press, Cambridge, UK, 2009.