Method and apparatus for accelerating the expiration of resource records in a local cache
First Claim
1. A computer-implemented method, comprising:
- receiving at a client, a first multicast message of a query from another client, wherein the query identifies a device;
locating a resource record associated with the device in a local cache at the client;
waiting at the client for a multicast message of a response from the device, wherein the response from the device is associated with the query;
receiving at the client, a predetermined number of multicast messages of the query from the another client without receiving a corresponding multicast message of the response from the device;
in response to the receiving, invalidating the resource record associated with the device;
identifying other resource records in the local cache that refer to the invalidated resource record, comprising;
retrieving a parent record of the invalidated resource record at the client, wherein the parent record refers to the invalidated resource record; and
issuing a second multicast message of a parent-record query based at least on the parent record.
0 Assignments
0 Petitions
Accused Products
Abstract
One embodiment of the present invention provides a system that facilitates reconfirmation of resource records in a cache. The system starts by retrieving the resource record at a client and attempting to establish communication using the data in that resource record. In the event that communication is not successful, the system responds by issuing one or more queries for the resource record in question. The system then waits for a response to the query. If the response to the query is not received in a pre-determined amount of time, the system invalidates the resource record. The response from the device is a multicast response, thereby allowing other clients to update corresponding resource records in their local caches without querying the device, and thus saving network bandwidth.
-
Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
receiving at a client, a first multicast message of a query from another client, wherein the query identifies a device; locating a resource record associated with the device in a local cache at the client; waiting at the client for a multicast message of a response from the device, wherein the response from the device is associated with the query; receiving at the client, a predetermined number of multicast messages of the query from the another client without receiving a corresponding multicast message of the response from the device; in response to the receiving, invalidating the resource record associated with the device; identifying other resource records in the local cache that refer to the invalidated resource record, comprising; retrieving a parent record of the invalidated resource record at the client, wherein the parent record refers to the invalidated resource record; and issuing a second multicast message of a parent-record query based at least on the parent record. - View Dependent Claims (2, 3, 4, 5, 6, 7, 11, 12)
-
-
8. A non-transitory computer-readable medium having instructions stored therein, which when executed by a processor of a client, cause the processor to perform operations, the operations comprising:
-
receiving at a client, a first multicast message of a query from another client, wherein the query identifies a device; locating a resource record associated with the device in a local cache at the client; waiting at the client for a multicast message of a response from the device wherein the response from the device is associated with the query; receiving at the client, a predetermined number of multicast messages of the query from the another client without receiving a corresponding multicast message of the response from the device; in response to the receiving, invalidating the resource record associated with the device; and identifying other resource records in a local cache that refer to the invalidated resource record, comprising; retrieving a parent record of the invalidated resource record at the client, wherein the parent record refers to the invalidated resource record; and receiving from the another client, a second multicast message of a parent-record query based at least on the parent record. - View Dependent Claims (9, 10, 13, 14)
-
-
15. An apparatus, comprising:
-
one or more processors; and a memory coupled to the one or more processors; the one or more processors configured to; receive at a client, a first multicast message of a query from another client, wherein the query identifies a device; locate a resource record associated with the device in a local cache at the client; wait at the client for a multicast message of a response from the device, wherein the response from the device is associated with the query; determine that a predetermined number of multicast messages of the query from the another client have been received without receiving a corresponding multicast message of the response from the device; in response to the determine, invalidate the resource record associated with the device; retrieve a parent record of the invalidated resource record at the client, wherein the parent record refers to the invalidated resource record; and issue a second multicast message of a parent-record query based on at least the parent record; and wait for a pre-determined amount of time for a multicast message of a response associated with the parent-record query. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification