IP Library Granted Patent US 8,024,484
Granted Patent B2
US 8,024,484 · App. 12/429,742 · Granted Sep 20, 2011

Caching signatures

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,024,484
App. No.
12/429,742
Granted
Sep 20, 2011
Kind
B2
Abstract

The performance of a network system having one or more requestor nodes, one or more provider nodes, and one or more intermediate nodes is improved by determining the digital signature of a received file, looking up the digital signature in an index of signatures, and forwarding a previously compressed version of the requested file when the digital signature is found in the index of signatures.

Claims (83)

1. A method for increasing available bandwidth in a network, the method comprising:

receiving, from a first requesting system, a request for content;

retrieving the content;

determining a digital signature of the content;

comparing the digital signature of the content to digital signatures included in an index of digital signatures;

determining, based on the comparison of the digital signature of the content to the digital signatures stored in the index of digital signatures, that the digital signature of the content is not included in the index of digital signatures;

based on the determination that the digital signature of the content is not stored in the index of digital signatures:

compressing the content,

storing the compressed content in a location of a storage device, and

updating the index of digital signatures by including the digital signature of the content and an associated pointer to the location of the stored compressed content in the location of the storage device;

forwarding, to the first requesting system, the stored compressed content;

receiving, from a second requesting system, a request for desired content;

determining a digital signature of the desired content;

comparing the digital signature of the desired content to digital signatures included in the updated index of digital signatures;

determining, based on the comparison of the digital signature of the desired content to the digital signatures stored in the updated index of digital signatures, that the digital signature of the desired content is included in the updated index of digital signatures;

accessing a pointer associated with the digital signature of the desired content within the updated index of digital signatures; and

retrieving, based on the accessed pointer, stored compressed content corresponding to the desired content from the location of the storage device corresponding to the accessed pointer; and

forwarding, in response to the request for the desired content, data based on the stored compressed content retrieved from the location of the storage device.

2. The method of claim 1 , wherein:

determining the digital signature of the content comprises applying a hashing technique to the content; and

determining the digital signature of the desired content comprises applying the hashing technique to the desired content.

3. The method of claim 2 , wherein the hashing technique comprises a version of the MD5 algorithm.

4. The method of claim 2 , wherein the hashing technique comprises a version of the SHA algorithm.

5. The method of claim 1 , wherein:

receiving the request for the content comprises receiving a Uniform Resource Locator; and

receiving the request for the desired content comprises receiving the Uniform Resource Locator.

6. The method of claim 1 , further comprising verifying the stored compressed content corresponding to the desired content.

7. The method of claim 6 , further comprising determining that the stored compressed content corresponding to the desired content has been verified, wherein forwarding, in response to the request for the desired content, the data based on the stored compressed content retrieved from the location of the storage device comprises forwarding, in response to the request for the desired content and the determination that the stored compressed content corresponding to the desired content has been verified, data based on the stored compressed content retrieved from the location of the storage device.

8. A system for increasing available bandwidth in a network, the system comprising at least one processor connected to a storage device, wherein the at least one processor is configured to:

receive, from a first requesting system, a request for content;

retrieve the content;

determine a digital signature of the content;

compare the digital signature of the content to digital signatures included in an index of digital signatures;

determine, based on the comparison of the digital signature of the content to the digital signatures stored in the index of digital signatures, that the digital signature of the content is not included in the index of digital signatures;

based on the determination that the digital signature of the content is not stored in the index of digital signatures:

compress the content,

store the compressed content in a location of a storage device, and

update the index of digital signatures by including the digital signature of the content and an associated pointer to the location of the stored compressed content in the location of the storage device;

forward, to the first requesting system, the stored compressed content;

receive, from a second requesting system, a request for desired content;

determine a digital signature of the desired content;

compare the digital signature of the desired content to digital signatures included in the updated index of digital signatures;

determine, based on the comparison of the digital signature of the desired content to the digital signatures stored in the updated index of digital signatures, that the digital signature of the desired content is included in the updated index of digital signatures;

access a pointer associated with the digital signature of the desired content within the updated index of digital signatures; and

