To adapt to the dynamic change of network performance, applications can use compression to reduce the network transaction time by reducing the size of the data to be transmitted. But compression also increases the local processing time. The trade off between network transmission time and local processing time should be considered to make the right decision whether or not to compress the data.
In this paper, we split the application into three components: Compression Module, Network Module, and Compression Decision Module. We present our method to get the performance information about compression and network bandwidth. Experiments on a LAN testbed shows that our method can work quite well. We can make accurate judgment with our method.
Our experiment also shows that simple aggregation of processing times is not enough to predict the total execution time accurately. We need to consider the overlap between different types of processing. We present a simple model to explain it. Further experiment confirms our model.