Cache based enhancement to optimization protocol
First Claim
1. A method of optimizing a servicing of a request from an application for a resource, comprising:
- forming a request by the application for a resource;
determining a contents of a storage medium accessible by the application;
modifying the request to include information regarding the contents of the storage medium;
communicating the request to a network node;
intercepting the communicated request at an intermediate node;
storing the information regarding the contents of the storage medium at the intermediate node;
forwarding the request to the network node;
receiving a response to the request at the intermediate node;
processing the response to identify one or more embedded objects referenced in the response;
identifying one or more embedded objects referenced in the response that are not contained in the storage medium accessible by the application;
requesting from the network node, without further user intervention, the one or more objects referenced in the response that are not contained in the storage medium accessible by the application;
receiving the one or more objects referenced in the response that are not contained in the storage medium accessible by the application;
wherein, in response to a request from the application for an embedded object referenced in the response, the application accesses the storage medium if the requested object is contained in the storage medium and the application accesses the received one or more objects referenced in the response that are not contained in the storage medium if the requested object is not contained in the storage medium.
4 Assignments
0 Petitions
Accused Products
Abstract
A system, apparatus, and method for improving the user experience when accessing web pages containing embedded objects over a network. In one embodiment, information regarding the contents of a locally accessible cache is added to a request directed to a web server. The information is used to control certain aspects of a pre-fetch process that is designed to reduce network latency affects and improve network resource utilization, thereby improving a user'"'"'s experience. The cache contents information may be provided to an intermediate server via a modification to an existing request-response protocol, with the information being encoded or compressed if desired to reduce data transport requirements. The information is used by the intermediate server to determine whether to request an embedded object referenced in the requested resource or web page, and to determine if a browser having access to the cache will request the object or access the object from the local cache.
26 Citations
23 Claims
-
1. A method of optimizing a servicing of a request from an application for a resource, comprising:
-
forming a request by the application for a resource; determining a contents of a storage medium accessible by the application; modifying the request to include information regarding the contents of the storage medium; communicating the request to a network node; intercepting the communicated request at an intermediate node; storing the information regarding the contents of the storage medium at the intermediate node; forwarding the request to the network node; receiving a response to the request at the intermediate node; processing the response to identify one or more embedded objects referenced in the response; identifying one or more embedded objects referenced in the response that are not contained in the storage medium accessible by the application; requesting from the network node, without further user intervention, the one or more objects referenced in the response that are not contained in the storage medium accessible by the application; receiving the one or more objects referenced in the response that are not contained in the storage medium accessible by the application; wherein, in response to a request from the application for an embedded object referenced in the response, the application accesses the storage medium if the requested object is contained in the storage medium and the application accesses the received one or more objects referenced in the response that are not contained in the storage medium if the requested object is not contained in the storage medium. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of providing a response to a request for a resource from an application, comprising:
-
obtaining information regarding the contents of a storage medium accessible by the application at a network node; receiving a response to the request at the network node; processing the response to identify one or more embedded objects referenced in the response; identifying one or more embedded objects referenced in the response that are not contained in the storage medium accessible by the application; requesting, without further user intervention, the one or more objects referenced in the response that are not contained in the storage medium accessible by the application; receiving the one or more objects referenced in the response that are not contained in the storage medium accessible by the application; wherein, in response to a request from the application for an embedded object referenced in the response, the application retrieves the object from the storage medium if the requested object is contained in the storage medium and the application accesses the received one or more objects referenced in the response that are not contained in the storage medium if the requested object is not contained in the storage medium. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A method of processing a request for a resource by an application, comprising:
-
determining contents of a storage medium accessible by the application; incorporating information regarding the contents of the storage medium into the request; receiving a response to the request, wherein the response includes references to a plurality of embedded objects, the embedded objects including an object contained in the storage medium and an object not contained in the storage medium accessible by the application; requesting, without further user intervention, the object referenced in the response not contained in the storage medium accessible by the application;
receiving the object referenced in the response not contained in the storage medium accessible by the application;wherein, in response to a request from the application for an embedded object referenced in the response, the application retrieves the object from the storage medium if the requested object is contained in the storage medium and the application accesses the received object referenced in the response not contained in the storage medium if the requested object is not contained in the storage medium. - View Dependent Claims (16, 17, 18)
-
-
19. A non-transitory computer readable medium containing instructions that when executed cause a processor to implement a process, the process comprising:
-
determining contents of a storage medium accessible by an application, the application configured to form a request for a resource; modifying a protocol used to transport a request from the application to include information regarding the contents of the storage medium; communicating the modified request to a first network element; and receiving a response to the request, the response including references to a plurality of embedded objects, the embedded objects including an object contained in the storage medium accessible by the application and an object not contained in the storage medium accessible by the application; wherein, in response to a request from the application for an embedded object referenced in the response, the application retrieves the object from the storage medium if the requested object is contained in the storage medium accessible by the application and the application accesses the received object referenced in the response not contained in the storage medium from a second network element if the requested object is not contained in the storage medium accessible by the application, wherein the second network element is configured to request, without further user intervention, the object referenced in the response not contained in the storage medium accessible by the application; and receive the object referenced in the response not contained in the storage medium accessible by the application.
-
-
20. A non-transitory computer readable medium containing instructions that when executed cause a processor to implement a process, the process comprising:
-
receiving a request from an application, the request including information regarding contents of a storage medium accessible by the application, the information being incorporated into the request by modifying an element of a protocol; storing the information regarding the contents of the storage medium accessible to the application; forwarding the request to a network node; receiving a response to the request from the network node; processing the response to identify one or more embedded objects referenced in the response; identifying one or more embedded objects referenced in the response that are not contained in the storage medium accessible by the application; requesting, without further user intervention, the one or more objects referenced in the response that are not contained in the storage medium accessible by the application; and receiving the one or more objects referenced in the response that are not contained in the storage medium accessible by the application. - View Dependent Claims (21, 22, 23)
-
Specification