Providing processes with the same view of a global state or allowing them to take consistent decisions, despite asynchrony and failure occurrences, are fundamental problems encountered in distributed systems. These problems are called agreement problems. Non blocking atomic commitment and definition of a single delivery order for broadcast messages are examples of such problems. We define a paradigm (called Single Global View) that encompasses various practical agreement problems. The interest of this paradigm lies in its practicability: each process starts with an initial value, and all these values are pieced together in such a way that, despite process crashes and asynchrony, all correct processes are delivered the same set of values (namely, the Single Global View). The power of this paradigm is the same as that of the consensus problem defined by theoreticians. Instantiations of the paradigm, which solve practical agreement problems, are given. A protocol implementing the paradigm is also presented.
展开▼