Web cache performance by applying different replacement policies to the web cache
First Claim
Patent Images
1. A cache system comprising:
- a storage that is partitioned into a plurality of storage areas, each for storing one kind of objects of different sizes received from remote sites and to be directed to target devices;
a cache manager coupled to the storage to cause objects to be stored in the corresponding areas of the storage, wherein the cache manager causes cached objects in each of the storage areas to be replaced in accordance with one of a plurality of replacement policies, each policy being optimized for one kind of objects and being different from one another such that the storage can store objects of different kinds while offering optimized performance across different performance metrics at the same time, wherein the cache manager may cause more than one cached object in a storage area to be evicted in order for a single new object to be stored in the same storage area.
3 Assignments
0 Petitions
Accused Products
Abstract
A cache system is described that includes a storage that is partitioned into a plurality of storage areas, each for storing one kind of objects received from remote sites and to be directed to target devices. The cache system further includes a cache manager coupled to the storage to cause objects to be stored in the corresponding storage areas of the storage. The cache manager causes cached objects in each of the storage areas to be replaced in accordance with one of a plurality of replacement policies, each being optimized for one kind of objects.
351 Citations
21 Claims
-
1. A cache system comprising:
-
a storage that is partitioned into a plurality of storage areas, each for storing one kind of objects of different sizes received from remote sites and to be directed to target devices;
a cache manager coupled to the storage to cause objects to be stored in the corresponding areas of the storage, wherein the cache manager causes cached objects in each of the storage areas to be replaced in accordance with one of a plurality of replacement policies, each policy being optimized for one kind of objects and being different from one another such that the storage can store objects of different kinds while offering optimized performance across different performance metrics at the same time, wherein the cache manager may cause more than one cached object in a storage area to be evicted in order for a single new object to be stored in the same storage area. - View Dependent Claims (2, 3, 4, 5, 6)
a partition lookup table that indicates which kind of objects are stored in which of the storage areas;
a replacement policy database that stores the plurality of replacement policies;
a replacement controller that applies one of the replacement policies to a corresponding one of the storage areas.
-
-
6. The cache system of claim 1, wherein the plurality of replacement policies are selected from a group comprising a Least-Recently-Used (LRU) replacement policy, a Least-Frequently-Used (LFU) replacement policy, a Greedy-Dual-Size (GDS) replacement policy, a LFU-Aging replacement policy, a LRU-Log (size) replacement policy, a Size replacement policy, a Lowest-Latency-First replacement policy, a Lowest-Relative-Value (LRV) replacement policy, a GDS-Frequency replacement policy, and a LFU-Dynamic Aging replacement policy.
-
7. A cache system, comprising:
-
(A) a storage that includes a first and a second storage device coupled together, wherein each of the first and second storage devices stores objects of different sizes received from remote sites and to be directed to target devices;
(B) a cache manager coupled to the first storage device to send received objects to the first storage device, wherein the cache manager causes cached objects in the first storage device to be replaced in accordance with a first replacement policy, wherein the replaced objects are sent to the second storage device, wherein the cache manager causes cached objects in the second storage device to be replaced in accordance with a second replacement policy different from the first replacement policy such that the storage can store objects of different kinds while offering optimized performance across different performance metrics at the same time, wherein the cache manager may cause more than one cached object in one of the first and second storage devices to be evicted in order for a single new object to be stored in the same storage device. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A cache system, comprising:
-
(A) a storage that is partitioned into a first and a second storage area, each including a first and a second storage device coupled together;
(B) a cache manager coupled to the first storage device of each of the storage areas to cause objects to be stored in the corresponding areas of the storage, wherein the cache manager causes cached objects in the first storage device of the first storage area to be replaced in accordance with a first replacement policy, wherein the replaced objects are then sent to the second storage device of the first storage area and the cache manager causes the cached objects stored in the second storage device of the first storage area to be replaced in accordance with a second replacement policy different from the first replacement policy, wherein the cache manager causes cached objects in the first storage device of the second storage area to be replaced in accordance with a third replacement policy different from the first replacement policy, wherein the replaced objects are then sent to the second storage device of the second storage area and the cache manager causes the cached objects stored in the second storage device of the second storage area to be replaced in accordance with a fourth replacement policy different from the third replacement policy. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
a partition lookup table that indicates which object is stored in which of the storage areas;
a replacement policy database that stores the replacement policies;
a replacement controller that applies the corresponding one of the replacement policies to a corresponding one of the storage devices of the corresponding storage area.
-
-
16. The cache system of claim 14, wherein each of the first and second storage areas further comprises a third storage device coupled to the second storage device to store objects replaced from the second storage device, wherein the cache manager replaces objects stored in the third storage device in accordance with a fifth replacement policy.
-
17. The cache system of claim 14, wherein the storage further comprises a third storage area including a plurality of storage devices coupled together.
-
18. The cache system of claim 14, wherein the replacement policies are selected from a group comprising a Least-Recently-Used (LRU) replacement policy, a Least-Frequently-Used (LFU) replacement policy, a Greedy-Dual-Size (GDS) replacement policy, a LFU-Aging replacement policy, a LRU-Log (size) replacement policy, a Size replacement policy, a Lowest-Latency-First replacement policy, a Lowest-Relative-Value (LRV) replacement policy, a GDS-Frequency replacement policy, and a LFU-Dynamic Aging replacement policy.
-
19. The cache system of claim 14, wherein when the first storage device of one of the first and second storage areas receives an object for caching and the first storage device is full, the first storage device passes a replaced object to the second storage device in accordance with one of the first and the third replacement policies.
-
20. The cache system of claim 19, wherein when the second storage device of one of the first and second storage areas receives the replaced object for caching and the second storage device is full, the second storage device determines a second replaced object in accordance with one of the second and fourth replacement policies.
-
21. The cache system of claim 20, wherein when a cached object in the second storage device of one of the first and second storage areas is requested by an access request in a cache hit operation, the object is moved back to the corresponding first storage device.
Specification