Patent ID: 7334023

Claim:
A data transfer device for transferring a request received from a client to a server which is a destination of the request, and transferring contents data according to the request received from the server to the client that is a source of the request, comprising: a reception unit configured to receive the request from the client and the contents data from the server; a transmission unit configured to transmit the request to the server and the contents data to the client; a feature quantity calculation unit configured to calculate a feature quantity indicating a feature of the contents data, upon receiving the contents data in response to the request; a memory unit configured to store the feature quantity and the contents data in correspondence; a search unit configured to search through the memory unit to check whether the feature quantity identical to a new feature quantity calculated by the feature quantity calculation unit is stored in the memory unit or not, and output a search result; and a control unit configured to control the search unit to carry out a search, determine information to be transmitted from the transmission unit according to the search result, and control the transmission unit to transmit to the client a reply message formed by a header portion and a body portion, which contains the feature quantity in the body portion, when the feature quantity identical to the new feature quantity is stored in the memory unit, or control the transmission unit to transmit to the client the reply message which contains the contents data and the new feature quantity in the body portion, while storing the new feature quantity and a corresponding contents data in the memory unit, when the feature quantity identical to the new feature quantity is not stored in the memory unit, wherein the control unit stores the contents data and the feature quantity in correspondence into the memory unit, and controls the search unit to carry out another search for a difference base data having a similarity with the contents data greater than or equal to a prescribed threshold, when the contents data having the feature quantity identical to the new feature quantity is not stored in the memory unit as a result of the search, and the control unit controls the transmission unit to transmit to the client a difference data indicating a difference between the contents data and the difference base data, the feature quantity of the contents data, and a difference base feature quantity which is the feature quantity of the difference base data, when the difference base data exists as a result of the another search, or controls the transmission unit to transmit to the client the contents data and the feature quantity of the contents data when the difference base data does not exist as a result of the another search.