Rodrigues, LuísGuerraoui, RachidSchiper, André2009-02-102014-11-142009-02-102014-11-141998-01http://hdl.handle.net/10451/14196http://repositorio.ul.pt/handle/10455/2902We present a new scalable fault-tolerant algorithm which ensures total order delivery of messages sent to multiple groups of processes. The algorithm is scalable in the sense that: (1) any process can multicast a message to one or more groups of processes without being forced to join those groups; (2) inter-group total order is ensured system-wide but, for each individual multicast, the number and size of messages exchanged depends only on the number of addressees; (3) failure detection does not need to be reliable. Our algorithm also exhibits a modular design. It uses two companion protocols, namely a reliable multicast protocol and a consensus protocol, and these protocols are not required to use the same communication channels or to share common variables with the total order protocol. This approach follows a design methodology based on the composition of (encapsulated) micro-protocolsporScalable Atomic Multicastreport