Today’s networks will always have data limitations. Data sets continue to grow on pace with increasing bandwidth availability making network-compression an important service in improving network performance. The network-compression used is actually a combination of compression and caching. It has been found that TCP rate control combined with network-compression provides the best value in terms of optimizing networks.
Compression reduces the size of data frames transmitted over networks. Reducing frame size results in frames taking up less bandwidth allowing greater volumes of network traffic. Data compression is normally classified as Hardware or Software compression’s. Software compression can be further broken down into two types, CPU-intensive or Memory-intensive.
Stacker compression is based on the Lempel-Ziv algorithm and uses an encoded dictionary that replaces a continuous stream of characters with codes. This scheme is known for its flexibility, particularly in regards to Local Area Network (LAN) data since many different applications might be transmitting over the network at any given time. The dictionary approach can change to accommodate and adapt to traffic variables.
Predictor compression attempts to predict the next sequence of characters in a data stream using an index to lookup the compression sequence. By examining the next sequence, it can see if it matches the index. If so, the sequence replaces the looked-up sequence in the dictionary. If there is no match, the algorithm locates the next character sequence in the index and the process begins again. The Predictor compression ratio is not as good as other algorithms, but it remains one of the fastest algorithms available. Predictor is more memory-intensive and less CPU-intensive.
Additionally, there are also proprietary compression’s such as Cisco IOS software and Cisco hardware compression’s. Cisco IOS software supports several third-party algorithms, including Hi/fn Stac Limpel Zif Stac (LZS), Predictor, and Microsoft Point-to-Point Compression (MPPC). Compression can be used on the entire-packet, header-only, or on a payload-only basis. Cisco hardware compression is specifically designed for receiving multiple compression streams coming from remote Cisco routers using Cisco IOS software-based compression. The combination of IOS and hardware compression is designed to improve overall network performance.
In summary, compression overall improves network transmission efficiency, but much of the overall efficiency relies on other parts of the network. Slow, or problem hardware or devices anywhere in the network can still cause bottlenecks that will decrease performance of a network. Additionally, network device and software performance is dependent on computing resources available, namely sufficient memory and CPU resources. If a device or software performing compression/decompression does not have sufficient computing power it results in bottlenecks that degrade the overall performance of the network.
Cisco Understanding Data Compression. (2008, January 15). Understanding Data Compression. Retrieved July 20, 2017, from http://www.cisco.com/c/en/us/support/docs/wan/data-compression/14156-compress-overview.html.
Withers, S. (2005, February 10). 10 ways to improve network performance. Retrieved July 20, 2017, from http://www.zdnet.com/article/10-ways-to-improve-network-performance/.