Legal claims defining the scope of protection, as filed with the USPTO.
1. A data accessing method for accessing data stored in a storage space, comprising: an information-providing step performed by a controller for providing a host with a host-specific information in accordance with an identity (ID) of the host, thereby responding to at least one first command issued from the host; a basic-data-providing step performed by the controller for providing the host with basic data regarding a device type and properties of a target LUN, thereby responding to at least one second command issued from the host; a receiving step performed by the controller for receiving an Input/Output (IO) request issued from the host; an interpretation step performed by the controller for interpreting the IO request so as to obtain a logical unit number (LUN) carried by the IO request; a table lookup step performed by the controller for obtaining a logical drive/partition (LD/partition) associated with the LUN number by looking up in a host logical unit to LD/partition (HLUN-to-LD/Partition) mapping table without identifying the identity of the host, wherein in the HLUN-to-LD/Partition mapping table, a HLUN is uniquely corresponding to the accessible LD/partition; a data-accessing step performed by the controller for accessing data from the LD/partition; and a responding step performed by the controller for responding an execution result of the data-accessing step to the host; wherein, in response to the at least one second command, the controller further performs the steps of: looking up in a host-ID table so as to obtain a host number corresponding to the identity of the host; determining if the host can recognize the target LUN; looking up in a LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number and the target LUN indicated by the second command, thereby obtaining an LD/partition associated with the target LUN; and replying basic data and properties of the LD/partition to the host.
2. The data accessing method of claim 1 , wherein the information-providing step comprises: providing the host with the host-specific information in accordance with the identity (ID) of the host, thereby responding to a “Report LUNs” command under a Small Computer System Interface (SCSI) standard.
3. The data accessing method of claim 1 , wherein, in response to the at least one first command, the controller further performs the steps of: looking up in the host-ID table so as to obtain the host number corresponding to the identity of the host; looking up in the LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number so as to obtain the host-specific information, such that the host can use the host-specific information to determine how to access the LD/partition; and replying the host-specific information to the host.
4. The data accessing method of claim 1 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; obtaining a first host LUN (HLUN) from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
5. The data accessing method of claim 1 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first internal LUN (ILUN) associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
6. The data accessing method of claim 1 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
7. A data accessing method for accessing data stored in a storage space, comprising: an information-providing step performed by a controller for providing a host with a host-specific information in accordance with an identity (ID) of the host, thereby responding to at least one first command issued from the host; a basic-data-providing step performed by the controller for providing the host with basic data regarding a device type and properties of a target LUN, thereby responding to at least one second command issued from the host; a receiving step performed by the controller for receiving an Input/Output (IO) request issued from the host; an interpretation step performed by the controller for interpreting the IO request so as to obtain a logical unit number (LUN) carried by the IO request; a table lookup step performed by the controller for obtaining a logical drive/partition (LD/partition) associated with the LUN number by looking up in a host logical unit to LD/partition (HLUN-to-LD/Partition) mapping table without identifying the identity of the host, wherein in the HLUN-to-LD/Partition mapping table, a HLUN is uniquely corresponding to the accessible LD/partition; a data-accessing step performed by the controller for accessing data from the LD/partition; and a responding step performed by the controller for responding an execution result of the data-accessing step to the host; wherein, in response to the at least one second command, the controller further performs the steps of: looking up in a host-ID table to obtain a host number corresponding to the identity of the host; determining if the host can recognize the target LUN; and replying to the host that the target LUN is unknown or no device type.
8. The data accessing method of claim 7 , wherein the at least one second command is an “Inquiry” command under a SCSI standard.
9. The data accessing method of claim 7 , wherein the information-providing step comprises: providing the host with the host-specific information in accordance with the identity (ID) of the host, thereby responding to a “Report LUNs” command under a Small Computer System Interface (SCSI) standard.
10. The data accessing method of claim 7 , wherein, in response to the at least one first command, the controller further performs the steps of: looking up in the host-ID table so as to obtain the host number corresponding to the identity of the host; looking up in a LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number so as to obtain the host-specific information, such that the host can use the host-specific information to determine how to access the LD/partition; and replying the host-specific information to the host.
11. The data accessing method of claim 7 , wherein the step of determining if the host can recognize the target LUN is performed by comparing the target LUN with the host-specific information to determine if the target LUN is contained in the host-specific information.
12. The data accessing method of claim 11 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; obtaining a first HLUN from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
13. The data accessing method of claim 11 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first internal LUN (ILUN) associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
14. The data accessing method of claim 11 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
15. The data accessing method of claim 7 , wherein the table lookup step is performed under a host-specific mapping.
16. A data accessing method for accessing data stored in a storage space, the method comprising the steps of: a basic-data-providing step performed by a controller for providing a host with basic data regarding a device type and properties of a target LUN, thereby responding to at least one second command issued from the host; a receiving step performed by the controller for receiving an Input/Output (IO) request issued from the host; an interpretation step performed by the controller for interpreting the IO request so as to obtain an LUN number carried by the IO request; a table lookup step performed by the controller for obtaining at least one LD/partition corresponding to the LUN number by looking up in a host logical unit to LD/partition (HLUN-to-LD/Partition) mapping table without identifying an identity (ID) of the host, wherein in the HLUN-to-LD/Partition mapping table, a HLUN is uniquely corresponding to the accessible LD/partition; a data-accessing step performed by the controller for accessing data from the at least one LD/partition; and a responding step performed by the controller for responding an execution result of the data-accessing step to the host; wherein the LUN number is corresponding to the HLUN shown in the HLUN-to-LD/Partition mapping table, and the HLUN is an exclusive number used for representing a mapping relationship associated with a LD/partition; and wherein, in response to the at least one second command, the controller further performs the steps of: looking up in a host-ID table so as to obtain a host number corresponding to the identity of the host; determining if the host can recognize the target LUN; looking up in a LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number and the target LUN indicated by the second command, thereby obtaining an LD/partition associated with the target LUN; and replying basic data and properties of the LD/partition to the host.
17. The data accessing method of claim 16 , further comprising the steps of: an information-providing step performed by the controller for providing a host with a host-specific information in accordance with the identity of the host, thereby responding to at least one first command issued from the host.
18. The data accessing method of claim 17 , wherein the information-providing step comprises the step of: providing the host with the host-specific information in accordance with the identity of the host, thereby responding to a “Report LUNs” command under a Small Computer System Interface (SCSI) standard.
19. The data accessing method of claim 17 , wherein, in response to the at least one first command, the controller further performs the steps of: looking up in the host-ID table so as to obtain the host number corresponding to the identity of the host; looking up in the LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number so as to obtain the host-specific information, such that the host can use the host-specific information to determine how to access a logical unit; and replying the host-specific information to the host.
20. The data accessing method of claim 17 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; obtaining a first HLUN from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
21. The data accessing method of claim 17 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first internal LUN (ILUN) associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
22. The data accessing method of claim 17 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
23. A data accessing method for accessing data stored in a storage space, the method comprising the steps of: a basic-data-providing step performed by a controller for providing a host with basic data regarding a device type and properties of a target LUN, thereby responding to at least one second command issued from the host; a receiving step performed by the controller for receiving an Input/Output (IO) request issued from the host; an interpretation step performed by the controller for interpreting the IO request so as to obtain an LUN number carried by the IO request; a table lookup step performed by the controller for obtaining at least one LD/partition corresponding to the LUN number by looking up in a host logical unit to LD/partition (HLUN-to-LD/Partition) mapping table without identifying an identity (ID) of the host, wherein in the HLUN-to-LD/Partition mapping table, a HLUN is uniquely corresponding to the accessible LD/partition; a data-accessing step performed by the controller for accessing data from the at least one LD/partition; and a responding step performed by the controller for responding an execution result of the data-accessing step to the host; wherein the LUN number is corresponding to the HLUN shown in the HLUN-to-LD/Partition mapping table, and the HLUN is an exclusive number used for representing a mapping relationship associated with a LD/partition; and wherein, in response to the at least one second command, the controller further performs the steps of: looking up in a host-ID table to obtain a host number corresponding to the identity of the host; determining if the host can recognize the target LUN; and replying to the host that the target LUN is unknown or no device type.
24. The data accessing method of claim 23 , wherein the at least one second command is an “Inquiry” command under a SCSI standard.
25. The data accessing method of claim 23 , wherein the information-providing step comprises the step of: providing the host with a host-specific information in accordance with the identity of the host, thereby responding to a “Report LUNs” command under a Small Computer System Interface (SCSI) standard.
26. The data accessing method of claim 23 , wherein, in response to the at least one first command, the controller further performs the steps of: looking up in the host-ID table so as to obtain the host number corresponding to the identity of the host; looking up in a LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number so as to obtain a host-specific information, such that the host can use the host-specific information to determine how to access a logical unit; and replying the host-specific information to the host.
27. The data accessing method of claim 23 , wherein the step of determining if the host can recognize the target LUN is performed by comparing the target LUN with a host-specific information to determine if the target LUN is contained in the host-specific information.
28. The data accessing method of claim 27 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; obtaining a first HLUN from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
29. The data accessing method of claim 27 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
30. The data accessing method of claim 27 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from a LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
31. The data accessing method of claim 23 , wherein the table lookup step is performed under a host-specific mapping.
32. A data accessing method for accessing data stored in a storage space, the method comprising the steps of: an information-providing step performed by a controller for providing a host with a host-specific information in accordance with an identity (ID) of the host, thereby responding to at least one first command issued from the host; wherein, in response to the at least one first command, the controller further performs the steps of: looking up in a host-ID table so as to obtain a host number corresponding to the identity of the host; looking up in a LUN cross-reference information, or formula converting instead, so as to obtain at least one HLUN assigned to the host number; looking up in a host logical unit to LD/partition (HLUN-to-LD/Partition) mapping table with respect to the at least one HLUN without identifying the identity of the host to determine if the at least one HLUN has a mapping relationship with at least one LD/partition, wherein in the HLUN-to-LD/Partition mapping table, the HLUN is uniquely corresponding to the accessible LD/partition; and responding to the host one or more of the at least one HLUN that have the mapping relationship with the at least one LD/partition; a basic-data-providing step performed by the controller for providing the host with basic data regarding a device type and properties of a target LUN, thereby responding to at least one second command issued from the host; wherein, in response to the at least one second command, the controller further performs the steps of: looking up in the host-ID table so as to obtain the host number corresponding to the identity of the host; determining if the host can recognize the target LUN; looking up in the LUN cross-reference information, or formula converting instead, and looking up in the HLUN-to-LD/Partition mapping table in accordance with the host number and the target LUN indicated by the second command, thereby obtaining an LD/partition associated with the target LUN; and replying basic data and properties of the LD/partition to the host; a receiving step performed by the controller for receiving an Input/Output (IO) request issued from the host; and a data-accessing step performed by the controller for accessing data from the LD/partition having the mapping relationship with the target HLUN, thereby responding to the IO request.
33. The data accessing method of claim 1 , wherein the at least one second command is an “Inquiry” command under a SCSI standard.
34. The data accessing method of claim 1 , wherein the step of determining if the host can recognize the target LUN is performed by comparing the target LUN with the host-specific information to determine if the target LUN is contained in the host-specific information.
35. The data accessing method of claim 1 , wherein the table lookup step is performed under a host-specific mapping.
36. The data accessing method of claim 16 , wherein the step of determining if the host can recognize the target LUN is performed by comparing the target LUN with a host-specific information to determine if the target LUN is contained in the host-specific information.
37. The data accessing method of claim 16 , wherein the table lookup step is performed under a host-specific mapping.
38. The data accessing method of claim 16 , wherein the at least one second command is an “Inquiry” command under a SCSI standard.
39. The data accessing method of claim 34 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; obtaining a first HLUN from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
40. The data accessing method of claim 34 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first internal LUN (ILUN) associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
41. The data accessing method of claim 34 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
42. The data accessing method of claim 36 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; obtaining a first HLUN from the set of related data and assigning the first HLUN to a selected HLUN; looking up in the HLUN-to-LD/Partition mapping table to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
43. The data accessing method of claim 36 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a host-specific mapping, the selected HLUN is the first HLUN; when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
44. The data accessing method of claim 36 , wherein the host-specific information is generated by using the steps of: finding a set of related data associated with the host number obtained from the LUN cross-reference information, or obtained by formula converting instead; looking up a mapping type of a first ILUN associated with a first HLUN in the set of related data; obtaining a selected HLUN, wherein, when the mapping type of the ILUN is a global mapping, the selected HLUN is a representative HLUN representing the first ILUN; looking up in the HLUN-to-LD/Partition mapping table so as to determine if the selected HLUN has a mapping relationship with the LD/partition; and adding the selected HLUN to the host-specific information when the selected HLUN has the mapping relationship with the LD/partition, and omitting the selected HLUN when the selected HLUN does not have the mapping relationship with the LD/partition.
Unknown
December 29, 2015
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.