Mirroring network data to establish virtual storage area network
First Claim
1. In a network that includes a first server having a first mass storage device and a second server having a second mass storage device, a method of mirroring data stored on the first mass storage device to the second mass storage device so as to establish a virtual storage area network, the method comprising the acts of:
- receiving a write request at the first server;
executing the write request at the first server so as to write data to the first mass storage device;
using a mirror engine of the first server, transmitting a copy of the write request to the second server; and
executing the copy of the write request at the second server so as to write the data to the second mass storage device, thereby mirroring the data at the second mass storage device, wherein the data, from the standpoint of the first server and the second server, virtually appears to have been stored in a shared storage node of a storage area network.
10 Assignments
0 Petitions
Accused Products
Abstract
Mirroring data to provide a virtual storage area network using policing protocols and mirror engines without a physical shared storage node. The mirror engines are found at each server computer in the network in order to mirror the data between mass storage devices of the servers as the servers receive and execute write operations, which results in each mass storage device containing the same stored data. The policing protocols prevent data corruption by not allowing more than one server at a time write to a file of data. If one server experiences failure and is incapable of providing access to network data, the other server or servers can service all read requests, since all network data is accessible by all servers. Unlike conventional storage area networks, there is no physical shared storage node and, accordingly, the costs of obtaining and operating the virtual storage area network are relatively small.
127 Citations
27 Claims
-
1. In a network that includes a first server having a first mass storage device and a second server having a second mass storage device, a method of mirroring data stored on the first mass storage device to the second mass storage device so as to establish a virtual storage area network, the method comprising the acts of:
-
receiving a write request at the first server;
executing the write request at the first server so as to write data to the first mass storage device;
using a mirror engine of the first server, transmitting a copy of the write request to the second server; and
executing the copy of the write request at the second server so as to write the data to the second mass storage device, thereby mirroring the data at the second mass storage device, wherein the data, from the standpoint of the first server and the second server, virtually appears to have been stored in a shared storage node of a storage area network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a network that includes a first server having a first mass storage device and a second server having a second mass storage device, a method of mirroring data stored on the first mass storage device to the second mass storage device so that the data is accessible to the first server and the second server through a virtual storage area network, the method comprising the acts of
establishing a virtual storage area network that, from the standpoint of the first server and the second server, appears to include a virtual shared storage node, wherein the virtual shared storage node physically includes the first mass storage device, the second mass storage device, means for mirroring data between the first mass storage device and the second mass storage device, and means for communicating between the first server and the second server; -
receiving a write request that specifies that data is to be written to the virtual shared storage node;
writing the data to the first mass storage device, the data at the first mass storage device being accessible by the first server; and
transmitting a copy of the write request to the second server so that the data can be mirrored to the second mass storage device, the data at the second mass storage device being accessible by the second server. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. In a first server having a first mass storage device, the first server being included in a network that also includes a second server having a second mass storage device, a method of mirroring data stored on the first mass storage device to the second mass storage device so as to establish a virtual storage area network, the method comprising the acts of:
-
receiving a write request at the first server;
using a policing protocol module associated with the first server, determining that the second server does not currently have write access priority to a portion of the first mass storage device or a portion of the second mass storage device that could otherwise result in data corruption;
executing the write request at the first server so as to write data to said portion first mass storage device;
using a mirror engine of the first server, transmitting a copy of the write request to the second server so that the data can be written to the second mass storage device, thereby enabling both the first server and the second server to access the data, wherein the data, from the standpoint of the first server and the second server, appears to have been stored in a shared storage node of a storage area network. - View Dependent Claims (17, 18, 19)
-
-
20. A virtual storage area network that enables a first server and a second server to access the same data from physically different mass storage devices, the virtual shared access network comprising:
-
a first server that is capable of receiving write requests and read requests from network clients, the first server having;
a first mass storage device; and
a first mirror engine;
a second server that is capable of receiving write requests and read requests from network clients, the second server having;
a second mass storage device; and
a second mirror engine; and
a means for communicating between the first mirror engine and the second mirror engine that enables the first mirror engine to mirror to the second mass storage device first data that is also to be written to the first mass storage device and that further enables the second mirror engine to mirror to the first mass storage device second data that is also to be written to the second mass storage device, thereby enabling the first server and the second server to access the same data from physically different mass storage devices. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
Specification