Method and system for cdn exchange interconnection
US-2015026352-A1 · Jan 22, 2015 · US
US2016283480A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016283480-A1 |
| Application number | US-201514669910-A |
| Country | US |
| Kind code | A1 |
| Filing date | Mar 26, 2015 |
| Priority date | Mar 26, 2015 |
| Publication date | Sep 29, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system, method, and apparatus are provided for assigning or allocating multiple content objects, within a content page (e.g., web page) or other content collection (e.g., a set of pages), to different content delivery networks for delivery in response to a content request. The objects are ranked by importance (e.g., importance in rendering or presenting the page), and the networks are ranked by performance (e.g., throughput). In order of importance, the objects are assigned to the best-performing network that is “available.” Some or all networks are initially available, and a given network becomes “unavailable” after it has been assigned its portion of the objects (e.g., based on content, number of objects, amount of data, percentage). If a total accumulated cost of delivering the objects exceeds a target before all objects have been allocated, the allocation process may terminate early and the remaining objects may be assigned to the least-expensive network.
Opening claim text (preview).
1 . A method, comprising: receiving a request for an electronic page of multiple objects to be delivered to a user via multiple available content delivery networks (CDNs); based on a ranking of the multiple objects and a ranking of the multiple CDNs, assigning each object, in order of its rank, to a highest-ranking available CDN for delivery to the user, until one or more of: a first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost; each of the multiple objects has been assigned to a CDN; and no CDN is available; wherein a given CDN becomes unavailable when a second accumulated cost of delivering objects of the page assigned to the given CDN exceeds a threshold CDN cost associated with the given CDN; wherein the highest-ranking available CDN has the best performance, wherein a performance of a CDN indicates how fast a given object can be delivered via the CDN; and upon determining that the first accumulated cost exceeds the threshold total cost, assigning unassigned objects to a least-expensive CDN that is still available. 2 . The method of claim 1 , further comprising: configuring the page to identify, for each object, the CDN to which the object has been assigned; and returning the configured page in response to the request. 3 . The method of claim 1 , wherein said assigning an object comprises: determining a cost of delivering the assigned object to the user via the assigned CDN; adding the cost to the first accumulated cost; and adding the cost to the second accumulated cost associated with the assigned CDN. 4 . The method of claim 1 , further comprising, when the first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost: identifying one or more unassigned objects among the multiple objects, wherein the unassigned objects have not been assigned to a CDN for delivery to the user; and assigning each of the unassigned objects to the CDN, among the multiple CDNs, that has a lowest associated cost of delivery objects to the user. 5 . The method of claim 1 , further comprising, when the first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost: identifying one or more unassigned objects among the multiple objects, wherein the unassigned objects have not been assigned to a CDN for delivery to the user; and for each of the unassigned objects, randomly assigning the unassigned objects to one of the multiple CDNs. 6 . The method of claim 5 , wherein the unassigned objects are only assigned to CDNs that are available at the time of said identifying. 7 . The method of claim 1 , further comprising: ranking the multiple objects by importance, based on one or more of: file type; size; and a location in which the objects will be displayed on a display screen of a device operated by the user; and ranking the multiple CDNs by performance. 8 . An apparatus, comprising: one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the apparatus to: receive a request for an electronic page of multiple objects to be delivered to a user via multiple available content delivery networks (CDNs); based on a ranking of the multiple objects and a ranking of the multiple CDNs, assign each object, in order of its rank, to a highest-ranking available CDN for delivery to the user, until one or more of: a first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost; each of the multiple objects has been assigned to a CDN; and no CDN is available; wherein a given CDN becomes unavailable when a second accumulated cost of delivering objects of the page assigned to the given CDN exceeds a threshold CDN cost associated with the given CDN; wherein the highest-ranking available CDN has the best performance, wherein a performance of a CDN indicates how fast a given object can be delivered via the CDN; and upon determining that the first accumulated cost exceeds the threshold total cost, assign unassigned objects to a least-expensive CDN that is still available. 9 . The method of claim 8 , wherein the memory further stores instructions that, when executed by the one or more processors, cause the apparatus to: configure the page to identify, for each object, the CDN to which the object has been assigned; and return the configured page in response to the request. 10 . The apparatus of claim 8 , wherein said assigning an object comprises: determining a cost of delivering the assigned object to the user via the assigned CDN; adding the cost to the first accumulated cost; and adding the cost to the second accumulated cost associated with the assigned CDN. 11 . The apparatus of claim 8 , wherein the memory further stores instructions that, when executed by the one or more processors, cause the apparatus to, when the first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost: identify one or more unassigned objects among the multiple objects, wherein the unassigned objects have not been assigned to a CDN for delivery to the user; and assign each of the unassigned objects to the CDN, among the multiple CDNs, that has a lowest associated cost of delivery objects to the user. 12 . The apparatus of claim 8 , wherein the memory further stores instructions that, when executed by the one or more processors, cause the apparatus to, when the first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost: identify one or more unassigned objects among the multiple objects, wherein the unassigned objects have not been assigned to a CDN for delivery to the user; and for each of the unassigned objects, randomly assign the unassigned objects to one of the multiple CDNs. 13 . The apparatus of claim 12 , wherein the unassigned objects are only assigned to CDNs that are available at the time of said identifying. 14 . The apparatus of claim 8 , wherein the memory further stores instructions that, when executed by the one or more processors, cause the apparatus to: rank the multiple objects by importance, based on one or more of: file type; size; and a location in which the objects will be displayed on a display screen of a device operated by the user; and rank the multiple CDNs by performance. 15 . A system, comprising: one or more processors; and a content allocation module comprising a non-transitory computer-readable medium storing instructions that, when executed, cause the system to: receive a request for an electronic page of multiple objects to be delivered to a user via multiple available content delivery networks (CDNs); based on a ranking of the multiple objects and a ranking of the multiple CDNs, assign each object, in order of its rank, to a highest-ranking available CDN for delivery to the user, until one or more of: a first accumulated cost of delivering the assigned objects to the user exceeds a threshold total cost; each of the multiple objects has been assigned to a CDN; and no CDN is available; wherein a given CDN becomes unavailable when a second accumulated cost of delivering objects of the page assigned to the given CDN exceeds a threshold CDN cost associated with the given CDN; wherein the highest-ranking available CDN has the best performance, wherein a performance of a CDN indicates how fast a given object can be delivered via the CDN; and upon determining that the first accumulated cost exceeds the threshold total cost, assign unassigned objects
of access to content, e.g. by caching · CPC title
for reduction of network costs (H04L41/0833 takes precedence) · CPC title
Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
Throughput · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.