Claims
- 1. 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; 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 change-status request relating to said requested data resource to a source of that requested data resource; when generating said change-status request, identifying at least one other data resource held by the cache and from said source and generating a change-status request relating to said at least one other data resource to said source.
- 2. The method of claim 1 comprising the further step of receiving notice that said at least one other data source has changed.
- 3. The method of claim 1 comprising the further steps of:
receiving a notice that said requested data resource has changed; receiving the changed requested data resource; and receiving notice that said at least one other data resource has changed.
- 4. 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.
- 5. The method of claim 2 comprising the further steps of:
requesting a transmission of the changed said at least one other data resource from said source.
- 6. 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.
- 7. 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 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; 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.
- 8. The method of claim 7 wherein said step of requesting comprises:
generating a first change-status request identifying said requested data resource; and generating a second change-status request identifying said subset of identified other data resources.
- 9. 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.
- 10. 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.
- 11. 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.
- 12. 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.
- 13. 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; identifying a plurality of other data resources stored in the cache memory and associated with the source; and querying the source 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.
- 14. 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.
- 15. 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.
- 16. 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; 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 request relating to said requested data resource to a source of that requested data resource; and when transmitting that request, also transmitting a change status request relating to at least one other data resource from said source held by the cache.
- 17. The method of claim 16 comprising the further step of receiving notice that said at least one other data source has changed.
RELATED APPLICATIONS
[0001] The present application claims priority to provisional application No. 60/047,380 filed Jun. 2, 1997, the entire content of which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60047380 |
Jun 1997 |
US |