Server selection for routing content to a client using application layer redirection
First Claim
1. A method comprising:
- receiving, by a content router, a plurality of first requests sent by an application of a client that has initiated downloading of a page containing a plurality of probe links that trigger the application to follow each of the probe links by sending the plurality of first requests, wherein the plurality of probe links are provided as images of pixels on the page, and wherein each probe link corresponds to a different geographic location hosting a plurality of servers;
determining, by the content router, a particular server in each server location associated with a corresponding probe link of the plurality of probe links, the server location being a location at which the particular server could service a content request from the client;
sending, by the content router, a plurality of redirect messages to the client, each redirect message being associated with the corresponding probe link and causing the client to;
follow the redirect message to the particular server in the server location,receive back a redirect response from the particular server, andreturn a second request to the content router upon receipt of the redirect response, wherein an Internet protocol (IP) address of the client is associated with the second request for determining a roundtrip time for each particular server;
associating, by the content server, each of the second requests with the corresponding probe link of the plurality of probe links;
calculating, by the content router, a roundtrip time for each of the particular servers based on elapsed time from the redirect message that was sent from the content router to when the second request is received from the client; and
designating, by the content router, a server location with the lowest calculated roundtrip time as a content deliverer to the client.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a first request is received for a probe link from a client that has downloaded a page. The request is received from an application. A test may be performed to determine a server that could optimally service a content request from the client. After receiving the request, the content router sends a re-direct to the client where the re-direct causes the client to follow the re-direct to the server. The server then sends a re-direct back to the client, which the client follows by sending a second request to the content router. The second request is associated with the client and the round-trip time is calculated for the server. It is then determined if the location for the server should be designated as the content deliverer to the client based on the calculated round-trip time.
-
Citations
16 Claims
-
1. A method comprising:
-
receiving, by a content router, a plurality of first requests sent by an application of a client that has initiated downloading of a page containing a plurality of probe links that trigger the application to follow each of the probe links by sending the plurality of first requests, wherein the plurality of probe links are provided as images of pixels on the page, and wherein each probe link corresponds to a different geographic location hosting a plurality of servers; determining, by the content router, a particular server in each server location associated with a corresponding probe link of the plurality of probe links, the server location being a location at which the particular server could service a content request from the client; sending, by the content router, a plurality of redirect messages to the client, each redirect message being associated with the corresponding probe link and causing the client to; follow the redirect message to the particular server in the server location, receive back a redirect response from the particular server, and return a second request to the content router upon receipt of the redirect response, wherein an Internet protocol (IP) address of the client is associated with the second request for determining a roundtrip time for each particular server; associating, by the content server, each of the second requests with the corresponding probe link of the plurality of probe links; calculating, by the content router, a roundtrip time for each of the particular servers based on elapsed time from the redirect message that was sent from the content router to when the second request is received from the client; and designating, by the content router, a server location with the lowest calculated roundtrip time as a content deliverer to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. One or more non-transitory media encoding logic that includes code that, when executed by a processor of a content router, is programmed to:
-
receive a plurality of first requests sent by an application of a client that has initiated downloading of a page containing a plurality of probe links that trigger the application to follow each of the probe links by sending the plurality of first requests, wherein the plurality of probe links are provided as images of pixels on the page, and wherein each probe link corresponds to a different geographic location hosting a plurality of servers; determine a particular server in each server location associated with a corresponding probe link of the plurality of probe links, the server location being a location at which the particular server could service a content request from the client; send a plurality of redirect messages to the client, each redirect message being associated with the corresponding probe link and causing the client to; follow the redirect message to the particular server in the server location, receive back a redirect response from the particular server, and return a second request to the content router upon receipt of the redirect response, wherein an Internet protocol (IP) address of the client is associated with the second request for determining a roundtrip time for each particular server; associate each of the second requests with the corresponding probe link of the plurality of probe links; calculate a roundtrip time for each of the particular servers based on elapsed time from the redirect message that was sent from the content router to when the second request is received from the client; and designate a server location with the lowest calculated roundtrip time as a content deliverer to the client. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification