Synthesis of error-recoverable protocol specifications from service specifications

  • Kassem Saleh
  • Robert Probert
Computer Architecture, Concurrency, Parallelism, Communication And Networking
Part of the Lecture Notes in Computer Science book series (LNCS, volume 468)


Several synthesis methods have been proposed and applied to the design of computer communication protocols. Most of these methods do not use the service specification as a reference (or starting) point in the protocol synthesis process. Consequently, these methods do not guarantee that the synthesized protocol provides the specified services, and therefore must be complemented by a semantic validation technique. In this paper, we propose a new synthesis method which automatically derives protocol specifications from a service specification. Both the service and protocol specifications are modelled by finite state machines (FSM). The resulting synthesized protocol is guaranteed to be free from logical design (syntactic) errors and to conform to the service specification. Finally, the synthesized protocol is augmented by error-recovery patterns to enable recovery from transmission errors caused by an unreliable communication medium. The application of the new method to an example service is also presented.


Communication software error-recovery protocol design semantic correctness syntactic correctness synthesis 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    W.A.Barrett and J.D. Couch, Compiler Construction: Theory and Practice, Chapter 3, Science Research Associates, (1979).Google Scholar
  2. [2]
    G.V. Bochmann and R. Gotzhein, "Deriving protocol specifications from service specifications", in SIGCOMM'86, (1986) 144–156.Google Scholar
  3. [3]
    T.Y. Choi, "Sequence method for protocol construction", in Sixth IFIP Intern. Symp. on Protocol Specification, Testing, and Verification, (May 1986) 307–321.Google Scholar
  4. [4]
    P.M. Chu and M.T. Liu, "Synthesizing protocol specifications from service specification in FSM model”, in Proc. Computer Networking Symp., (April 1988) 173–182.Google Scholar
  5. [5]
    M.G. Gouda and Y.T. Yu, "Synthesis of communicating finite state machines with guaranteed progress", IEEE Trans. on Commun. COM-32 (7) (1984) 779–788.Google Scholar
  6. [6]
    Y. Kakuda and Y. Wakahara, "Component-based synthesis of protocols for unlimited number of processes", in Proc. COMPSAC'87, (1988) 721–730.Google Scholar
  7. [7]
    F. Khendek, G.V. Bochmann and C. Kant, "New results on deriving protocol specifications from service specifications", ACM SIGCOMM'89 Symp., (1989) 136–145.Google Scholar
  8. [8]
    P. Merlin and G. Bochmann, "On the construction of submodule specifications and communication protocols", ACM TOPLAS Vol. 5 (1) (1983) 1–25.Google Scholar
  9. [9]
    R. Probert and K. Saleh, "Survey and critique of synthetic protocol design methods", Technical Report TR-89-41, Dept. of Computer Science, Univ. of Ottawa, (Oct. 1989).Google Scholar
  10. [10]
    C.V. Ramamorthy, S.T. Dong, and Y. Usuda, "An implementation of an automated protocol synthesizer (APS) and its application to the X.21 protocol", IEEE Trans. on Software Eng. SE-11 (9) (1985) 886–908.Google Scholar
  11. [11]
    C.V. Ramamorthy et al., "Synthesis and performance of two-party error-recoverable protocols", in Proc. COMPSAC'86, (1986) 214–220.Google Scholar
  12. [12]
    K. Saleh and R. Probert, "A service-oriented protocol synthesis method", Technical Report TR-89-45, Dept. of Computer Science, Univ. of Ottawa, (Nov. 1989).Google Scholar
  13. [13]
    D.P. Sidhu, "Protocol design rules", in Second IFIP Intern. Symp. on Protocol Specification, Testing, and Verification, (1982) 283–300.Google Scholar
  14. [14]
    A. Tanenbaum, Computer Networks, Chapter 4, Prentice Hall Inc., (1988).Google Scholar
  15. [15]
    C.A. Vissers and L. Logrippo, "The importance of the service concept in the design of data communications protocols", in Fifth Intern. Symp. on Protocol Specification, Testing, and Verification, (1986) 3–17.Google Scholar
  16. [16]
    C.A. Vissers, et al., The Architecture of Interaction Systems. Lecture Notes, Twente University of Technology, The Netherlands, (May 1989).Google Scholar
  17. [17]
    M.C. Yuang, "Survey of protocol verification techniques based on finite state machine models", in Proc. of Computer Networking Symp., (1988) 164–172.Google Scholar
  18. [18]
    P. Zafiropulo, et al., "Towards analyzing and synthesizing protocols", IEEE Trans. on Commun. COM-28 (4) (1980) 651–661.Google Scholar
  19. [19]
    Y.X. Zhang et al., "An interactive protocol synthesis algorithm using a global state transition graph", IEEE Trans. on Software Eng. SE-14 (3) (1988) 394–404.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Kassem Saleh
    • 1
  • Robert Probert
    • 1
  1. 1.Protocols/Software Engineering Research Group Department of Computer ScienceUniversity of OttawaOttawaCanada

Personalised recommendations