Apparatus and method for distribution processing of data, and storage server
US-2015207880-A1 · Jul 23, 2015 · US
US11272005B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-11272005-B1 |
| Application number | US-201816141867-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 25, 2018 |
| Priority date | Sep 25, 2018 |
| Publication date | Mar 8, 2022 |
| Grant date | Mar 8, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques are described for using in-band communication channels to exchange state information between components of a distributed storage environment, including between client computing devices and storage servers hosting network-connected block storage volumes. The exchange of the state information can be used, for example, to inform client computing devices of relevant events involving one or more storage volumes attached to compute instances (for example, virtual machines (VMs)) running on the client computing devices, involving one or more failover servers storing backup copies of one or more storage volumes, or involving any other relevant system components. The exchange of such state information in a distributed storage environment enables client computing devices, storage servers, and other system components to act efficiently in response to a variety of system events thereby mitigating input/output (I/O) latency increases and other issues that can arise when system components lack access to such information.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method performed by a storage server in a distributed storage environment, the method comprising: establishing a network connection with a client computing device, the network connection used by a client compute instance running on the client computing device to perform input/output (I/O) operations on a block storage volume hosted by the storage server; receiving, from the client computing device, an event notification request message; determining that the storage server is to perform an update causing the storage server to become temporarily unavailable to the client compute instance; and sending, via the network connection, an event notification message to the client computing device indicating that the storage server is to perform a software update causing the storage server to become temporarily unavailable to the client computing instance and instructing the client computing device to failover to a failover storage server, wherein the event notification message is sent as a response to the event notification request message, and wherein the failover storage server hosts a copy of the block storage volume. 2. The computer-implemented method of claim 1 , wherein the failover storage server is a first failover storage server hosting a first copy of the block storage volume, wherein the event notification message is a first event notification message, wherein establishing the network connection with the client computing device includes sending an identifier of the first failover storage server, and wherein the method further comprises: sending a second event notification message indicating that the first failover storage server is unavailable; and sending a third event notification message including an identifier of a second failover storage server hosting a second copy of the block storage volume. 3. The computer-implemented method of claim 1 , further comprising: determining that the storage server is to become temporarily unavailable to a plurality of client compute instances including the client compute instance, wherein each client compute instance of the plurality of client compute instances has an attached block storage volume hosted by the storage server; and sending the event notification message to each client compute instance of the plurality of client compute instances. 4. A computer-implemented method comprising: establishing, by a storage server, a network connection with a client computing device, wherein the network connection is used by the client computing device to perform input/output (I/O) operations on a storage volume hosted by the storage server; receiving, from the client computing device, an event notification request message; obtaining, by the storage server and based on communications with a failover server hosting a copy of the storage volume, information indicating an event related to the storage volume, wherein the event is associated with an event type from a plurality of event types supported by a protocol used by the client computing device and the storage server; and sending, by the storage server hosting the storage volume and via the network connection between the storage server and the client computing device, an event notification message indicating the event to the client computing device, wherein the event notification message is sent as a response to the event notification request message. 5. The computer-implemented method of claim 4 , wherein the event notification message is a first event notification message, and wherein the method further comprises: determining that the storage server is to perform a software update and become temporarily unavailable to the client computing device; and sending, via the network connection, a second event notification message indicating that the storage server is to perform the software update and become temporarily unavailable, wherein the second event notification message instructs the client computing device to failover to a failover storage server hosting a copy of the storage volume. 6. The computer-implemented method of claim 4 , further comprising: determining that the event is related to a plurality of storage volumes hosted by the storage server, wherein each of the plurality of storage volumes is associated with one of a plurality of client compute instances hosted by one or more client computing devices including the client computing device; and sending a respective event notification message to each client compute instance of the plurality of client compute instances. 7. The computer-implemented method of claim 4 , wherein the event corresponds to a failover storage server becoming unavailable or being added, and wherein the event notification message includes an identifier of the failover storage server. 8. The computer-implemented method of claim 4 , wherein the event notification message indicates that the storage server supports the protocol. 9. The computer-implemented method of claim 4 , further comprising: receiving, from the client computing device, a plurality of event notification request messages including the event notification request message; storing at least one of the plurality of event notification request messages in a queue; and sending the event notification message as a response to the event notification request message of the plurality of event notification request messages in the queue. 10. The computer-implemented method of claim 4 , further comprising: obtaining information indicating a plurality of events related to the storage volume; merging the plurality of events related to the storage volume into a single event; and sending the event notification message to the client computing device based on the single event. 11. The computer-implemented method of claim 4 , wherein the storage server is managed by a storage service of a service provider network, and wherein the client computing device is managed by a hardware virtualization service of the service provider network. 12. The computer-implemented method of claim 4 , wherein the event includes a determination that the failover server has more of the storage volume stored locally than the storage server, and wherein the event notification message instructs the client computing device to failover to the failover server. 13. The computer-implemented method of claim 4 , wherein the event includes a determination that the storage server is exhibiting degraded performance, and wherein the event notification message instructs the client computing device to failover to the failover server. 14. A system comprising: a client computing device including instructions that upon execution cause the client computing device to: establish a network connection with a storage server, wherein the network connection is used by the client computing device to perform input/output (I/O) operations relative to a storage volume hosted by the storage server, send, via the network connection, an event notification request message to the storage server, and receive, via the network connection, an event notification message from the storage server instructing the client computing device to failover to a failover storage server hosting a copy of the storage volume; and the storage server implemented by a second one or more electronic devices, the storage server including instructions that upon execution cause the storage server to: receive, from the client computing device, the event notification request message, obtain, based on communications with a failover server hosting a copy of the storage volume, information indica
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
in relation to availability · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70) · 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
Related publications grouped by family.
Answers are generated from the same data shown on this page.