Systems and methods for application-state, distributed replication table cache poisoning

US9621668B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9621668-B2
Application numberUS-201414245299-A
CountryUS
Kind codeB2
Filing dateApr 4, 2014
Priority dateApr 6, 2013
Publication dateApr 11, 2017
Grant dateApr 11, 2017

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.

The present application is directed towards invalidating (also referred to as poisoning) ASDR table entries that are determined to be inaccurate because of changes to a multi-node system. For example, when a node leaves or enters a multi-node system, the ownership of the entries in the ASDR table can change thus invalidating cached and replica entries. More specifically, the system and methods disclosed herein include searching an ASDR table for cached entries responsive to the system determining the multi-node system has changed. After finding a cached entry, the system may determine if the entry should be poisoned. The decision to poison the entry may be responsive to the creation time of the entry, the time when the change to the multi-node system occurred, and in the case of a replica, the owner of the replica's position in a replication chain relative to source of the replica.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for invalidating a cached entry in an application-state, distributed replication table to track resources of applications across a cluster of nodes, the method comprising: maintaining, across each node in a cluster of nodes an application-state, distributed replication table comprising entries to track resources of applications across the cluster of nodes, each of the nodes in the cluster of nodes owning one or more partitions of the application-state, distributed replication table; determining, by a first node in the cluster of nodes, that a second node exited the cluster; identifying, by the first node in the cluster of nodes, a plurality of entries assigned to the second node and stored in cache by the first node; determining, by the first node in the cluster of nodes, that a third node in the cluster of nodes is within a replication chain of the second node and contains a valid copy of the plurality of entries assigned to the second node, wherein the replication chain identifies a plurality of nodes in the cluster of nodes to which the second node in the cluster of nodes replicated the entries in the one or more partitions owned by the second node; marking, by the first node in the cluster of nodes, the identified entries as belonging to the third node in the cluster of nodes; and obtaining, by the first node in the cluster of nodes, each of the marked entries from the third node. 2. The method of claim 1 , wherein marking further comprises setting the identified entries to an unusable value. 3. The method of claim 1 , further comprising purging the identified entries from the application-state, distributed replication table. 4. The method of claim 1 , further comprising determining, by the first node in the cluster of nodes, a last time the identified entries were accessed or updated. 5. The method of claim 4 , wherein obtaining each of the marked entries from the third node is responsive to the last time the identified entries were accessed or updated being greater than a predetermined amount of time. 6. The method of claim 1 , further comprising marking, by the first node, each of the identified plurality of entries as a replica copy. 7. The method of claim 1 , wherein obtaining each of the marked entries from the third node is responsive to receiving a request for one of the identified plurality of entries assigned to the second node and stored in cache by the first node. 8. The method of claim 1 , wherein the third node is a new owner node of the identified plurality of entries previously assigned to the second node. 9. The method of claim 1 , wherein the third node stores a replica of each of the identified plurality of entries previously assigned to the second node. 10. A system for invalidating a cached entry in an application-state, distributed replication table to track resources of applications across a cluster of nodes, the system comprising: a cluster of nodes, each of the cluster of nodes configured to maintain an application-state, distributed replication table comprising entries to track resources of applications across the cluster of nodes, each of the nodes in the cluster of nodes owning one or more partitions of the application-state, distributed replication table, wherein a first node is configured to: determine that a second node exited the cluster; identify a plurality of entries assigned to the second node and stored in cache by the first node; determine that a third node in the cluster of nodes is within a replication chain of the second node and contains a valid copy of the plurality of entries assigned to the second node, wherein the replication chain identifies a plurality of nodes in the cluster of nodes to which the second node in the cluster of nodes replicated the entries in the one or more partitions owned by the second node; mark the identified entries as belonging to third node in the cluster of nodes; and obtain each of the marked entries from the third node. 11. The system of claim 10 , wherein the first node is further configured to mark the identified entries to an unusable value. 12. The system of claim 10 , wherein the first node is further configured to purge the identified entries from the application-state, distributed replication table. 13. The system of claim 10 , wherein the first node is further configured to determine a last time the identified entries were accessed or updated. 14. The system of claim 13 , wherein the first node is further configured to obtain each of the marked entries from the third node responsive to the last time the identified entries were accessed or updated being greater than a predetermined amount of time. 15. The system of claim 10 , wherein the first node is further configured to mark each of the identified plurality of entries as a replica copy. 16. The system of claim 10 , wherein the first node is further configured to obtain each of the marked entries from the third node responsive to receiving a request for one of the identified plurality of entries assigned to the second node and stored in cache by the first node. 17. The system of claim 10 , wherein the third node is a new owner node of the identified plurality of entries previously assigned to the second node. 18. The system of claim 10 , wherein the third node stores a replica of each of the identified plurality of entries previously assigned to the second node.

Assignees

Inventors

Classifications

  • Delays · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Electricity · mapped topic

  • Physics · mapped topic

  • Electricity · mapped topic

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 US9621668B2 cover?
The present application is directed towards invalidating (also referred to as poisoning) ASDR table entries that are determined to be inaccurate because of changes to a multi-node system. For example, when a node leaves or enters a multi-node system, the ownership of the entries in the ASDR table can change thus invalidating cached and replica entries. More specifically, the system and methods …
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/1097. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 11 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).