Internet content delivery network
AssigneeCable & Wireless Internet Services, Inc.
InventorsDavid A. Farber, Richard E. Greer, Andrew D. Swart, James A. Balter
Life of this patent
Estimating the term…
Abstract
Resource requests made by clients of origin servers in a network are intercepted by reflector mechanisms and selectively reflected to other servers called repeaters. The reflectors select a best repeater from a set of possible repeaters and redirect the client to the selected best repeater. The client then makes the request of the selected best repeater. The resource is possibly rewritten to replace at least some of the resource identifiers contained therein with modified resource identifiers designating the repeater instead of the origin server.
Claims48
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, wherein the plurality of subscribers are entities that publish information via one or more origin servers, the origin servers being distinct from the plurality of repeater servers, and in which at least some of the repeater servers replicate some or all of the information available on the origin servers, (c) a repeater selector mechanism constructed and adapted to identify, for a particular client request, an appropriate repeater server from the plurality of repeater servers, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, the method comprising:
- obtaining a client request for information, wherein the client request is for a resource which is embedded in another document;
- identifying, by the repeater selector mechanism, a repeater server of the repeater server network to handle the client request;
- determining, using at least the subscriber verifying mechanism, whether the requested information is from any one of the plurality of subscribers to the repeater server network;
- and
- providing, from the repeater server identified by the repeater selector mechanism, the requested information when the client request is determined to be for information from one of the plurality of subscribers to the repeater server network.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, the plurality of subscribers being entities that publish information via one or more origin servers, and in which the origin servers are distinct from the plurality of repeater servers, and in which at least some of the plurality of repeater servers replicate some or all of the information available on at least some of the origin servers, (c) a repeater selector mechanism constructed and adapted to identify, for a particular client request, an appropriate repeater server from the plurality of repeater servers, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, method comprising:
- obtaining a client request for information by a repeater server of the plurality of repeater servers forming the repeater server network, the repeater server being identified by the repeater selector mechanism, wherein the client request is for a resource which is embedded in another document;
- determining, using at least the subscriber verifying mechanism and based, at least in part, on a name by which the repeater server was addressed, whether the requested information is from any one of the plurality of entities that publish information to the repeater server network;
- and
- when the client request is determined to be for information from one of the plurality of entities that publish information to the repeater server network, serving the requested information from the repeater sewer as identified by the repeater selector mechanism.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, the plurality of subscribers being entities that publish information via one or more origin servers, and in which the origin servers are distinct from the plurality of repeater servers, and in which at least some of the plurality of repeater servers replicate some or all of the information available on at least some of the origin servers, (c) a repeater selector mechanism constructed and adapted to identify, for a particular client request, an appropriate repeater server from the plurality of repeater servers, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, the method comprising:
- obtaining a client request for information, the client request being for a resource which is embedded in another document which is sewed by an origin server of the one or more origin servers;
- identifying, by the repeater selector mechanism, a repeater server of the repeater server network to handle the client request;
- determining, using at least the subscriber verifying mechanism. and based, at least in part, on an origin sewer name in a Uniform Resource Locator (URL) associated with the client request, whether the requested information is from any one of the plurality of entities that publish information to the repeater server network;
- and
- when the client request is determined to be for information from one of the plurality of entities that publish information to the repeater server network, serving the requested information from the repeater server as identified by the repeater selector mechanism.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, wherein the plurality of subscribers are entities that publish information via at least one origin server, wherein the at least one origin server is distinct from the plurality of repeater servers, and in which at least some of the plurality of repeater servers replicate some or all of the information available on the at least one origin server, (c) a repeater selector mechanism constructed and adapted to identify, for a client request, a repeater server from the plurality of repeater servers to handle the client request, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, the method comprising, at one of the plurality of repeater servers:
- (A) obtaining a client request for information from a client by the repeater server of the plurality of repeater servers forming the repeater server network, the repeater server having been identified by the repeater selector mechanism, the client request being for a resource which is embedded in another document;
- (B) determining, using at least the subscriber verifying mechanism, whether the requested information is from a subscriber of the plurality of subscribers, said determining being based, at least in part, on at least one of (a) a name by which the repeater server was addressed, and (b) an origin server name in a Uniform Resource Locator (URL) used to make the client request;
- (C) when the client request is determined to be for information from a subscriber to the repeater server network, then at the repeater server selected by the repeater selector mechanism:
- (C1) if is determined that the requested information is cached locally at the repeater server, retrieving the requested information from a local cache at the repeater server;
- and
- (C2) when the requested information is determined not to be cached locally at the repeater server,
- (C21) obtaining the requested information from the origin server or from a peer cache;
- (C22) caching the information locally at the repeater server;
- and
- (C3) constructing a reply including the requested information;
- and
- (C4) sending the reply to the client;
- and
- (D) when the client request is determined not to be for information from a subscriber to the repeater server network, rejecting the client request.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, wherein the plurality of subscribers are entities that publish resources via at least one origin server, and wherein the at least one origin server is distinct from the plurality of repeater servers, (c) a repeater selector mechanism constructed and adapted to identify, for a particular request, a repeater server to handle the request, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is an one of the plurality of subscribers to the repeater server network, the method comprising:
- on at least some of the repeater sewers in the repeater server network, replicating some or all of the information available on the at least one origin server;
- upon receipt of a client request for information, the client request being for a resource which is embedded in another document, determining, using at least the subscriber verifying mechanism, whether the client request is for information from a known entity that publishes resources to the repeater server network;
- and
- serving the information, from the repeater server identified by the repeater selector mechanism, when the client request is determined to be for information from one of the plurality of subscribers being an entity that publishes resources to the repeater server network.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of sub scribers to the repeater server network, wherein the plurality of subscribers are entities that publish resources via one or more origin servers, wherein the origin servers are distinct from the plurality of repeater servers, (c) a repeater selector mechanism constructed and adapted to identify, for a client request, a repeater server from the plurality of repeater servers to handle the client request, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is an one of the plurality of subscribers to the repeater server network, the method comprising:
- on at least some of the plurality of repeater servers in the repeater sewer network, replicating some or all of the information available on the one or more origin servers;
- identifying, by the repeater selector mechanism, a repeater server of the repeater server network to handle the client request;
- upon receipt of the client request for information, the client request being for a resource which is embedded in another document, determining, by the subscriber verifying mechanism, and based, at least in part, on a name by which the repeater server in receipt of the client request was addressed, whether the client request is for information from a known entity that publishes resources to the repeater server network;
- and
- serving the information from the repeater server selected by the repeater selector mechanism when the client request is determined to be for information from a known entity that publishes resources to the repeater server network.
A method, in a system which includes (a) a repeater server network including a plurality of repeater servers, (b) a plurality of subscribers to the repeater server network, wherein the plurality of subscribers are entities that publish resources via one or more origin servers, wherein the origin servers are distinct from the repeater servers, (c) a repeater selector mechanism constructed and adapted to identify, for a client request, a repeater server from the plurality of repeater servers to handle the request, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, the method comprising:
- on at least some of the repeater servers in the repeater server network, replicating some or all of the information available on the one or more origin servers;
- upon receipt of a client request for information, the request being for a resource which is embedded in another document, determining, using at least the subscriber verifying mechanism, and based, at least in part, on an origin server name in a Uniform Resource Locator (URL) used to make the client request, whether the client request is for information from a known entity that publishes resources to the repeater server network;
- and
- serving the information from the repeater server identified by the repeater selector mechanism when the client request is determined to be for information from a known entity that publishes resources to the repeater server network.
In a computer network which includes (a) a plurality of origin servers, (b) a plurality of repeater servers distinct from the plurality of origin servers and forming at least one repeater server network, (c) a repeater selector mechanism for identifying, for a request from a client, and based, at least in part, on a location of the client in the computer network, a repeater server of the plurality of repeater servers to handle the request, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of the plurality of subscribers to the repeater server network, and in which at least one of the plurality of repeater servers replicates some or all of the information available on the plurality of origin servers, and in which requests for resources may be handled by the repeater server network in order for the resources to be served, a method comprising:
- obtaining a client request from the client for a resource, the resource being embedded in another document
- if the client request for the resource is not for a resource from a subscriber to the repeater server network, as determined at least in part by the subscriber verifying mechanism rejecting the client request, otherwise
- constructing a reply including the resource and serving that reply from the repeater server identified by the repeater selector mechanism.
In a computer network which includes (a) a plurality of origin servers, and (b) at least one repeater server network including a plurality of repeater servers distinct from the plurality of origin servers, (c) a repeater selector mechanism for identifying an appropriate repeater server to handle a request, and in which at least one of the plurality of repeater servers replicates a portion of the information available on at least one of the plurality of origin servers, and (d) a subscriber verifying mechanism constructed and adapted to verify whether an entity is any one of a plurality of subscribers to the repeater server network, and in which requests may be handled by the repeater server network in order for resources to be served, a method comprising:
- obtaining a request from a client for a resource, the resource being embedded in another document;
- identifying, by the repeater selector mechanism, a repeater server of the repeater server network to handle the request;
- if it is determined, at least in part by the subscriber verifying mechanism that the request is for information from a known subscriber,
- determining whether the resource is cached locally at the repeater server selected by the repeater selector mechanism, and, based, at least in part, on said determining, if the requested resource is in a cache of the repeater server, retrieving the resource;
- and
- when the resource is determined not to be cached locally at the repeater server, attempting to obtain the resource from the origin server of the plurality of origin servers or a peer cache,
- wherein the repeater server determines which origin server of the plurality of origin servers to use based, at least in part, upon the name by which the repeater server was addressed.
A server including a processor adapted and programmed to:
- (i) replicate at least a portion of information available on a plurality of origin servers distinct from the server;
- (ii) obtain a client request for information, the client request being for a resource which is embedded in another document;
- (iii) determine, based, at least in part, on a name by which the server was addressed, and using a subscriber verifying mechanism constructed and adapted to verify that the name belongs to a subscriber to a repeater server network which includes the server, whether the client request is for information from a known subscriber to the repeater server network which includes the server;
- and
- (iv) serve the requested information to the client when the request is determined to be for information from the known subscriber to the repeater server network.
A server including a processor adapted and programmed to:
- (i) replicate at least a portion of information available on a plurality of origin servers distinct from the server;
- (ii) obtain a client request for information, the client request being for a resource which is embedded in another document served from an origin server of the plurality of origin servers;
- (iii) determine, based, at least in part, on at least an origin server name in a Uniform Resource Locator (URL) used to make the client request, and using subscriber verifying mechanism constructed and adapted to verify that the origin server name belongs to a subscriber to a repeater server network which includes the server, whether the client request is for information from a known subscriber to a repeater server network which includes the server;
- and
- (iv) serve the information to the client when the client request is determined to be for information from the known subscriber to the repeater server network.
Dependencies are inferred from the claim text.