Seamless takeover of a stateful protocol session in a virtual machine environment

US9600315B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9600315-B2
Application numberUS-91053510-A
CountryUS
Kind codeB2
Filing dateOct 22, 2010
Priority dateOct 22, 2010
Publication dateMar 21, 2017
Grant dateMar 21, 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 disclosed technique uses virtual machines in solving a problem of persistent state for storage protocols. The technique provides for seamless, persistent, storage protocol session state management on a server, for higher availability. A first virtual server is operated in an active role in a host system to serve a client, by using a stateful protocol between the first virtual server and the client. A second, substantially identical virtual server is maintained in a passive role. In response to a predetermined event, the second virtual server takes over for the first virtual server, while preserving state for a pending client request sent to the first virtual server in the stateful protocol. The method can further include causing the second virtual server to respond to the request before a timeout which is specific to the stateful protocol can occur.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: operating a first virtual server in an active role in a host processing system to serve a client, by using a stateful protocol between the first virtual server and the client; associating a second virtual server in a passive role with the first virtual server; in response to a predetermined event, causing the second virtual server to take over the active role from the first virtual server, while preserving state for a pending client request sent to the first virtual server in the stateful protocol; and sharing state between the first and second virtual servers prior to the predetermined event, by sharing a designated region of memory between the first and second virtual servers, wherein prior to the predetermined event, the first virtual server has read-write permission to access the region of memory and the second virtual server has read-only permission to access the region of memory. 2. A method as recited in claim 1 , further comprising: causing the second virtual server, acting in the active role, to respond to the pending client request so that a timeout which is specific to said stateful protocol does not occur. 3. A method as recited in claim 1 , further comprising: maintaining state for client requests, conforming to the stateful protocol, in the designated region of the memory, prior to the predetermined event. 4. A method as recited in claim 3 , wherein causing the second virtual server to take over the active role from the first virtual server, while preserving state for a pending client request sent to the first virtual server in the stateful protocol, comprises: changing permission of the second virtual server to access the region of memory from read-only to read-write. 5. A method as recited in claim 4 , wherein causing the second virtual server to take over the active role from the first virtual server, while preserving state for a pending client request sent to the first virtual server using the stateful protocol, further comprises: assigning to the second virtual server a network address associated with the first virtual server. 6. A method as recited in claim 1 , wherein causing the second virtual server to take over the active role from the first virtual server comprises: updating a host memory page table of the host processing system; and updating a guest memory page table of the second virtual server. 7. A method as recited in claim 1 , wherein the first and second virtual servers are virtual network storage servers. 8. A method comprising: operating a first virtual machine in a host processing system as an active virtual storage server; maintaining per-client session state for pending, received client requests, which conform to a stateful network storage protocol, in a designated region of a memory; initializing a second virtual machine in the host processing system to be a passive virtual storage server partnered with the first virtual machine; sharing said state for pending, received client requests between the first and second virtual machines, by sharing the designated region of the memory between the first and second virtual machines; in response to a failure event associated with the first virtual machine, causing the second virtual machine to take over for the first virtual machine as active virtual storage server, without losing state for a pending client request sent to the first virtual machine in the stateful network storage protocol, including modifying a permission of the second virtual machine to access the designated region of the memory; and causing the second virtual machine, acting as active virtual storage server, to respond to the pending client request before a response timeout which is specific to the stateful protocol can occur. 9. A method as recited in claim 8 , wherein prior to the failure event the first virtual server has read-write permission to access the region of memory and the second virtual server has read-only permission to access the region of memory; and wherein modifying a permission of the second virtual machine to access the shared designated region of memory comprises changing permission of the second virtual machine to access the designated region of memory from read-only to read-write. 10. A method as recited in claim 9 , wherein causing the second virtual server to take over the active role from the first virtual server, while preserving state for a pending client request sent to the first virtual server in the stateful protocol, comprises: updating a host memory page table of the host processing system; and updating a guest memory page table of the second virtual server. 11. A method as recited in claim 10 , wherein causing the second virtual machine to take over for the first virtual machine as active virtual storage server further comprises: assigning to the second virtual storage server a network address associated with the first virtual storage server. 12. A system comprising: a physical host processing system; a first virtual machine which operates in the physical host processing system as an active server to serve a client over a network, by using a stateful protocol between the first virtual machine and the client; a second virtual machine configured as a passive partner of the first virtual machine, wherein the second virtual machine is pre-initialized and maintained in a state that passively mirrors a state of the active server, the second virtual machine configured to respond to a predetermined event by taking over as the active server for the first virtual machine while preserving state for a pending client request sent to the first virtual machine in the stateful protocol; and a memory that includes a designated region shared by the first virtual machine and the second virtual machine, wherein prior to the predetermined event, the first virtual machine has read-write permission to access the region of memory and the second virtual machine has read-only permission to access the region of memory. 13. A system as recited in claim 12 , wherein the first and second virtual machines operate as network storage servers. 14. A system as recited in claim 12 , wherein the second virtual machine, after taking over as the active server, responds to the pending client request before a response timeout which is specific to the stateful protocol can occur. 15. A system as recited in claim 12 , wherein the active server maintains state for client requests in the designated region of the memory. 16. A system as recited in claim 12 , further comprising: a hypervisor through which the first virtual machine and the second virtual machine access the memory. 17. A system as recited in claim 16 , wherein the system is configured to change permission of the second virtual machine to access the region of memory from read-only to read-write as part of a takeover by the second virtual machine for the first virtual machine. 18. A system as recited in claim 17 , wherein the system is further configured to update a host memory page table of the physical host processing system and a guest memory page table of the second virtual machine as part of the takeover by the second virtual machine for the first virtual machine. 19. A system as recited in claim 18 , wherein the system is further configured to assign to the second virtual machine a network address associated with the first virtual machine as part of the takeover by the second virtual machine for the first virtual machine. 20. A storage serv

Assignees

Inventors

Classifications

  • where the redundant components share a common memory address space · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • involving virtual machines · CPC title

  • Restarting or rejuvenating · CPC title

  • Persistence of sessions during load balancing · 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 US9600315B2 cover?
The disclosed technique uses virtual machines in solving a problem of persistent state for storage protocols. The technique provides for seamless, persistent, storage protocol session state management on a server, for higher availability. A first virtual server is operated in an active role in a host system to serve a client, by using a stateful protocol between the first virtual server and the…
Who is the assignee on this patent?
Srinivasan Kiran, Bisson Timothy C, Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 21 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).