Compression is simultaneously one of the best-supported and most under-utilized technologies available on the Web today.
The Technology
Both HTTP 1.0 (1996) and HTTP 1.1 (1999) contain support for the "content codings" protocol parameter, the primary purpose of which is to enable compression of Web-based content without loss of data or change in its underlying media type. Since 1.1, HTTP implementations have routinely included support for all of the protocol elements necessary for reliable use of these content codings. Most major browsers like Internet Explorer, Netscape and Opera have supported compression since their fourth generation versions (roughly since 1998/9).
At the HTTP level, compression is primarily supported through the use of a pair of HTTP headers: Accept-Encoding and Content-Encoding. The Accept-Encoding header is sent by browsers to indicate that they can accept a compressed version of the resource being requested, and to specify which of the commonly available compression formats they are capable of decoding. The Content-Encoding header is used by servers to inform browsers that the requested resource is being returned in compressed form, and to indicate which of the supported encodings was used to do the compression.
The most common content encodings used for compression in HTTP are all based on the deflate format -- a combination of LZ77 and Huffman encoding (RFC 1951). The "deflate" encoding combines this deflate fomat with Zlib (RFC 1950), which adds the ADLER-32 checksum. GZip (RFC 1952), wraps the deflate format in a special header and a 32-bit cyclic redundancy check.
The Benefits
Any company with a Web site or Web-based application will benefit from using HTTP compression, whether self hosting or outsourcing dedicated Web servers from a hosting provider. Companies deploy HTTP compression for Web server acceleration, reduced bandwidth and faster perceived page load times for their end-users. HSPs generally leverage compression to reduce bandwidth expenditures.
Depending on the type of Web server you have, there are a variety of HTTP compression solutions available.
httpZip - Given limitations in internal compression features for IIS 5.0 on Windows 2000 and IIS 4.0 on Windows NT, httpZip is the best, most affordable third party tool for fully configurable, safe HTTP compression and acceleration on IIS 5 and 4.
Internal compression on IIS 6.0 - Microsoft made improving compression with Windows Server 2003 and IIS 6.0 a priority. As a result, this feature is now of sufficiently high quality that third party tools are no longer needed for IIS 6 compression -- check out ZipEnable to manage IIS 6.0 Built-in Compression.
Xceed's Compression Component for .NET -
Supports the Deflate and Deflate64™ compression methods
Supports the GZip, Zlib, Info-Zip, Java and proprietary compression formats that include embedded checksums to ensure data integrity
Can read/write ".gz" GZip files used on Unix / Linux platforms and provides access to GZip header information fields
True .NET pass-through stream object that can automatically compress or decompress any other type of .NET stream's data
Compress and decompress byte arrays
Calculate CRC-32 and Adler-32 checksums on streams or byte arrays
Controllable compression level for each compression method
Netscape Enterprise Server
Hardware solution for compression - Consider a reverse proxy hardware compression solution AppCelera or VIGOS.