Patent ID: 8046496

Claim:
A method of compressing data in a network, the data comprising a plurality of packets corresponding to a plurality of headers and a plurality of payloads, a packet of the plurality of packets having a header of the plurality of headers and a payload of the plurality of payloads, each of the plurality of headers comprising a plurality of header fields, the method comprising: generating, using a computer, a matrix based on the plurality of packets, the matrix comprising a plurality of rows each corresponding to one of the plurality of packets and a plurality of structured columns each corresponding to one of the plurality of header fields, the matrix further comprising an unstructured column having a plurality of row elements each comprising one of the plurality of payloads; determining, using the computer, an intra-packet compression plan based on historical network data, the intra-packet compression plan configured to reorder and divide the plurality of structured columns in the matrix into a plurality of groups; determining, using the computer, an inter-packet compression plan based on historical network data, the inter-packet compression plan configured to reorder and classify the plurality of rows in the matrix based on a plurality of hierarchical categories in a classification tree determined using the historical network data, wherein the classification tree is determined by: composing a full classification tree having a plurality of nodes based on the plurality of header fields, each of the plurality of nodes representing payload classification based on a specific value combination of the plurality of header fields; identifying a hierarchical category of the plurality of hierarchical categories from the full classification tree, the hierarchical category comprising one or more nodes in the plurality of nodes identified based on minimizing a first cost function while applying the inter-packet compression plan to the historical network data; and including the hierarchical category in the classification tree; and performing, using the computer, inter-packet compression of the plurality of payloads based on the inter-packet compression plan; and performing, using the computer, intra-packet compression of the plurality of headers based on the intra-packet compression plan.