Patent US2460834A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6578113B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Method for cache validation for proxy caches

Assignee: AT&T Inc
•
Filing: 1997-12-30
•
Granted: 2003-06-10
•
Expires: 2017-12-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A proxy cache maintains a copy of multiple resources from various servers in a network. When the proxy cache must generate a validation request for at least one resource at one of the servers, the proxy cache piggybacks one or more additional cache validation requests related to documents presently stored in the cache but originating from or associated with the server in question. Upon receipt of an indication of the freshness or validity of the cached copy of the document, the proxy cache can then make a determination as to whether to request an update of the document.

Inventors

  • 👤 Balachander Krishnamurthy
  • 👤 Craig Ellis Wills

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 05:26
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/90; G06F16/95; G06F16/957; G06F16/9574

Claims Analysis

Total Claims: 40
Claim 1
Independent Claim 151 words
A method for maintaining consistency in a cache of a first server in a data communication network, the method comprising the steps of: receiving a client request for a data resource at the first server; determining whether the cache holds the requested data resource; detecting a freshness of the requested data resource if determined to be held by the cache; when said freshness of said requested data resource falls outside a predetermined range, generating a first change-status request relating to said requested data resource to a source of that requested data resource; in response to generating said first change-status request, identifying at least one other data resource held by the cache and from said source and generating a second change-status request relating to said at least one other data resource to said source; and sending said first change-status request and said second change-status request in a piggybacked communication to said source.
Claim 2
Independent Claim 151 words
A method for maintaining consistency in a cache of a first server in a data communication network, the method comprising the steps of: receiving a client request for a data resource at the first server; determining whether the cache holds the requested data resource; detecting a freshness of the requested data resource if determined to be held by the cache; when said freshness of said requested data resource falls outside a predetermined range, generating a first change-status request relating to said requested data resource to a source of that requested data resource; in response to generating said first change-status request, identifying at least one other data resource held by the cache and from said source and generating a second change-status request relating to said at least one other data resource to said source; and sending said first change-status request and said second change-status request in a piggybacked communication to said source.
Claim 3
Dependent Claim 25 words
The method of claim 1 comprising the further step of receiving notice from said source that said at least one other data resource has changed.
Claim 4
Dependent Claim 48 words
The method of claim 1 comprising the further steps of: receiving a notice from said source that said requested data resource has changed; receiving the changed requested data resource from said source; and receiving notice from said source that said at least one other data resource has changed.
Claim 5
Dependent Claim 37 words
The method of claim 2 comprising the further step of: rendering said at least one other data resource in said cache invalid in response to said notice that said at least one other data resource has changed.
Claim 6
Dependent Claim 26 words
The method of claim 2 comprising the further step of: requesting a transmission of the changed said at least one other data resource from said source.
Claim 7
Dependent Claim 77 words
The method of claim 1 wherein said step of identifying said at least one other data resource comprises the substeps of: detecting all data resources in said cache identified as being from said source of the requested data resource; examining a freshness of each of the detected data resources; and selecting a subset of the detected data resources based on the examination of freshness; wherein said subset corresponds to the identified at least one other data resource.
Claim 8
Dependent Claim 116 words
In a data communication system including a plurality of servers and a proxy server that includes a proxy cache, a method for maintaining cache consistency comprising the steps of: receiving a request from a client for a data resource at said proxy server; determining whether said proxy cache holds the requested data resource; identifying a source of said requested data resource; in response to the identification of the source of the request data resource, identifying other data resources from said source in said proxy cache; selecting a subset of the identified other data resources; requesting, from said source, information regarding the requested data resource and the subset of identified other data resources in a unitary communication.
Claim 9
Dependent Claim 116 words
In a data communication system including a plurality of servers and a proxy server that includes a proxy cache, a method for maintaining cache consistency comprising the steps of: receiving a request from a client for a data resource at said proxy server; determining whether said proxy cache holds the requested data resource; identifying a source of said requested data resource; in response to the identification of the source of the request data resource, identifying other data resources from said source in said proxy cache; selecting a subset of the identified other data resources; requesting, from said source, information regarding the requested data resource and the subset of identified other data resources in a unitary communication.
Claim 10
Dependent Claim 42 words
The method of claim 7 wherein said step of requesting comprises: generating a first change-status request identifying said requested data resource; and in response to said first change-status request, generating a second change-status request identifying said subset of identified other data resources.
Claim 11
Dependent Claim 28 words
The method of claim 7 comprising the further step of rendering invalid each one of the subset of identified other data resources that is indicated to have changed.
Claim 12
Dependent Claim 27 words
The method of claim 7 comprising the further step of re-loading each one of the subset of identified other data resources that is indicated to have changed.
Claim 13
Dependent Claim 48 words
The method of claim 7 , comprising the further step of receiving information regarding differences between a version of one of the subset of identified other data resources in the cache and a version of said one of the subset of identified other data resources at the source.
Claim 14
Dependent Claim 31 words
The method of claim 7 comprising the further step of updating a freshness of each data resource in said subset of identified other data resources that is indicated to be unchanged.
Claim 15
Independent Claim 94 words
A method for checking the validity of contents of a cache memory in a data network, the method comprising the steps of: detecting a need to verify at a source a data resource requested of the cache memory; in response to said need, identifying a plurality of other data resources stored in the cache memory and associated with the source; and querying the source with a unitary request for information regarding said data resource and to determine if any of said plurality of other data resources have changed since the most recent previous query.
Claim 16
Independent Claim 94 words
A method for checking the validity of contents of a cache memory in a data network, the method comprising the steps of: detecting a need to verify at a source a data resource requested of the cache memory; in response to said need, identifying a plurality of other data resources stored in the cache memory and associated with the source; and querying the source with a unitary request for information regarding said data resource and to determine if any of said plurality of other data resources have changed since the most recent previous query.
Claim 17
Dependent Claim 35 words
The method of claim 13 , wherein in response to an indication that one or more data resources have changed the method further comprises the step of: re-loading any data resource indicated to have changed.
Claim 18
Dependent Claim 58 words
The method of claim 14 wherein said step of detecting a need to verify comprises the substeps of: identifying a data resource of interest in the cache memory; detecting a time duration identifying the time since a most recent re-loading of the data resource; determining a need to verify when the detected time duration exceeds a predetermined value.
Claim 19
Independent Claim 124 words
A method for maintaining consistency in a cache in a data communication network, the method comprising the steps of: receiving a request for a data resource from a client; determining whether the cache holds a fresh copy of the requested data resource; when it is determined that the cache does not hold a fresh copy of the requested data resource, transmitting a first request relating to said requested data resource to a source of that requested data resource; and in response to the determination that the cache does not hold a fresh copy of the requested data resource transmitting a second change status request relating to at least one other data resource from said source held by the cache, piggybacked with said first request.
Claim 20
Independent Claim 124 words
A method for maintaining consistency in a cache in a data communication network, the method comprising the steps of: receiving a request for a data resource from a client; determining whether the cache holds a fresh copy of the requested data resource; when it is determined that the cache does not hold a fresh copy of the requested data resource, transmitting a first request relating to said requested data resource to a source of that requested data resource; and in response to the determination that the cache does not hold a fresh copy of the requested data resource transmitting a second change status request relating to at least one other data resource from said source held by the cache, piggybacked with said first request.
Claim 21
Dependent Claim 22 words
The method of claim 16 comprising the further step of receiving notice that said at least one other data source has changed.
Claim 22
Independent Claim 110 words
A method for maintaining cache coherency, comprising: receiving a data resource request from a client at a first server; identifying whether said data resource is held by a cache of the first server; checking the validity of said data resource in the first server; if said data resource is held by the cache and is invalid, sending a primary request to a second server for an updated version of said data resource; sending a supplemental request piggybacked with said primary request, to the second server, to update at least one additional data resource held in the cache; and delivering the updated version of said requested data resource to the client.
Claim 23
Independent Claim 110 words
A method for maintaining cache coherency, comprising: receiving a data resource request from a client at a first server; identifying whether said data resource is held by a cache of the first server; checking the validity of said data resource in the first server; if said data resource is held by the cache and is invalid, sending a primary request to a second server for an updated version of said data resource; sending a supplemental request piggybacked with said primary request, to the second server, to update at least one additional data resource held in the cache; and delivering the updated version of said requested data resource to the client.
Claim 24
Dependent Claim 23 words
The method of claim 18 , further comprising, identifying at least one additional data resource prior to sending the primary and supplemental requests.
Claim 25
Dependent Claim 19 words
The method of claim 18 , wherein checking the validity of said data resource includes detecting a freshness value.
Claim 26
Dependent Claim 28 words
The method of claim 18 , further comprising receiving an updated requested data resource and a notice of whether the at least one additional data resource has changed.
Claim 27
Dependent Claim 28 words
The method of claim 21 , wherein receiving the updated requested data resource includes receiving a notice from the second server that the requested data resource has changed.
Claim 28
Dependent Claim 32 words
The method of claim 21 , further comprising invalidating said at least one additional data resource in response to the notice of whether the at least one additional data resource had changed.
Claim 29
Dependent Claim 24 words
The method of claim 21 , further comprising requesting a changed copy of said at least one additional data resource from said second server.
Claim 30
Dependent Claim 112 words
A cache coherency method, comprising: responsive to a first request for an addressed data item, determining whether a local cache stores the data item, if so, determining whether a state of the data item is valid, if the state is not valid, retrieving from the cache a source identifier associated with the data item, identifying another data item stored in the cache having the same source identifier associated therewith, and transmitting a cache validation request to a server associated with the source identifier, the cache validation request identifying the two data items, and following a response to the cache validation request, furnishing the addressed data item in response to the first request.
Claim 31
Dependent Claim 112 words
A cache coherency method, comprising: responsive to a first request for an addressed data item, determining whether a local cache stores the data item, if so, determining whether a state of the data item is valid, if the state is not valid, retrieving from the cache a source identifier associated with the data item, identifying another data item stored in the cache having the same source identifier associated therewith, and transmitting a cache validation request to a server associated with the source identifier, the cache validation request identifying the two data items, and following a response to the cache validation request, furnishing the addressed data item in response to the first request.
Claim 32
Dependent Claim 64 words
The cache coherency method of claim 25 , further comprising, if the response to the cache validation request indicates that the addressed data item has been updated at the server: transmitting a request to the server requesting a copy of the data item, wherein the furnishing of the addressed data item is made from a copy of the data item received from the server.
Claim 33
Dependent Claim 33 words
The cache coherency method of claim 25 , wherein: the response to the cache validation request includes a copy of the addressed data item, and the furnishing is made from the received copy.
Claim 34
Dependent Claim 48 words
The cache coherency method of claim 25 , wherein, if the response to the cache validation request indicates that the addressed data item has not been updated at the server, the furnishing of the addressed data item is made from the locally stored copy of the data item.
Claim 35
Dependent Claim 66 words
The cache coherency method of claim 25 , wherein: the cache validation request includes a primary validation request identifying the addressed data item and a secondary validation request identifying the other data item, and the local cache marks a state identifier of the other data item as invalid upon receipt of a response to the secondary validation request indicating the other data item has been updated.
Claim 36
Dependent Claim 92 words
A cache coherency method, comprising: receiving from a client terminal, a request for a data item, determining whether a local cache stores the requested data item and, if so, whether the requested data item is fresh, when the freshness of the data item falls outside a predetermined range, retrieving a source identifier associated with the data item, identifying a second stored data item associated with the source identifier, and transmitting a unitary cache validation request to a server associated with the source identifier, the request identifying the first and second data items.
Claim 37
Dependent Claim 92 words
A cache coherency method, comprising: receiving from a client terminal, a request for a data item, determining whether a local cache stores the requested data item and, if so, whether the requested data item is fresh, when the freshness of the data item falls outside a predetermined range, retrieving a source identifier associated with the data item, identifying a second stored data item associated with the source identifier, and transmitting a unitary cache validation request to a server associated with the source identifier, the request identifying the first and second data items.
Claim 38
Dependent Claim 19 words
The cache coherency method of claim 30 , further comprising: furnishing the requested data item to the client terminal.
Claim 39
Dependent Claim 119 words
A cache coherency method, comprising: responsive to a first request for an addressed data item, determining whether a local cache stores the data item, if so, determining whether a state of the data item is valid, if the state is not valid, retrieving from the cache a source identifier associated with the data item, identifying all other data items stored in the cache having the same source identifier associated therewith, and transmitting a cache validation request to a server associated with the source identifier, the cache validation request identifying the two data items, and upon receipt of a response from the server, changing to invalid the state of all data items identified by the server as having been updated.
Claim 40
Dependent Claim 119 words
A cache coherency method, comprising: responsive to a first request for an addressed data item, determining whether a local cache stores the data item, if so, determining whether a state of the data item is valid, if the state is not valid, retrieving from the cache a source identifier associated with the data item, identifying all other data items stored in the cache having the same source identifier associated therewith, and transmitting a cache validation request to a server associated with the source identifier, the cache validation request identifying the two data items, and upon receipt of a response from the server, changing to invalid the state of all data items identified by the server as having been updated.

References Cited (Backward Citations)

US5448726A Cited
US5611049A Cited
US5577251A Cited
US5465359A Cited
US5581704A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-06-09 2006-12-09 2007-06-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-06-09 2010-12-09 2011-06-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-06-09 2014-12-09 2015-06-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag