Message Compression

The message compression compresses WinCC OA messages. Data compression means encoding information using fewer bits than an unencoded representation would use through use of specific encoding schemes.

Compression is useful because it reduces the consumption of expensive resources, such as transmission bandwidth.

Use the config entry ”messageCompression” to specify the compression scheme. The config entry may contain the following schemes:

  • "none" (no compression), (default value is "" meaning "none")

  • "zlib" (compression using zlib (gzip, zip)), see http://www.zlib.org

  • "bzip2" (compression by using the bzip2 algorithm (bzip2 is a freely available, high-quality data compressor, see http://www.bzip.org). "bzip2 compresses better than zlib at the cost of higher CPU utilization.

    or

  • "zlib-bzip2" (compresses short messages using zlib and bigger messages like Identification using bzip2)

You can use the config entry in all config file sections.

You can specify several schemes, for example, messageCompression = "zlib-bzip2,zlib". The client and the server agree on the first common scheme. Therefore, if you configure "zlib" on the client and "bzip,zlib" on the server, the "zlib" scheme is used. The default value is "none" and we recommend to use "zlib-bzip2".

The message compression compresses WinCC OA messages only as of a specific minimum size to avoid unnecessary CPU load. Specify the size in bytes using the config entry ”messageCompressionThreshold” (Default 0). You can use the config entry in all config file sections. The message compression provides a considerable advantage by reducing the consumption of transmission bandwidth noticeable, even in case of small messages. The default value 0 compresses all messages as long as the compression provides an advantage (sometimes compressed data might be bigger than uncompressed). The compression only compresses messages of external connections. It does not compress messages of local (computer) connections.

Use the -report dispatch option to query the compression rate. 20 % means that the message compression compressed a message to 1/5 of the original size. The rate results from the size of the transmitted reference data divided by the size of the not compressed data.