System and method for populating cache servers with popular media contents
First Claim
1. A method for network caching comprising:
- calculating popularity values for a plurality of network files, said popularity values based on a number of requests for each of said files over a period of time; and
transferring a subset of said plurality of network files to a cache based on said calculated popularity values.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for caching files is disclosed. Popularity values are calculated for a plurality of files over a period of time. The popularity values are then used to determine which files should be cached at various remote sites. Once the caches are filled, the popularity values associated with the cached files are periodically compared with the popularity values of uncached content. Generally, if the popularity of an uncached file is greater than the popularity of a cached file, then the cached file will be replaced. However, numerous different variables may be factored into the caching determination including, for example, the size of the file, the required bitrate of the file, the identity of the owner of the file, and/or the type of file.
194 Citations
29 Claims
-
1. A method for network caching comprising:
-
calculating popularity values for a plurality of network files, said popularity values based on a number of requests for each of said files over a period of time; and
transferring a subset of said plurality of network files to a cache based on said calculated popularity values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
pruning one of said requests from said popularity value calculation if a subsequent request for a particular file is not received after a specified period of time.
-
-
3. The method as in claim 1 further comprising:
-
calculating popularity values for files stored in said cache; and
replacing one or more of said files in said cache with one or more of said plurality of files not in said cache having higher popularity values when said cache is full.
-
-
4. The method as in claim 1 further comprising:
storing a popularity value associated with each file in a file request history list.
-
5. The method as in claim 4 wherein said popularity values are calculated for each file after a predetermined miss-count threshold is reached.
-
6. The method as in claim 4 wherein said popularity values are calculated after a predetermined period of time.
-
7. The method as in claim 1 wherein said popularity values are calculated using the equation:
- Popularity=Number of Requests/Elapsed Time.
-
8. The method as in claim 1 wherein said popularity values are further based on file size.
-
9. The method as in claim 1 wherein said popularity values are further based on file type.
-
10. The method as in claim 1 wherein said popularity values are further based on identities of content providers providing said files.
-
11. A system for caching files comprising:
-
one or more popularity calculation modules to calculate popularity values for a plurality of files based at least in part on a number of user requests for each of said plurality of files and to generate a prioritized list of said plurality of files based on said popularity values; and
one or more caching analysis modules to identify one or more of said plurality of files to be cached based on said prioritized list; and
one or more file transfer modules to transfer said one or more of said plurality of files to a cache. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
pruning logic to prune one or more of said requests from said popularity value calculation if a subsequent user request for a particular file is not received after a specified period of time.
-
-
13. The system as in claim 11 wherein said popularity calculation modules further:
-
calculate popularity values for files stored in said cache; and
replace one or more of said files in said cache with one or more of said plurality of files not in said cache having higher popularity values when said cache is full.
-
-
14. The system as in claim 11 further comprising:
a file request history list employed by said popularity calculation modules to calculate and store said popularity values associated with said files.
-
15. The system as in claim 14 wherein said popularity values are calculated for each file after a predetermined miss-count threshold is reached.
-
16. The system as in claim 11 wherein said popularity calculation modules calculate said popularity values using the equation:
- Popularity=Number of Requests/Elapsed Time.
-
17. The system as in claim 11 wherein popularity calculation modules factor in file size when calculating said popularity.
-
18. The method as in claim 11 wherein popularity calculation modules factor in file type when calculating said popularity.
-
19. The method as in claim 11 wherein said popularity calculation modules factor in identities of content providers providing said files when calculating said popularity values.
-
20. An article of manufacture including a sequence of instructions which, when executed by a processor, causes said processor to:
-
calculate popularity values for a plurality of network files, said popularity values based on a number of requests for each of said files over a period of time; and
cache a subset of said plurality of network files based on said calculated popularity values. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29)
prune one of said requests from said popularity value calculation if a subsequent request for a particular file is not received after a specified period of time.
-
-
22. The article of manufacture as in claim 20 including additional instructions to cause said processor to:
-
calculate popularity values for files stored in said cache; and
replace one or more of said files in said cache with one or more of said plurality of files not in said cache having higher popularity values when said cache is full.
-
-
23. The article of manufacture as in claim 20 including additional instructions to cause said processor to:
store a popularity value associated with each file in a file request history list.
-
24. The article of manufacture as in claim 23 wherein said popularity values are calculated for each file after a predetermined miss-count threshold is reached.
-
25. The article of manufacture as in claim 20 wherein said popularity values are calculated after a predetermined period of time.
-
26. The article of manufacture as in claim 20 including additional instructions to cause said processor to calculate popularity values using the equation:
- Popularity=Number of Requests/Elapsed Time.
-
27. The article of manufacture as in claim 20 including additional instructions to cause said processor to factor in file size when calculating popularity values.
-
28. The article of manufacture as in claim 20 including additional instructions to cause said processor to factor in a required bitrate at which said files are to be transmitted to end users when calculating popularity values.
-
29. The article of manufacture as in claim 20 including additional instructions to cause said processor to factor in identities of content providers providing said files when calculating popularity values.
Specification