Advertisement

Formal Methods in System Design

, Volume 49, Issue 3, pp 159–189 | Cite as

Model checking mobile ad hoc networks

  • Fatemeh Ghassemi
  • Wan Fokkink
Article

Abstract

Modeling arbitrary connectivity changes within mobile ad hoc networks (MANETs) makes application of automated formal verification challenging. We use constrained labeled transition systems as a semantic model to represent mobility. To model check MANET protocols with respect to the underlying topology and connectivity changes, we introduce a branching-time temporal logic. The path quantifiers are parameterized by multi-hop constraints over topologies, to discriminate the paths over which the temporal behavior should be investigated; the paths that violate the multi-hop constraints are not considered. A model checking algorithm is presented to verify MANETs that allow arbitrary mobility, under the assumption of reliable communication. It is applied to analyze a leader election protocol.

Keywords

Mobile ad hoc networks Model checking Multi-hop network constraints Constrained labeled transition systems 

Notes

Acknowledgments

Jan Friso Groote provided vital support in our employment of the mCRL2 toolset. Saeide Ahmadi helped with the implementation of an earlier CACTL model checker, in Maude.

References

  1. 1.
    Agha GA (1990) ACTORS—a model of concurrent computation in distributed systems. MIT Press, CambridgeGoogle Scholar
  2. 2.
    Bhargavan K, Obradovic D, Gunter C (2002) Formal verification of standards for distance vector routing protocols. J ACM 49(4):538–576MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Blom S, Fokkink W, Groote JF, van Langevelde I, Lisser B, van de Pol, J (2001) \(\rm \mu \)CRL: a toolset for analysing algebraic specifications. In: Proceedings of the 13th conference on computer aided verification. Lecture notes in computer science, vol 2102, pp 250–254. Springer, New YorkGoogle Scholar
  4. 4.
    Bourke T, van Glabbeek R, Höfner P (2014) A mechanized proof of loop freedom of the (untimed) AODV routing protocol. In: Proceedings of the 12th symposium on automated technology for verification and analysis. Lecture notes in computer science, vol 8837, pp. 47–63. Springer, New YorkGoogle Scholar
  5. 5.
    Chang EJH (1982) Echo algorithms: depth parallel operations on general graphs. IEEE Trans Softw Eng 8(4):391–401CrossRefGoogle Scholar
  6. 6.
    Clarke EM, Emerson EA, Sistla AP (1986) automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans Progr Lang Syste 8(2):244–263CrossRefzbMATHGoogle Scholar
  7. 7.
    Clarke EM, Grumberg O, Peled D (2001) Model checking. MIT Press, CambridgeCrossRefGoogle Scholar
  8. 8.
    Clarke EM, Emerson EA (1981) Design and synthesis of synchronization skeletons using branching-time temporal logic. Logic Prog Lect Notes Comput Sci 131:52–71MathSciNetCrossRefGoogle Scholar
  9. 9.
    De Nicola R, Fantechi A, Gnesi S, Ristori G (1993) An action-based framework for verifying logical and behavioural properties of concurrent systems. Comput Netwd ISDN Syst 25(7):761–778CrossRefzbMATHGoogle Scholar
  10. 10.
    De Nicola R, Vaandrager F (1990) Action versus state based logics for transition systems. In: Semantics of systems of concurrent processes. Lecture notes in computer science, vol 469, pp 407–419. Springer, BerlinGoogle Scholar
  11. 11.
    de Renesse R, Aghvami A (2004) Formal verification of ad-hoc routing protocols using SPIN model checker. In: IEEE Proceedings of the 12th Mediterranean electrotechnical conference, pp 1177–1182Google Scholar
  12. 12.
    Fehnker A, van Glabbeek R, Höfner P, McIver A, Portmann M, Tan W (2012) A process algebra for wireless mesh networks. In: Proceedings of the 21st European symposium on programming. Lecture notes in computer science, vol 7211, pp 295–315. Springer, BerlinGoogle Scholar
  13. 13.
    Fehnker A, van Glabbeek R, Höfner P, McIver A, Portmann M, Tan W (2012) Automated analysis of AODV using UPPAAL. In: Proceedings of the 18th conference on tools and algorithms for the construction and analysis of systems. Lecture notes in computer science, vol 7214, pp 173–187. Springer, BerlinGoogle Scholar
  14. 14.
    Fokkink W (2007) Modelling distributed systems. Springer, New YorkGoogle Scholar
  15. 15.
    Fokkink W (2013) Distributed algorithms: an intuitive approach. MIT Press, CambridgezbMATHGoogle Scholar
  16. 16.
    Ghassemi F, Fokkink W, Movaghar A (2010) Equational reasoning on mobile ad hoc networks. Fundam Inf 103(1):1–41MathSciNetzbMATHGoogle Scholar
  17. 17.
    Ghassemi F, Fokkink W, Movaghar A (2011) Verification of mobile ad hoc networks: an algebraic approach. Theor Comput Sci 412(28):3262–3282MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Ghassemi F, Ahmadi S, Fokkink W, Movaghar A (2013) Model checking MANETs with arbitrary mobility. In: Proceedings of the 5th conference on fundamentals of software engineering. Lecture notes in computer science, vol 8161, pp 217–232. Springer, BerlinGoogle Scholar
  19. 19.
    Ghassemi F, Talebi M, Movaghar A, Fokkink W (2011) Stochastic restricted broadcast process theory. In: Proceedings of the 8th European performance engineering workshop. Lecture notes in computer science, vol 6977, pp 72–86. Springer, BerlinGoogle Scholar
  20. 20.
    Godskesen J (2007) A calculus for mobile ad hoc networks. In: Proceedings of the 9th conference on coordination models and languages. Lecture notes in computer science, vol 4467, pp 132–150. Springer, BerlinGoogle Scholar
  21. 21.
    Groote JF (2014) Mousavi MR (2014) modeling and analysis of communicating systems. MIT Press, CambridgeGoogle Scholar
  22. 22.
    Hammer M, Weber M (2006) To store or not to store reloaded: Reclaiming memory on demand. In: Proceedings of the 11th workshop on formal methods for industrial critical systems. Lecture notes in computer science, vol 4346, pp 51–66. Springer, BerlinGoogle Scholar
  23. 23.
    Kouzapas D, Philippou A (2011) A process calculus for dynamic networks. In: Formal techniques for distributed systems. Lecture notes in computer science, vol 6722, pp 213–227. Springer, New YorkGoogle Scholar
  24. 24.
    McIver A, Fehnker A (2006) Formal techniques for analysis of wireless networks. In: IEEE Proceedings of the 2nd symposium on leveraging applications of formal methods, pp 263–270Google Scholar
  25. 25.
    Meolic R, Kapus T, Brezocnik Z (2008) ACTLW—an action-based computation tree logic with unless operator. Inf Sci 178(6):1542–1557MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Merro M (2007) An observational theory for mobile ad hoc networks. In: Proeedings of the 23rd conference on the mathematical foundations of programming semantics. Electronic notes in theoretical computer science, vol 173, pp 275–293, Elsevier, New YorkGoogle Scholar
  27. 27.
    Mezzetti N, Sangiorgi D (2006) Towards a calculus for wireless systems. In: Proceedings of the 22nd conference on mathematical foundations of programming semantics. Electronic notes in theoretical computer science, vol 158, pp 331–353. Elsevier, New YorkGoogle Scholar
  28. 28.
    Nanz S, Nielson F, Nielson H (2010) Static analysis of topology-dependent broadcast networks. Inf Comput 208(2):117–139MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Nanz S, Hankin C (2006) A framework for security analysis of mobile wireless networks. Theor Comput Sci 367(1):203–227MathSciNetCrossRefzbMATHGoogle Scholar
  30. 30.
    Singh A, Ramakrishnan CR, Smolka SA (2010) A process calculus for mobile ad hoc networks. Sci Comput Program 75(6):440–469MathSciNetCrossRefzbMATHGoogle Scholar
  31. 31.
    Sirjani M, Movaghar A, Shali A, de Boer F (2004) Modeling and verification of reactive systems using Rebeca. Fundam Inf 63(4):385–410MathSciNetzbMATHGoogle Scholar
  32. 32.
    Vasudevan S, Kurose J, Towsley D (2004) Design and analysis of a leader election algorithm for mobile ad hoc networks. In: 12th conference on network protocols, pp 350–360Google Scholar
  33. 33.
    Wibling O, Parrow J, Pears A (2004) Automatized verification of ad hoc routing protocols. In: Proceedings of the 24th IFIP conference on formal techniques for networked and distributed systems. Lecture notes in computer science, vol 3235, pp 343–358. Springer, New YorkGoogle Scholar
  34. 34.
    Wibling O, Parrow J, Pears A (2005) Ad hoc routing protocol verification through broadcast abstraction. In: Proceedings of the 25th IFIP conference on formal techniques for networked and distributed systems. Lecture notes in computer science, vol 3731, pp 128–142. Springer, New YorkGoogle Scholar
  35. 35.
    wRebeca, Efficient Modeling of Mobile Ad hoc Networks. http://fghassemi.adhoc.ir/wrebeca
  36. 36.
    Yousefi B, Ghassemi F, Khosravi R Modeling and efficient verification of wireless ad hoc network. http://arxiv.org/abs/1604.07179

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  1. 1.University of TehranTehranIran
  2. 2.School of Computer Science, Institute for Research in Fundamental Sciences (IPM)TehranIran
  3. 3.Vrije Universiteit AmsterdamAmsterdamThe Netherlands

Personalised recommendations