Handling long-tail content in a content delivery network (CDN)

US10218806B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10218806-B2
Application numberUS-201715645584-A
CountryUS
Kind codeB2
Filing dateJul 10, 2017
Priority dateApr 4, 2008
Publication dateFeb 26, 2019
Grant dateFeb 26, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A content delivery network has at least a first tier of servers. A content delivery method includes, at a first server in the first tier of servers, obtaining a request from a client for a resource. If the resource is available at the first server or at a peer of the first server, then the resource is served to the client from the first server. Otherwise, it is determined whether the resource is popular, and if the resource is determined to be popular, then the first server obtains the resource and the first server serves the resource to the client. If the resource is determined not to be popular, the client is directed to a second server, not in the first tier of servers, and the second server serves the resource to the client. The second server may be in a second tier of servers or it may be an origin server.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of content delivery in a content delivery network comprising at least a first tier of servers, the method comprising: (A) at a first server in the first tier of servers, obtaining a request from a client for a resource, wherein the resource is available as part of a content provider's library; (B) determining whether the resource is available at the first server or at a peer of the first server; (C) based on and as a result of said determining in (B), if it is determined that the resource is not available at the first server or at a peer of the first server, determining if the resource is popular, wherein the resource is part of an object, and wherein determining whether said resource is popular is based, at least in part, on whether the resource is an initial part of the object; (D) based on and as a result of said determining in (C), if the resource is determined to be popular in (C), then the first server obtaining the resource and the first server serving the resource to the client, otherwise, (E) based on and as a result of said determining in (C), if the resource is determined in (C) not to be popular, directing the client to a second server in a second tier of servers distinct from the first tier of servers, wherein distinct portions of the content provider's library are logically partitioned across servers in the second tier of servers, wherein the second server comprises a first portion of the content provider's library, the first portion comprising at least the resource, and wherein at least one other server in the second tier of servers comprises a second portion of the content provider's library, said second portion of the content provider's library being distinct from said first portion of the content provider's library, and wherein the second tier of servers is any intermediate tier of servers between the first tier of servers and an origin server that stores resources associated with the content provider's library, and (F) the second server serving the resource to the client. 2. The method of claim 1 , wherein the resource is available as part of the content provider's library, and wherein distinct portions of the content provider's library are logically partitioned across servers in the second tier of servers. 3. The method of claim 1 , wherein determining whether said resource is popular in (C) is based, at least in part, on whether the resource is for a part of the object other than the initial part of the object. 4. The method of claim 3 , wherein the initial part of the object has already been served to the client. 5. The method of claim 1 , wherein the determining in (C) whether said resource is popular is determined, at least in part, using information obtained from a popularity service running on one or more popularity servers. 6. The method of claim 5 , wherein the one or more popularity servers maintain information on relative popularity of content being served. 7. The method of claim 6 , wherein the one or more popularity servers maintain information on relative popularity of content being served in a region comprising the first server. 8. The method of claim 6 , wherein only certain content uses the popularity service, and wherein content is designated to be served based on popularity in order to use the popularity service. 9. The method of claim 1 , wherein whether or not said resource is to be served based on popularity of the resource is based at least in part on whether or not said resource is designated to be served based on popularity of the resource. 10. The method of claim 1 wherein determining whether said resource is popular is based, at least in part, on a dynamic measure of popularity of the resource. 11. The method of claim 1 , wherein determining whether said resource is popular in (C) comprises: determining a relative popularity said resource in a region comprising the first server. 12. A machine-readable non-transitory medium storing one or more programs for execution by one or more processing units of a data processing system, the one or more programs including instructions for: (A) obtaining, at a first server in a first tier of servers in a content delivery network (CDN), a request from a client for a resource, wherein the resource is available as part of a content provider's library; (B) determining whether the resource is available at the first server or at a peer of the first server; (C) based on and as a result of said determining in (B), if it is determined that the resource is not available at the first server or at a peer of the first server, then determining if the resource is popular, wherein the resource is part of an object, and wherein determining whether said resource is popular is based, at least in part, on whether the resource is an initial part of the object; (D) based on and as a result of said determining in (C), if the resource is determined to be popular in (C), then the first server (i) obtaining the resource, and (ii) serving the resource to the client, otherwise, (E) based on and as a result of said determining in (C), if the resource is determined in (C) not to be popular, directing the client to a second server in a second tier of servers distinct from the first tier of servers, wherein the second tier of servers is any intermediate tier between the first tier of servers and an origin server that stores resources associated with the content provider's library, and wherein portions of the content provider's library are logically partitioned across servers in the second tier of servers, and wherein the second server comprises a first portion of the content provider's library, the first portion comprising at least the resource, and wherein at least one other server in the second tier of servers comprises a second portion of the content provider's library, said second portion of the content provider's library being distinct from said first portion of the content provider's library; and (F) the second server serving the resource to the client. 13. The machine-readable non-transitory medium of claim, 12 , wherein the first server determines whether said resource is popular based on information obtained from a popularity service running on one or more popularity servers. 14. The machine-readable non-transitory medium of claim 13 , wherein the one or more popularity servers maintain information on relative popularity of content being served in a region comprising the first server. 15. The machine-readable non-transitory medium of claim 13 , wherein only certain content uses the popularity service, and wherein content is designated to be served based on popularity in order to use the popularity service. 16. The machine-readable non-transitory medium of claim 12 , wherein whether or not said resource is to be served based on popularity of the resource is based at least in part on whether or not said resource is designated to be served based on popularity of the resource. 17. The machine-readable non-transitory medium of claim 12 , wherein determining whether said resource is popular comprises: determining a relative popularity said resource in a region comprising the first server. 18. A computer program product comprising non-transitory computer-readable media and having computer readable instructions stored on said non-transitory computer-readable media, the computer readable instructions including instructions for implementing a computer-implemented method, said method operable in a content delivery network (CDN), said CDN comprising a plurality of c

Assignees

Inventors

Classifications

  • based on the content of a request · CPC title

  • being end-user preferences (retrieval of video data in a video database based on user preferences G06F16/739; arrangements for recognizing users' preferences H04H60/46; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18) · CPC title

  • Secondary servers, e.g. proxy server, cable television Head-end {(provisioning of proxy services in data packet switching networks H04L67/56)} · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • involving caching operations (prefetching while addressing of a memory level in which the access to the desired data or data block requires associative addressing means within memory systems or architectures G06F12/0862; caching at an intermediate stage in a data network H04L67/568) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10218806B2 cover?
A content delivery network has at least a first tier of servers. A content delivery method includes, at a first server in the first tier of servers, obtaining a request from a client for a resource. If the resource is available at the first server or at a peer of the first server, then the resource is served to the client from the first server. Otherwise, it is determined whether the resource i…
Who is the assignee on this patent?
Level 3 Communications Llc
What technology area does this patent fall under?
Primary CPC classification H04N7/17354. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 26 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).