retrieve, based on the accessed pointer, stored compressed content corresponding to the desired content from the location of the storage device corresponding to the accessed pointer; and

forward, in response to the request for the desired content, data based on the stored compressed content retrieved from the location of the storage device.

9. The system of claim 8 , wherein the at least one processor is configured to:

determine the digital signature of the content by applying a hashing technique to the content; and

determine the digital signature of the desired content by applying the hashing technique to the desired content.

10. The system of claim 9 , wherein the hashing technique comprises a version of the MD5 algorithm.

11. The system of claim 9 , wherein the hashing technique comprises a version of the SHA algorithm.

12. The system of claim 8 , wherein the at least one processor is configured to:

receive the request for the content by receiving a Uniform Resource Locator; and

receive the request for the desired content by receiving the Uniform Resource Locator.

13. The system of claim 8 , wherein the at least one processor is further configured to verify the stored compressed content corresponding to the desired content.

14. The system of claim 13 , wherein the at least one processor is further configured to determine that the stored compressed content corresponding to the desired content has been verified, and wherein the at least one processor is configured to forward, in response to the request for the desired content, the data based on the stored compressed content retrieved from the location of the storage device by forwarding, in response to the request for the desired content and the determination that the stored compressed content corresponding to the desired content has been verified, data based on the stored compressed content retrieved from the location of the storage device.

15. A non-transitory computer-readable medium having embodied thereon a computer program configured to increase available bandwidth in a network, the computer program comprising one or more code segments that, when executed, cause a computer to:

receive, from a first requesting system, a request for content;

retrieve the content;

determine a digital signature of the content;

compare the digital signature of the content to digital signatures included in an index of digital signatures;

determine, based on the comparison of the digital signature of the content to the digital signatures stored in the index of digital signatures, that the digital signature of the content is not included in the index of digital signatures;

based on the determination that the digital signature of the content is not stored in the index of digital signatures:

compress the content,

store the compressed content in a location of a storage device, and

update the index of digital signatures by including the digital signature of the content and an associated pointer to the location of the stored compressed content in the location of the storage device;

forward, to the first requesting system, the stored compressed content;

receive, from a second requesting system, a request for desired content;

determine a digital signature of the desired content;

compare the digital signature of the desired content to digital signatures included in the updated index of digital signatures;

determine, based on the comparison of the digital signature of the desired content to the digital signatures stored in the updated index of digital signatures, that the digital signature of the desired content is included in the updated index of digital signatures;

access a pointer associated with the digital signature of the desired content within the updated index of digital signatures; and

retrieve, based on the accessed pointer, stored compressed content corresponding to the desired content from the location of the storage device corresponding to the accessed pointer; and

forward, in response to the request for the desired content, data based on the stored compressed content retrieved from the location of the storage device.

16. The medium of claim 15 , wherein the one or more code segments that, when executed, cause a computer to:

determine the digital signature of the content comprise one or more code segments that, when executed, cause a computer to apply a hashing technique to the content; and

determine the digital signature of the desired content comprise one or more code segments that, when executed, cause a computer to apply the hashing technique to the desired content.

17. The medium of claim 16 , wherein the hashing technique comprises a version of the MD5 algorithm.

18. The medium of claim 16 , wherein the hashing technique comprises a version of the SHA algorithm.

19. The medium of claim 15 , wherein the one or more code segments that, when executed, cause a computer to:

receive the request for the content comprise one or more code segments that, when executed, cause a computer to receive a Uniform Resource Locator; and

receive the request for the desired content comprise one or more code segments that, when executed, cause a computer to receive the Uniform Resource Locator.

20. The medium of claim 15 , wherein the computer program further comprises one or more code segments that, when executed, cause a computer to verify the stored compressed content corresponding to the desired content.

Assignments (6)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058961/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2012
From: AOL INC.
To: FACEBOOK, INC.
Reel/Frame 028487/0534 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2009
From: AOL LLC
To: AOL INC.
Reel/Frame 023723/0645 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2009
From: APPELMAN, BARRY
To: AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY (FORMERLY KNOWN AS AMERICA ONLINE, INC.)
Reel/Frame 022594/0763 →