The computational paradigm of the Internet is such that applications are retrieved from remote sites and processed locally or are transfered for remote execution. Given the gap between processor and network speeds, mechanisms are needed to compensate for transfer time in order to maintain acceptable performance of mobile programs. Compression is used to reduce transfer delay by reducing the number of bytes transfered through the use of compact file encoding. In this paper, we examine two techniques for reducing compression-based transfer delay using Java as our platform for mobile code. We first examine the benefit from Selective Compression, a profile-directed optimization that combines and compresses only class files that are used during execution (as opposed to the entire application). Our results show that this approach reduces transfer delay from 11% to 13% on average across all compression techniques and networks studied. The second technique we examine is dynamic selection of compression formats based upon the underlying network connectivity. We consider compression-based transfer delay as the time required for transfer and decompression of files. We show that the compression format that achieves the least delay varies greatly with the network bandwidth available. Therefore, we propose to store mobile programs at the server in different compression formats. Dynamic Compression Format Selection (DCFS) is then used on the client to predict the compression format that will result in the least delay given the bandwidth predicted to be available when transfer occurs. Our results show that DCFS reduces 36% of compression-based transfer delay on average, for the networks and wire-transfer formats studied. When combined with selective compression, we achieve 47% average reduction in delay (60% reduction over the use of jar files).
The authors of these documents have submitted their reports to this technical report series for the purpose of non-commercial dissemination of scientific work. The reports are copyrighted by the authors, and their existence in electronic format does not imply that the authors have relinquished any rights. You may copy a report for scholarly, non-commercial purposes, such as research or instruction, provided that you agree to respect the author's copyright. For information concerning the use of this document for other than research or instructional purposes, contact the authors. Other information concerning this technical report series can be obtained from the Computer Science and Engineering Department at the University of California at San Diego, firstname.lastname@example.org.
[ Search ]