Improving network efficiency in real-time groupware with general message compression

Groupware communicates by sending messages across the network, and groupware programmers use a variety of formats for these messages, such as XML, plain text, or serialized objects. Although these formats have many advantages, they are often so verbose that they overload the system's network resources. Groupware programmers could improve efficiency by using more compact formats, but this efficiency comes at the cost of increased complexity, reduced convenience, and reduced readability. In this paper we propose an alternate approach for improving efficiency -- an automatic compression system that transparently minimizes verbose formats. Our general message compressor -- GMC -- automatically finds and removes redundancy in message streams, without any knowledge of the contents or structure of the message, and without any need for the programmer to change the way they work. In tests with realistic message traces, GMC reduced text messages to 20% of their original size, XML messages to 8% of the original, and serialized objects to 9%. Although not as compact as a hand-coded representation, GMC provides most of the compression benefits with almost none of the work -- it allows groupware programmers to use convenient message formats without compromising transport efficiency.

[1]  Abraham Lempel,et al.  A universal algorithm for sequential data compression , 1977, IEEE Trans. Inf. Theory.

[2]  Ivan Marsic Real-time collaboration in heterogeneous computing environments , 2000, Proceedings International Conference on Information Technology: Coding and Computing (Cat. No.PR00540).

[3]  William Phillips Architectures for Synchronous Groupware , 1999 .

[4]  Ching Shen Tye,et al.  A Review of IP Packet Compression Techniques , 2003 .

[5]  Henning Schulzrinne,et al.  RTP: A Transport Protocol for Real-Time Applications , 1996, RFC.

[6]  Carl Gutwin,et al.  High-performance telepointers , 2004, CSCW.

[7]  David A. Huffman,et al.  A method for the construction of minimum-redundancy codes , 1952, Proceedings of the IRE.

[8]  Saul Greenberg,et al.  Building real-time groupware with GroupKit, a groupware toolkit , 1996, TCHI.

[9]  Carl Gutwin,et al.  The effects of network delays on group work in real-time groupware , 2001, ECSCW.

[10]  Saul Greenberg,et al.  TeamRooms: network places for collaboration , 1996, CSCW '96.

[11]  Abraham Lempel,et al.  Compression of individual sequences via variable-rate coding , 1978, IEEE Trans. Inf. Theory.

[12]  T. Kaukoranta,et al.  A Review on Networking and Multiplayer Computer Games , 2002 .

[13]  Mark Claypool,et al.  The effects of loss and latency on user performance in unreal tournament 2003® , 2004, NetGames '04.

[14]  Carl Gutwin,et al.  Improving interpretation of remote gestures with telepointer traces , 2002, CSCW '02.

[15]  Steve Benford,et al.  Coping with inconsistency due to network delays in collaborative virtual environments , 1999, VRST '99.

[16]  Clifford A. Shaffer,et al.  Supporting worker independence in collaboration transparency , 1998, UIST '98.

[17]  Kyoung Shin Park,et al.  Effects of network characteristics on human performance in a collaborative virtual environment , 1999, Proceedings IEEE Virtual Reality (Cat. No. 99CB36316).

[18]  Carl Gutwin,et al.  Revealing delay in collaborative environments , 2004, CHI.

[19]  Luiz A. DaSilva,et al.  Quality of service for networked virtual environments , 2004, IEEE Communications Magazine.