Skip to main content
Log in

Using adaptive timeouts to achieve at-most-once message delivery

  • Published:
Distributed Computing Aims and scope Submit manuscript

Summary

We extend the at-most-once message delivery algorithm of Liskov, Shrira, and Wroclawski to adapt dynamically to changes in message transmission time and degree of clock synchronization. The performance of their algorithm depends on its being supplied with a good estimate of the maximum message lifetime — the sum of the message delivery time and the difference in processor clock values between sender and recipient. We present two algorithms that are suitable for use in a system where the message lifetime is unknown or may change. Our extensions allow the automatic and continuous determination of a suitable value for the maximum lifetime. We prove that whenever the actual message lifetime is bounded, then our adaptive algorithms converge to an accurate estimate of its true value. Our two algorithms differ in the behavior they require from the network and achieve different performance levels. Our formal statement of convergence is expressed in terms of the number of messages received, rather than time elapsed. We show that this formulation is necessary by proving that no method for estimating the lifetime can achieve convergence in a bounded amount of time.

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

Access this article

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. Comer D: Internetworking with TCP/IP: principles, protocols, and architecture. Prentice Hall, Englewood Cliffs 1988

  2. Herlihy MP, McKendry M: Timestamp-based orphan elimination. IEEE Trans Softw Eng 15(7): 825–831 (1989)

    Article  Google Scholar 

  3. Jain R: Divergence of timeout algorithms for packet retransmissions. Proc. 5th Annual International Phoenix Conference on Computers and Communications 1986, pp 174–179

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

    Article  Google Scholar 

  5. Lamport L, Melliar-Smith P: Synchronizing clocks in the presence of faults. J ACM 32(1): 52–78 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  6. Liskov B: Practical uses of synchronized clocks. Proc 10th Annual ACM Symposium on Principles of Distributed Computing 1991, pp 1 9

  7. Liskov B, Shrira L, Wroclawski J: Efficient at-most-once messages based on synchronized clocks. ACM Trans Comput Syst 9(2): 125–142 (1991)

    Article  Google Scholar 

  8. Mills DL: Internet time synchronization: the network time protocol. IEEE Trans Commun 39(10): 1482–1493 (1991)

    Article  Google Scholar 

  9. Steiner JG, Neuman BC, Schiller JI: Kerberos: an authentication service for open network systems. Usenix Conference Proceedings 1988, pp 191–202

  10. Zhang L: Why TCP timers don’t work well. Proc ACM SIG-COMM Symposium 1986, pp 397–405

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was done while the first and third authors were at the University of North Carolina at Chapel Hill, supported in part by NSF grant CCR-9010730, an IBM Faculty Development Award and NSF PYI Award CCR-9158478. A preliminary version of this paper appeared in the Proceedings of the Fifth International Workshop on Distributed Algorithms, pp 151–166, 1991

Rights and permissions

Reprints and permissions

About this article

Cite this article

Chaudhuri, S., Coan, B.A. & Welch, J.L. Using adaptive timeouts to achieve at-most-once message delivery. Distrib Comput 9, 109–117 (1995). https://doi.org/10.1007/s004460050013

Download citation

  • Received:

  • Accepted:

  • Issue Date:

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

Key words

Navigation