• Corpus ID: 56553674

The Use of Efficient Broadcast Protocols in Asynchronous Distributed Systems

  title={The Use of Efficient Broadcast Protocols in Asynchronous Distributed Systems},
  author={Frank B. Schmuck},
Reliable broadcast protocols are important tools in distributed and fault-tolerant programming. They are useful for sharing information and for maintaining replicated data in a distributed system. However, a wide range of such protocols has been proposed. These protocols differ in their fault tolerance and delivery ordering characteristics. There is a tradeoff between the cost of a broadcast protocol and how much ordering it provides. It is, therefore, desirable to employ protocols that support… 

Application ordering in group communication

This work explores a new semantics, application order, that allows an application to specify an ordering specification order spec, which can be used in conjunction with existing ordering semantics, and eliminates many forms of application-level synchronization.

Characterizing multicast orderings using concurrency control theory

This work proposes a framework in which each message multicast is regarded as a transaction, and provides a means to characterize the performance of orderings to allow a comparison of different ordering protocols.

Exploiting Application Semantics in Communication Middleware

A new ordering semantics in which an application is allowed to provide a specification, App order, that defines constraints on the message delivery sequence, and it is shown that App order can be used to define ordering domains, where only messages within the same domain are ordered with r espect to one another.

Basic Concepts and Issues in Fault-Tolerant Distributed Systems

  • F. Cristian
  • Computer Science
    Operating Systems of the 90s and Beyond
  • 1991
A small number of basic concepts are proposed that can be used to explain the architecture of present and future fault-tolerant distributed systems and a list of architectural issues that are useful to consider when designing or examining such systems are discussed.

From serializable to causal transactions for collaborative applications

  • M. RaynalG. Thia-KimeM. Ahamad
  • Computer Science
    EUROMICRO 97. Proceedings of the 23rd EUROMICRO Conference: New Frontiers of Information Technology (Cat. No.97TB100167)
  • 1997
Two new criteria: causal consistency and causal serializability are explored and turn out to be sufficient for a class of applications (e.g. collaborative applications) and their implementation results in lesser synchronization and hence improved autonomy, availability and performance.

Verified Causal Broadcast with Liquid Haskell

This work implemented a standard causal broadcast protocol in Haskell and used the Liquid Haskell solver-aided verification system to express and mechanically prove that messages will never be delivered to a process in an order that violates causality.

Multicasting in interconnected networks

The authors propose the multi-LAN multi-order (MLMO) protocol, which supports a reliable ordered delivery service for both local and global messages and assumes an environment in which multicasting groups can have members belonging to different LANs, and each group can adopt either total or causal order for message delivery to its members.

Pure Operation-Based Replicated Data Types

This work introduces pure op-based CRDTs, that can only send operations to other replicas, drawing a clear distinction from state-based ones.

Providing high availability using lazy replication

This paper describes a new way of implementing causal operations that performs well in terms of response time, operation-processing capacity, amount of stored state, and number and size of messages; it does better than replication methods based on reliable multicast techniques.

Synchronous, asynchronous, and causally ordered communication

Based on the causality relation between events in computations with asynchronous communications, computations which are realizable with synchronous communications, which respect causal order, or where messages between two processes are always received in the order sent are characterized.



Reliable communication in the presence of failures

A review of several uses for the protocols in the ISIS system, which supports fault-tolerant resilient objects and bulletin boards, illustrates the significant simplification of higher level algorithms made possible by the approach.

Exploiting virtual synchrony in distributed systems

It is argued that this approach to building distributed and fault-tolerant software is more straightforward, more flexible, and more likely to yield correct solutions than alternative approaches.

Reliable broadcast protocols

A reliable broadcast protocol for an unreliable broadcast network is described that isolates the application programs from the unreliable characteristics of the communication network and can be used to simplify distributed database systems and distributed processing algorithms.

Low cost management of replicated data in fault-tolerant distributed systems

A technique is described that relaxes the usual degree of synchronization, permitting replicated data items to be updated concurrently with other operations, while at the same time ensuring that correctness is not violated, which results in better response time when performing operations on replicated data.

Highly available distributed services and fault-tolerant distributed garbage collection

A fault-tolerant garbage collection method for a distributed heap that can be used in any application in which the property of interest is stable: once the property becomes true, it remains true forever.

Programming with Shared Bulletin Boards in Asynchronus Distributed Systems

This paper formalizes the notion of consistent behavior when unreliable processes concurrently access a bulletin board and provides a mechanism for reasoning about consistency in distributed systems, which was previously lacking.


This work introduces several efficiently recognizable subclasses of the class of serializable histories, which correspond to serializability principles existing in the literature and used in practice and proposes two new principles which subsume all previously known ones.

Optimal clock synchronization

We present a simple, efficient and unified solution to the problems of synchronizing clocks, initializing these clocks, and integrating new clocks, for both authenticated and nonauthenticated systems

Almost) No Cost Clock Synchronization

Given a system that guarantees only precision, this work develops a protocol whereby high accuracy can be achieved on demand, and obtains the cost of high accuracy only when needed while keeping the basic synchronization procedure extremely simple and cheap.

The serializability of concurrent database updates

Several efficiently recognizable subclasses of the class of senahzable histories are introduced and it is shown how these results can be extended to far more general transaction models, to transactions with partly interpreted functions, and to distributed database systems.