Caching of updated network content portions

US9953052B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9953052-B1
Application numberUS-201213527474-A
CountryUS
Kind codeB1
Filing dateJun 19, 2012
Priority dateJun 19, 2012
Publication dateApr 24, 2018
Grant dateApr 24, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Features are disclosed for caching network resources. A system determines whether a resource which does not contain an indication in its associated header that it is cacheable may nevertheless be cached. The determination may be based on observations of a number of requests for the resource over time and from a number of different requesting clients. In response to determining that the resource is cacheable, the system may cache the resource, and in some cases modify the cache control header of resource to facilitate caching. The system may insert fields into the header or otherwise modify the header so that the resource may be cached at a network computing provider, at a requesting client device, or at some other shared or private cache.

First claim

Opening claim text (preview).

What is claimed is: 1. A system for updating cached network resources, the system comprising: one or more processors; a computer-readable memory; and computer-executable instructions stored in the computer-readable memory and executed by the one or more processors, wherein the computer-executable instructions, when executed, configure the one or more processors to: transmit a copy of a network resource and information associated with the copy to a client device, the information modified to indicate that the copy is cacheable; retrieve, from a content provider, an updated version of the network resource; receive, from a client device, a request for information regarding whether the network resource has been modified subsequent to transmission of the copy; determine a modified portion of the network resource based at least in part on a comparison of the updated version of the network resource with the copy; and transmit, to the client device, a response comprising only the modified portion and data indicating a portion of the copy to replace with the modified portion. 2. The system of claim 1 , wherein the network resource comprises one of an HTML file, HTML application, JavaScript file, CSS file, image, video, animation, applet, document, or network accessible file. 3. The system of claim 1 , wherein the request for information comprises an “if-modified-since” request. 4. The system of claim 1 , wherein the response comprises an HTTP header. 5. The system of claim 1 , wherein the data indicating the portion to replace comprises one of a tag, a set of coordinates, a byte range, or a unique identifier. 6. A computer-implemented method for updating cached network resources by transmitting modified portions of network resources, the computer-implemented method comprising: under control of one or more computing devices configured with specific computer-executable instructions that carry out the computer-implemented method, transmitting, by an intermediary system comprising one or more hardware computing devices, a copy of a network resource and information associated with the copy to a client device, the network resource retrieved from a content provider different from the intermediary system, and the information indicating that the copy is cacheable; determining, by the intermediary system, the modified portion of the network resource, wherein the determining is based at least in part on a comparison of an updated version of the network resource with the copy of the network resource; and transmitting, by the intermediary system, to the client device, in response to a query from the client device regarding whether the network resource has been modified, data regarding only the modified portion of the network resource. 7. The computer-implemented method of claim 6 , wherein the network resource comprises one of an HTML file, HTML application, JavaScript file, CSS file, image, video, animation, applet, document, or network accessible file. 8. The computer-implemented method of claim 6 , wherein the query comprises a specified date and time, and wherein the copy of the network resource corresponds to the specified date and time. 9. The computer-implemented method of claim 6 , wherein the query comprises an “if-modified-since” request. 10. The computer-implemented method of claim 6 , wherein the data regarding only the modified portion of the network resource comprises the copy of the modified portion. 11. The computer-implemented method of claim 10 , wherein the copy of the modified portion comprises a byte range of a binary file. 12. The computer-implemented method of claim 10 , wherein the copy of the modified portion comprises contents of a markup tag. 13. The computer-implemented method of claim 6 , wherein the data regarding only the modified portion indicates which portion of the copy of the network resource corresponds to the modified portion. 14. The computer-implemented method of claim 13 , wherein the data indicating which portion of the copy of the network resource corresponds to the modified portion comprises one of a tag, a set of coordinates, a byte range, or a unique identifier. 15. The computer-implemented method of claim 6 , wherein the determining comprises a bytewise comparison of the updated version of the network resource with the copy of the network resource. 16. The computer-implemented method of claim 6 , wherein the determining comprises a string comparison of the updated version of the network resource with the copy of the network resource. 17. The computer-implemented method of claim 6 , wherein the transmitting comprises transmitting an HTTP header comprising the data regarding only the modified portion of the network resource and data indicating which portion of the copy of the network resource corresponds to the modified portion. 18. The computer-implemented method of claim 17 , wherein the HTTP header further comprises data indicating a date and time after which the modified portion is not available. 19. The computer-implemented method of claim 6 further comprising storing, in a cache associated with the intermediary system, the modified portion. 20. The computer-implemented method of claim 19 , wherein the modified portion is stored in the cache as part of an HTTP header. 21. The computer-implemented method of claim 6 further comprising processing, by a browser application of the intermediary system in communication with a browser application of the client device, the modified portion to create a processed modified portion, wherein transmitting data regarding only the modified portion comprises transmitting the processed modified portion. 22. The computer-implemented method of claim 21 further comprising storing the processed modified portion in a cache associated with the intermediary system. 23. A system for updating cached network resources, the system comprising: one or more processors; a computer-readable memory; and computer-executable instructions stored in the computer-readable memory and executed by the one or more processors, wherein the computer-executable instructions, when executed, configure the one or more processors to: receive a copy of a network resource from an intermediary system, the intermediary system independent of an origin content provider of the network resource, wherein the copy is associated with data indicating a caching property of the copy; cache the copy according to the caching property; transmit, to the intermediary system at a time subsequent to caching the copy, a request for information regarding a modification to the copy; and receive, from the intermediary system, a response comprising only a modified portion of the copy. 24. The system of claim 23 , wherein the cached network resource comprises one of an HTML file, HTML application, JavaScript file, CSS file, image, video, animation, applet, document, or network accessible file. 25. The system of claim 23 , wherein the request for information comprises an “if-modified-since” request. 26. The system of claim 23 , wherein the response comprises an HTTP header, and wherein the HTTP header comprises the modified portion. 27. The system of claim 26 , wherein the response further comprises data indicating which portion of the copy corresponds to the modified portion. 28. The system of claim 26 , wherein the HTTP header further c

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9953052B1 cover?
Features are disclosed for caching network resources. A system determines whether a resource which does not contain an indication in its associated header that it is cacheable may nevertheless be cached. The determination may be based on observations of a number of requests for the resource over time and from a number of different requesting clients. In response to determining that the resource…
Who is the assignee on this patent?
Hill Peter F, Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F17/30356. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 24 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).