Results 1 
7 of
7
Tiered Algorithm for Distributed Process Quiescence and Termination Detection
"... Abstract⎯The Tiered Algorithm is presented for timeefficient and messageefficient detection of process termination. It employs a global invariant of equality between process production and consumption at each level of process nesting to detect termination regardless of execution interleaving order ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Abstract⎯The Tiered Algorithm is presented for timeefficient and messageefficient detection of process termination. It employs a global invariant of equality between process production and consumption at each level of process nesting to detect termination regardless of execution interleaving order and network transit time. Correctness is validated for arbitrary process launching hierarchies, including launchintransit hazards where processes are created dynamically based on runtime conditions for remote execution. The performance of the Tiered Algorithm is compared to three existing schemes with comparable capabilities, namely the CV, LTD, and Credit termination detection algorithms. For synchronization of T tasks terminating in E epochs of idle processing, the Tiered Algorithm is shown to incur O(E) message count complexity and O(T lg T) message bit complexity while incurring detection latency corresponding to only integer addition and comparison. The synchronization performance in terms of messaging overhead, detection operations, and storage requirements are evaluated and compared across numerous task creation and termination hierarchies.
Monitoring stable properties in dynamic peertopeer distributed systems
 In Proceedings of the 25th Conference on the Foundations of Software Technology and Theoretical Computer Science (FSTTCS
, 2005
"... Abstract. Monitoring a distributed system to detect a stable property is an important problem with many applications. The problem is especially challenging for a dynamic distributed system because the set of processes in the system may change with time. In this paper, we present an efficient algorit ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
(Show Context)
Abstract. Monitoring a distributed system to detect a stable property is an important problem with many applications. The problem is especially challenging for a dynamic distributed system because the set of processes in the system may change with time. In this paper, we present an efficient algorithm to determine whether a stable property has become true in a system in which processes can join and depart the system at any time. Our algorithm is based on maintaining a spanning tree of processes that are currently part of the system. The spanning tree, which is dynamically changing, is used to periodically collect local states of processes such that: (1) all local states in the collection are consistent with each other, and (2) the collection is complete, that is, it contains all local states that are necessary to evaluate the property and derive meaningful inferences about the system state. Unlike existing algorithms for stable property detection in a dynamic environment, our algorithm is general in the sense that it can be used to evaluate any stable property. Further, it does not assume the existence of any permanent process. Processes can join and leave the system while the snapshot algorithm is in progress. 1
A Scalable Algorithm for Maintaining Perpetual System Connectivity in Dynamic Distributed Systems
"... We investigate the problem of maintaining a topology with small degree as well as small diameter in a dynamic distributed system such that the system always stays connected and processes that wish to leave the system can do so quickly. Perpetual system connectivity is necessary to solve many importa ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
We investigate the problem of maintaining a topology with small degree as well as small diameter in a dynamic distributed system such that the system always stays connected and processes that wish to leave the system can do so quickly. Perpetual system connectivity is necessary to solve many important problems in dynamic distributed systems, including atomic broadcast and stable property detection, that need strict (deterministic) guarantees about system connectivity to be solvable. To our knowledge, in all existing topology maintenance algorithms that provide perpetual system connectivity, either (1) the topology has large worstcase degree and/or diameter or (2) a process may experience high worstcase delay when leaving the system. In this paper, we present a spanning tree maintenance algorithm that satisfies the following desirable properties. First, the spanning tree has small maximum degree of O(1) and small maximum diameter of O(log N), where N denotes the maximum size of the system. Second, any process can leave the system within O(log N) time irrespective of how many processes are leaving along with it concurrently. Third, the system always stays connected. We show using a simple knowledgebased argument that, in any algorithm that maintains perpetual connectivity such that the topology has either worstcase diameter of Ω(log N) or worstcase degree of O(1), the departure of a process may be delayed by Ω(log log N) time in the worstcase. Key Words: dynamic distributed systems, scalable topology maintenance, perpetual connectivity, fast departures
Monitoring Stable Properties in Dynamic Asynchronous Distributed Systems
"... Monitoring a distributed system to detect a stable property is an important problem with many applications. The problem is especially challenging for a dynamic distributed system because the set of processes in the system may change with time. In this paper, we present an efficient algorithm to dete ..."
Abstract
 Add to MetaCart
(Show Context)
Monitoring a distributed system to detect a stable property is an important problem with many applications. The problem is especially challenging for a dynamic distributed system because the set of processes in the system may change with time. In this paper, we present an efficient algorithm to determine whether a stable property has become true in a system in which processes can join and depart the system at any time. Our algorithm is based on maintaining a spanning tree of processes that are currently part of the system. The spanning tree, which is dynamically changing, is used to periodically collect local states of processes such that: (1) all local states in the collection are consistent with each other, and (2) the collection is complete, that is, it contains all local states that are necessary to evaluate the property and derive meaningful inference about the system state. In contrast to existing algorithms for stable property detection in a dynamic environment, our algorithm is general in the sense that it can be used to detect any stable property and not just a specific stable property such as termination.
An Assertional Proof of Rana's Algorithm
 Information Processing Letters
, 1994
"... We give an assertional correctness proof for a version of Rana's termination detection algorithm. Safety is shown by means of reasoning with invariants, and liveness by means of a norm function, whose value decreases with every step of the detection algorithm. Keywords: analysis of algorithms, ..."
Abstract
 Add to MetaCart
We give an assertional correctness proof for a version of Rana's termination detection algorithm. Safety is shown by means of reasoning with invariants, and liveness by means of a norm function, whose value decreases with every step of the detection algorithm. Keywords: analysis of algorithms, distributed computing, program correctness. 1 Introduction Ten years ago, Rana [8] was the first to propose (in this journal) a fully symmetric solution to the termination detection problem. Its correctness was shown by reasoning about executions of the algorithm, and the solution relies on synchronous communication and the availability of realtime clocks. Rana claimed that local clocks can be implemented as logical clocks (cf. Lamport [5]) and asynchronous communication can be handled using acknowledgements. However, Beilken et al. [1] showed that the use of logical clocks combined with synchronous communication results in an incorrect algorithm. In this paper we consider the algorithm with b...
A New Termination Detection Protocol for Use in Diffusing Computation in Mobile ad Hoc Networks
"... An ad hoc network is a collection of wireless nodes that can dynamically form a temporary network to exchange data without the aid of any existing network infrastructure or centralized administration. Execution of applications in such kind of networks typically consists of a number of successive pha ..."
Abstract
 Add to MetaCart
(Show Context)
An ad hoc network is a collection of wireless nodes that can dynamically form a temporary network to exchange data without the aid of any existing network infrastructure or centralized administration. Execution of applications in such kind of networks typically consists of a number of successive phases such as network reprogramming, localization, power monitoring, and parameter updates. Termination detection of a phase is therefore a critical operation to safely execute a new phase on some or all of the network nodes. In this paper, we propose an efficient algorithmic solution to encounter termination detection by minimizing both delay and complexity.