Abstract
It is often the case in a distributed computation that we want a particular component system of the computation to determine when and if the computation has terminated, for example, whether a routing update has reached all the routers in a network. Stating this independently of the specific distributed computation leads to the “distributed termination detection” problem [1]: given a generic distributed computation, say X, to obtain another distributed computation, say Y, that executes alongside X on the same platform, does not disturb X, and informs a particular system, which we call the “sink” system, when and if X has terminated. More precisely, each system in X is either “active” or “inactive”. An active system can do local computation, send and receive messages, and become inactive. An inactive system does nothing except become active upon receiving a message. The computation X is said to have terminated if all its systems are inactive and none of its messages are in transit. There are many elegant solutions to this problem, e.g., [1–4].
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 subscriptionsReferences
E.W. Dijkstra, C.S. Scholten, Termination detection for diffusing computations. Inf. Process. Lett. 11(1), 1–4 (1980)
E.W. Dijkstra, W.H.J. Feijen, A.J.M. van Gasteren, Derivation of a termination detection algorithm for distributed computations. Inf. Process. Lett. 16(5), 217–219 (1983). Also EWD 840
F. Mattern, Algorithms for distributed termination detection. Distrib. Comput. 2(3), 161–175 (1987). http://dblp.uni-trier.de/db/journals/dc/dc2.html#Mattern87
G. Tel, F. Mattern, The derivation of distributed termination detection algorithms from garbage collection schemes. ACM Trans. Progr. Lang. Syst. 15(1), 1–35 (1993). doi: 10.1145/151646.151647. http://doi.acm.org/10.1145/151646.151647
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer Science+Business Media New York
About this chapter
Cite this chapter
Shankar, A.U. (2013). Channel with Termination Detection Service. In: Distributed Programming. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-4881-5_13
Download citation
DOI: https://doi.org/10.1007/978-1-4614-4881-5_13
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-4880-8
Online ISBN: 978-1-4614-4881-5
eBook Packages: Computer ScienceComputer Science (R0)