Method and apparatus for distributing media content
First Claim
1. A server comprising:
- a processing system including a processor; and
a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, comprising;
initiating a boundary estimate for evaluating a linear programming model of a network of media servers for placement of copies of media content items, wherein the boundary estimate is an estimate of a solution of the linear programming model, and the linear programming model comprises at least one of a uniform random block strategy or a round robin strategy;
initializing a scaling factor for a variable of the linear programming model;
calculating iteratively, using an exponential potential function, a series of additional boundary estimates for the linear programming model;
determining for each iteration, via a first portion of the calculating, a first plurality of variables associated with the linear programming model according to parallel computation of a plurality of functional blocks;
substituting the first plurality of variables that are determined via the parallel computation into the linear programming model;
determining for each iteration, via a second portion of the calculating, a second plurality of variables associated with the linear programming model according to sequential programming of the plurality of functional blocks according to the substituting, wherein the scaling factor is adjusted by discrete steps for each iteration of the calculating, andwherein the final iteration of the calculating resolves to an improved boundary estimate that corresponds to the placement of the copies of the media content items at the media servers and to routing of requests from subscriber devices for the media content items from local media servers to non-local media servers to reduce total data traffic over communication links in the network according to a set of constraints; and
provisioning the placement of the copies of the media content items at the media servers, and the routing of the requests over the communications links in the network, according to the improved boundary estimate.
1 Assignment
0 Petitions
Accused Products
Abstract
A system that incorporates teachings of the present disclosure may include, for example, initializing a boundary estimate for an optimization of a linear programming model describing a network of media servers for servicing requests for media content items from subscriber devices, where the boundary estimate is an estimate of an infeasible solution of the linear programming model, and calculating iteratively, using an exponential potential function, additional boundary estimates for the linear programming model, wherein the calculating resolves to an improved boundary estimate that corresponds to placement of copies of the media content items at the media servers subject to a set of constraints on storage capacity of media servers and on bandwidth for communication links in the network. Other embodiments are disclosed.
40 Citations
18 Claims
-
1. A server comprising:
- a processing system including a processor; and
a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, comprising; initiating a boundary estimate for evaluating a linear programming model of a network of media servers for placement of copies of media content items, wherein the boundary estimate is an estimate of a solution of the linear programming model, and the linear programming model comprises at least one of a uniform random block strategy or a round robin strategy; initializing a scaling factor for a variable of the linear programming model; calculating iteratively, using an exponential potential function, a series of additional boundary estimates for the linear programming model; determining for each iteration, via a first portion of the calculating, a first plurality of variables associated with the linear programming model according to parallel computation of a plurality of functional blocks; substituting the first plurality of variables that are determined via the parallel computation into the linear programming model; determining for each iteration, via a second portion of the calculating, a second plurality of variables associated with the linear programming model according to sequential programming of the plurality of functional blocks according to the substituting, wherein the scaling factor is adjusted by discrete steps for each iteration of the calculating, and wherein the final iteration of the calculating resolves to an improved boundary estimate that corresponds to the placement of the copies of the media content items at the media servers and to routing of requests from subscriber devices for the media content items from local media servers to non-local media servers to reduce total data traffic over communication links in the network according to a set of constraints; and provisioning the placement of the copies of the media content items at the media servers, and the routing of the requests over the communications links in the network, according to the improved boundary estimate. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
- a processing system including a processor; and
-
10. A method, comprising:
-
initializing, by a processing system including a processor, a boundary estimate for an optimization of a linear programming model describing a network of media servers for servicing requests for media content items from subscriber devices by streaming the media content items to the subscriber devices over the network, wherein the boundary estimate is an estimate of a solution of the linear programming model, wherein the linear programming model comprises at least one of a uniform random block strategy or a round robin strategy; initializing, by the processing system, a scaling factor for a variable of the linear programming model; computing iteratively, by the processing system and via an exponential potential function, a series of additional boundary estimates for the linear programming model; determining for each iteration, via a first portion of the computing, a first plurality of variables associated with the linear programming model according to parallel computation of a plurality of functional blocks; substituting the first plurality of variables that are determined via the parallel computation into the linear programming model; determining for each iteration, via a second portion of the computing, a second plurality of variables associated with the linear programming model according to sequential programming of the plurality of functional blocks according to the substituting, wherein the scaling factor is adjusted by discrete steps for each iteration of the calculating, and wherein the final iteration of the computing resolves to an improved boundary estimate that corresponds to placement of copies of media content items at the media servers and to routing of requests from subscriber devices for the media content items from local media servers to non-local media servers so as to reduce total data traffic over communication links in the network according to a set of constraints; and provisioning, by the processing system, the placement of the copies of the media content items at the media servers, and the routing of the requests over the communications links in the network, according to the improved boundary estimate. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-transitory machine-readable storage medium, comprising executable instructions that, when executed by a processing system including a processor, facilitate performance of operations, comprising:
-
initializing a scaling factor for a variable of a linear programming model; initializing a boundary estimate for an optimization of the linear programming model describing a network of media servers wherein the boundary estimate is an estimate of a solution of the linear programming model, wherein the scaling factor is adjusted by discrete steps for each iteration of the calculating, wherein the linear programming model of the network of the media servers comprises at least one of a uniform random block strategy or a round robin strategy; and calculating iteratively, using an exponential potential function, a series of additional boundary estimates for the linear programming model; determining for each iteration, via a first portion of the calculating, a first plurality of variables associated with the linear programming model according to parallel computation of a plurality of functional blocks; substituting the first plurality of variables that are determined via the parallel computation into the linear programming, model; determining for each iteration, via a second portion of the calculating, a second plurality of variables associated with the linear programming model according to sequential programming of the plurality of functional blocks according to the substituting, wherein the final iteration of the calculating resolves to an improved boundary estimate that corresponds to placement of copies of media content items at the media servers subject to a set of constraints on storage capacity of the media servers and on bandwidth for communication links in the network; and provisioning the placement of the copies of the media content items at the media servers, and routing of requests from subscriber devices over the communications links in the network, according to the improved boundary estimate. - View Dependent Claims (17, 18)
-
Specification