Supporting Multiple Quality of Service Optionswith High Performance Groupware

Reliability carries di erent meanings for di erent applications. For example, in a replicated database setting, reliability means that messages are never lost, and that messages arrive in the same order at all sites. In order to guarantee this reliability property, it is acceptable to sacri ce real-time message delivery: some messages may be greatly delayed, and at certain periods message transmission may even be blocked. While this is perfectly acceptable behavior for a reliable database application, this behavior is intolerable for a reliable video server. For a continuous MPEG video player [18, 17], reliability means real-time message delivery, at a certain bandwidth; It is acceptable for some messages to be lost, as long as the available bandwidth complies with certain predetermined stochastic assumptions. Introducing database style reliability (i.e. message recovery and order constraints) may violate these assumptions, rendering the MPEG decoding algorithm incorrect. A desktop and multi-media conferencing tool [16], is a Computer Supported Cooperative Work (CSCW) application incorporating various activities such as video transmission and management of replicated work space. These activities obviously require di erent qualities of service, and yet are part of the same application. Furthermore, CSCW applications often need to be fault-tolerant, and need to support smooth recon guration when parties join or leave. Groupware [1] is a powerful tool for the construction of fault-tolerant applications, providing reliable multicast and membership services with strong semantics. In this paper, we incorporate multiple quality of service options within the framework of groupware systems. This way, a single application can exploit multiple quality service options, and can also bene t from the groupware semantics.

[1]  Mohan Ahuja,et al.  Assertions About Past and Future in Highways: Global Flush Broadcast and Flush-Vector-Time , 1993, Inf. Process. Lett..

[2]  Louise E. Moser,et al.  Extended virtual synchrony , 1994, 14th International Conference on Distributed Computing Systems.

[3]  Tom Rodden,et al.  A Survey of CSCW Systems , 1991, Interact. Comput..

[4]  Louise E. Moser,et al.  Robust and Efficient Replication Using Group Communication , 1994 .

[5]  Kenneth P. Birman,et al.  Exploiting virtual synchrony in distributed systems , 1987, SOSP '87.

[6]  Richard D. Schlichting,et al.  Preserving and using context information in interprocess communication , 1989, TOCS.

[7]  Roy Friedman,et al.  Strong and weak virtual synchrony in Horus , 1996, Proceedings 15th Symposium on Reliable Distributed Systems.

[8]  Louise E. Moser,et al.  Broadcast Protocols for Distributed Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[9]  Yair Amir,et al.  Transis: A Communication Sub-system for High Availability , 1992 .

[10]  Idit Keidar,et al.  Efficient message ordering in dynamic networks , 1996, PODC '96.

[11]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[12]  Yaron Minsky,et al.  Efficient algorithms for optimal video transmission , 1998, Proceedings DCC '98 Data Compression Conference (Cat. No.98TB100225).

[13]  Brian C. Smith,et al.  MPEG video in software: representation, transmission, and playback , 1994, Electronic Imaging.

[14]  Danny Dolev,et al.  Group communication as an infrastructure for distributed system management , 1996, Proceedings of Third International Workshop on Services in Distributed and Networked Environments.