Compression History Matching for Low-Latency Network Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data compression methods in networks face inefficiencies due to insufficiently long matches between input streams and compression histories, leading to poor compression ratios and increased processing overhead, especially in multi-stream transmissions and devices with long access latencies, and also struggle with synchronizing shared compression histories across devices.
Innovation Solution
The implementation of algorithms to identify and utilize long compression history matches by creating indexes in memory, synchronizing compression histories, and sharing them across devices to improve compression efficiency and reduce bandwidth usage, while also removing application layer protocol headers to enhance matching efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If compression histories are stored on disk with long access latencies, then data can be stored for future reference, but processing overhead increases and compression efficiency decreases due to multiple disk accesses
Solution Approach 1:
The compression history is segmented into two storage locations: recently used data stored in memory for fast access, and older data stored on disk. This segmentation allows the system to access frequently needed compression history data quickly while still maintaining a large overall history repository on disk.
Solution Approach 2:
A memory buffer acts as an intermediary between the disk storage and the compression algorithm. The memory buffer pre-loads and caches compression history data that is likely to be needed, eliminating the need for frequent direct disk accesses during compression operations.
2Productivity
If multiple data streams are transmitted simultaneously, then network utilization improves, but processing overhead increases due to multiple processes accessing compression history simultaneously
Solution Approach 1:
The compression history in memory is divided into multiple separate buffers, one for each active data stream. This segmentation allows each stream to access its own dedicated buffer without contention, eliminating the need for complex synchronization mechanisms while supporting multiple simultaneous streams.
Solution Approach 2:
The memory-based compression history system serves multiple data streams simultaneously through a universal buffer structure that can be shared by multiple processes. This multi-functional design allows the same memory resource to efficiently support numerous concurrent compression operations.
3Productivity
If compression histories are shared across devices, then compression efficiency improves by leveraging previously transmitted data, but synchronization complexity increases when devices diverge
Solution Approach 1:
Compression history data is pre-synchronized between devices before transmission begins. By ensuring both devices have identical compression histories in advance, the system eliminates the need for complex real-time synchronization during data transmission, reducing synchronization overhead while maintaining high compression efficiency.
Data Source
AI summary
Systems and methods of storing previously transmitted data and using it to reduce bandwidth usage and accelerate future communications are described. By using algorithms to identify long compression history matches, a network device may improve compression efficiently and speed. A network device may also use application specific parsing to improve the length and number of compression history matches. Further, by sharing compression histories, compression history indexes and caches across multiple devices, devices can utilize data previously transmitted to other devices to compress network traffic. Any combination of the systems and methods may be used to efficiently find long matches to stored data, synchronize the storage of previously sent data, and share previously sent data among one or more other devices.


