Patent ID: 7568046

Claim:
A method for allocating bandwidth for the delivery of content between a server device and at least two client devices, the method comprising: delivering content at a modulated target flow rate, the content being delivered between the server device and a respective client device; and modulating the target flow rate to each client device in order to increase an aggregate flow of content to the at least two client devices, wherein modulating the target flow rate includes: representing a target flow rate of content from the server device to each client device as a control variable, determining one or more time-varying constraints on the target flow rate, determining a cost function that incorporates the control variables for the at least two client devices, wherein the cost function is associated with an aggregate flow rate associated with the at least two client devices, performing periodic computations using the cost function and control variables such that the bandwidth can be continuously allocated among the at least two client devices according to values of the cost function, and allocating bandwidth to the at least two client devices based upon values of the control variables that maximize the cost function.