Claims
- 1. A storage-shelf-router-interface tunnel comprising:
an external processing entity interconnected with a storage shelf by a first communications medium using commands of a first protocol; mass-storage devices within the storage shelf that may be accessed by a mass-storage-device protocol through a second communications medium; a storage-shelf router that provides a virtual interface to mass-storage devices within the storage shelf to external processing entities, translating first-protocol commands received from the first communications medium to mass-storage-device protocol commands sent to mass-storage devices through the second communications medium, and that also provides for direct access by the external processing entity to the mass-storage devices by unpackaging mass-storage-device-protocol commands from a particular type of first-protocol command frame received through the first communications medium and directing the unpackaged mass-storage-device-protocol commands through the second communications medium, without translation, to the mass-storage devices.
- 2. The storage-shelf-router-interface tunnel of claim 1 wherein the storage router receives responses to the unpackaged mass-storage-device-protocol commands directed to the mass-storage devices from the mass-storage devices through the second communications medium, packages the responses into a particular type of first-protocol frame, and returns the packaged responses through the first communications medium to the external processing entity.
- 3. The storage-shelf router of claim 1 further including providing, to the external processing entity, access to storage shelf data structures and storage-router firmware through a particular type of first-protocol command frame and response frame.
- 4. The storage-shelf router of claim 1 wherein the first communications medium is a fibre channel communications link and wherein the second communications medium is a serial or parallel communications medium interconnecting the storage-shelf router to a path controller card interfaced to an ATA disk drive.
- 5. The storage-shelf router of claim 1 wherein the first communications medium is a fibre channel communications link and wherein the second communications medium is a serial or parallel communications medium interconnecting the storage-shelf router to an ATA disk drive.
- 6. The storage-shelf router of claim 1 wherein the particular type of first-protocol command frame received through the first communications medium is one of a WRITE_BUFFER command or a READ_BUFFER command packaged within an FCP_CMND frame.
- 7. The storage-shelf router of claim 1 wherein, in addition to unpackaging mass-storage-device-protocol commands from a particular type of first-protocol command frame received through the first communications medium and directing the unpackaged mass-storage-device-protocol commands through the second communications medium, without translation, to the mass-storage devices, the storage-shelf router unpackages control directives from the particular type of first-protocol command frame received through the first communications medium and directs corresponding control operations to storage-shelf components, including mass-storage devices.
- 8. The storage-shelf router of claim 8 wherein the control directives include power-on, power-off, and reset control directives.
- 9. The storage-shelf router of claim 1 wherein, in addition to unpackaging mass-storage-device-protocol commands from a particular type of first-protocol command frame received through the first communications medium and directing the unpackaged mass-storage-device-protocol commands through the second communications medium, without translation, to the mass-storage devices, the storage-shelf router unpackages access directives from the particular type of first-protocol command frame received through the first communications medium and accesses specified storage-shelf components, including mass-storage devices.
- 10. The storage-shelf router of claim 8 wherein the access directives include:
writing all or a portion of the contents of a data structure stored in storage-shelf-router flash memory; writing all or a portion of the contents of a data structure stored in path-controller-card flash memory; writing all or a portion of the contents of a data structure stored in special sectors within a mass-storage device; writing all or a portion of the storage-shelf firmware stored in storage-shelf-router flash memory; writing all or a portion of the path-controller-card firmware stored in path-controller-card flash memory; reading all or a portion of the contents of a data structure stored in storage-shelf-router flash memory; reading all or a portion of the contents of a data structure stored in path-controller-card flash memory; reading all or a portion of the contents of a data structure stored in special sectors within a mass-storage device; reading all or a portion of the storage-shelf firmware stored in storage-shelf-router flash memory; and reading all or a portion of the path-controller-card firmware stored in path-controller-card flash memory.
- 11. A method for providing direct access by an external processing entity to mass-storage devices within a storage shelf that are virtualized by a storage-shelf router within the storage shelf through a storage-shelf-router interface, the method comprising:
in a first communications protocol by which the external processing entity accesses virtual mass-storage devices through the storage-shelf-router interface, identifying a command frame that can be used to supplement the first-communications protocol with tunneling commands; inserting a native mass-storage-device command into the identified tunneling command frame and passing the native mass-storage-device command through the tunneling command to the storage-shelf router; receiving the tunneling command by the storage-router; extracting the native mass-storage-device command from the tunneling command and forwarding the tunneling command to a mass-storage device within the storage shelf by a second communications medium.
- 12. The method of claim 11 further including:
receiving, by the storage-shelf router, a response to the forwarded native mass-storage-device command through the second communications medium, inserting the response into a first-protocol response frame, and returning the response to the external processing entity.
- 13. The method of claim 11 wherein the first communications medium is a fibre channel communications link and wherein the second communications medium is a serial or parallel communications medium interconnecting the storage-shelf router to a path controller card interfaced to an ATA disk drive.
- 14. The method of claim 11 wherein the identified first-protocol command frame is one of a WRITE_BUFFER command or a READ_BUFFER command packaged within an FCP_CMND frame.
- 15. A storage-shelf router comprising:
logic for receiving first-protocol commands through a first communications medium directed to virtual mass-storage devices; logic for translating the received commands into native mass-storage-device commands; logic for transmitting the translated, native mass storage commands to mass-storage devices through a second communications medium; and logic for receiving native mass-storage-device commands packaged within selected first-protocol commands and forwarding the native mass-storage-device commands, untranslated, to mass-storage devices.
- 16. The storage-shelf router of claim 15 further including:
logic for receiving responses to translated mass-storage commands from mass-storage devices through the second communications medium, translating the responses into first-protocol responses, and forwarding the first-protocol responses to the first communications medium; and logic for receiving responses to untranslated mass-storage commands from mass-storage devices through the second communications medium, packaging the responses, untranslated, into first-protocol responses, and forwarding the untranslated responses to untranslated mass-storage commands packaged within first-protocol responses to the first communications medium.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a continuation-in-part of application Ser. No. 10/602,509, filed Jun. 23, 2003, which is a continuation-in-part of application Ser. No. 10/341,835, filed Jan. 13, 2003.
Continuation in Parts (2)
|
Number |
Date |
Country |
Parent |
10602509 |
Jun 2003 |
US |
Child |
10702065 |
Nov 2003 |
US |
Parent |
10341835 |
Jan 2003 |
US |
Child |
10602509 |
Jun 2003 |
US |