Enhancing HTTP caching by allowing content sharing of data blocks across resources identified by different uniform resource locators
First Claim
1. A method for improving performance in connection with requesting resources, the method comprising:
- sending a first request message to a server to retrieve a first resource identified by a first uniform resource locator, wherein said first request message comprises identifiers and tags associated with blocks of data of said first resource which are stored in a cache;
receiving a first response message from said server, wherein said first response message contains updated content for a first block of data and an updated tag associated with said first block of data of said first resource in response to a value of a first tag in said first request message associated with said first block of data not matching a value of a tag stored in said server associated with said first block of data;
modifying, by a processor, content of said first block of data and said associated first tag of said first resource in said cache using said received updated content and said updated tag;
sending a second request message to said server to retrieve a second resource identified by a second uniform resource locator, wherein said second request message comprises identifiers and tags associated with blocks of data of said second resource which are stored in said cache, wherein content of a second block of data of said second resource corresponds to an older version of content of said first block of data of said first resource that was modified, wherein a second tag associated with said second block of data of said second resource corresponds to an older version of said first tag, wherein said tags in said second request message comprises said first tag;
receiving a second response message from said server indicating that said second resource has not change since last accessed; and
modifying, by said processor, content of said second block of data and said associated second tag of said second resource stored in said cache using content from said first block of data and said first tag of said first resource, respectively, from said cache.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and computer program product for improving performance in connection with requesting resources. A request is sent by a browser to a server to retrieve a resource, where the message includes identifiers and tags associated with blocks of data of the resource which are stored in a cache of the client. If the browser receives a response from the server indicating that the resource has not change since last accessed, the browser will determine if one of the tags associated with the data blocks of the resource stored in the cache differs from the associated tags received in the response message. If there is not a match, then the browser has identified the situation where a block of data of the resource has outdated content which can be updated using the content stored in the data block of another resource in the cache with the same identifier.
22 Citations
20 Claims
-
1. A method for improving performance in connection with requesting resources, the method comprising:
-
sending a first request message to a server to retrieve a first resource identified by a first uniform resource locator, wherein said first request message comprises identifiers and tags associated with blocks of data of said first resource which are stored in a cache; receiving a first response message from said server, wherein said first response message contains updated content for a first block of data and an updated tag associated with said first block of data of said first resource in response to a value of a first tag in said first request message associated with said first block of data not matching a value of a tag stored in said server associated with said first block of data; modifying, by a processor, content of said first block of data and said associated first tag of said first resource in said cache using said received updated content and said updated tag; sending a second request message to said server to retrieve a second resource identified by a second uniform resource locator, wherein said second request message comprises identifiers and tags associated with blocks of data of said second resource which are stored in said cache, wherein content of a second block of data of said second resource corresponds to an older version of content of said first block of data of said first resource that was modified, wherein a second tag associated with said second block of data of said second resource corresponds to an older version of said first tag, wherein said tags in said second request message comprises said first tag; receiving a second response message from said server indicating that said second resource has not change since last accessed; and modifying, by said processor, content of said second block of data and said associated second tag of said second resource stored in said cache using content from said first block of data and said first tag of said first resource, respectively, from said cache. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product for improving performance in connection with requesting resources, the computer program product comprising a computer readable storage medium having program code embodied therewith, the program code comprising the programming instructions for:
-
sending a first request message to a server to retrieve a first resource identified by a first uniform resource locator, wherein said first request message comprises identifiers and tags associated with blocks of data of said first resource which are stored in a cache; receiving a first response message from said server, wherein said first response message contains updated content for a first block of data and an updated tag associated with said first block of data of said first resource in response to a value of a first tag in said first request message associated with said first block of data not matching a value of a tag stored in said server associated with said first block of data; modifying content of said first block of data and said associated first tag of said first resource in said cache using said received updated content and said updated tag; sending a second request message to said server to retrieve a second resource identified by a second uniform resource locator, wherein said second request message comprises identifiers and tags associated with blocks of data of said second resource which are stored in said cache, wherein content of a second block of data of said second resource corresponds to an older version of content of said first block of data of said first resource that was modified, wherein a second tag associated with said second block of data of said second resource corresponds to an older version of said first tag, wherein said tags in said second request message comprises said first tag; receiving a second response message from said server indicating that said second resource has not change since last accessed; and modifying content of said second block of data and said associated second tag of said second resource stored in said cache using content from said first block of data and said first tag of said first resource, respectively, from said cache. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A system, comprising:
-
a memory unit for storing a computer program for improving performance in connection with requesting resources; and a processor coupled to the memory unit, wherein the processor is configured to execute the program instructions of the computer program comprising; sending a first request message to a server to retrieve a first resource identified by a first uniform resource locator, wherein said first request message comprises identifiers and tags associated with blocks of data of said first resource which are stored in a cache; receiving a first response message from said server, wherein said first response message contains updated content for a first block of data and an updated tag associated with said first block of data of said first resource in response to a value of a first tag in said first request message associated with said first block of data not matching a value of a tag stored in said server associated with said first block of data; modifying content of said first block of data and said associated first tag of said first resource in said cache using said received updated content and said updated tag; sending a second request message to said server to retrieve a second resource identified by a second uniform resource locator, wherein said second request message comprises identifiers and tags associated with blocks of data of said second resource which are stored in said cache, wherein content of a second block of data of said second resource corresponds to an older version of content of said first block of data of said first resource that was modified, wherein a second tag associated with said second block of data of said second resource corresponds to an older version of said first tag, wherein said tags in said second request message comprises said first tag; receiving a second response message from said server indicating that said second resource has not change since last accessed; and modifying content of said second block of data and said associated second tag of said second resource stored in said cache using content from said first block of data and said first tag of said first resource, respectively, from said cache. - View Dependent Claims (18, 19, 20)
-
Specification