Packet-based data compression method
First Claim
1. In a data processing system that employs packets, a packet including at least static fields and dynamic fields, said static fields including data which remains constant over plural packets, said dynamic fields including data which may change for each packet, some said packets also including user-data fields, a method for compressing said packets for transmission from one to another portion of the system, the method comprising:
- a. reformatting each packet by associating its static fields with a first packet region, and its dynamic-fields with a second packet region;
b. assembling a static table that includes static field data from at least an initial data packet'"'"'s first packet region and assigning a code value thereto;
c. identifying static field data associated with a subsequent packet'"'"'s first packet region that is common to data in said static table, and selecting a code value assigned to said data that is common in said static table;
d. modifying said subsequent packet by replacing said common, static field data with said assigned code value; and
e. transmitting said modified subsequent packet.
4 Assignments
0 Petitions
Accused Products
Abstract
A data processing system is described that employs data packets which include at least static and dynamic fields, the static fields containing information that often remains constant during a multi-packet communication interval and the dynamic fields containing information that changes for each packet. Many packets also include a user-data fields. A compression method is described which comprises: reformatting each data packet by associating its static fields with a first packet region and its dynamic fields with a second packet region. The process then assembles a static table that includes static information from at least an initial data packet'"'"'s first packet region. It then identifies static field information in a subsequent data packet'"'"'s first packet region that is common to the information in the static table. Such common information is encoded so as to reduce its data length. The common static information is then replaced in the modified data packet with the encoded common static information and the modified data packet is then transmitted. A similar action occurs with respect to user-data information. A single dictionary table is created for all packet headers, while separate dictionary tables are created for each user-data portion of a packet-type experienced in the communication network thereby enabling better compression.
323 Citations
21 Claims
-
1. In a data processing system that employs packets, a packet including at least static fields and dynamic fields, said static fields including data which remains constant over plural packets, said dynamic fields including data which may change for each packet, some said packets also including user-data fields, a method for compressing said packets for transmission from one to another portion of the system, the method comprising:
-
a. reformatting each packet by associating its static fields with a first packet region, and its dynamic-fields with a second packet region; b. assembling a static table that includes static field data from at least an initial data packet'"'"'s first packet region and assigning a code value thereto; c. identifying static field data associated with a subsequent packet'"'"'s first packet region that is common to data in said static table, and selecting a code value assigned to said data that is common in said static table; d. modifying said subsequent packet by replacing said common, static field data with said assigned code value; and e. transmitting said modified subsequent packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. In a data processing system that employs packets, a packet having a header which includes at least static and dynamic fields, said static fields including data which is constant during a multi-packet communication interval, said dynamic fields including data which may change for each packet, a method for compressing the contents of said packets for transmission from one portion of the system of another portion of the system, the method comprising:
-
a. reformatting each packet by placing static fields first in order in each said packet; b. assembling a table in said one portion of said system that includes all header static field data from at least an initial packet'"'"'s header and associating therewith a code value; c. identifying header data in a subsequent packet that is common to the static field data in said table and compressing common static field data by selecting a code value associated therewith in said table; d. if said header of said subsequent packet contains additional static field data not included in said static field data in said table, updating said table to include static field data identical to that contained in said subsequent packet; and e. transmitting said subsequent packet to a receiving processor in said another portion of said system, the header of said subsequent packet including the code value selected in step a, in lieu of said common static field data.
-
-
15. A method for compressing packets in a data communication system, each said packet comprising header fields that include at least static data strings and dynamic data strings,
a. restructuring each header field to segregate static data strings from dynamic data strings, b. assembling a compression table that includes static data strings from packet headers, and a code value assigned to each static data string; -
c. examining a restructured static data string in a header of a new packet to determine if a matching static data string is included in said compression table, and if a match is found, selecting a code value assigned to the matching static data string in said compression table; and d. substituting said code value selected in step c for said restructured static data string in the header of said new packet when said new packet is transmitted in said data communication system. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification