This Article 
 Bibliographic References 
 Add to: 
Semantically Reliable Multicast: Definition, Implementation, and Performance Evaluation
February 2003 (vol. 52 no. 2)
pp. 150-165

Abstract—Semantic Reliability is a novel correctness criterion for multicast protocols based on the concept of message obsolescence: A message becomes obsolete when its content or purpose is superseded by a subsequent message. By exploiting obsolescence, a reliable multicast protocol may drop irrelevant messages to find additional buffer space for new messages. This makes the multicast protocol more resilient to transient performance perturbations of group members, thus improving throughput stability. This paper describes our experience in developing a suite of semantically reliable protocols. It summarizes the motivation, definition, and algorithmic issues and presents performance figures obtained with a running implementation. The data obtained experimentally is compared with analytic and simulation models. This comparison allows us to confirm the validity of these models and the usefulness of the approach. Finally, the paper reports the application of our prototype to distributed multiplayer games.

[1] G. Alvarez and F. Cristian, “Applying Simulation to the Design and Performance Evaluation of Fault-Tolerant Systems,” Proc. IEEE Int'l Symp. Reliable Distributed Systems, 1997.
[2] R. Baldoni, R. Prakash, M. Raynal, and M. Singhal, “Efficient$\big. \Delta{\hbox{-}}{\rm Causal}\bigr.$Broadcasting,” Int'l J. Computer Systems Science and Eng., vol. 13, no. 5, Sept. 1998.
[3] A. Basu, B. Charron-Bost, S. Toueg, “Simulating Reliable Links with Unreliable Links in the Presence of Process Crashes,” Proc. Distributed Algorithms (WDAG '96), pp. 105-122, Oct. 1996.
[4] K. Birman, “A Review of Experiences with Reliable Multicast,” Software Practice and Experience, vol. 29, no. 9, July 1999.
[5] K.P. Birman, M. Hayden, O. Ozkasap, Z. Xiao, M. Budiu, and Y. Minsky, “Bimodal Multicast,” ACM Trans. Computer Systems, vol. 17, no. 2, pp. 41-88, May 1999.
[6] N. Budhiraja, K. Marzullo, F.B. Schneider, and S. Toueg, “The Primary-Backup Approach,” Distributed Systems, S. Mullender, ed. Addison-Wesley, 1993.
[7] A. Carzaniga, D. Rosenblum, and A. Wolf, “Content-Based Addressing and Routing: A General Model and Its Application,” Technical Report CU-CS-902-00, Dept. of Computer Science, Univ. of Colorado, Jan. 2000.
[8] T.D. Chandra and S. Toueg, “Unreliable Failure Detectors for Reliable Distributed Systems,” J. ACM, vol. 43, no. 2, pp. 225–267, 1996.
[9] D.D. Clark and D.L. Tennenhouse, "Architectural Considerations for a New Generation of Protocols," Computer Comm. Rev., vol. 20, no. 4, Sept. 1990.
[10] C. Diot and F. Gagnon, “Impact of Out-of-Sequence Processing on the Performance of Data Transmission,” Computer Networks, vol. 31, no. 5, Mar. 1999.
[11] S. Elf and P. Parnes, “Applying Semantic Reliability Concepts to Multicast Information Messaging in Wireless Networks,” Proc. IRMA Int'l Conf., May 2002.
[12] S. Floyd et al., "A Reliable Multicast Framework for Lightweight Sessions and Application Level Framing," ACM/IEEE Trans. Networking, Dec. 1997, pp. 784-803.
[13] R. Guerraoui, R. Oliveira, and A. Schiper, “Stubborn Communication Channels,” Technical Report 98-278, Département d'Informatique,École Polytechnique Fédérale de Lausanne, 1998.
[14] K. Guo, “Scalable Message Stability Detection Protocols,” PhD thesis, Computer Science Dept., Cornell Univ., May 1998.
[15] V. Hadzilacos and S. Toueg, “A Modular Approach to Fault-Tolerant Broadcasts and Related Problems,” Technical Report TR94-1425, Computer Science Dept., Cornell Univ., May 1994.
[16] Id Software Inc., Quake homepage,http:/, year?
[17] V. Jacobson, "Congestion Avoidance and Control," Proc. ACM SIGCOMM '88, pp. 314-329, Aug. 1988.
[18] R. Jain, The Art of Computer Systems Performance Analysis. John Wiley&Sons, 1991.
[19] R. Ladin, B. Liskov, and L. Shrira, “Lazy Replication: Exploiting the Semantics of Distributed Services,” ACM SIGOPS Operating Systems Rev., vol. 25, no. 1, Jan. 1991.
[20] L. Lamport, "Time, clocks and the ordering of events in a distributed system," Comm. ACM, vol. 21, no. 7, pp. 558-565, July 1978.
[21] L. Lamport and S. Owicki, "The Temporal Logic of Actions," ACM Trans. Programming Languages and Systems, vol. 16, pp. 872-923, May 994.
[22] R. Oliveira, “Solving Consensus: From Fair-Lossy Channels to Crash-Recovery of Processes,” PhD thesis, Département d'Informatique,École Polytechnique Fédérale de Lausanne, Feb. 2000.
[23] F. Pedone and A. Schiper, “Generic Broadcast,” Proc. Int'l Symp. Distributed Computing (DISC), Sept. 1999.
[24] J. Pereira, “Semantically Reliable Group Communication,” PhD thesis, Univ. do Minho, 2002.
[25] J. Pereira, L. Rodrigues, and R. Oliveira, “Semantically Reliable Multicast Protocols,” Proc. IEEE Int'l Symp. Reliable Distributed Systems, Oct. 2000.
[26] J. Pereira, L. Rodrigues, and R. Oliveira, “Enforcing Strong Consistency with Semantic Reliability: Sustaining High Throughput in Reliable Distributed Systems,” Concurrency in Dependable Computing, P. Ezhilchelvan and A. Romanovsky, eds., Kluwer Academic, 2002.
[27] J. Pereira, L. Rodrigues, and R. Oliveira, “Reducing the Cost of Group Communication with Semantic View Synchrony,” Proc. IEEE Int'l Conf. Dependable Systems and Networks, 2002.
[28] R. Piantoni and C. Stancescu, “Implementing the Swiss Exchange Trading System,” Proc. IEEE Int'l Symp. Fault-Tolerant Computing, June 1997.
[29] S. Pingali, D. Towsley, and J. Kurose, “A Comparison of Sender-Initiated and Receiver-Initiated Reliable Multicast Protocols,” Proc. ACM SIGMETRICS Conf. Measurement and Modeling of Computer Systems, May 1994.
[30] S. Raman and S. McCanne, “Generalized Data Naming and Scalable State Announcements for Reliable Multicast,” Technical Report CSD-97-951, Univ. of California, Berkeley, June 1997.
[31] M. Raynal and M. Mizuno, “How to Find His Way in the Jungle of Consistency Criteria for Distributed Shared Memories (or How to Escape from Minos' Labyrinth),” Proc. IEEE Int'l Conf. Future Trends of Distributed Computing Systems, Sept. 1993.
[32] L. Rodrigues, R. Baldoni, E. Anceaume, and M. Raynal, “Deadline-Constrained Causal Order,” Proc. IEEE Int'l Symp. Object-Oriented Real-Time Distributed Computing, Mar. 2000.
[33] M. Satyanarayanan, “A Survey of Distributed File Systems,” Ann. Rev. Computer Science, vol. 4, 1990.
[34] D. Schmidt, D. Box, and T. Suda, “ADAPTIVE—A Dynamically Assembled Protocol Transformation, Integration and eValuation Environment,” Concurrency: Practice and Experience, vol. 5, no. 4, 1993.
[35] J. Sussman, I. Keidar, and K. Marzullo, “Optimistic Virtual Synchrony,” Proc. IEEE Int'l Symp. Reliable Distributed Systems, Oct. 2000.
[36] D.B. Terry, M.M. Theimer, K. Petersen, A.J. Demers, M.J. Spreitzer, and C.H. Hauser, Managing Update Conflicts in a Weakly Connected Replicated Storage System Proc. ACM Symp. Operating Systems Principles, 1995.
[37] H. Zou and F. Jahanian, “Real-Time Primary-Backup Replication with Temporal Consistency Guarantees,” Proc. IEEE Int'l Conf. Distributed Computing Systems, June 1998.

Index Terms:
Reliable multicast protocols, throughput stability, semantic reliability.
José Pereira, Luís Rodrigues, Rui Oliveira, "Semantically Reliable Multicast: Definition, Implementation, and Performance Evaluation," IEEE Transactions on Computers, vol. 52, no. 2, pp. 150-165, Feb. 2003, doi:10.1109/TC.2003.1176983
Usage of this product signifies your acceptance of the Terms of Use.