Adaptive Content Compression With Accurate Header Length
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for compressing data over networks face challenges in determining the resultant size of compressed files, which is crucial for client connection 'keep-alives' and other applications, as the length information in protocol headers may not be accurate during on-the-fly compression.
Innovation Solution
The system employs a buffer to compress content using a selected compression mode, such as maximum compression, and then uses identity compression for remaining content, allowing for accurate determination of the new content length and enabling correct client connection keep-alives by buffering the entire result or compressing the initial portion and encoding the remainder as uncompressed blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If compression is performed on the fly during data transmission, then the data transmission speed is improved and the amount of data sent is reduced, but the length information in protocol headers becomes inaccurate
Solution Approach 1:
The patent performs preliminary compression on a portion of the content before transmission, allowing the system to determine the actual compressed size in advance. This preliminary action enables accurate length information to be provided in protocol headers while still benefiting from compression, resolving the contradiction between speed improvement and measurement accuracy.
Solution Approach 2:
The content is divided into segments where a portion is compressed and another portion remains uncompressed. This segmentation allows the system to provide accurate length information for both compressed and uncompressed portions separately in protocol headers, maintaining measurement precision while still achieving compression benefits for the compressed segment.
2Quantity of substance
If the entire content is compressed to achieve maximum compression ratio, then the data size is reduced, but the time required to determine the resultant size increases
Solution Approach 1:
Instead of compressing the entire content, the patent applies compression only to a portion of the content. This partial action reduces the time required to determine the resultant size while still achieving data size reduction, resolving the contradiction between minimizing data size and minimizing the time to determine the compressed size.
3Measurement precision
If a buffer is used to store compressed content, then accurate content length can be determined, but the memory requirements increase
Solution Approach 1:
The patent segments the content into compressed and uncompressed portions, allowing accurate length determination without buffering the entire compressed content. This segmentation reduces the buffer memory size requirement while maintaining measurement precision for the compressed segment.
Solution Approach 2:
The patent extracts only the necessary portion of content to be compressed, compresses it, and determines its size without requiring a large buffer to hold the entire compressed content. This extraction approach reduces memory requirements while maintaining accurate content length determination.
Data Source
AI summary
A method, system, and apparatus are directed towards compression of content over a network. The content may include content length information, such as within a header. In one embodiment, a portion of the content may be compressed to approximately fill a buffer of a predefined size. If there remains additional uncompressed content, a new content length may be determined based in part on the length of the compressed content and the remaining uncompressed content. The buffered content and the new content length may then be forwarded in response to the request. The remaining uncompressed content may be split into predefined blocks using identity compression. Identity compression may then be applied to the remaining uncompressed content which is then forwarded to a destination in response to the request.


