US7937517B2ExpiredUtilityA1

Storage router and method for providing virtual local storage

Assignee: CROSSROADS SYS INCPriority: Dec 31, 1997Filed: Sep 2, 2009Granted: May 3, 2011
Est. expiryDec 31, 2017(expired)· nominal 20-yr term from priority
H04L 67/568H04L 2101/631H04L 2101/645H04L 61/106G06F 3/0664G06F 3/0607G06F 3/067G06F 13/4059G06F 13/1668H04L 67/1097G06F 13/4022G06F 3/0673G06F 3/0661G06F 3/0601G06F 3/0605G06F 13/385
72
PatentIndex Score
1
Cited by
412
References
38
Claims

Abstract

A storage router ( 56 ) and storage network ( 50 ) provide virtual local storage on remote SCSI storage devices ( 60, 62, 64 ) to Fiber Channel devices. A plurality of Fiber Channel devices, such as workstations ( 58 ), are connected to a Fiber Channel transport medium ( 52 ), and a plurality of SCSI storage devices ( 60, 62, 64 ) are connected to a SCSI bus transport medium ( 54 ) The storage router ( 56 ) interfaces between the Fiber Channel transport medium ( 52 ) and the SCSI bus transport medium ( 54 ). The storage router ( 56 ) maps between the workstations ( 58 ) and the SCSI storage devices ( 60, 62, 64 ) and implements access controls for storage space on the SCSI storage devices ( 60, 62, 64 ). The storage router ( 56 ) then allows access from the workstations ( 58 ) to the SCSI storage devices ( 60, 62, 64 ) using native low level, block protocol in accordance with the mapping and the access controls.

Claims

