Popularity-based selective replication in content delivery network
First Claim
1. A method in a distributed computing environment having a plurality of edge servers and at least one parent server, wherein the edge servers are arranged in hierarchical fashion relative to the at least one parent server, the plurality of edge content servers and the at least one parent server forming a content delivery network (CDN), the method comprising:
- directing a request by a client for an object to a first edge server in the CDN; and
if a copy of the requested object is stored on the first edge server, serving the requested object to the client from the first edge server; and
, if a copy of the requested object is not stored on the first edge server, directing the client to a parent server in the CDN associated with the first edge server for delivery of the requested object therefrom and determining whether to replicate the requested object on the first edge server for use in serving future client requests based on a measure of popularity of the requested object.
8 Assignments
0 Petitions
Accused Products
Abstract
A client requests an object at a first server in a content delivery network (CDN), the request having been directed to said first server regardless of whether the first server has the requested object; When the first server does not have a copy of the requested object, it selectively replicating the requested object on the first server. The replicating is based at least in part on a measure of popularity of the requested object, wherein the requested object is not replicated to the first server when the measure of popularity of the requested object does not exceed a popularity threshold.
393 Citations
25 Claims
-
1. A method in a distributed computing environment having a plurality of edge servers and at least one parent server, wherein the edge servers are arranged in hierarchical fashion relative to the at least one parent server, the plurality of edge content servers and the at least one parent server forming a content delivery network (CDN), the method comprising:
-
directing a request by a client for an object to a first edge server in the CDN; and
if a copy of the requested object is stored on the first edge server, serving the requested object to the client from the first edge server; and
,if a copy of the requested object is not stored on the first edge server, directing the client to a parent server in the CDN associated with the first edge server for delivery of the requested object therefrom and determining whether to replicate the requested object on the first edge server for use in serving future client requests based on a measure of popularity of the requested object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, in a framework in which multiple resources of multiple content providers are delivered to multiple end user clients via a shared content delivery network (CDN) formed of a plurality of CDN server sites, each server site comprising one or more servers, the method comprising:
-
causing a client request for a resource to be directed to a first server site in said CDN;
if the first server site has a copy of the requested resource, then serving the requested resource to the client from the first server site;
otherwise,if the first server site does not have a copy of the requested resource, determining a measure of popularity of the requested resource relative to the first server site and replicating the requested resource to the first server site if the determined measure of popularity meets or exceeds a popularity threshold associated with the requested resource. - View Dependent Claims (11, 12, 13, 15, 16, 17)
-
-
14. A method, in a framework in which multiple resources of a content provider are delivered to multiple end user clients via a content delivery network (CDN) formed of a plurality of CDN server sites, each server site comprising one or more servers, wherein at least some of the CDN server sites are edge server sites each comprising one or more edge servers, and wherein at least some others of the CDN sites are parent server sites each comprising one or more parent servers, the method comprising:
-
(A) responsive to a client request for a resource at an edge server site in said CDN; and
(B) if the edge server site has a copy of the requested resource, then serving the requested resource to the client from the edge server site;
otherwise,(C) replicating a copy of the requested resource on the edge server site if a measure of popularity of the requested resource exceeds a popularity threshold associated with the requested object, otherwise not replicating the requested resource on the edge server site.
-
-
18. A method, in a framework in which multiple resources of a content provider are delivered to multiple end user clients via a content delivery network (CDN), the CDN being formed of a plurality of edge servers and at least one parent server, wherein the edge servers are arranged in hierarchical fashion relative to the at least one parent server, the method comprising:
responsive to a client request for a resource at a first edge server in said CDN, determining if a copy of the requested resource is stored on the first edge server and, if not, then replicating a copy of the requested resource on the first edge server if a measure of popularity of the requested resource exceeds a popularity threshold associated with the requested object. - View Dependent Claims (19, 20, 21, 22)
-
23. A content delivery method comprising:
in response to a client request at a first server in a content delivery network (CDN), said request being for an object, said client request having been directed to said first server regardless of whether the first server has the requested object, when the first server does not have a copy of the requested object, determining whether to replicate the requested object on the first server based at least in part on comparing a measure of popularity of the requested object against a popularity threshold associated with the requested object. - View Dependent Claims (24, 25)
Specification