Skip to main content
Log in

Model checking mobile ad hoc networks

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. With the semantics of the logic CACTL as given in [18], the property is satisfied, so that the error caused by E is not detected.

  2. Perkins, C., Ratliff, S., Dowdell, J., Steenbrink, L., Mercieca, V.: Ad hoc on-demand distance vector (AODVv2) routing, https://tools.ietf.org/html/draft-ietf-manet-aodvv2-11.

  3. The source code is available at https://github.com/fghassemi/CACTL.

  4. This encoding is available at http://www.fghassemi.adhoc.ir/downloads/leaderelection.zip.

References

  1. Agha GA (1990) ACTORS—a model of concurrent computation in distributed systems. MIT Press, Cambridge

    Google Scholar 

  2. Bhargavan K, Obradovic D, Gunter C (2002) Formal verification of standards for distance vector routing protocols. J ACM 49(4):538–576

    Article  MathSciNet  MATH  Google Scholar 

  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 York

  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 York

  5. Chang EJH (1982) Echo algorithms: depth parallel operations on general graphs. IEEE Trans Softw Eng 8(4):391–401

    Article  Google Scholar 

  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–263

    Article  MATH  Google Scholar 

  7. Clarke EM, Grumberg O, Peled D (2001) Model checking. MIT Press, Cambridge

    Book  Google Scholar 

  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–71

    Article  MathSciNet  Google Scholar 

  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–778

    Article  MATH  Google Scholar 

  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, Berlin

  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–1182

  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, Berlin

  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, Berlin

  14. Fokkink W (2007) Modelling distributed systems. Springer, New York

    Google Scholar 

  15. Fokkink W (2013) Distributed algorithms: an intuitive approach. MIT Press, Cambridge

    MATH  Google Scholar 

  16. Ghassemi F, Fokkink W, Movaghar A (2010) Equational reasoning on mobile ad hoc networks. Fundam Inf 103(1):1–41

    MathSciNet  MATH  Google Scholar 

  17. Ghassemi F, Fokkink W, Movaghar A (2011) Verification of mobile ad hoc networks: an algebraic approach. Theor Comput Sci 412(28):3262–3282

    Article  MathSciNet  MATH  Google Scholar 

  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, Berlin

  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, Berlin

  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, Berlin

  21. Groote JF (2014) Mousavi MR (2014) modeling and analysis of communicating systems. MIT Press, Cambridge

    Google Scholar 

  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, Berlin

  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 York

  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–270

  25. Meolic R, Kapus T, Brezocnik Z (2008) ACTLW—an action-based computation tree logic with unless operator. Inf Sci 178(6):1542–1557

    Article  MathSciNet  MATH  Google Scholar 

  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 York

  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 York

  28. Nanz S, Nielson F, Nielson H (2010) Static analysis of topology-dependent broadcast networks. Inf Comput 208(2):117–139

    Article  MathSciNet  MATH  Google Scholar 

  29. Nanz S, Hankin C (2006) A framework for security analysis of mobile wireless networks. Theor Comput Sci 367(1):203–227

    Article  MathSciNet  MATH  Google Scholar 

  30. Singh A, Ramakrishnan CR, Smolka SA (2010) A process calculus for mobile ad hoc networks. Sci Comput Program 75(6):440–469

    Article  MathSciNet  MATH  Google Scholar 

  31. Sirjani M, Movaghar A, Shali A, de Boer F (2004) Modeling and verification of reactive systems using Rebeca. Fundam Inf 63(4):385–410

    MathSciNet  MATH  Google Scholar 

  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–360

  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 York

  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 York

  35. wRebeca, Efficient Modeling of Mobile Ad hoc Networks. http://fghassemi.adhoc.ir/wrebeca

  36. Yousefi B, Ghassemi F, Khosravi R Modeling and efficient verification of wireless ad hoc network. http://arxiv.org/abs/1604.07179

Download references

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.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fatemeh Ghassemi.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ghassemi, F., Fokkink, W. Model checking mobile ad hoc networks. Form Methods Syst Des 49, 159–189 (2016). https://doi.org/10.1007/s10703-016-0254-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-016-0254-7

Keywords

Navigation