exact text as granted — not AI-modified
1. A storage router connected to storage remote from hosts to provide virtual local storage to the hosts:
 a controller operable to connect to and interface with a serial transport medium; 
 a supervisor unit coupled to the first controller, the supervisor unit operable to:
 maintain a map that maps hosts connected to the serial transport medium to subsets of storage space on the remote storage in order to implement centralized access controls to the subsets of remote storage; 
 process a command received from a host, wherein the command includes a native low level block protocol request for access to a subset of storage; 
 use native low level block protocol information in the command to determine if the host is allowed access to the requested subset of storage in accordance with the map; and 
 allow the requesting host to access the requested subset of storage system if the requesting host is allowed access to the requested subset of storage. 
 
 
     
     
       2. The storage router of  claim 1 , wherein the map contains representations of hosts mapped to representations of virtual subsets of storage space representing virtual local storage. 
     
     
       3. The storage router  claim 2 , wherein the representations of the hosts are unique identifiers and the representations of the subsets of storage are LUNs. 
     
     
       4. The storage router of  claim 3 , wherein the remote storage comprises centralized storage connected to The storage router and the hosts connect to the centralized storage through the storage router. 
     
     
       5. The storage router of  claim 3 , wherein the map further maps the LUNs to physical storage locations. 
     
     
       6. The storage router of  claim 5 , wherein the mapping of LUNs to physical storage is created at the storage router. 
     
     
       7. The storage router of  claim 3 , wherein the host identifications are unique identifications. 
     
     
       8. The storage router of  claim 2 , wherein the host identifications are world wide names. 
     
     
       9. The storage router of  claim 2 , wherein The storage router is operable to provide the virtual local storage to the hosts in a manner transparent to the hosts such that the virtual local storage has the appearance and characteristics of virtual local storage. 
     
     
       10. The storage router of  claim 2 , wherein The storage router is operable to implement access controls to the centralized storage in a manner transparent to the hosts. 
     
     
       11. The storage router of  claim 9 , wherein the map can be modified in a manner that does not involve the hosts. 
     
     
       12. The storage router of  claim 1 , wherein The storage router is operable to present to each host only the subset of storage mapped to that host. 
     
     
       13. The storage router of  claim 1 , wherein The storage router is operable to:
 present a LUN to a first host and a second host; 
 map the presented LUN to different storage locations so that requests for that LUN will be directed to different subsets of storage for the first host and the second host. 
 
     
     
       14. The storage router of  claim 1 , wherein The storage router is operable to:
 present a LUN to a first host and a second host; 
 map the presented LUN to a storage location so that requests for that LUN from the first host and the second host will be directed to the same storage location. 
 
     
     
       15. The storage router of  claim 1 , wherein access is allowed without involving a high level protocol or file system. 
     
     
       16. The storage router of  claim 1 , wherein the map only resides at the storage router. 
     
     
       17. The storage router of  claim 1 , wherein the remote storage comprises a single storage device. 
     
     
       18. The storage router of  claim 1 , wherein the remote storage comprises multiple storage devices. 
     
     
       19. The storage router of  claim 1 , wherein The storage router is operable to access the map to determine if a representation for the requesting host is mapped to a representation for the requested subset of storage space. 
     
     
       20. A method for controlling access to storage by hosts:
 connecting a storage router to hosts via a serial transport medium so that The storage router is connected between the hosts and storage remote from the hosts; 
 maintaining a map at The storage router that maps hosts connected to the serial transport medium to subsets of storage space on the remote storage in order to implement centralized access controls to the subsets of remote storage; 
 process a command at The storage router received from a host, wherein the command includes a native low level block protocol request for access to a subset of storage; 
 using native low level block protocol information in the command at The storage router to determine if the host is allowed access to the requested subset of storage in accordance with the map; and 
 allowing the requesting host to access the requested subset of storage system if the requesting host is allowed access to the requested subset of storage. 
 
     
     
       21. The method of  claim 20 , wherein the map contains representations of hosts mapped to representations of virtual subsets of storage space representing virtual local storage. 
     
     
       22. The method of  claim 21 , wherein the representations of the hosts are unique identifiers and the representations of the subsets of storage are LUNs. 
     
     
       23. The method of  claim 22 , wherein the remote storage comprises centralized storage connected to The storage router and the hosts connect to the centralized storage through the storage router. 
     
     
       24. The method of  claim 22 , wherein the map further maps the LUNs to physical storage locations. 
     
     
       25. The method of  claim 24 , wherein the mapping of LUNs to physical storage is created at the storage router. 
     
     
       26. The method of  claim 22 , wherein the host identifications are unique identifications. 
     
     
       27. The method of  claim 21 , wherein the host identifications are world wide names. 
     
     
       28. The method of  claim 21 , further comprising providing the virtual local storage to the hosts in a manner transparent to the hosts such that the virtual local storage has the appearance and characteristics of virtual local storage. 
     
     
       29. The method of  claim 21 , further comprising implementing access controls to the centralized storage in a manner transparent to the hosts. 
     
     
       30. The method of  claim 29 , further comprising modifying the map in a manner that does not involve the hosts. 
     
     
       31. The method of  claim 20 , further comprising presenting to each host only the subset of storage mapped to that host. 
     
     
       32. The method of  claim 20 , further comprising:
 presenting a LUN to a first host and a second host; 
 mapping the presented LUN to different storage locations so that requests for that LUN will be directed to different subsets of storage for the first host and the second host. 
 
     
     
       33. The method of  claim 20 , further comprising:
 presenting a LUN to a first host and a second host; 
 mapping the presented LUN to a storage location so that requests for that LUN from the first host and the second host will be directed to the same storage location. 
 
     
     
       34. The method of  claim 20 , wherein access is allowed without involving a high level protocol or file system. 
     
     
       35. The method of  claim 34 , wherein the map only resides at the storage router. 
     
     
       36. The method of  claim 20 , wherein the remote storage comprises a single storage device. 
     
     
       37. The method of  claim 20 , wherein the remote storage comprises multiple storage devices. 
     
     
       38. The method of  claim 20 , further comprising accessing the map to determine if a representation for the requesting host is mapped to a representation for the requested subset of storage space.

Join the waitlist — get patent alerts

Track US7937517B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.