Abstract
We prove the correctness of a sliding window protocol with an arbitrary finite window size n and sequence numbers modulo 2n. We show that the sliding window protocol is branching bisimilar to a queue of capacity 2n. The proof is given entirely on the basis of an axiomatic theory, and was checked with the help of PVS.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bergstra, J.A., Klop, J.W.: Process algebra for synchronous communication. Information and Control 60(1/3), 109–137 (1984)
Bezem, M.A., Groote, J.F.: Invariants in process algebra with data. In: Jonsson, B., Parrow, J. (eds.) CONCUR 1994. LNCS, vol. 836, pp. 401–416. Springer, Heidelberg (1994)
Bezem, M.A., Groote, J.F.: A correctness proof of a one bit sliding window protocol in μCRL. The Computer Journal 37(4), 289–307 (1994)
Brunekreef, J.J.: Sliding window protocols. In: Mauw, S., Veltink, G. (eds.) Algebraic Specification of Protocols. Cambridge Tracts in Theoretical Computer Science, vol. 36, pp. 71–112. Cambridge University Press, Cambridge (1993)
Cardell-Oliver, R.: Using higher order logic for modelling real-time protocols. In: Abramsky, S. (ed.) TAPSOFT 1991, CCPSD 1991, and ADC-Talks 1991. LNCS, vol. 494, pp. 259–282. Springer, Heidelberg (1991)
Cerf, V.G., Kahn, R.E.: A protocol for packet network intercommunication. IEEE Transactions on Communications, COM 22, 637–648 (1974)
Chkliaev, D., Hooman, J., de Vink, E.: Verification and improvement of the sliding window protocol. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 113–127. Springer, Heidelberg (2003)
Fokkink, W.J., Groote, J.F., Pang, J., Badban, B., van de Pol, J.C.: Verifying a sliding window protocol in μCRL. Technical Report SEN-R0308, CWI (2003)
Fokkink, W.J., Pang, J.: Cones and foci for protocol verification revisited. In: Gordon, A.D. (ed.) FOSSACS 2003. LNCS, vol. 2620, pp. 267–281. Springer, Heidelberg (2003)
van Glabbeek, R.J., Weijland, W.P.: Branching time and abstraction in bisimulation semantics. Journal of the ACM 43(3), 555–600 (1996)
Godefroid, P., Long, D.E.: Symbolic protocol verification with Queue BDDs. Formal Methods and System Design 14(3), 257–271 (1999)
Groenveld, R.A.: Verification of a sliding window protocol by means of process algebra. Report P8701, University of Amsterdam (1987)
Groote, J.F.: Process Algebra and Structured Operational Semantics. PhD thesis, University of Amsterdam (1991)
Groote, J.F., Korver, H.P.: Correctness proof of the bakery protocol in μCRL. In: Proc. ACP 1994, Workshops in Computing, pp. 63–86. Springer, Heidelberg (1995)
Groote, J.F., Ponse, A.: Proof theory for μCRL: A language for processes with data. In: Proc. SoSL 1993, Workshops in Computing, pp. 232–251. Springer, Heidelberg (1994)
Groote, J.F., Ponse, A.: Syntax and semantics of μCRL. In: Proc. ACP 1994, Workshops in Computing, pp. 26–62. Springer, Heidelberg (1995)
Groote, J.F., Ponse, A., Usenko, Y.S.: Linearization of parallel pCRL. Journal of Logic and Algebraic Programming 48(1/2), 39–72 (2001)
Groote, J.F., Reniers, M.: Algebraic process verification. Handbook of Process Algebra, pp. 1151–1208. Elsevier, Amsterdam (2001)
Groote, J.F., Springintveld, J.: Focus points and convergent process operators: A proof strategy for protocol verification. Journal of Logic and Algebraic Programming 49(1/2), 31–60 (2001)
Hailpern, B.T.: Verifying Concurrent Processes Using Temporal Logic. LNCS, vol. 129. Springer, Heidelberg (1982)
Holzmann, G.J.: Design and Validation of Computer Protocols. Prentice Hall, Englewood Cliffs (1991)
Holzmann, G.J.: The model checker Spin. IEEE Transactions on Software Engineering 23(5), 279–295 (1997)
Jonsson, B.: Compositional Verification of Distributed Systems. PhD thesis, Uppsala University (1987)
Jonsson, B., Nilsson, M.: Transitive closures of regular relations for verifying infinite-state systems. In: Schwartzbach, M.I., Graf, S. (eds.) TACAS 2000. LNCS, vol. 1785, pp. 220–234. Springer, Heidelberg (2000)
Kaivola, R.: Using compositional preorders in the verification of sliding window protocol. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 48–59. Springer, Heidelberg (1997)
Knuth, D.E.: Verification of link-level protocols. BIT 21, 21–36 (1981)
Latvala, T.: Model checking LTL properties of high-level Petri nets with fairness constraints. In: Colom, J.-M., Koutny, M. (eds.) ICATPN 2001. LNCS, vol. 2075, pp. 242–262. Springer, Heidelberg (2001)
Loeckx, J., Ehrich, H.-D., Wolf, M.: Specification of Abstract Data Types. Wiley/ Teubner (1996)
Madelaine, E., Vergamini, D.: Specification and verification of a sliding window protocol in Lotos. In: Proc. FORTE 1991, IFIP Transactions, pp. 495–510. North- Holland, Amsterdam (1991)
Mauw, S., Veltink, G.J.: A process specification formalism. Fundamenta Informaticae 13(2), 85–139 (1990)
Middeldorp, A.: Specification of a sliding window protocol within the framework of process algebra. Report FVI 86-19, University of Amsterdam (1986)
Paliwoda, K., Sanders, J.W.: An incremental specification of the sliding-window protocol. Distributed Computing 5, 83–94 (1991)
Park, D.M.R.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) GI-TCS 1981. LNCS, vol. 104, pp. 167–183. Springer, Heidelberg (1981)
Richier, J.L., Rodriguez, C., Sifakis, J., Voiron, J.: Verification in Xesar of the sliding window protocol. In: Proc. PSTV 1987, pp. 235–248. North-Holland, Amsterdam (1987)
Röckl, C., Esparza, J.: Proof-checking protocols using bisimulations. In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 525–540. Springer, Heidelberg (1999)
Rusu, V.: Verifying a sliding-window protocol using PVS. In: Proc. FORTE 2001, Conference Proceedings, vol. 197, pp. 251–268. Kluwer, Dordrecht (2001)
Schoone, A.A.: Assertional Verification in Distributed Computing. PhD thesis, Utrecht University (1991)
Smith, M.A., Klarlund, N.: Verification of a sliding window protocol using IOA and MONA. In: Proc. FORTE/PSTV 2000, pp. 19–34. Kluwer, Dordrecht (2000)
van de Snepscheut, J.L.A.: The sliding window protocol revisited. Formal Aspects of Computing 7(1), 3–17 (1995)
Stahl, K., Baukus, K., Lakhnech, Y., Steffen, M.: Divide, abstract, and modelcheck. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) SPIN 1999. LNCS, vol. 1680, pp. 57–76. Springer, Heidelberg (1999)
Stenning, N.V.: A data transfer protocol. Computer Networks 1(2), 99–110 (1976)
Tanenbaum, A.S.: Computer Networks. Prentice Hall, Englewood Cliffs (1981)
Vaandrager, F.W.: Verification of two communication protocols by means of process algebra. Report CS-R8608, CWI, Amsterdam (1986)
van Wamel, J.J.: A study of a one bit sliding window protocol in ACP. Report P9212, University of Amsterdam (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fokkink, W., Groote, J.F., Pang, J., Badban, B., van de Pol, J. (2004). Verifying a Sliding Window Protocol in μCRL. In: Rattray, C., Maharaj, S., Shankland, C. (eds) Algebraic Methodology and Software Technology. AMAST 2004. Lecture Notes in Computer Science, vol 3116. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27815-3_15
Download citation
DOI: https://doi.org/10.1007/978-3-540-27815-3_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22381-8
Online ISBN: 978-3-540-27815-3
eBook Packages: Springer Book Archive