Switch-based acceleration of computer data storage employing aggregations of disk arrays
First Claim
1. A storage system for storing data for at least one host computer, said system comprising:
- a plurality of disk drives for storing and supplying said data;
a switch having a plurality of input and output ports, said switch being connected between said plurality of disk drives and said at least one host computer for at least connecting one of said input ports on which said data was received to one of said output ports;
an aggregator connected to said switch for at least managing operation of said plurality of disk drives; and
, operation coordinating logic operatively coupled to coordinate operation of said plurality of disk drives, said switch, and said aggregator in a manor to control flow of certain of said data between said at least one host computer and said plurality of disk drives to be through said switch and not through said aggregator and in a manner which does not change the operation of said at least one said host computers, the operation coordinating logic, when conveying data between a host computer and a disk drive, being configured to;
selectively (i) direct data exchanged between the host computer and the disk drive through the aggregator to improve security for the data, and (ii) divert the data exchanged between the host computer and the disk drive so that the data does not proceed through the aggregator to reduce latency.
9 Assignments
0 Petitions
Accused Products
Abstract
There is disclosed apparatus and methodology for enhancing computer system data transfer when writing to network attached storage systems employing FC-2 fibrechannel protocol by dynamically reconfiguring a fibrechannel switch in response to map/unmap command controls issued by a disk drive aggregator. The reconfiguration involves fabrication of a dynamic map table having sets of fibrechannel FC-2 header fields and their corresponding new or proxy destination IDs (which correspond to the switch'"'"'s output ports), and fabrication of both an input frame header buffer for temporary storage purposes and a frame header field selector (which can be a frame header mask) containing only relevant information. The input frame header is temporarily stored in the buffer and the field selector is used to obtain a “distilled” input header which is compared with the dynamic map table of stored header fields to obtain a match. If one of the sets of header fields matches the distilled input header, its corresponding proxy destination or source ID is substituted into the corresponding FC-2 input frame header'"'"'s destination ID field, whereby write command data transfers are accomplished between host computer and a particular disk drive directly, avoiding the aggregator and latency otherwise introduced by the aggregator. Similar disclosure is provided for read command data.
78 Citations
25 Claims
-
1. A storage system for storing data for at least one host computer, said system comprising:
-
a plurality of disk drives for storing and supplying said data;
a switch having a plurality of input and output ports, said switch being connected between said plurality of disk drives and said at least one host computer for at least connecting one of said input ports on which said data was received to one of said output ports;
an aggregator connected to said switch for at least managing operation of said plurality of disk drives; and
,operation coordinating logic operatively coupled to coordinate operation of said plurality of disk drives, said switch, and said aggregator in a manor to control flow of certain of said data between said at least one host computer and said plurality of disk drives to be through said switch and not through said aggregator and in a manner which does not change the operation of said at least one said host computers, the operation coordinating logic, when conveying data between a host computer and a disk drive, being configured to;
selectively (i) direct data exchanged between the host computer and the disk drive through the aggregator to improve security for the data, and (ii) divert the data exchanged between the host computer and the disk drive so that the data does not proceed through the aggregator to reduce latency. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
receive a write command from the host computer;
send a proxy command to the disk drive in response to the write command, the proxy command directing the disk drive to (i) bundle a Transfer Ready command in a communication that identifies the aggregator as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer so that the communication does not proceed through the aggregator.
-
-
13. The storage system of claim 1 wherein the operation coordinating logic, when diverting the data exchanged between the host computer and the disk drive so that the data does not proceed through the aggregator to reduce latency, is configured to:
-
receive a read command from the host computer;
send a proxy command to the disk drive in response to the read command, the proxy command directing the disk drive to (i) bundle the data in a communication that identifies the aggregator as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer through the switch in a manner that diverts the communication so that the communication does not proceed through the aggregator.
-
-
14. A computer data storage system wherein said data is grouped in frames, comprising:
-
a plurality of disk drives for storing and retrieving said data;
an aggregator for managing operation of said plurality of disk drives;
each of said frames including a header containing binary fields designating parameters including at least destination ID, said header being associated with that portion of said data contained within said each of said frames; and
,a switch connected between a host computer, said disk drives, and said aggregator for both controllably selecting certain ones of said frames and flowing said portion of said data grouped in said certain ones and having said aggregator as said destination ID directly between said host computer and said plurality of disk drives, whereby data transfer through said aggregator is avoided for said certain ones of said frames, the aggregator being associated with circuitry configured to;
selectively (i) direct data exchanged between the host computer and the disk drive through the aggregator to improve security for the data, and (ii) divert the data exchanged between the host computer and the disk drive so that the data does not Proceed through the aggregator to reduce latency. - View Dependent Claims (15, 16, 17, 18, 19)
receive a write command from the host computer;
send a proxy command to the disk drive in response to the write command, the proxy command directing the disk drive to (i) bundle a Transfer Ready command in a communication that identifies the aggregator as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer so that the communication does not proceed through the aggregator.
-
-
19. The computer data storage system of claim 14 wherein the circuitry associated with the aggregator, when diverting the data exchanged between the host computer and the disk drive so that the data does not proceed through the aggregator to reduce latency, is configured to:
-
receive a read command from the host computer;
send a proxy command to the disk drive in response to the read command, the proxy command directing the disk drive to (i) bundle the data in a communication that identifies the aggregator as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer through the switch in a manner that diverts the communication so that the communication does not proceed through the aggregator.
-
-
20. A network-attached storage system, comprising:
-
an aggregator device;
a set of storage devices; and
a switch coupled to a host computer, the aggregator and the set of storage devices;
the aggregator device including aggregator circuitry configured to organize the set of storage devices into an aggregation and specialized logic configured to decide whether data exchanged between the host computer and the set of storage devices flows through the aggregator device;
the specialized logic, in response deciding whether data exchanged between the host computer and the set of storage devices flows through the aggregator device, being configured to selectively one of;
(i) direct the data exchanged between the host computer and the set of storage devices through the aggregator device, and (ii) divert the data exchanged between the host computer and the set of storage devices so that the data does not proceed through the aggregator device.- View Dependent Claims (21, 22, 23, 24, 25)
receive a write command from the host computer;
send a proxy command to the set of storage devices in response to the write command, the proxy command directing the set of storage devices to (i) bundle a Transfer Ready command in a communication that identifies the aggregator device as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer so that the communication does not proceed through the aggregator device.
-
-
22. The network-attached storage system of claim 21 wherein the set of storage devices is configured to:
receive the proxy command from the specialized logic, bundle the Transfer Ready command in the communication that identifies the aggregator device as a source of the communication and the host computer as a destination of the communication and provide the communication to the host computer through the switch so that the communication does not proceed through the aggregator device.
-
23. Network-attached storage system of claim 20 wherein the set of storage devices is configured to:
-
receive a read command from the host computer;
send a proxy command to the set of storage devices in response to the read command, the proxy command directing the set of storage devices to (i) bundle the data in a communication that identifies the aggregator device as a source of the communication and the host computer as a destination of the communication and (ii) provide the communication to the host computer through the switch in a manner that diverts the communication so that the communication does not proceed through the aggregator device.
-
-
24. The network-attached storage system of claim 21 wherein the set of storage devices is configured to:
receive the proxy command from the specialized logic, bundle the data in the communication that identifies the aggregator device as a source of the communication and the host computer as a destination of the communication and provide the communication to the host computer through the switch so that the communication does not proceed through the aggregator device.
-
25. The network-attached storage system of claim 20 wherein the specialized logic is configured to selectively decide that (i) the data exchanged between the host computer and the set of storage devices flows through the aggregator device to improve security for the data through the network-attached storage system, and (ii) the data exchanged between the host computer and the set of storage devices does not flow through the aggregator device to reduce latency of the data through the network-attached storage system.
Specification