IP Library Granted Patent US 9,075,894
Granted Patent B2
US 9,075,894 · App. 13/285,481 · Granted Jul 7, 2015

System and method for identifying web objects unworthy of being cached

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 9,075,894
App. No.
13/285,481
Granted
Jul 7, 2015
Kind
B2
Abstract

A caching device is configured to determine whether an object received or currently stored at the caching device should be (or continue to be) cached at the caching device, even if the object is otherwise cacheable. If so, the object is cached (or retained) at the caching device, otherwise, it is not. The determination as to whether or not the object should be cached or, if already cached, retained at the caching device may be made on the basis of a worthiness determination which evaluates the object on the basis of one or more parameters or attributes of the object, which worthiness may be one part of an overall value determination for the object.

Claims (32)

1. A computer-implemented process, comprising:

determining, according to one or more criteria, whether or not an otherwise cacheable object received at a caching device should be cached at the caching device; and

if so, caching the object at the caching device, otherwise, not caching the object at the caching device,

wherein the one or more criteria consider a cache worthiness of the object in combination with a resource availability of the caching device, and

wherein when the resource availability of the caching device is high, objects with a low cache worthiness are allowed to be cached in the caching device and when the resource availability of the caching device is low, only objects with a high cache worthiness are allowed to be cached in the caching device.

2. The computer-implemented process of claim 1 , wherein the one or more criteria comprise one or more tokens.

3. The computer-implemented process of claim 2 , wherein the one or more tokens comprise some or all of strings extracted from Uniform Resource Locators (URLs), headers, trailers, tags or other portions of the object, or data associated with the object, or signatures of the object.

4. The computer-implemented process of claim 2 , wherein the one or more tokens comprise some or all of strings extracted from object names, locators, addresses, meta-information or other portions of the object, or data associated with the object, or signatures of the object.

5. The computer-implemented process of claim 4 , wherein strings extracted from object names, locators, addresses, meta-information or other portions of the object comprise one or more of strings extracted from HTTP URLs, headers or trailers.

6. The computer-implemented process of claim 2 , wherein the one or more tokens comprise some or all of HTML or XML tags or web object semantic content, or other portions of a web object, data associated with a web object, or signatures of a web object.

7. The computer-implemented process of claim 2 , wherein the one or more tokens are provided to the caching device from one or more databases accessible to the caching device.

8. The computer-implemented process of claim 7 , wherein some or all of the tokens are used in classifying the object as not likely to be the subject of a subsequent request.

9. The computer-implemented process of claim 8 , wherein the caching device determines whether or not to cache the object according to statistical observations with respect to the tokens.

10. The computer-implemented process of claim 1 , wherein the otherwise cacheable object was previously stored at the caching device, at least in part, prior to determining whether or not the otherwise cacheable object should be cached at the caching device.

11. The computer-implemented process of claim 10 , wherein determining whether or not the otherwise cacheable object should be cached at the caching device is repeated iteratively while portions of the object not previously cached by the caching device are downloaded to the caching device.

12. The computer-implemented process of claim 2 , wherein the tokens are derived from one or more of: object access patterns, client access patterns, client behavior for a subject object, client behavior for a subject object class, information regarding a client request received at the caching device, time of day, duration of a client transaction, speed of data transfer, nature of a client request for the object, and identity of a client requesting the object.

13. A caching device comprising a processor and a storage device communicatively coupled to said processor, said storage device storing computer-executable instructions which, when executed by the processor, cause the processor to perform the steps of:

determining, according to one or more one or more criteria, whether or not an otherwise cacheable object received at the caching device should be cached at the caching device; and

if so, caching the object at the caching device, otherwise, not caching the object at the caching device,

wherein the one or more criteria consider a cache worthiness of the object in combination with a resource availability of the caching device, and

wherein when the resource availability of the caching device is high, objects with a low cache worthiness are allowed to be cached in the caching device and when the resource availability of the caching device is low, only objects with a high cache worthiness are allowed to be cached in the caching device.

14. The caching device of claim 13 , wherein the one or more criteria comprise one or more tokens.

15. The caching device of claim 14 , wherein the one or more tokens comprise some or all of strings extracted from Uniform Resource Locators (URLs), headers, trailers, tags or other portions of the object, or data associated with the object, or signatures of the object.

16. The caching device of claim 14 , wherein the one or more tokens comprise some or all of strings extracted from object names, locators, addresses, meta-information or other portions of the object, or data associated with the object, or signatures of the object.

17. The caching device of claim 16 , wherein strings extracted from object names, locators, addresses, meta-information or other portions of the object comprise one or more of strings extracted from HTTP URLs, headers or trailers.

18. The caching device of claim 14 , wherein the one or more tokens comprise some or all of HTML or XML tags or web object semantic content, or other portions of a web object, data associated with a web object, or signatures of a web object.

19. The caching device of claim 14 , wherein the one or more tokens are provided to the caching device from one or more databases accessible to the caching device.

20. The caching device of claim 14 , wherein some or all of the tokens are used in classifying the object as not likely to be the subject of a subsequent request.

21. The caching device of claim 20 , wherein the caching device determines whether or not to cache the object according to statistical observations with respect to the tokens.

22. The caching device of claim 13 , wherein the otherwise cacheable object was previously stored at the caching device, at least in part, prior to determining whether or not the otherwise cacheable object should be cached at the caching device.

23. The caching device of claim 22 , wherein determining whether or not the otherwise cacheable object should be cached at the caching device is repeated iteratively while portions of the object not previously cached by the caching device are downloaded to the caching device.

24. The caching device of claim 13 , wherein the criteria are derived from one or more of: object access patterns, client access patterns, client behavior for a subject object, client behavior for a subject object class, information regarding a client request received at the caching device, time of day, duration of a client transaction, speed of data transfer, nature of a client request for the object, and identity of a client requesting the object.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: SYMANTEC CORPORATION
To: CA, INC.
Reel/Frame 051144/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2016
From: BLUE COAT SYSTEMS, INC.
To: SYMANTEC CORPORATION
Reel/Frame 039851/0044 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2016
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 039516/0929 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 30740/0181 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035797/0280 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 27727/0144 Recorded May 29, 2015
From: JEFFERIES FINANCE LLC
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 035798/0006 →
SECURITY INTEREST Recorded May 22, 2015
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS THE COLLATERAL AGENT
Reel/Frame 035751/0348 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 3, 2013
From: BLUE COAT SYSTEMS, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 030740/0181 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL RECORDED AT R/F 027727/0178 Recorded Oct 16, 2012
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: BLUE COAT SYSTEMS, INC.
Reel/Frame 029140/0170 →