Methods for transitioning control between two controllers of a storage system

US9348682B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9348682-B2
Application numberUS-201414470885-A
CountryUS
Kind codeB2
Filing dateAug 27, 2014
Priority dateAug 30, 2013
Publication dateMay 24, 2016
Grant dateMay 24, 2016

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.

Described herein are techniques for transitioning control between a first and second controller of a storage system. In such transition, the first controller transmits a message to a memory element shared by the first and second controllers, the message capable of notifying the second controller of an imminent failure of the first controller. The second controller receives the message from the shared memory element, the message notifying the second controller of an imminent failure of the first controller. Subsequent to transmitting the message to the shared memory element, the first controller becomes unavailable to facilitate access to the storage devices of the storage system. Subsequent to receiving the message from the shared memory element, the second controller becomes available to facilitate access to the storage devices of the storage system.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for a storage system, the storage system including a first controller, a second controller and a plurality of storage devices, each of the first and second controllers communicatively coupled to each one of the storage devices, the method comprising: by the first controller, (i) starting a first timer that expires after a first time period; (ii) subsequent to starting the first timer, transmitting a first message from the first controller to a memory element shared by the first and second controllers; and (iii) subsequent to transmitting the first message to the shared memory element and before the first timer expires, entering a failure state in which the first controller has failed and is unavailable to facilitate access to the storage devices, wherein the transmission of the first message is in anticipation of the imminent failure of the first controller and is not reactive to a detection of the failure of the first controller; and by the second controller, (i) receiving by the second controller the first message from the shared memory element, the first message notifying the second controller of the imminent failure of the first controller; (ii) subsequent to receiving the first message, starting a second timer that expires after a second time period; and (iii) upon the second timer expiring, entering an active state in which the second controller is active and is available to facilitate access to the storage devices. 2. The method of claim 1 , wherein a duration of the first time period is adjustable by the first controller. 3. The method of claim 1 , wherein the first message further notifies the second controller of a duration of the first time period. 4. The method of claim 1 , wherein a duration of the second time period is equal to or greater than a duration of the first time period. 5. The method of claim 1 , wherein after the second time period has elapsed following the reception of the first message, further transmitting, by the second controller, a second message to the shared memory element, the second message indicating that the second controller will start facilitating access to the storage devices. 6. The method of claim 1 , wherein the second controller enters the active state without confirming whether the first controller has failed. 7. The method of claim 6 , wherein the second controller does not confirm whether the first controller has failed based on a heartbeat signal of the first controller. 8. A storage system including a first controller, a second controller and a plurality of storage devices, each of the first and second controllers communicatively coupled to each one of the storage devices, the first controller configured to: (i) start a first timer that expires after a first time period; (ii) subsequent to starting the first timer, transmit a first message from the first controller to a memory element shared by the first and second controllers; and (iii) subsequent to transmitting the first message to the shared memory element and before the first timer expires, enter a failure state in which the first controller has failed and is unavailable to facilitate access to the storage devices, wherein the transmission of the first message is in anticipation of the imminent failure of the first controller and is not reactive to a detection of the failure of the first controller; and the second controller configured to: (i) receive the first message from the shared memory element, the first message notifying the second controller of the imminent failure of the first controller; (ii) subsequent to receiving the first message, start a second timer that expires after a second time period; and (iii) upon the second timer expiring, enter an active state in which the second controller is active and is available to facilitate access to the storage devices. 9. The storage system of claim 8 , wherein a duration of the second time period is equal to or greater than a duration of the first time period. 10. The storage system of claim 8 , wherein the second controller enters the active state without confirming whether the first controller has failed. 11. The storage system of claim 10 , wherein the second controller does not confirm whether the first controller has failed based on a heartbeat signal of the first controller. 12. The storage system of claim 8 , wherein a duration of the first time period is adjustable by the first controller. 13. The storage system of claim 8 , wherein the first message further notifies the second controller of a duration of the first time period. 14. The storage system of claim 8 , wherein the second controller is further configured to, after the second time period has elapsed following the reception of the first message, transmit a second message to the shared memory element, the second message indicating that the second controller will start facilitating access to the storage devices. 15. A non-transitory machine-readable storage medium for a storage system having a first controller, a second controller and a plurality of storage devices, each of the first and second controllers communicatively coupled to each one of the storage devices, the non-transitory machine-readable storage medium comprising: software instructions that, when executed by the first controller, cause the first controller to: start a first timer that expires after a first time period; subsequent to starting the first timer, transmit a first message from the first controller to a memory element shared by the first and second controllers; and subsequent to transmitting the first message to the shared memory element and before the first timer expires, enter a failure state in which the first controller has failed and is unavailable to facilitate access to the storage devices, wherein the transmission of the first message is in anticipation of the imminent failure of the first controller and is not reactive to a detection of the failure of the first controller; and software instructions that, when executed by the second controller, cause the second controller to: (i) receive the first message from the shared memory element, the first message notifying the second controller of the imminent failure of the first controller; (ii) subsequent to receiving the first message, start a second timer that expires after a second time period; and (iii) upon the second timer expiring, enter an active state in which the second controller is active and is available to facilitate access to the storage devices. 16. The non-transitory machine-readable storage medium of claim 15 , wherein a duration of the first time period is adjustable by the first controller. 17. The non-transitory machine-readable storage medium of claim 15 , wherein the second controller enters the active state without confirming whether the first controller has failed. 18. The non-transitory machine-readable storage medium of claim 15 , wherein a duration of the second time period is equal to or greater than a duration of the first time period. 19. The non-transitory machine-readable storage medium of claim 15 , wherein the first message further notifies the second controller of a duration of the first time period. 20. The non-transitory machine-readable storage medium of claim 15 , further comprising software instructions that, when executed by the second controller, cause the second controller to, after the second time period has elapsed following the reception of the first message, tran

Assignees

Inventors

Classifications

  • Techniques of failing over between control units · CPC title

  • by exceeding a time limit, i.e. time-out, e.g. watchdogs · CPC title

  • Threshold · CPC title

  • in a storage system, e.g. in a DASD or network based storage system (drivers for digital recording or reproducing units G06F3/06; circuits for error detection or correction within digital recording or reproducing units G11B20/18; 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], H04L67/1097) · CPC title

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 US9348682B2 cover?
Described herein are techniques for transitioning control between a first and second controller of a storage system. In such transition, the first controller transmits a message to a memory element shared by the first and second controllers, the message capable of notifying the second controller of an imminent failure of the first controller. The second controller receives the message from the …
Who is the assignee on this patent?
Nimble Storage Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/2092. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 24 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).