IP Library Granted Patent US 8,160,070
Granted Patent B2
US 8,160,070 · App. 12/568,612 · Granted Apr 17, 2012

Fibre channel proxy

View Patent ↗
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 8,160,070
App. No.
12/568,612
Granted
Apr 17, 2012
Kind
B2
Abstract

A fibre channel proxy proxies storage operations in a fibre channel storage network. A first set of fibre channel proxy ports are configured to receive storage operations from one or more initiators. A second set of fibre channel proxy ports are configured to forward the storage operations to one or more storage targets. Fibre channel port identifiers for the storage targets are used to communicate with the initiators during the storage operations over the first set of fibre channel proxy ports. Fibre channel port identifiers for the initiators are used to communicate with the storage targets during the storage operations over the second set of fibre channel proxy ports. This scheme allows the fibre channel to operate transparently in the fibre channel network.

Claims (61)

1. A fibre channel proxy, comprising:

a first set of one or more fibre channel proxy ports configured to receive storage operations from one or more initiators;

a second set of one of one or more fibre channel proxy ports configured to forward the storage operations to one or more storage targets; and

a processor configured to:

map storage access locations received in the storage operations from the one or more initiators to different storage blocks in the one or more storage targets;

use fibre channel port identifiers of the one or more storage targets to communicate with the one or more initiators during the storage operations over the first set of fibre channel proxy ports; and

use fibre channel port identifiers of the one or more initiators to communicate with the one or more storage targets during the storage operations over the second set of fibre channel proxy ports.

2. The fibre channel proxy according to claim 1 , wherein the processor incorporates and uses the fibre channel port identifiers of the one or more initiators and the fibre channel port identifiers of the one or more storage targets during the storage operations transparently without any fibre channel access control reconfiguration of fibre channel ports in either the one or more initiators and the one or more storage targets.

3. The fibre channel proxy of claim 2 , wherein the fibre channel port identifiers of the one or more initiators and the fibre channel port identifiers of the one or more storage targets comprise World Wide Name (WWN) values.

4. The fibre channel proxy of claim 1 , wherein the one or more initiators, the fibre channel proxy, and the one or more storage targets communicate using a fibre channel protocol.

5. The fibre channel proxy of claim 4 , wherein the fibre channel protocol is used by the one or more initiators, the fibre channel proxy, and the one or more storage targets over a fibre channel physical media.

6. The fibre channel proxy of claim 4 , wherein the fibre channel protocol is encapsulated in at least one of Ethernet, Internet Protocol (IP) or Transmission Control Protocol (TCP).

7. The fibre channel proxy according to claim 1 , wherein the processor is configured to:

monitor communications between both the one or more initiators and the one or more storage targets;

map unique device identifiers to the one or more initiators and to the one or more storage targets;

use the unique device identifiers mapped to the one or more initiators to perform authentication and authorization with the one or more storage targets on behalf of the one or more initiators; and

use the unique device identifiers mapped to the one or more storage targets to perform authentication and authorization with the one or more initiators on behalf of the one or more storage targets.

8. The fibre channel proxy of claim 7 , wherein the unique device identifiers mapped to the one or more storage targets are defined by a second protocol transported by a fibre channel protocol.

9. The fibre channel proxy of claim 8 , wherein the second protocol is a Small Computer System Interface (SCSI) protocol.

10. The fibre channel proxy of claim 9 , wherein the unique device identifiers comprise SCSI World-Wide ID (WWID) values.

11. The fibre channel proxy of claim 7 , wherein the unique device identifiers for the one or more initiators are presented by the fibre channel proxy to the one or more storage targets or to a storage fabric.

12. The fibre channel proxy of claim 7 , wherein the unique device identifiers for the one or more storage targets are presented by the fibre channel proxy to the one or more initiators or to a storage fabric.

13. The fibre channel proxy of claim 7 , wherein the unique device identifiers are originally used by a storage fabric connected to the one or more storage targets and are re-used by the fibre channel proxy to communicate with the one or more storage targets.

14. The fibre channel proxy of claim 7 , wherein the unique device identifiers are originally used by a storage fabric connected to the one or more initiators and are re-used by the fibre channel proxy to communicate to the one or more initiators.

15. The fibre channel proxy of claim 1 , wherein the storage blocks in the one or more storage targets each have a unique address mapping in the fibre channel proxy.

16. A method, comprising:

operating a networked agent as an intermediary for a storage operation conducted between an initiator and a target;

identifying, by the networked agent, a port identifier for the initiator;

identifying, by the networked agent, a port identifier for the target;

receiving, by the networked agent, the storage operation from the initiator;

forwarding, by the networked agent, the storage operation to the target;

using by the networked agent, the port identifier for the initiator to communicate with the target during the storage operation; and

using, by the networked agent, the port identifier for the target to communicate with the initiator during the storage operation.

17. The method of claim 16 , wherein:

the storage operation comprises a fibre channel command; and

the networked agent is transparently deployed to receive the fibre channel command from the initiator and forward the fibre channel command to the target without the initiator or target changing fibre channel access configurations or changing fibre channel control configurations.

18. The method of claim 16 , wherein the initiator and the target are connected to the networked agent through a storage fabric.

19. The method of claim 16 , wherein the initiator comprises a router or switch and the networked agent is configured to forward the storage operation received from the router or switch to the target.

