Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Time-dependent distributed systems: proving safety, liveness and real-time properties

  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract

Most communication protocol systems utilize timers to implement real-time constraints between event occurrences. Such systems are said to betime-dependent if the real-time constraints are crucial to their correct operation. We present a model for specifying and verifying time-dependent distributed systems. We consider networks of processes that communicate with one another by message-passing. Each process has a set of state variables and a set of events. An event is described by a predicate that relates the values of the network's state variables immediately before to their values immediately after the event occurrence. The predicate embodies specifications of both the event's enabling condition and action. Inference rules for both safety and liveness properties are presented. Real-time progress properties can be verified as safety properties. We illustrate with three sliding window data transfer protocols that use modulo-2 sequence numbers. The first protocol operates over channels that only lose messages. It is a time-independent protocol. The second and third protocols operate over channels that lose, reorder, and duplicate messages. For their correct operation, it is necessary that messages in the channels have bounded lifetimes. They are time-dependent protocols.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Bartlett KA Scantlebury RA, Wilkinson PT (1969) A note on reliable full-duplex transmission over half-duplex links. Commun ACM (May 1969)

  2. Chandy KM, Misra J (1986) An example of stepwise refinement of distributed programs. ACM Trans Program Lang Syst, vol. 8, no. 3 (July 1986)

  3. Clark DD (1983) Protocol implementation: practical considerations. ACM SIGCOMM'83 Tutorial, University of Texas at Austin (March 1983)

  4. Dijkstra EW (1976) A discipline of programming. Prentice-Hall, Englewood Cliffs, NJ

    Google Scholar 

  5. Francez N, Pnueli A (1978) A proof method for cyclic Programs. Acta Inf 9:133–157

    Google Scholar 

  6. Hailpern BT, Owicki SS (1983) Modular verification of computer communication protocols. IEEE Trans Commun, COM-31, 1 (January 1983)

    Google Scholar 

  7. IEEE Project 802 Local Area Network Standards. CSMA/CD access method and physical layer specifications. Draft IEEE Standard 802.3, Revision D (December 1982)

  8. International Standards Organization (1979) Data communication —High-level data link control procedures — frame structure. Ref. No. ISO 3309 (2nd edn). Data communications — HDLC procedures — Elements of procedures. Ref. No. ISO 4335 (1st edn). International Standards Organization, Geneva, Switzerland

  9. International Standards Organization (1984) Information processing systems-Open systems interconnection — Transport protocol specifications. Ref. No. ISO/TC 97/SC 16 N 1990, DIS 8073 Rev (September 1984)

  10. Knuth DE (1973) The art of computer programming, vol 1: fundamental algorithms (2nd edn). Addison-Wesley, p 20

  11. Knuth DE (1981) Verification of link-level protocols. BIT 21:31–36

    Google Scholar 

  12. Lamport L (1978) Time, clocks, and the ordering of events in a distributed system. Commun ACM 21 (7):558–565

    Google Scholar 

  13. Lamport L (1982) An assertional correctness proof of a distributed algorithm. Sci Comput Program 2:175–206

    Google Scholar 

  14. Lamport L (1983) Specifying concurrent program modules. ACM Trans Program Lang 5 (2):190–222

    Google Scholar 

  15. Lamport L (1983) What good is temporal logic? Proc IFIP 9th World Congress, IFIP, North Holland, Paris (September 1983)

  16. Lamport L (1986) Specification simplified. Preliminary Draft, Digital Equipment Corporation (May 1986)

  17. Misra J, Chandy KM (1981) Proofs of networks of processes. IEEE Trans Software Eng Vol SE-7, No 4 (July 1981)

  18. Owicki S, Gries D (1976) Verifying properties of parallel programs: an axiomatic approach. Commun ACM, vol 19, na 5 (May 1976)

  19. Owicki S, Lamport L (1982) Proving liveness properties of concurrent programs. ACM TOPLAS 4 (3):455–495

    Google Scholar 

  20. Postel J (ed) (1980) DOD standard transmission control protocol. Defense Advanced Research Projects Agency, Information Processing Techniques Office, RFC 761, IEN 129. ACM Computer Communication Review 10(4):52–132

  21. Shankar AU, Lam SS (1983) An HDLC protocol specification and its verification using image protocols. ACM Trans Comput Syst 1 (4):331–368

    Google Scholar 

  22. Shankar AU, Lam SS (1984) Time-dependent communication protocols. In: Lam S (ed) Tutorial: principles of communication and networking protocols. IEEE Computer Society

  23. Shankar AU, Lam SS (1985) Time-dependent distributed systems: proving safety, liveness and real-time properties. Tech Rep CS-TR-1586, Comput Sci Dept, Univ Maryland, also TR-85-24, Comput Sci Dept, Univ Texas October 1985

  24. Shankar AU, Lam SS (1986) Construction of sliding window protocols. Tech Rep CS-TR-1647, Comput Sci Dept Univ Maryland, also TR-86-09, Comput Sci Dept, Univ Texas (March 1986)

  25. Shankar AU (1986) A verified sliding window protocol with variable flow control. Proc ACM SIGCOMM '86, Stowe, Vermont (August 1986), also Tech Rep CS-TR-1638, Comput Sci Dept Univ Maryland

  26. Sloan L (1983) Mechanisms that enforce bounds on packet lifetimes. ACM Trans Comput Syst 1 (4):311–330

    Google Scholar 

  27. Stenning NV (1976) A data transfer protocol. Comput Networks 1:99–110

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

A. Udaya Shankar received the B. Tech. degree in Electrical Engineering from the Indian Institute of Technology, Kanpur, in 1976, the M.S. degree in Computer Engineering from Syracuse University, Syracuse, NY, in 1978, and the Ph.D. degree in Electrical Engineering from the University of Texas at Austin, in 1982. Since January 1983, he has been an Assistant Professor in the Department of Computer Science, University of Maryland, College Park. Since September 1985, he has been in the Institute for Advanced Computer Studies at the University of Maryland. His current research interests include modeling and verification of distributed systems, communication protocols, and real-time systems. He is a member of IEEE and ACM.

Simon S. Lam is a Professor of Computer Sciences at the University of Texas at Austin and holds the Second David Bruton Jr. Centennial Professorship. His research interests are in the areas of computer networks, communication protocols, performance modeling, and the specification and verification of distributed systems. He serves on the editorial boards of three journals, IEEE Transactions on Communications, Performance Evaluation, and Proceedings of IEEE, and he is an IEEE Fellow. He received the BSEE degree (with Distinction) from Washington State University in 1969, and the MS and Ph.D. degrees from UCLA in 1970 and 1974 respectively. Prior to joining the University of Texas faculty, he was with the IBM T.J. Watson Research center from 1974 to 1977.

Work supported by National Science Foundation under Grant No. ECS 85-02113

Work supported by National Science Foundation under Grant No. ECS 83-04734

Rights and permissions

Reprints and permissions

About this article

Cite this article

Shankar, A.U., Lam, S.S. Time-dependent distributed systems: proving safety, liveness and real-time properties. Distrib Comput 2, 61–79 (1987). https://doi.org/10.1007/BF01667079

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01667079

Keywords