  Internet of Things (IoT) devices and applications are generating and
communicating vast quantities of data, and the rate of data collection is
increasing rapidly. These high communication volumes are challenging for
energy-constrained, data-capped, wireless mobile devices and networked sensors.
Compression is commonly used to reduce web traffic, to save energy, and to make
network transfers faster. If not used judiciously, however, compression can
hurt performance. This work proposes and evaluates mechanisms that employ
selective compression at the network's edge, based on data characteristics and
network conditions. This approach (i) improves the performance of network
transfers in IoT environments, while (ii) providing significant data savings.
We demonstrate that our library speeds up web transfers by an average of 2.18x
and 2.03x under fixed and dynamically changing network conditions respectively.
Furthermore, it also provides consistent data savings, compacting data down to
19% of the original data size.