20. The method of claim 16 , wherein the networked agent is configured to receive the storage operation and forward the storage operation using a network based storage protocol.

21. The method of claim 16 , further comprising:

communicating, by the networked agent, with the initiator through a fibre channel port in the initiator;

communicating, by the networked agent, with the target through a fibre channel port in the target; and

using, by the networked agent, the port identifier for the initiator and the port identifier for the target during the storage operation transparently without reconfiguring the fibre channel port in the initiator or reconfiguring the fibre channel port in the target.

22. A method, comprising:

receiving read operations from an initiator directed to storage blocks in a storage target;

mapping physical storage addresses in the read operations to virtual storage addresses;

searching a local storage media within a fibre channel proxy for local data associated with the virtual storage addresses;

reading the local data associated with the virtual storage addresses from the local storage media and sending the local data to the initiator;

forwarding the read operations to the storage target when the local storage media does not contain the local data associated with the virtual storage addresses;

forwarding storage data returned from the storage target to the initiators and also copying the storage data into virtual storage addresses in the local storage media; and

mapping the physical storage addresses from the read operations to the virtual storage addresses where the storage data is copied in the local storage media.

23. The method of claim 22 , further comprising removing local storage blocks within the local storage media after a predetermined time period.

24. The method of claim 23 , wherein the predetermined time period is a constant time interval.

25. The method of claim 24 , wherein the constant time interval is extended for particular local storage blocks after the read operations to those particular local storage blocks.

26. The method of claim 22 , further comprising removing particular local storage blocks within the local storage media immediately following the read operations to those particular local storage blocks.

27. The method of claim 24 , wherein the constant time interval is dynamically varied according to storage block access patterns of the initiator.

28. The method of claim 22 , wherein the fibre channel proxy retrieves storage blocks from the storage target in response to the read operations from the initiator when the storage blocks are not present within the local storage media.

29. The method of claim 22 , wherein the virtual storage addresses contain a reference to the local storage media.

30. The method of claim 29 , wherein the virtual storage addresses are address offsets into a local Dynamic Random Access Memory (DRAM) in the fibre channel proxy.

31. The method of claim 29 , wherein the virtual storage addresses comprise a device identifier and an address offset to a solid state media.

32. The method of claim 29 , wherein the virtual storage addresses use an indirection table that associates the virtual storage addresses with a local media type.

Assignments (14)
CORRECTIVE ASSIGNMENT TO REMOVE US PATENT NO. 9013874 PREVIOUSLY RECORDED UNDER REEL AND FRAME 064272/0249. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 17, 2024
From: VSIP HOLDINGS LLC (F/K/A VIOLIN SYSTEMS LLC)
To: INNOVATIONS IN MEMORY LLC
Reel/Frame 068998/0780 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2023
From: VSIP HOLDINGS LLC (F/K/A VIOLIN SYSTEMS LLC)
To: INNOVATIONS IN MEMORY LLC
Reel/Frame 064272/0249 →
RELEASE OF SECURITY INTEREST Recorded Jun 16, 2021
From: SILICON VALLEY BANK
To: VSIP HOLDINGS LLC (F/K/A VIOLIN SYSTEMS LLC (F/K/A VIOLIN MEMORY, INC.))
Reel/Frame 056600/0186 →
CHANGE OF NAME Recorded May 25, 2021
From: VIOLIN SYSTEMS LLC
To: VSIP HOLDINGS LLC
Reel/Frame 056366/0849 →
RELEASE OF SECURITY INTEREST Recorded Jan 24, 2018
From: SILICON VALLEY BANK
To: VIOLIN SYSTEMS LLC
Reel/Frame 044712/0587 →
CHANGE OF NAME Recorded Dec 19, 2017
From: VIOLIN MEMORY, INC.
To: VIOLIN SYSTEMS LLC
Reel/Frame 044908/0680 →
SECURITY INTEREST Recorded Aug 27, 2014
From: VIOLIN MEMORY, INC.
To: SILICON VALLEY BANK
Reel/Frame 033645/0834 →
RELEASE OF SECURITY INTEREST Recorded Aug 26, 2014
From: COMERICA BANK
To: VIOLIN MEMORY, INC.
Reel/Frame 033617/0360 →
RELEASE OF SECURITY INTEREST Recorded Aug 22, 2014
From: TRIPLEPOINT CAPITAL LLC
To: VIOLIN MEMORY, INC.
Reel/Frame 033591/0759 →
SECURITY AGREEMENT Recorded Jul 19, 2013
From: VIOLIN MEMORY, INC.
To: COMERICA BANK, A TEXAS BANKING ASSOCIATION
Reel/Frame 030833/0440 →
SECURITY AGREEMENT Recorded May 16, 2013
From: VIOLIN MEMORY, INC.
To: TRIPLEPOINT CAPITAL LLC
Reel/Frame 030426/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2013
From: GRIDIRON SYSTEMS, INC.
To: VIOLIN MEMORY, INC.
Reel/Frame 029561/0074 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2012
From: DAI, CHUNG; SIKDAR, SOM; DE LA IGLESIA, ERIK
To: GRIDIRON SYSTEMS, INC.
Reel/Frame 029498/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2012
From: SIKDAR, SOM; DE LA IGLESIA, ERIK
To: GRIDIRON SYSTEMS, INC.
Reel/Frame 029493/0881 →