Summary
The sliding-window protocol is specified using the notation of communicating Sequential Processes and its partial correctness is proved using the trace semantics. First the stop-and-wait protocol is defined; its correctness, that it forms a 1-place buffer, is almost evident. Next the alternating-bit protocol is defined and described in terms of the stop-and-wait protocol, and its correctness deduced from that of the stop-and-wait protocol. Finally the sliding-window protocol is described in terms of the alternating-bit protocol and its correctness deduced accordingly. The paper has two thrusts: that modularity of a specification helps to structure proofs about it (in this case, proofs that the protocols implement buffers); and that refinement in CSP leads to structured, correct implementations in occam. In support of the latter point the appendix contains a refinement and implementation of the protocols in occam 2.
Similar content being viewed by others
References
Chandy KM, Misra J: Parallel program design: a foundation Addison-Wesley, 1988
Duke R, Hayes I, Rose G: Verification of a cyclic retransmission protocol (preprint) University of Queensland, 1987
Hayes I: Specification case studies. Prentice Hall, 1987
Hoare CAR: Communicating sequential processes. Prentice-Hall, 1985.
inmos Ltd.: occam 2 reference manual. Prentice-Hall, 1988
International Organisation for Standardisation: Estelle: a formal description technique based on an extended state transition model. 2nd draft, proposed standard 9074, 1986
Jones G, Goldsmith MD: Programming in occam 2. Prentice Hall, 1988
Larsen, KG, Milner R: A complete protocol verification using relativized bisimulation. LFCS Rep. Ser. ECS-LFCS-86-13, 1986
Lin F, Chu P, Liu M: Protocol verification using reachability analysis: the state-space explosion problem and relief strategies. Proc ACM SIGCOMM'87 Workshop, ACM, pp 126–135, 1987
Milner R: Communication and concurrency. Prentice-Hall, 1989.
Schneider S: Communication in timed distributed computing. MSc thesis, Oxford University, 1988
Tanenbaum AS: Computer networks, 2nd edn. Prentice-Hall, 1987.
Author information
Authors and Affiliations
Additional information
Karen Paliwoda (now Seidel) received a degree in Mathematics (BSc) from Bradford University in 1986. She worked for two years as a research assistant at Oxford and University College, London, investigating both formal and applied aspects of communication protocols. She is currently working towards a PhD on a probabilistic model of CSP.
Jeff Sanders holds degrees in Pure Mathematics from Monash University (BSc (Hons)) and the Australian National University (PhD). He is a University Lecturer at Oxford and a Tutorial Fellow at Lady Margaret Hall, with interests in the mathematics of Computation.
Rights and permissions
About this article
Cite this article
Paliwoda, K., Sanders, J.W. An incremental specification of the sliding-window protocol. Distrib Comput 5, 83–94 (1991). https://doi.org/10.1007/BF02259750
Received:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/BF02259750