IP Library Patent Application 12395509
Patent Application
App. No. 12/395,509

STORAGE SYSTEM FRONT END

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
12/395,509
Abstract

A storage system may include a first storage device and a protocol translator. The protocol translator may be programmed to receive a storage-access command formatted in a first protocol format. The protocol translator may also be programmed to translate the storage-access command into a second protocol format. The storage system may include a pseudo-target-module coupled to the protocol translator. The pseudo-target module may be programmed to send the command to the first storage device after the command is translated into the second protocol format. A virtualization engine may provide an interface to the first storage device, and the storage-access command may be sent to the first storage device through the virtualization engine. The pseudo-target module may be programmed to receive data from both storage-area-network devices and network-attached-storage devices.

Claims (56)

1 . A storage system comprising:

a first storage device;

a protocol translator, the protocol translator being programmed to:

receive a storage-access command formatted in a first protocol format;

translate the storage-access command into a second protocol format;

a pseudo-target module coupled to the protocol translator, the pseudo-target module being programmed to send the command to the first storage device after the command is translated into the second protocol format.

2 . The storage system of claim 1 , further comprising:

a virtualization engine providing an interface to the first storage device, wherein the storage-access command is sent to the first storage device through the virtualization engine.

3 . The storage system of claim 1 , wherein the second protocol format comprises a small-computer-system-interface format.

4 . The storage system of claim 1 , wherein the pseudo-target module is programmed to receive data from both storage-area-network devices and network-attached-storage devices.

5 . The storage system of claim 1 , further comprising:

a small-computer-system-interface mid-level interface configured to transfer the storage-access command from the protocol translator to the pseudo-target module.

6 . The storage system of claim 1 , wherein:

the pseudo-target module and the protocol translator are kernel-level modules.

7 . The storage system of claim 1 , further comprising:

an internet small-computer-system-interface input;

a fiber-channel input, the first protocol format comprising a fiber-channel protocol format.

8 . The storage system of claim 7 , further comprising:

a target-mode-driver application programming interface configured to provide an interface between the protocol translator and a plurality of target mode drivers.

9 . The storage system of claim 8 , wherein the plurality of target mode drivers comprises at least one of:

a fiber-channel target-mode driver, the fiber-channel target mode driver being programmed to interface between the target-mode-driver application programming interface and the fiber-channel input;

an internet small-computer-system-interface target-mode driver, the internet small-computer-system-interface target-mode driver being programmed to interface between the target-mode-driver application programming interface and the internet small-computer- system-interface input;

an infiniband target-mode driver, the infiniband target mode driver being programmed to interface between the target-mode-driver application programming interface and an infiniband input;

a serial-attached small-computer-system-interface target-mode driver, the serial-attached small-computer-system-interface target-mode driver being programmed to interface between the target-mode driver application programming interface and the serial-attached small-computer-system-interface input;

10 . The storage system of claim 1 , further comprising:

a data-storage enclosure;

a plurality of hard-disk drives positioned in the data-storage enclosure, the plurality of hard-disk drivers comprising the first storage device.

11 . The storage system of claim 1 , further comprising:

a front end, the front end comprising the pseudo-target module and the protocol translator.

12 . The storage system of claim 1 , wherein the pseudo-target module is programmed to:

receive a request to access the first physical storage device from an initiator;

access both the first storage device and a second storage device in response to the request, wherein access to the second storage device is transparent to the initiator.

13 . A storage system comprising:

a first storage device;

a virtualization engine that provides an interface to the first storage device;

a first pseudo-target module coupled to the virtualization engine, the pseudo-target module being programmed to:

receive a request to access the first storage device from an initiator;

access the first storage device and a second target in response to the request, wherein access to the second storage device is transparent to the initiator.

14 . The storage system of claim 13 , wherein the pseudo-target module is programmed to receive data from both storage-area-network devices and network-attached storage devices.

15 . The storage system of claim 13 , further comprising:

a small -computer-system-interface mid-level interface configured to transfer the command from a protocol translator to the pseudo-target module.

16 . The storage system of claim 13 , wherein:

the pseudo-target module and the protocol translator may be kernel-level modules.

17 . The storage system of claim 13 , further comprising:

a data-storage enclosure;

a plurality of hard-disk drives positioned in the data-storage enclosure, the plurality of hard-disk drives comprising the first storage device.

18 . The storage system of claim 13 , further comprising:

a front end, the front end comprising the pseudo-target module.

19 . A computer-implemented method comprising:

receiving, at a pseudo-target module in the front end of a storage system, a request from an initiator to access a first storage device;

accessing the first storage device in response to the request;

accessing a second storage device in response to the request, wherein access to the second storage device is transparent to the initiator.

20 . The computer-implemented method of claim 19 , wherein the pseudo-target module is configured to receive data from both storage-area-network devices and network-attached-storage devices.

21 . The computer-implemented method of claim 19 , wherein the storage system further comprising:

a data-storage enclosure;

a plurality of hard-disk drives positioned in the data-storage enclosure, the plurality of hard-disk drives comprising the first storage device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2011
From: ATRATO, INC.
To: ASSURANCE SOFTWARE AND HARDWARE SOLUTIONS, LLC
Reel/Frame 025975/0379 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2009
From: FRICK, GUY DAVID; SIEWERT, SAMUEL BURK
To: ATRATO, INC.
Reel/Frame 022967/0795 →