SYSTEMS AND METHODS OF CLUSTERED SHARING OF COMPRESSION HISTORIES
First Claim
1. A method for sharing compression histories among a plurality of devices to improve compression of data transmitted via a plurality of connections, the method comprising:
- (a) receiving, by a first device from a second device, an index of entries for a compression history shared between the second device and a third device;
each index entry comprising a location identifier of data stored in the second device;
(b) receiving, by the first device, a data stream intended for a fourth device;
(c) identifying, by the first device, that a portion of the data stream matches an entry of the received index;
(d) transmitting, by the first device to the second device, a location identifier corresponding to the matched entry;
(e) receiving, by the first device from the second device, a portion of the compression history corresponding to the location identifier;
(f) determining, by the first device, the portion of the compression history matches a portion of the data stream; and
(g) transmitting, by the first device to the fourth device, information identifying the portion of the compression history.
8 Assignments
0 Petitions
Accused Products
Abstract
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.
-
Citations
30 Claims
-
1. A method for sharing compression histories among a plurality of devices to improve compression of data transmitted via a plurality of connections, the method comprising:
-
(a) receiving, by a first device from a second device, an index of entries for a compression history shared between the second device and a third device; each index entry comprising a location identifier of data stored in the second device; (b) receiving, by the first device, a data stream intended for a fourth device; (c) identifying, by the first device, that a portion of the data stream matches an entry of the received index; (d) transmitting, by the first device to the second device, a location identifier corresponding to the matched entry; (e) receiving, by the first device from the second device, a portion of the compression history corresponding to the location identifier; (f) determining, by the first device, the portion of the compression history matches a portion of the data stream; and (g) transmitting, by the first device to the fourth device, information identifying the portion of the compression history. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An appliance for enabling sharing of compression histories among a plurality of devices to improve compression of data transmitted via a plurality of connections, the appliance comprising:
-
a compression engine which receives, from a first device, an index of entries for a compression history shared between the first device and a second device; each index entry comprising a location identifier of data stored in the first device; identifies that a portion of a received data stream intended for a third device matches an entry of the received index; and
determines a portion of the compression history matches a portion of the data stream; anda packet processor in communication with the compression engine which transmits to the first device, a location identifier corresponding to the matched entry;
receives, from the first device, the portion of the compression history corresponding to the location identifier; and
transmits, to the third device, information identifying the portion of the compression history. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A system for sharing compression histories among a plurality of devices to improve compression of data transmitted via a plurality of connections, the system comprising:
-
means for receiving, by a third device from a first device, an index of entries for a compression history shared between the first device and a second device; each index entry comprising a location identifier of data stored in the first device; means for receiving, by the third device, a data stream intended for a fourth device; means for identifying, by the third device, that a portion of the data stream matches an entry of the received index; means for transmitting, by the third device to the first device, a location identifier corresponding to the matched entry; means for receiving, by the third device from the first device, a portion of the compression history corresponding to the location identifier; means for determining, by the third device, the portion of the compression history matches a portion of the data stream; and means for transmitting, by the third device to the fourth device, information identifying the portion of the compression history.
-
Specification