Utility-based model for caching programs in a content delivery network
First Claim
Patent Images
1. A method comprising:
- receiving, by a network device, utility preferences that indicate criteria for measuring one or more utilities of programs;
storing hard constraint information, wherein the hard constraint information includes one or more hard resource constraints pertaining to one or more resources of the network device and one or more hard program constraints pertaining to the programs;
receiving weights pertaining to the utility preferences;
identifying a value of at least one of the weights, which pertains to at least one of the utility preferences, as being higher in value relative to another value of the weights, which pertains to another one of the utility preferences;
pre-sorting candidate programs that rank higher relative to other programs with respect to the at least one of the utility preferences based on an identification of the value;
calculating, by the network device, utility solutions for at least a portion of pre-sorted candidate programs based on the utility preferences and the hard constraint information, wherein the calculating comprises;
selecting one or more programs, which are top-ranked, in relation to each of the utility preferences;
combining the selected one or more programs from each of the utility preferences; and
applying the weights of the utility preferences in relation to a combined set of programs;
selecting, by the network device, one or more programs to store for at least one of downloading or streaming based on the utility solutions; and
storing the one or more programs.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, devices, and storage media for receiving one or more utility preferences that indicate one or more criteria for measuring one or more utilities of programs; calculating utility solutions for the programs based on the one or more utility preferences; selecting one or more programs to store for at least one of downloading or streaming based on the utility solutions; and storing the one or more programs for downloading or streaming to users.
12 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a network device, utility preferences that indicate criteria for measuring one or more utilities of programs; storing hard constraint information, wherein the hard constraint information includes one or more hard resource constraints pertaining to one or more resources of the network device and one or more hard program constraints pertaining to the programs; receiving weights pertaining to the utility preferences; identifying a value of at least one of the weights, which pertains to at least one of the utility preferences, as being higher in value relative to another value of the weights, which pertains to another one of the utility preferences; pre-sorting candidate programs that rank higher relative to other programs with respect to the at least one of the utility preferences based on an identification of the value; calculating, by the network device, utility solutions for at least a portion of pre-sorted candidate programs based on the utility preferences and the hard constraint information, wherein the calculating comprises; selecting one or more programs, which are top-ranked, in relation to each of the utility preferences; combining the selected one or more programs from each of the utility preferences; and applying the weights of the utility preferences in relation to a combined set of programs; selecting, by the network device, one or more programs to store for at least one of downloading or streaming based on the utility solutions; and storing the one or more programs. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A device comprising:
-
a communication interface; one or more memories that store instructions; and one or more processors to execute the instructions to; receive utility preferences that indicate criteria for measuring one or more utilities of programs; store hard constraint information, wherein the hard constraint information includes one or more hard resource constraints pertaining to one or more resources of the device and one or more hard program constraints pertaining to the programs; receive weights pertaining to the utility preferences; identify a value of at least one of the weights, which pertains to at least one of the utility preferences, as being higher in value relative to another value of the weights, which pertains to another one of the utility preferences; pre-sort candidate programs that rank higher relative to other programs with respect to the at least one of the utility preferences based on an identification of the value; calculate utility solutions for at least a portion of pre-sorted candidate programs based on the utility preferences and the hard constraint information, wherein a calculation comprises; select one or more programs, which are top-ranked, in relation to each of the utility preferences; combine the selected one or more programs from each of the utility preferences; apply the weights of the utility preferences in relation to a combined set of programs; and select one or more programs to store for at least one of downloading or streaming based on the utility solutions. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory storage medium storing instructions executable by a computational device to:
-
receive utility preferences that indicate criteria for measuring one or more utilities of programs; store hard constraint information, wherein the hard constraint information includes one or more hard resource constraints pertaining to one or more resources of the computational device and one or more hard program constraints pertaining to the programs; receive weights pertaining to the utility preferences; identify a value of at least one of the weights, which pertains to at least one of the utility preferences, as being higher in value relative to another value of the weights, which pertains to another one of the utility preferences; pre-sort candidate programs that rank higher relative to other programs with respect to the at least one of the utility preferences based on an identification of the value; calculate a utility solution for at least a portion of pre-sorted candidate programs based on the utility preferences and the hard constraint information, wherein a calculation comprises; select one or more programs, which are top-ranked, in relation to each of the utility preferences; combine the selected one or more programs from each of the one or more utility preferences; and apply the weights of the utility preferences in relation to a combined set of programs; compare calculated utility solutions; determine a set of programs having a higher utility relative to other programs in response to comparisons; and select one or more programs to store for at least one of downloading or streaming based on the utility solutions. - View Dependent Claims (17, 18, 19, 20)
-
Specification