The Inhibition Spectrum and the Achievement of Causal Consistency
No Access Until
Permanent Link(s)
Collections
Other Titles
Author(s)
Abstract
We consider the problem of distinguishing causally-consistent global states in asynchronous distributed systems. Such states are fundamental to asynchronous systems, because they correspond to possible simultaneous global states; their detection arises in a variety of distributed applications, including global checkpointing, deadlock detection, termination detection, and broadcasting. We consider a spectrum of protocol capabilities based on the type of inhibition that occurs, i.e. the extent to which the protocol delays events of the underlying system. For the first time we distinguish local versus global inhibition and prove fundamental relationships between these concepts and determining causally-consistent states. In local inhibition, processors only delay events until they have performed some number of local actions; in global inhibition, they delay events while waiting for some communication from other processors. Based on a variety of system and protocol characteristics, including the ability to locally or globally inhibit particular types of events, we give several new impossibility results and examine some existing protocols. We are then able to present a thirty-six-case summary of protocols and impossibility results for the determination of causally-consistent states as a function of those characteristics. In particular, we demonstrate that local inhibition is necessary and sufficient to solve this problem for general FIFO systems, while global send inhibition is necessary for general non-FIFO systems.