Computing Global Functions in Asynchronous Distributed Systems Prone to Process Crashes

  • Authors:
  • J. M. Hélary;M. Hurfin;A. Mostéfaoui;M. Raynal;F. Tronel

  • Affiliations:
  • -;-;-;-;-

  • Venue:
  • ICDCS '00 Proceedings of the The 20th International Conference on Distributed Computing Systems ( ICDCS 2000)
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

A Global Data is a vector with one entry per process. Each entry must be filled with an appropriate value provided by the corresponding process. Several distributed computing problems amount to compute a function on a global data. This paper proposes a protocol to solve such problems in the context of asynchronous distributed systems where processes may fail by crashing.The main problem that has to be solved lies in computing the global data and in providing each non-crashed process with a copy of it, despite the possible crash of some processes. To be consistent, the global data must contain (at least) all the values provided by the processes that do not crash. This defines the Global Data Computation (GDC) problem. To solve this problem, processes execute a sequence of asynchronous rounds during which they construct (in a decentralized way) the value of the global data, and eventually each process gets a copy of it. To cope with process crashes, the protocol uses a perfect failure detector.The proposed protocol has been designed to be time-efficient. It allows early decision. Let t be the maximum number of processes that may crash (\math where n is the total number of processes) and f be the actual number of process crashes \math. In the worst case, the protocol terminates in min\math rounds. Moreover, the protocol does not require processes to exchange information on their perception of crashes. The message size depends only on the size of the global data.