Providing faster data access using multiple caching servers
First Claim
1. A computer-implemented method comprising:
- in response to receiving a request for an item of network content from a network client, identifying a plurality of servers having access to the network content, the plurality of servers comprising at least a base server and one or more cache servers;
generating a content request for the item of network content;
transmitting the content request for the item of network content to individual servers of the plurality of servers in parallel;
receiving, from at least a subset of the plurality of servers, a plurality of responses to the content request that comprises at least a portion of the item of network content;
determining, for individual responses in the plurality of responses, a round trip latency for the content request based at least in part on an amount of time to receive the response;
determining that an optimal server of the plurality of servers is associated with a received response having the lowest round trip latency of the plurality of responses; and
determining a lock-in period for the network client, wherein one or more subsequent requests received from the network client are transmitted to the optimal server during the lock-in period.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for identifying an optimal server to receive requests for network content requested by a user of a network device is provided. A browser application in a network device receives a request for network content from a user and transmits the request to a server. The browser application receives the network content from the server and renders the network content to the user on the network device. Executable code in the rendered network content enables the browser application to identify an optimal server to receive subsequent items of network content requested by the user. When the user selects an item of network content in the rendered network page, the browser application connects to the optimal server to receive subsequent items of network content for the user.
10 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
in response to receiving a request for an item of network content from a network client, identifying a plurality of servers having access to the network content, the plurality of servers comprising at least a base server and one or more cache servers; generating a content request for the item of network content; transmitting the content request for the item of network content to individual servers of the plurality of servers in parallel; receiving, from at least a subset of the plurality of servers, a plurality of responses to the content request that comprises at least a portion of the item of network content; determining, for individual responses in the plurality of responses, a round trip latency for the content request based at least in part on an amount of time to receive the response; determining that an optimal server of the plurality of servers is associated with a received response having the lowest round trip latency of the plurality of responses; and determining a lock-in period for the network client, wherein one or more subsequent requests received from the network client are transmitted to the optimal server during the lock-in period. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system, comprising:
-
a memory that stores computer-executable instructions; and at least one processor configured to access the memory, the at least one processor configured to execute the computer-executable instructions to collectively at least; receive a first request for an item of network content from a browser application installed on a network client; transmit, to a plurality of servers including a base sever and at least one cache server, a plurality of second requests for the item; receive, from at least a subset of the plurality of servers, at least two responses; determine, for individual responses of the at least two responses, a round trip latency for the response; identify, based on the determined round trip latency, an optimal server of the subset of the plurality of servers corresponding with a shortest round trip latency; and instruct the browser application on the network client to transmit at least a third request for a subsequent item of network content to the optimal server for a determined lock-in period. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computer apparatus, comprising:
-
a processor; and a memory that stores computer-executable instructions, the computer-executable instructions configured to, when executed by the processor, cause the computer apparatus to; receive, from a network client, a request for an item of network content; identify a plurality of servers having access to the network content, the plurality of servers comprising at least a base server and one or more cache servers; generate a content request for the item of network content; transmit the content request for the item of network content to individual servers of the plurality of servers in parallel; receive, from at least a subset of the plurality of servers, a plurality of responses to the content request that comprises at least a portion of the item of network content; determine, for individual responses in the plurality of responses, a round trip latency for the content request based at least in part on an amount of time to receive the response; determine that an optimal server of the plurality of servers is associated with a received response having a lowest round trip latency of the plurality of responses; identify a lock-in period associated with the optimal server; and cause one or more subsequent requests received from the network client to be transmitted to the optimal server during the lock-in period. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification