IP Library Granted Patent US 7,085,893
Granted Patent B2
US 7,085,893 · App. 10/661,955 · Granted Aug 1, 2006

Negotiated distribution of cache content

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 7,085,893
App. No.
10/661,955
Granted
Aug 1, 2006
Kind
B2
Abstract

Improved caching of content at caching proxy (“CP”) servers is disclosed. In one aspect, negotiations occur before content is dynamically distributed, whereby an entity such as a Web server selects content and at least one target CP server, and sends a content distribution request to each target, describing the content to be distributed. Preferably, the selection is made by dynamically prioritizing content based on historical metrics. In another aspect, a CP server that receives a content distribution request during these negotiations determines its response to the distribution request. Preferably, content priority of already-cached content is compared to priority of the content described by the content distribution request when making the determination. In yet another aspect, a CP server selectively determines whether to cache content during cache miss processing. Preferably, this comprises comparing content priority of already-cached content to priority of content delivered to the CP server during the cache miss.

Claims (29)

1. A method of negotiated distribution of cache content comprising steps of:

selecting candidate content for distribution to a cache store;

sending, to the cache store, a content distribution request message that describes the candidate content; and

distributing the candidate content to the cache store only if a content distribution response message, received from the cache store responsive to the content distribution request message, indicates that the cache store will accept the candidate content for caching.

2. The method according to claim 1 , wherein the selecting step further comprises analyzing historical metrics to identify the candidate content.

3. The method according to claim 2 , wherein the historical metrics represent content requested over a period of time.

4. The method according to claim 1 , wherein the content distribution request message describes the candidate content's size.

5. The method according to claim 1 , wherein the content distribution request message describes the candidate content's type.

6. The method according to claim 1 , wherein the content distribution request message describes a security classification of the candidate content.

7. The method according to claim 1 , wherein the content distribution request message describes a hit rate of the candidate content.

8. The method according to claim 1 , wherein the selecting and sending steps are performed at a Web server.

9. The method according to claim 1 , wherein the cache store is selected using historical metrics.

10. The method according to claim 1 , wherein the candidate content is selected for distribution to a plurality of cache stores, and wherein the sending step sends the content distribution request message to each of the plurality of cache stores.

11. The method according to claim 1 , further comprising the steps of:

selecting, when the content distribution response message indicates that the cache store rejects the candidate content, an alternative cache store; and

sending the content distribution request message to the alternative cache store.

12. The method according to claim 1 , wherein the content distribution request message is encoded in a structured markup language.

13. The method according to claim 12 , wherein the structured markup language is Extensible Markup Language (“XML”).

14. The method according to claim 1 , wherein the content distribution request message includes an identifier for the candidate content and wherein this identifier is also included in the content distribution response message.

15. The method according to claim 14 , wherein the distributing step uses the identifier to locate the candidate content to be distributed.

16. The method according to claim 1 , wherein the candidate content comprises a plurality of files to be distributed as a unit.

17. A system for negotiated distribution of cache content, comprising:

means for selecting candidate content for distribution to a cache store;

means for sending, to the cache store, a content distribution request message that describes the candidate content; and

means distributing the candidate content to the cache store only if a content distribution response message, received from the cache store responsive to the content distribution request message, indicates that the cache store will accept the candidate content for caching.

18. A computer program product for negotiated distribution of cache content, the computer program product embodied on one or more computer-readable media and comprising:

computer-readable program code for selecting candidate content for distribution to a cache store;

computer-readable program code for sending, to the cache store, a content distribution request message that describes the candidate content; and

computer-readable program code for distributing the candidate content to the cache store only if a content distribution response message, received from the cache store responsive to the content distribution request message, indicates that the cache store will accept the candidate content for caching.

Assignments (3)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044127/0735 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2011
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GOOGLE INC.
Reel/Frame 027463/0594 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2003
From: KRISSELL, DANIEL L.; LEAH, ROBERT C.; MCMAHAN, PAUL F.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 014498/0205 →