A method and apparatus are disclosed for prefetching Internet resources based
on
the estimated round trip time of the resources. Whenever a user clicks on an embedded
hyperlink, the prefetching strategy aims to ensure that the corresponding document
has been prefetched or can be fetched very quickly from its origin server. Web
access time as perceived by the user is reduced, while also minimizing the network,
server and local resource overhead due to prefetching. The estimated round trip
time is obtained or approximated for all referenced documents. The "round trip"
time or access time of a resource is the time interval between the sending of the
first byte of an HTTP request for the resource until the last byte of the server
response has arrived at the requesting Web client. Documents with the longest access
times are prefetched first and prefetching generally continues until the estimated
round trip time falls below a predefined threshold. An HTTP HEAD request may be
used to determine the estimated round trip time of a Web resource. The prefetching
agent can be configured to prevent prefetching of those documents that are quickly
fetchable, dynamically generated or non-HTTP based resources, or those documents
whose size exceed a certain limit, to minimize the network, server and local resource
overhead due to prefetching. The thresholds applied to the list of documents to
be prefetched can be dynamically adjusted by the agent, based on changing network
and server conditions.