HTTP acceleration by prediction and pre-fetching
First Claim
1. In a computing environment, a method comprising:
- analyzing content described on a main web page to predict likely subsequent requests from a client for a plurality of objects corresponding to that content; and
pre-fetching at least some of the content before that content is requested by the client by making in parallel concurrent requests for objects described on the main web page independent of client requests for those objects, wherein pre-fetching at least some of the content comprises sending requests for objects to a web proxy coupled to a web server, and, the web proxy server coupled to the web server sends only two requests at a time to the web server independent of the number of outstanding requests received from the client.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a technology by which high latency problems with respect to web requests are reduced by having a web proxy server predict and pre-fetch content, in parallel, that is to be requested by a client. The web proxy analyzes a main web page requested by a client to predict subsequent client requests. The web proxy pre-fetches content before the client requests it, by making concurrent requests for the page'"'"'s embedded objects that exceed the client'"'"'s limited number of (e.g., two) connections. In one example, the web proxy sends HTTP requests substantially in parallel to a web server, thereby reducing overall latency. In another example, the web proxy server sends parallel requests to a remote web proxy coupled to a web server. The remote web proxy requests only a limited number of objects (e.g., two) at a time, but does so over fast (low latency) connections to the web server.
-
Citations
15 Claims
-
1. In a computing environment, a method comprising:
-
analyzing content described on a main web page to predict likely subsequent requests from a client for a plurality of objects corresponding to that content; and pre-fetching at least some of the content before that content is requested by the client by making in parallel concurrent requests for objects described on the main web page independent of client requests for those objects, wherein pre-fetching at least some of the content comprises sending requests for objects to a web proxy coupled to a web server, and, the web proxy server coupled to the web server sends only two requests at a time to the web server independent of the number of outstanding requests received from the client. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. In a computer networking environment, a system comprising:
a local web proxy server that receives requests from a client for content directed towards a web server, the local web proxy server analyzes the requests, sends HTTP requests to a web proxy server local to the web server, to pre-fetch at least some content objects from the web server in parallel and independent of client request for the objects, and returns objects to the client in response to client requests for those objects, wherein the web proxy server local to the web server sends only two HTTP requests at a time to the web server independent of the number of outstanding HTTP requests received from the local web proxy server. - View Dependent Claims (8, 9, 10)
-
11. A computer-readable storage medium having computer-executable instructions, comprising:
-
receiving a request from a client for web content corresponding to a main web page; forwarding the request for handling via a corresponding web server; receiving a response from the web server, the response including a list of embedded objects; returning the response to the client; requesting the embedded objects from a remote web proxy server independent of requests from the client for those embedded objects, wherein the remote web proxy server requests up to two of the embedded objects at a time from the web server; receiving the embedded objects; and returning the embedded objects in response to client requests for those embedded objects. - View Dependent Claims (12, 13, 14, 15)
-
Specification