Skip to main content

Constructing Mid-Points for Two-Party Asynchronous Protocols

  • Conference paper
Principles of Distributed Systems (OPODIS 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7109))

Included in the following conference series:

Abstract

Communication protocols describe the steps that the communication end-points must take in order to achieve a common goal. In practice, networks often contain mid-points, which can relay, redirect, or filter messages exchanged by the end-points. A mid-point can enforce a communication protocol: it forwards the messages that conform to the protocol, and drops them otherwise. Protocol specifications typically define only the end-points’ behavior. Implementing a mid-point that enforces a protocol is nontrivial: the mid-point’s behavior depends on the end-point’s behavior, and also on the behavior of the communication environment in which the protocol executes.

We present a process algebraic framework that takes as input the formal specifications of the protocol and the environment and outputs a specification for a mid-point that enforces the protocol. We prove that the mid-point specifications synthesized by our framework are correct: only messages that could have resulted from correctly executing end-points are forwarded. As an application, we construct a formal model for the mid-point that enforces the TCP three-way handshake protocol.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bergstra, J., Klop, J.: Algebra of communicating processes with abstraction. Theor. Comput. Sci. 37, 77–121 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  2. Bhargavan, K., Chandra, S., McCann, P., Gunter, C.: What packets may come: Automata for network monitoring. In: POPL, pp. 206–219. ACM (2001)

    Google Scholar 

  3. von Bidder-Senn, D., Basin, D., Caronni, G.: Midpoints Versus Endpoints: From Protocols to Firewalls. In: Katz, J., Yung, M. (eds.) ACNS 2007. LNCS, vol. 4521, pp. 46–64. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. Blom, S., Calamé, J.R., Lisser, B., Orzan, S., Pang, J., van de Pol, J., Dashti, M.T., Wijs, A.J.: Distributed Analysis with μCRL: A Compendium of Case Studies. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 683–689. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  5. Blom, S., Fokkink, W., Groote, J.F., van Langevelde, I., Lisser, B., van de Pol, J.: μCRL: A Toolset for Analysing Algebraic Specifications. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 250–254. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  6. Blom, S., van de Pol, J., Weber, M.: LTSmin: Distributed and Symbolic Reachability. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 354–359. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  7. Brucker, A., Brügger, L., Kearney, P., Wolff, B.: Verified firewall policy transformations for test case generation. In: ICST, pp. 345–354. IEEE Computer Society (2010)

    Google Scholar 

  8. Brucker, A.D., Brügger, L., Wolff, B.: Model-based firewall conformance testing. In: 8th International Workshop on Formal Approaches to Testing of Software, Tokyo, Japan, pp. 103–118 (2008)

    Google Scholar 

  9. Postel, J. (ed.): Transmission control protocol (1981)

    Google Scholar 

  10. Fernandez, J., Garavel, H., Kerbrat, A., Mounier, L., Mateescu, R., Sighireanu, M.: CADP - A Protocol Validation and Verification Toolbox. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 437–440. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  11. van Glabbeek, R.: The linear time – branching time spectrum II. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 66–81. Springer, Heidelberg (1993)

    Google Scholar 

  12. Groote, J., Ponse, A.: The syntax and semantics of μCRL. In: Algebra of Communicating Processes 1994. Workshops in Computing Series, pp. 26–62. Springer, Heidelberg (1995); Also as technical report CS-R9076, CWI, Amsterdam, The Netherlands (December 1990)

    Google Scholar 

  13. Mayer, A., Wool, A., Ziskind, E.: Offline firewall analysis. Int. J. Inf. Sec. 5(3), 125–144 (2006)

    Article  Google Scholar 

  14. Milner, R.: Communication and concurrency. PHI Series in computer science. Prentice Hall (1989)

    Google Scholar 

  15. Park, D.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) TCS 1981. LNCS, vol. 104, pp. 167–183. Springer, Heidelberg (1981)

    Google Scholar 

  16. Paxson, V.: Automated packet trace analysis of TCP implementations. In: SIGCOMM, pp. 167–179. ACM Press (1997)

    Google Scholar 

  17. Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Tsankov, P., Torabi-Dashti, M., Basin, D. (2011). Constructing Mid-Points for Two-Party Asynchronous Protocols. In: Fernàndez Anta, A., Lipari, G., Roy, M. (eds) Principles of Distributed Systems. OPODIS 2011. Lecture Notes in Computer Science, vol 7109. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25873-2_33

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25873-2_33

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25872-5

  • Online ISBN: 978-3-642-25873-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics