Inference of Channel Priorities for Asynchronous Communication

  • Nathanaël Sensfelder
  • Aurélie Hurault
  • Philippe Quéinnec
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 620)


In distributed systems, the order in which the messages are received by the processes is crucial to ensure the expected behavior. This paper presents a communication model which allows for restrictions on the deliveries of a channel depending on the availability of messages in other channels. This corresponds to prioritizing some channels over others. It relies on a framework able to verify if a given system satisfies a user defined LTL (Linear Temporal Logic) property with different priorities. We also propose to automatically infer the channel priorities so that the system does not infringe on this temporal property.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1. Jos C. M. Baeten, Jan A. Bergstra, and Jan Willem Klop. Syntax and defining equations for an interrupt mechanism in process algebra. Fundamenta Informaticae, IX:127–168, 1986.Google Scholar
  2. 2. Falko Bause. Analysis of Petri nets with a dynamic priority method. In 18th International Conference on Application and Theory of Petri Nets ICATPN’97, volume 1248 of Lecture Notes in Computer Science, pages 215–234. Springer, 1997.Google Scholar
  3. 3. Eike Best and Maciej Koutny. Petri net semantics of priority systems. Theoretical Computer Science, 96(1):175–174, 1992.Google Scholar
  4. 4. Juanito Camilleri and Glynn Winskel. CCS with priority choice. Information and Computation, 116(1):26–37, 1995.Google Scholar
  5. 5. Bernadette Charron-Bost, Friedemann Mattern, and Gerard Tel. Synchronous, asynchronous, and causally ordered communication. Distributed Computing, 9(4):173–191, February 1996.Google Scholar
  6. 6. Florent Chevrou, Aurélie Hurault, and Philippe Quéinnec. Automated verification of asynchronous communicating systems with TLA+. Electronic Communications of the EASST (special issue AVOCS’15), 72:1–15, 2015.Google Scholar
  7. 7. Florent Chevrou, Aurélie Hurault, and Philippe Quéinnec. On the diversity of asynchronous communication. Formal Aspects of Computing, 28(5):847–879, 2016.Google Scholar
  8. 8. Edmund M. Clarke and E. Allen Emerson. Design and synthesis of synchronization skeletons using branching-time temporal logic. In Logics of Programs, volume 131 of Lecture Notes in Computer Science, pages 52–71. Springer, 1981.Google Scholar
  9. 9. Rance Cleaveland and Matthew Hennessy. Priorities in process algebras. Information and Computation, 87(1/2):58–77, 1990.Google Scholar
  10. 10. George Coulouris, Jean Dollimore, and Tim Kindberg. Distributed Systems: concepts and design. Addison Wesley, second edition, 1994.Google Scholar
  11. 11. M. Elizabeth C. Hull. Occam - A programming language for multiprocessor systems. Computer Languages, 12(1):27–37, 1987.Google Scholar
  12. 12. Ajay D. Kshemkalyani and Mukesh Singhal. Distributed Computing: Principles, Algorithms, and Systems. Cambridge University Press, March 2011.Google Scholar
  13. 13. Leslie Lamport. Specifying Systems. Addison Wesley, 2003.Google Scholar
  14. 14. K. V. S. Prasad. A calculus of broadcasting systems. Science of Computer Programming, 25(2-3):285–327, 1995.Google Scholar
  15. 15. Michel Raynal. Distributed Algorithms for Message-Passing Systems. Springer, 2013.Google Scholar

Copyright information

© Springer International Publishing AG 2018

Authors and Affiliations

  • Nathanaël Sensfelder
    • 1
  • Aurélie Hurault
    • 1
  • Philippe Quéinnec
    • 1
  1. 1.IRIT - Université de ToulouseToulouseFrance

Personalised recommendations