System and method for streaming content from multiple servers
First Claim
1. A method for use by a content delivery server for providing over the Internet a content delivery service to first and second client devices, for use with first and second prices per amount of content delivered, the second price is lower than the first price, and for use with a CPU utilization threshold, the method comprising:
- providing the content delivery service to the first client device;
measuring the amount of content delivered to the first client device;
calculating a first client charge by multiplying the measured amount of delivered content to the first client device by the first price;
determining an availability of a resource for content delivery service; and
in response to determining the availability of the resource, the method further comprising;
providing, the content delivery service to the second client device;
measuring the amount of content delivered to the second client device; and
calculating a second client charge by multiplying the measured amount of delivered content to the second client device by the second price wherein the resource is an available CPU time or CPU utilization of one or more processors in the content delivery server, wherein the availability of the resource is determined upon measuring a CPU utilization below the CPU utilization threshold, and wherein the CPU utilization threshold is at or below 20%, 25%, 30%, 35%, 40%, 45%, 50%, 55%, 60%, 65%, or 70%.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and a method for media streaming from multiple sources are disclosed. A content requesting client device accesses a server to receive a list of available sources that may include multiple Content Delivery Networks (CDNs) and independent servers. Based on a pre-set criteria, such as the source delivery performance and cost, the client device partitions the content into parts, allocates a source to each part, and simultaneously receives media streams of the content parts from the allocated sources. The server may be a Video-on-Demand (VOD) server, and the content may be a single file of a video data, such as a movie. The delivery performance of the used sources is measured during the streaming for updating the partition or the allocation. The updated measured performance may be stored locally at the client device, or at a server for use by other clients. The client actions may be implemented as a client-side script.
227 Citations
27 Claims
-
1. A method for use by a content delivery server for providing over the Internet a content delivery service to first and second client devices, for use with first and second prices per amount of content delivered, the second price is lower than the first price, and for use with a CPU utilization threshold, the method comprising:
- providing the content delivery service to the first client device;
measuring the amount of content delivered to the first client device;
calculating a first client charge by multiplying the measured amount of delivered content to the first client device by the first price;determining an availability of a resource for content delivery service; and
in response to determining the availability of the resource, the method further comprising;
providing, the content delivery service to the second client device;
measuring the amount of content delivered to the second client device; and
calculating a second client charge by multiplying the measured amount of delivered content to the second client device by the second price wherein the resource is an available CPU time or CPU utilization of one or more processors in the content delivery server, wherein the availability of the resource is determined upon measuring a CPU utilization below the CPU utilization threshold, and wherein the CPU utilization threshold is at or below 20%, 25%, 30%, 35%, 40%, 45%, 50%, 55%, 60%, 65%, or 70%. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 26, 27)
- providing the content delivery service to the first client device;
-
19. A content delivery server device comprising a non-transitory computer readable medium containing computer instructions that, when executed or interpreted by a processor in the server, cause the processor to perform the steps of;
- providing the content delivery service to the first client device;
measuring the amount of content delivered to the first client device;
calculating a first client charge by multiplying the measured amount of delivered content to the first client device by the first price;
determining an availability of a resource for content delivery service; and
in response to determining the availability of the resource, the method further comprising;
providing, the content delivery service to the second client device;
measuring the amount of content delivered to the second client device; and
calculating a second client charge by multiplying the measured amount of delivered content to the second client device by the second price;
wherein the resource is an available CPU time or CPU utilization of one or more processors in the content delivery server, wherein the availability of the resource is determined upon measuring a CPU utilization below the CPU utilization threshold, and wherein the CPU utilization threshold is at or below 20%, 25%, 30%, 35%, 40%, 45%, 50%, 55%, 60%, 65%, or 70%. - View Dependent Claims (20, 21, 22, 23, 24, 25)
- providing the content delivery service to the first client device;
Specification