Patent ID: 7640354
Filing Date: 2009-12-29
Classification: H03M,H04L,Y10S

Abstract:
1. A method for use at a wide area network acceleration computer system communicatively coupled to a Wide Area Network, the wide area network acceleration computer system including modules configured to accelerate access to content across the Wide Area Network, the method for storing received content to accelerate subsequent access to the received content, the method comprising: an act of receiving a stream of content from an originating computer system that is to be transferred access the Wide Area Network to an end-user computer system; an act of separating portions of the stream of content into corresponding chunks in a buffer; an act of hashing each of the corresponding chunks to generate a list of representative hash values in accordance with a first hash algorithm; an act of segmenting the list of representative hash values into segments, each segment including one or more consecutive representative hash values from the list of representative hash values; an act of selecting a selected hash value from among the representative hash values in each segment; an act of hashing the chunk corresponding to each selected hash value to generate a feature hash value for each corresponding segment in accordance with a second different hash algorithm; an act of searching a trait table for each feature hash value, the trait table including feature hash values for previously transferred streams of content and corresponding unit identifiers for dictionary units containing content from the previously transferred streams of content; an act of determining that each feature hash value is not included in the trait table; an act of storing a new dictionary unit containing the chunks from the buffer at a physical recordable-type computer-readable medium, the dictionary unit associating each chunk with its representative hash value; an act of establishing a unit identifier for the new dictionary unit; and an act of storing each feature hash value along with the established unit identifier in the trait table to indicate that each feature hash value identifies a feature of the chunks contained in the new dictionary unit such that reference to the dictionary unit is used to accelerate subsequent end-user computer system access to content contained in the chunks.