Dunagan, J. D., Bahl, P., and Chandra, R. (2008). Slotted
seeded channel hopping for capacity improvment in
wireless networks.
Gawanmeh, A. (2011). Embedding and verification of zig-
bee protocol stack in event-b. Procedia Computer Sci-
ence, 5:736–741.
Groß, C., Hermanns, H., and Pulungan, R. (2007). Does
clock precision influence zigbee’s energy consump-
tions? In Tovar, E., Tsigas, P., and Fouchal, H., ed-
itors, Principles of Distributed Systems, pages 174–
188, Berlin, Heidelberg. Springer Berlin Heidelberg.
Holzmann, G. J. (2003). The SPIN MODEL CHECKER:
Primer and Reference Manual. Addison-Wesley Pear-
son Education, first edition.
Kamgueu, P. O. (2017). Configuration Dynamique et
routage pour l’internet des objets. PhD thesis, Uni-
versity of Lorraine (France), University of Yaound
´
e.
Kapus, T. (2017). Using prism model checker as a vali-
dation tool for an analytical model of ieee 802.15.4
networks. Simulation Modelling Practice and Theory,
77:367 – 378.
Kauer, F., K
¨
ostler, M., L
¨
ubkert, T., and Turau, V. (2016).
Formal analysis and verification of the ieee 802.15.4
dsme slot allocation. In Proceedings of the 19th ACM
International Conference on Modeling, Analysis and
Simulation of Wireless and Mobile Systems, MSWiM
’16, pages 140–147, New York, NY, USA. ACM.
Kripke, S. (1963). Semantical considerations on modal
logic. Acta Philosophica Fennica, 16:83–94.
Lin, J., Yu, W., Zhang, N., Yang, X., Zhang, H., and Zhao,
W. (2017). A survey on internet of things: Archi-
tecture, enabling technologies, security and privacy,
and applications. IEEE Internet of Things Journal,
4(5):1125–1142.
Pnueli, A. (1977). The temporal logic of programs. In
Proceedings of the 18th Annual Symposium on Foun-
dations of Computer Science, SFCS’77, pages 46–57,
Washington, DC, USA. IEEE Computer Society.
Rege, V. and Pecorella, T. (2016). A realistic mac and en-
ergy model for 802.15. 4. In Proceedings of the Work-
shop on ns-3, pages 79–84. ACM.
Sanabria, L., Faridi, A., adn Jaume Barcelo, B. B., and
Olivier, M. (2013). Future evolution of csma proto-
cols for the ieee 802.11 standard. In Second IEEE ICC
Workshop On Telecommunication Standards: From
Research to Standards.
Society, I. C. (2017). Ieee 802.15.4-2017 - ieee standard for
low-rate wireless networks. Electronic.
Wu, B., Lemmon, M. D., and Lin, H. (2018). Formal
methods for stability analysis of networked control
systems with ieee 802.15.4 protocol. IEEE TRANS-
ACTIONS ON CONTROL SYSTEMS TECHNOLOGY,
26(5):1635–1645.
Wu, S., Mao, W., and Wang, X. (2014). Performance study
on a csma/ca-based mac protocol for multi-user mimo
wireless lans. IEEE Transactions on Wireless Com-
munications, 16(6):3153–3166.
1 p r o c t y p e phy ( i n t i d ; ch an i n ; ch a n o u t ; chan m2p ; chan p2m1 ;
chan p2m2 ) {
2 m typ e : s t a t e t r x = s t a r t ;
3 i n t e n e r g y = MAX EN;
4
5 b o o l rmsg = 0 ;
6 i n t r m s g s e q = 0 , r m s g s e q 2 = 0 ; / / s e q . No . o f c u r r e n t d a t a /
ack r e c ei v e d f r o m MAC
7 m typ e : msg rmsgT ;
8 m typ e : msg rmsg T2 ; / / me s s a g e r e c e i v e d from MAC
9 i n t b a tt e m p t =0 ;
10 b o o l smsg = 0 ;
11 i n t s m s g s e q = 0 ; / / s e q . No . o f c u r r e n t d a t a / a c k r e c e i v e d t o
MAC
12 m typ e : msg smsgT ; / / me s s a g e s e n t t o MAC
13 i n t r i d ;
14
15 do
16 : : t r x == s t a r t −> t r x = i d l e
17 : : t r x == i d l e −>
18 i f
19 : : m2p ? rmsgT , r m s g se q −>
20 rmsg = 1 ; p2m1 ! rmsgT , r m s g se q , 1 ; t r x = t x o n ;
21 e n e r g y = e n e r g y − TXON;
22 : : nemp ty ( i n ) −> smsg = 1 ; t r x = r x on ;
23 e n e r g y = e n e r g y − RXON ;
24 f i
25 : : t r x == t x on −>
26 i f
27 : : rms g −>
28 i f
29 : : ! c c a −> t r x = t r a n s m i t ;
30 : : c c a −> t r x = b a c k o f f ;
31 f i
32 : : ( ne mpt y ( i n ) ) −> smsg = 1 ; t r x = r x on ;
33 e n e r g y = e n e r g y − TXRX;
34 : : ( ! r ms g && em pty ( i n ) ) −> t r x = i d l e ;
35 f i
36 : : t r x == r x on −>
37 i f
38 : : smsg −>
39 i f
40 : : p r e a m b u l e −> t r x = r e c e i v e ;
41 : : ! p r e a m b u l e −> t r x = i d l e ;
42 f i
43 : : m2p ? rmsgT , r m s g se q −>
44 rmsg = 1 ; p2m1 ! rmsgT , r m s g se q , 1 ; t r x = t x o n ;
45 e n e r g y = e n e r g y − RXTX ;
46 : : ( ! smsg && em pty ( m2p ) ) −> t r x = i d l e ;
47 f i
48 : : t r x == t r a n s m i t −>
49 i f
50 : : ( rmsg && ! c c a ) −>
51 a t o m i c { o u t ! rmsgT , i d , r m s g se q ; rmsg = 0 ; c c a = 1 ; }
52 i f
53 : : rmsgT == DATA −> e n e r g y = e n e r g y − TX DATA ;
54 : : rmsgT == ACK −> e n e r g y = e n e r g y − TX ACK;
55 f i
56 : : m2p ? rmsgT2 , r m s g s e q 2 −> p2m1 ! rmsgT2 , r m s g s e q2 , 0 ;
57 : : ( ! r ms g && em pty ( m2p ) ) −> sk i p ;
58 : : ( rmsg && c c a ) −> at o m i c { rmsg = 0 ; c o l l i s i o n = 1; }
59 p r i n t f ( ”TX: c o l l i s i o n \ n ” ) ;
60 f i
61 t r x = t x o n ;
62 : : t r x == r e c e i v e −>
63 i f
64 : : ( smsg && p r e a m b u l e ) −>
65 a t o m i c { i n ?smsgT , r i d , s m s g s e q ; p r e a m b u l e = 0; }
66 i f
67 : : r i d == 1−i d −> p2m2 ! smsgT , s m s g s e q ; smsg = 0 ;
68 : : e l s e −> s k i p ;
69 f i
70 p r e a m b u l e = 0 ;
71 i f
72 : : smsgT == DATA −> e n e r g y = e n e r g y − RX DATA;
73 : : smsgT == ACK −> e n e r g y = e n e r g y − RX ACK;
74 f i
75 : : ! smsg −> s k i p ;
76 : : ( smsg && ! p r e a m b u l e ) −> a t o m i c { c o l l i s i o n = 1 ; smsg = 0 ; }
77 p r i n t f ( ”RX: c o l l i s i o n \ n ” ) ;
78 f i
79 t r x = r x on ;
80 : : t r x == b a c k o f f −>
81 do
82 : : ! c c a −> b a t t e m p t = 0 ; t r x = t x o n ; b r e a k ;
83 : : t i m e o u t −>
84 b a t t e m p t = ( b a t t e m p t + 1) ;
85 i f
86 : : ( b a t t e m p t < MAX BACKOFFS) −> s k i p
87 : : e l s e −> b a t t e m p t = 0 ; t r x = i d l e ; b r e a k ;
88 f i
89 od
90 od
91 }
Figure 12: PROMELA source model of the physical layer
process.
IoTBDS 2019 - 4th International Conference on Internet of Things, Big Data and Security
114