System, machine, and method for maintenance of mirrored datasets through surrogate writes during storage-area network transients
First Claim
Patent Images
1. A host bus adapter for interconnecting a computer system to a storage area network comprising:
- hardware for transmission of frames;
hardware for reception of frames;
memory for storage of frames;
a processor for processing frames, the processor coupled to the hardware for transmission of frames, the hardware for reception of frames, and the memory for storage of frames;
wherein the processor is capable of inspecting frames for encapsulated write requests and, if encapsulated write request frames are found, de-encapsulating the write request and forwarding the write request through the hardware for transmission of frames to a target node of the write request;
wherein the host bus adapter is capable of maintaining a mirrored dataset on at least two target nodes; and
wherein the host bus adapter is capable of determining that it has no direct path to one of the at least two target nodes, and, when no direct path exists, is capable of requesting that another node perform a surrogate write to the one of the at least two target nodes.
4 Assignments
0 Petitions
Accused Products
Abstract
A host bus adapter for interconnecting a computer system to a storage area network has an embedded processor for processing frames. When frames are received by the processor, it inspects frames for encapsulated write requests and, if encapsulated write request frames are found, de-encapsulates the write request and forwards the write request to a target node of the write request.
-
Citations
15 Claims
-
1. A host bus adapter for interconnecting a computer system to a storage area network comprising:
-
hardware for transmission of frames;
hardware for reception of frames;
memory for storage of frames;
a processor for processing frames, the processor coupled to the hardware for transmission of frames, the hardware for reception of frames, and the memory for storage of frames;
wherein the processor is capable of inspecting frames for encapsulated write requests and, if encapsulated write request frames are found, de-encapsulating the write request and forwarding the write request through the hardware for transmission of frames to a target node of the write request;
wherein the host bus adapter is capable of maintaining a mirrored dataset on at least two target nodes; and
wherein the host bus adapter is capable of determining that it has no direct path to one of the at least two target nodes, and, when no direct path exists, is capable of requesting that another node perform a surrogate write to the one of the at least two target nodes. - View Dependent Claims (2, 3, 4)
-
-
5. A host bus adapter for interconnecting a computer system to a storage area network comprising
hardware for transmission of frames; -
hardware for reception of frames;
memory for storage of frames; and
a processor for processing frames, the processor coupled to the hardware for transmission of frames, the hardware for reception of frames, and the memory for storage of frames;
wherein the processor is capable of inspecting frames for encapsulated write requests and, if encapsulated write request frames are found, de-encapsulating the write request and forwarding the write request through the hardware for transmission of frames to a target node of the write request;
wherein the host bus adapter is capable of maintaining a mirrored dataset on at least two target nodes including the target node of the write request; and
wherein the host bus adapter is capable of scanning nodes to determine a node capable of performing a surrogate write to the target node of the write request.
-
-
6. A node for connection to a storage area network comprising:
-
hardware for transmission of frames;
hardware for reception of frames;
memory;
at least one processor for processing frames, the processor coupled to the hardware for transmission of frames, the hardware for reception of frames, and the memory for storage of frames;
wherein the processor is capable of inspecting frames for encapsulated write requests and, it encapsulated write request frames are found, de-encapsulating the write request and forwarding the write request through the hardware for transmission of frames to a target node of the write request;
wherein the node is capable of maintaining a mirrored dataset on at least two target nodes; and
wherein the node is capable of determining that it has no direct path to one of the at least two target nodes, and, when no direct path exists, is capable of requesting that another node perform a surrogate write to the one of the at least two target nodes. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer network comprising:
-
a first node;
a second node;
a first target node;
a network interconnect providing communication between the first node and the second node, and providing communication between the second node and the first target node; and
a second target node and the network interconnect further provides communication between the second target node and the first node; and
wherein the first node is capable of maintaining a mirrored data set having a copy on the first target node and the second target node;
wherein the first node is operable to determine it has no direct path to one of the first and second target nodes, and when no direct path is determined, is operable to request the second node to perform a surrogate write to the one of the first and second target nodes;
wherein the second node is capable of inspecting incoming frames for encapsulated write requests and, if encapsulated write request frames are found, de-encapsulating a write request from the encapsulated write request frames and forwarding the write request to the first target node; and
wherein the second node further is capable of inspecting frames received from the first target node for responses to previously forwarded encapsulated write requests and, when responses to previously forwarded encapsulated write requests are found, forwarding the responses to the first node. - View Dependent Claims (12, 13)
-
-
14. A method of performing writes by a first node of a storage area network to a mirrored dataset, the mirrored dataset comprising a first copy on a first storage node of the storage area network and a second copy on a second storage node of the storage area network, the storage area network having a surrogate-capable node, the method comprising the steps of:
-
checking a status of a first path from the first node to the first storage node and of a second path from the first node to the second storage node;
if the first path has good status and the second path has bad status, then;
performing a write to the first copy of the mirrored dataset over the first path;
polling the surrogate-capable node to determine whether the surrogate-capable node has a path having good status to the second storage node;
if the surrogate-capable node has a path having good status to the second storage node, encapsulating a write request to the second copy and transmitting that encapsulated write request to the surrogate-capable node; and
de-encapsulating the encapsulated write request to the second copy and forwarding it from the surrogate-capable node to the second storage node. - View Dependent Claims (15)
transmitting a response to the write request to the second copy from the second storage node to the surrogate-capable node, and of forwarding the response to the write request from the surrogate-capable node to the first node.
-
Specification