CN103617136A - SCSI drive side and I/O request control method - Google Patents

SCSI drive side and I/O request control method Download PDF

Info

Publication number
CN103617136A
CN103617136A CN201310647835.1A CN201310647835A CN103617136A CN 103617136 A CN103617136 A CN 103617136A CN 201310647835 A CN201310647835 A CN 201310647835A CN 103617136 A CN103617136 A CN 103617136A
Authority
CN
China
Prior art keywords
request
physical block
block address
storage system
requests
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310647835.1A
Other languages
Chinese (zh)
Other versions
CN103617136B (en
Inventor
杨幸坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201310647835.1A priority Critical patent/CN103617136B/en
Publication of CN103617136A publication Critical patent/CN103617136A/en
Application granted granted Critical
Publication of CN103617136B publication Critical patent/CN103617136B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides an SCSI drive side and an I/O request control method. The control method comprises the steps of obtaining corresponding physical block addresses according to logical block addresses in multiple received I/O requests, wherein the I/O requests are data access requests for logical blocks in multiple logical spaces in an SAN storage system; merging the I/O requests corresponding to the continuous physical block addresses according to the continuity of the physical block addresses; gathering the merged I/O requests in an SCSI order to be sent to the SAN storage system. By adopting the mode, the I/O requests distributed in different logical spaces can be merged, accordingly the merging possibility of multiple I/O requests during data access is improved, interaction of the I/O requests in a transmission path is reduced, and the access performance of the I/O requests is remarkably improved.

Description

The control method of SCSI driving side and I/O request
Technical field
The present invention relates to data access and technical field of memory, particularly relate to the control method of a kind of SCSI driving side and I/O request.
Background technology
Current, SAN(Storage Area Network, storage area network) storage system generally comprises physical block (the Physical Blocks that a plurality of disk units provide, PB), these physical blocks are by RAID(Redundant Arrays of Inexpensive Disks, redundant arrays of inexpensive disks) technology etc. is combined into memory resource pool, and memory resource pool is assigned as to a plurality of logical spaces (Logical Unit Number, LUN), each logical space comprises one or more logical blocks (Logical Blocks, LB).
When the data of logical space are conducted interviews, main frame generates one or more I/O requests according to requirements for access, and sends it to SCSI(Small Computer System Interface, small computer system interface) driving side.Then SCSI driving side generates and drives order and this driving order is sent to SAN storage system, and SAN storage system is read and write the data of logical space according to the driving order receiving.In prior art, in order to promote the access performance of I/O request, SCSI driving side can merge a plurality of I/O requests conventionally, to reduce its queue in transmission channel, takies with mutual.Yet prior art only can merge being distributed in a plurality of I/O requests of same logical space, not remarkable to the effect of the access performance of lifting I/O request.
Summary of the invention
Given this, the invention provides the control method of a kind of SCSI driving side and I/O request, significantly to promote the access performance of I/O request.
First aspect provides a kind of control method of I/O request, for SAN storage system is carried out to data access, this control method comprises: receive a plurality of I/O requests, and determine corresponding physical block address according to the LBA (Logical Block Addressing) in I/O request, wherein a plurality of I/O requests are for to carry out the request of data access to the logical block of a plurality of logical spaces; According to the continuity of physical block address, the merging to a plurality of I/O requests; I/O request after merging is polymerized to a scsi command, is sent to SAN storage system.
Implementation in conjunction with first aspect, in the possible implementation of the first, according to the LBA (Logical Block Addressing) in I/O request, determine that the step of corresponding physical block address comprises: send query statement to SAN storage system, and receive the LBA (Logical Block Addressing) of SAN storage system feedback and the mapping table of physical block address; According to mapping table, inquiry obtains physical block address corresponding to LBA (Logical Block Addressing) in a plurality of I/O requests.
In conjunction with the possible implementation of the first of first aspect, in the possible implementation of the second, LBA (Logical Block Addressing) and physical block address have identical block of bytes size.
Implementation in conjunction with first aspect, in the third possible implementation, according to the continuity of physical block address, the step that a plurality of I/O requests are merged comprises: choose and inquire about continuous physical block address in the physical block address obtaining, and I/O request corresponding to continuous physical block address merged for the first time; Choose and inquire about discontinuous physical block address in the physical block address obtaining, and corresponding I/O request is sorted to discontinuous physical block address; I/O request by the I/O request after sequence and after merging for the first time merges for the second time.
In conjunction with the implementation of first aspect, in the 4th kind of possible implementation, before the step that a plurality of I/O requests are merged, comprise: the pre-defined section that merges; The step that described a plurality of I/O requests are merged comprises: I/O request corresponding to physical block address being positioned within same merging section merged, to form an I/O request; I/O request corresponding to physical block address being positioned at outside same merging section do not merged, to form the 2nd I/O request.
The 4th kind of possible implementation in conjunction with first aspect, in the 5th kind of possible implementation, I/O request after merging is polymerized to a scsi command, the step that is sent to SAN storage system comprises: ask polymerization in a scsi command the one I/O request and the 2nd I/O, and scsi command is sent to SAN storage system.
Second aspect provides a kind of SCSI driving side, comprise: the first receiving element, be used for receiving a plurality of I/O requests, and receive the corresponding physical block address that SAN storage system is determined according to the LBA (Logical Block Addressing) in I/O request, wherein a plurality of I/O requests are for to carry out the request of data access to the logical block of a plurality of logical spaces in SAN storage system; The first processing unit, for according to the continuity of the physical block address of the first receiving element reception, merges a plurality of I/O requests, and the I/O request after merging is polymerized to a scsi command; The first transmitting element, for being sent to scsi command SAN storage system.
Implementation in conjunction with second aspect, in the possible implementation of the first, a plurality of I/O request generated query instruction of the first processing unit for receiving according to the first receiving element, and control the first transmitting element query statement is sent to SAN storage system, the first receiving element receives the LBA (Logical Block Addressing) of SAN storage system feedback and the mapping table of physical block address, and according to mapping table, inquiry obtains physical block address corresponding to LBA (Logical Block Addressing) in a plurality of I/O requests to the first processing unit.
In conjunction with the possible implementation of the first of second aspect, in the possible implementation of the second, LBA (Logical Block Addressing) and physical block address have identical block of bytes size.
Implementation in conjunction with second aspect, in the third possible implementation, the continuous physical block address of physical block address that the first processing unit also obtains for choosing inquiry, and I/O request corresponding to continuous physical block address merged for the first time, and choose and inquire about discontinuous physical block address in the physical block address obtaining, and to discontinuous physical block address, corresponding I/O request is sorted, and with the I/O request by the I/O request after sequence and after merging for the first time, merges for the second time.
Implementation in conjunction with second aspect, in the 4th kind of possible implementation, the first processing unit is also for the pre-defined section that merges, and I/O request corresponding to physical block address being positioned within same merging section merged, to form an I/O request, and I/O request corresponding to physical block address being positioned at outside same merging section do not merged, to form the 2nd I/O request.
The 4th kind of possible implementation in conjunction with second aspect, in the 5th kind of possible implementation, the first processing unit is also for asking polymerization in a scsi command the one I/O request and the 2nd I/O, and controls the first transmitting element scsi command is sent to SAN storage system.
The invention has the beneficial effects as follows: the situation that is different from prior art, the present invention is by obtaining the physical block address of LBA (Logical Block Addressing) correspondence in SAN storage system of a plurality of I/O requests, and according to the continuity of physical block address, I/O request corresponding to continuous physical block address merged, thereby can complete the merging of the I/O request that is distributed in a plurality of logical spaces, reduce the queue of I/O request in transmission channel and take with mutual, and significantly promote the access performance of I/O request.
Accompanying drawing explanation
In order to be illustrated more clearly in the technical scheme in the embodiment of the present invention, below the accompanying drawing of required use during embodiment is described is briefly described, apparently, accompanying drawing in the following describes is only some embodiments of the present invention, for those of ordinary skills,, can also obtain according to these accompanying drawings other accompanying drawing.Wherein:
Fig. 1 is the process flow diagram of control method of the I/O request of first embodiment of the invention;
Fig. 2 is the theory diagram of SAN storage system preferred embodiment of the present invention;
Fig. 3 is the theory diagram of control system of the I/O request of first embodiment of the invention;
Fig. 4 is the theory diagram of control system of the I/O request of fourth embodiment of the invention.
Embodiment
Below in conjunction with the accompanying drawing in the embodiment of the present invention, the technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is only the present invention's part embodiment, rather than whole embodiment.
The invention provides a kind of control method of I/O request, the process flow diagram of the control method of first embodiment of the invention shown in Figure 1.The control method of the I/O request of the present embodiment for to a plurality of logical space LUN0, LUN1 in SAN storage system 210 memory resource pool 240 shown in Fig. 2 ..., LUNx carries out data access, to each logical space LUN0, LUN1 ..., a plurality of logical block LB0, the LB1 that comprise of LUNx ... LBa ..., LBn carries out data access.Above-mentioned to logical space LUN0, LUN1 ..., the data access that carries out of LUNx, final entity show as to physical block PB0, PB1 ..., PBn storage data conduct interviews.It should be noted that, the present invention in full mentioned data access refers to other any operations that can carry out storage data such as reading, call and write to data.
The control method of the I/O request disclosing in the present embodiment as shown in Figure 1, comprises:
Step S11:SCSI driving side receives a plurality of I/O requests, and from SAN storage system, obtains corresponding physical block address according to the LBA (Logical Block Addressing) in I/O request, and wherein a plurality of I/O requests are for to carry out the request of data access to the logical block in a plurality of logical spaces.
Consult Fig. 2, in the time need to carrying out data access to the logical block in Different Logic space, a plurality of I/O request Concurrencies of the corresponding generation of the application meeting of main frame are delivered to SCSI driving side.For example, when logical block LB7, the LB50 of the logical block LB2 to logical space LUN0, logical space LUN2 and the logical block LB2 of logical space LUN9 carry out data access, a plurality of I/O request that SCSI driving side correspondence receives is followed successively by IO-1(LUN0, LBA2, LEN3), IO-2(LUN2, LBA7, LEN1), IO-3(LUN9, LBA2, LEN2), IO-4(LUN2, LBA50, LEN2).
SCSI driving side, after finishing receiving above-mentioned I/O request, generates accordingly a query statement and is sent to SAN storage system.Wherein, this query statement is a kind of scsi command, its form with byte stream is sent to SAN storage system by bus, the present embodiment preferably this scsi command adopts CDB(Command Descriptor Blocks as shown in table 1 below, command description block) form, correspondingly, the parameter format of this order is as shown in table 2 below:
Table 1
Figure BDA0000429858180000052
Table 2
SAN storage system is resolved its special parameter after receiving this query statement, and the mapping relations of the physical block address of the LBA (Logical Block Addressing) of obtaining the logical block that IO-1, IO-2, IO-3 and IO-4 need to access in the system physical block corresponding with it, shown in table 3 specific as follows:
I/O request Physical block address
IO-1(LUN0,LBA2,LEN3) (PBA10,LEN3)
IO-2(LUN2,LBA7,LEN1) (PBA2,LEN1)
IO-3(LUN9,LBA2,LEN2) (PBA13,LEN2)
IO-4(LUN2,LBA50,LEN2) (PBA100,LEN0)
Table 3
SAN storage system sends to SCSI driving side by mapping relations, is embodied in by mapping as shown in table 4 below and describes the response to the scsi command shown in upper table 1.
Table 4
In the present embodiment, the mapping relations that SAN storage system is obtained are the one-to-one relationship that needs the physical block address of the LBA (Logical Block Addressing) of logical block of the access physical block corresponding with it in a plurality of I/O request.Further, for ease of searching, first by the mapping relations that receive, the form with mapping table is shown the preferred SCSI driving side of the present embodiment, the physical block corresponding to logical block of a plurality of I/O requests that then inquire-receive arrives in mapping table.
In other embodiments, SAN storage system can also be obtained whole LBA (Logical Block Addressing) and the mapping relations of physical block address, and send to SCSI driving side, so that physical block address corresponding to the LBA (Logical Block Addressing) that SCSI driving side will be accessed according to mapping relationship searching.Or SAN storage system can directly will need the physical block address corresponding to LBA (Logical Block Addressing) of access to feed back to SCSI driving side in a plurality of I/O requests.
It should be noted that, the mapping relations that the present invention mentions are in full embodied in LBA (Logical Block Addressing) (the Logical Block Address of logical block, LBA) with physical block address (the Physical Block Address of physical block, PBA) one-to-one relationship, and while adopting the scsi command shown in above-mentioned table 1, the description of the physical block address of the LBA (Logical Block Addressing) of logical block and physical block is adopted to block of bytes (Block) size of formed objects.
Step S12:SCSI driving side is according to the continuity of physical block address, and the I/O request that a plurality of physical block address are corresponding merges.
Consult table 3 known, the physical address of the physical block that logical block that the IO-1 obtaining, IO-2, IO-3 and IO-4 need to access is corresponding is (PBA10, LEN3), (PBA2, LEN1), (PBA13, LEN2), (PBA100, LEN2).
Then, choose the continuous physical block in address in four physical blocks that obtain.Successional algorithm based on prior art, LEN represents the length (length) of physical block, known in four physical blocks that obtain, continuous physical block address is (PBA10, LEN3) and (PBA13, LEN2).The I/O request that continuous physical block address is corresponding merges for the first time, and be about to IO-1 and IO-3 and merge, after merging, be IO-1-3.
Choose wherein discontinuous physical block address, (PBA2, LEN1) is discontinuous with (PBA10, LEN3) and (PBA13, LEN2).Discontinuous physical block address is sorted, then by I/O corresponding to the physical block address request after sequence with merge for the first time after I/O request merge for the second time, be about to IO-1-3 and IO-2 and merge, after merging, be IO-2-1-3.
Step S13:SCSI driving side is polymerized to a scsi command by the I/O request after merging, and is sent to SAN storage system.
SCSI driving side is by the I/O request after merging, and IO-2-1-3, is sent to SAN storage system.Wherein, IO-2-1-3 is the discontinuous polymerization I/O request in a kind of address, due to its polymerization the I/O request in Different Logic space, therefore need a kind of polymerization scsi command send it to SAN storage system, this polymerization scsi command can adopt the CDB form shown in following table 5:
Table 5
SAN storage system is after receiving this polymerization scsi command, and the I/O after being merged by processing asks, and complete paired data access accordingly.
According to the concrete operations of data access, need the form of visit order of structure different, for example the data of logical space are write fashionablely, need structure Data-Out Buffer command format; When the data of logical space are read, need structure Data-In Buffer command format.When adopting above-mentioned read write command form to conduct interviews to data, also need read-write flow process to distinguish, particularly, when writing flow process, adopt as shown in table 6 belowly, when reading flow process, adopt as shown in table 7 below.Wherein, the parameter format of above-mentioned Data-Out Buffer command format and Data-In Buffer command format is as shown in table 8 below.
Figure BDA0000429858180000082
Table 6
Figure BDA0000429858180000091
Table 7
Figure BDA0000429858180000092
Table 8
Based on above-mentioned, known the present embodiment is by obtaining the physical block address of LBA (Logical Block Addressing) correspondence in SAN storage system of a plurality of I/O requests, and according to the continuity of physical block address, corresponding I/O request is merged, thereby complete the merging of a plurality of I/O requests that are distributed in a plurality of logical spaces, reduce that the queue of I/O request in transmission channel takies and alternately, and then significantly promote the access performance of I/O request.
The present invention also provides the control method of the I/O request of the second embodiment, on the basis of the control method that it discloses at the first embodiment, is described in detail.Shown in the present embodiment and Fig. 1, the difference of the first embodiment is:
In step S12, for the request of a plurality of I/O in same merging section not, do not merge.In the present embodiment, merging section is that the logical block of a plurality of logical spaces in SAN storage system (LBA) is carried out to the division in region, even can not reduce significantly the queue of I/O request in transmission channel and take to avoid being separated by merge when larger in transmission channel as each LBA, to the access performance of I/O request also significant lifting not.
For the division size that merges the block of bytes of LBA in section, those skilled in the art can set according to actual needs, for example predefine merging section partition LBA is 30 block of bytes, LBA50 and LBA2, LBA7, LBA2 do not merge section at one, that is to say IO-4(LUN2, LBA50, LEN2) and above-mentioned three I/O request, i.e. IO-1(LUN0, LBA2, LEN3), IO-2(LUN2, LBA7, LEN1) and IO-3(LUN9, LBA2, LEN2), at one, do not merge section, IO-4 can not merge with IO-1, IO-2, IO-3.
I/O request corresponding to physical block address being positioned within same merging section merged, to form I/O request, i.e. an IO-2-1-3.To being positioned at the I/O request that physical block address outside same merging section is corresponding, do not merge, to form the 2nd I/O request, i.e. IO-4(LUN2, LBA50, LEN2).
In step S13, SCSI driving side asks polymerization in a scsi command the one I/O request and the 2nd I/O, and this scsi command is sent to SAN storage system.SAN storage system is resolved this scsi command so that an I/O request and the 2nd I/O request are responded respectively.
The present embodiment can operate being positioned at the different a plurality of I/O requests that merge section, and the I/O that can not merge request separately with merge after I/O request be aggregated in and in same scsi command, send to SAN storage system, thereby farthest complete the merging of a plurality of I/O requests that are distributed in a plurality of logical spaces, reduce that queue in the transmission channel of I/O request takies and alternately, and then significantly promote the access performance of I/O request.
It should be noted that, logical block, LBA (Logical Block Addressing) and corresponding physical block, the physical block address of the above-mentioned IO request that the present embodiment discloses with above-mentioned the first embodiment, and corresponding concrete numerical value in upper table, only for explanation for example.In other embodiments, those skilled in the art can carry out according to actual needs other and arrange, and only need meet the one-to-one relationship of the LBA (Logical Block Addressing) of a plurality of logical blocks and the physical block address of a plurality of physical blocks.
The present invention also provides the control system of a kind of IO request of the first embodiment, as shown in Figure 3, SAN storage system 210 and the SCSI driving side 220 of the present embodiment based on shown in Fig. 2, applies 230.The SCSI driving side 220 that the present embodiment discloses comprises the first receiving element 221, the first processing unit 222 and the first transmitting element 223, and SAN storage system 210 comprises the second receiving element 211, the second processing unit 212 and the second transmitting element 213.
A plurality of I/O requests that the first receiving element 221 forms for receiving application 230, the plurality of I/O request is for to carry out the request of data access to a plurality of logical blocks in SAN storage system 210.
A plurality of I/Os request generated query instruction of the first processing unit 222 for receiving according to the first receiving element 221, and control the first transmitting element 223 and query statement is sent to the second receiving element 211 of SAN storage system 210.
The second processing unit 212 is for obtain the mapping relations of SAN storage system 210 LBA (Logical Block Addressing) and physical block address according to query statement, and controls the second transmitting element 213 and mapping relations are sent to the first receiving element 221 of SCSI driving side 220.
The first processing unit 222, for according to the continuity of physical block address, asks that I/O corresponding to continuous a plurality of physical block address merge.
The first transmitting element 223 is sent to the second receiving element 211 of SAN storage system 210 for the I/O request after the first processing unit 222 is merged.The second processing unit 212 has been asked the data access in SAN storage system 210 according to the I/O after merging.
The present invention also provides the control system of the IO request of the second embodiment, and it is described in detail on the basis of the first embodiment.The difference of the control system of the present embodiment and above-mentioned the first embodiment is:
A plurality of I/O requests that the first receiving element 221 receives can not directly all merge, and need advanced line ordering.Particularly, the first processing unit 222 is also for choosing the continuous physical block address of a plurality of physical block address, and I/O request corresponding to continuous physical block address merged for the first time.Choose discontinuous physical block address in physical block address simultaneously, and discontinuous physical block address sorted, by I/O corresponding to the physical block address request after sequence with merge for the first time after I/O request merge for the second time.
The present invention also provides the control system of the IO request of the 3rd embodiment, and it is described in detail on the basis of the first embodiment shown in Fig. 3.The difference of the control system of the present embodiment and above-mentioned the first embodiment is:
A plurality of I/O requests that the first receiving element 221 receives are positioned at different predefined merging sections, and this merges section can be pre-defined by the first processing unit 222.
I/O request corresponding to physical block address that the first 222 pairs of processing units are positioned within same merging section merges, to form an I/O request.I/O request corresponding to physical block address being positioned at outside same merging section do not merged, to form the 2nd I/O request simultaneously.Further, the first processing unit 222 also asks polymerization in a scsi command the one I/O request and the 2nd I/O, and control the first transmitting element 223 and this scsi command is sent to the second receiving element 211 of SAN storage system 210, so that the second processing unit 212 is resolved this scsi command, and the I/O request and the 2nd I/O that according to parsing, obtain have asked the data access in SAN storage system 210.
The SAN storage system 210 of above-mentioned several embodiment of the present invention and SCSI driving side 220, the control method of the corresponding I/O request based on above-described embodiment, therefore can have identical technique effect.And should be understood that, the division of the describing module of disclosed SAN storage system 210 and SCSI driving side 220, be only that a kind of logic function is divided, during actual realization, can there is other dividing mode, for example a plurality of modules can in conjunction with or can be integrated in another system, or some features can ignore, or do not carry out.In addition, module coupling or communication connection each other can be by some interfaces, can be also electrical or other form.
Above-mentioned each functional module is as the ingredient of SAN storage system 210 and SCSI driving side 220, can be or can not be also physical frame, both can be positioned at a place, also can be distributed in a plurality of network element, both can adopt the form of hardware to realize, and also can adopt the form of software function frame to realize.Can select according to the actual needs some or all of module wherein to realize the present invention program's object.
The present invention also provides the control system of a kind of IO request of the 4th embodiment, on the basis of the control system of the IO request that it discloses in the first embodiment shown in Fig. 3, is described in detail.As shown in Figure 4, the SCSI driving side 220 disclosing in the present embodiment comprises the first receiver 321, first processor 322 and the first transmitter 323, and SAN storage system 210 comprises the second receiver 311, the second processor 312 and the second transmitter 313.
A plurality of I/O requests that the first receiver 321 forms for receiving application 230, the plurality of I/O request is for to carry out the request of data access to a plurality of logical blocks in SAN storage system 210.
A plurality of I/Os request generated query instruction of first processor 322 for receiving according to the first receiver 321, and control the first transmitter 323 and query statement is sent to the second receiver 311 of SAN storage system 210.
The second processor 312 is for obtain the mapping relations of SAN storage system 210 LBA (Logical Block Addressing) and physical block address according to query statement, and controls the second transmitter 313 and mapping relations are sent to the first receiver 321 of SCSI driving side 220.
First processor 322, for according to the continuity of physical block address, asks that I/O corresponding to continuous physical block address merge.
The first transmitter 323 is sent to the second receiver 311 of SAN storage system 210 for the I/O request after first processor 322 is merged.
The second processor 312 has been asked the access to data in SAN storage system 210 according to the I/O after merging.
In sum, the present invention is by obtaining the physical block address of the LBA (Logical Block Addressing) correspondence in SAN storage system in a plurality of I/O requests, and I/O request corresponding to continuous physical block address merged, thereby can complete the merging of the I/O request that is distributed in a plurality of logical spaces, reduce mutual in the transmission channel of I/O request, and significantly promote the access performance of I/O request.
The foregoing is only embodiments of the invention; not thereby limit the scope of the claims of the present invention; every equivalent structure or conversion of equivalent flow process that utilizes instructions of the present invention and accompanying drawing content to do; or be directly or indirectly used in other relevant technical fields, be all in like manner included in scope of patent protection of the present invention.

Claims (12)

1. a control method for I/O request, for SAN storage system is carried out to data access, is characterized in that, described control method comprises:
Receive a plurality of I/O requests, and determine corresponding physical block address according to the LBA (Logical Block Addressing) in described I/O request, wherein said a plurality of I/O requests are for to carry out the request of data access to the logical block of a plurality of logical spaces;
According to the continuity of described physical block address, described a plurality of I/O requests are merged;
I/O request after merging is polymerized to a scsi command, is sent to described SAN storage system.
2. control method according to claim 1, is characterized in that, describedly according to the LBA (Logical Block Addressing) in described I/O request, determines that the step of corresponding physical block address comprises:
Send query statement to described SAN storage system, and receive the LBA (Logical Block Addressing) of described SAN storage system feedback and the mapping table of physical block address;
According to described mapping table, inquiry obtains physical block address corresponding to LBA (Logical Block Addressing) in described a plurality of I/O request.
3. control method according to claim 2, is characterized in that, described LBA (Logical Block Addressing) and described physical block address have the block of bytes of formed objects.
4. control method according to claim 1, is characterized in that, described according to the continuity of described physical block address, and the step that described a plurality of IO requests are merged comprises:
Choose and inquire about continuous physical block address in the described physical block address obtaining, and I/O request corresponding to described continuous physical block address merged for the first time;
Choose and inquire about discontinuous physical block address in the described physical block address obtaining, and corresponding I/O request is sorted to described discontinuous physical block address;
I/O request by the I/O request after sequence and after merging for the first time merges for the second time.
5. control method according to claim 1, is characterized in that,
Before the described step that described a plurality of I/O requests are merged, comprise:
The pre-defined section that merges;
The described step that described a plurality of I/O requests are merged comprises:
I/O request corresponding to described physical block address being positioned within same described merging section merged, to form an I/O request;
I/O request corresponding to described physical block address being positioned at outside same described merging section do not merged, to form the 2nd I/O request.
6. control method according to claim 5, is characterized in that, the I/O request after merging is polymerized to a scsi command, and the step that is sent to described SAN storage system comprises:
Ask polymerization in a scsi command a described I/O request and described the 2nd I/O, and described scsi command is sent to described SAN storage system.
7. a SCSI driving side, is characterized in that, described SCSI driving side comprises:
The first receiving element, be used for receiving a plurality of I/O requests, and receiving the corresponding physical block address that SAN storage system is determined according to the LBA (Logical Block Addressing) in described I/O request, wherein said a plurality of I/O requests are for to carry out the request of data access to the logical block of a plurality of logical spaces in described SAN storage system;
The first processing unit, for according to the continuity of the described physical block address of described the first receiving element reception, merges described a plurality of I/O requests, and the I/O request after merging is polymerized to a scsi command;
The first transmitting element, for being sent to described scsi command described SAN storage system.
8. SCSI driving side according to claim 7, it is characterized in that, the described a plurality of I/O request generated query instruction of described the first processing unit for receiving according to described the first receiving element, and control described the first transmitting element described query statement is sent to described SAN storage system, described the first receiving element receives the LBA (Logical Block Addressing) of described SAN storage system feedback and the mapping table of physical block address, and described the first processing unit obtains physical block address corresponding to LBA (Logical Block Addressing) in described a plurality of I/O request according to described mapping table inquiry.
9. SCSI driving side according to claim 8, is characterized in that, described LBA (Logical Block Addressing) and described physical block address have identical block of bytes size.
10. SCSI driving side according to claim 7, it is characterized in that, the continuous physical block address of described physical block address that described the first processing unit also obtains for choosing inquiry, and I/O request corresponding to described continuous physical block address merged for the first time, and choose and inquire about discontinuous physical block address in the described physical block address obtaining, and to described discontinuous physical block address, corresponding I/O request is sorted, and with the I/O request by the I/O request after sequence and after merging for the first time, merges for the second time.
11. SCSI driving sides according to claim 7, it is characterized in that, described the first processing unit is also for the pre-defined section that merges, and I/O request corresponding to described physical block address being positioned within same described merging section merged, to form an I/O request, and I/O request corresponding to described physical block address being positioned at outside same described merging section do not merged, to form the 2nd I/O request.
12. SCSI driving sides according to claim 11, it is characterized in that, described the first processing unit is also for asking polymerization in a scsi command a described I/O request and described the 2nd I/O, and controls described the first transmitting element described scsi command is sent to described SAN storage system.
CN201310647835.1A 2013-12-04 2013-12-04 SCSI drive side and I/O request control method Active CN103617136B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310647835.1A CN103617136B (en) 2013-12-04 2013-12-04 SCSI drive side and I/O request control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310647835.1A CN103617136B (en) 2013-12-04 2013-12-04 SCSI drive side and I/O request control method

Publications (2)

Publication Number Publication Date
CN103617136A true CN103617136A (en) 2014-03-05
CN103617136B CN103617136B (en) 2017-02-01

Family

ID=50167839

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310647835.1A Active CN103617136B (en) 2013-12-04 2013-12-04 SCSI drive side and I/O request control method

Country Status (1)

Country Link
CN (1) CN103617136B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105282244A (en) * 2015-09-29 2016-01-27 华为技术有限公司 Data processing method and device, server and controller
CN106469174A (en) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 Method for reading data and device
CN109857682A (en) * 2017-11-30 2019-06-07 华为技术有限公司 Data access method, memory and processor
CN110489353A (en) * 2019-07-19 2019-11-22 苏州浪潮智能科技有限公司 A kind of raising solid state hard disk bandwidth reading performance method and device
CN111176566A (en) * 2019-12-25 2020-05-19 山东方寸微电子科技有限公司 eMMC read-write control method supporting queue command and storage medium
CN111190844A (en) * 2019-12-31 2020-05-22 杭州华澜微电子股份有限公司 Protocol conversion method and electronic equipment
CN112380148A (en) * 2020-11-30 2021-02-19 海光信息技术股份有限公司 Data transmission method and data transmission device
CN113485948A (en) * 2021-06-29 2021-10-08 成都忆芯科技有限公司 NVM bad block management method and control unit
CN115794700A (en) * 2022-11-28 2023-03-14 无锡众星微系统技术有限公司 Aggregation management disc access method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033477A1 (en) * 2001-02-28 2003-02-13 Johnson Stephen B. Method for raid striped I/O request generation using a shared scatter gather list
WO2004066059A2 (en) * 2003-01-22 2004-08-05 Falanx Microsystems As Microprocessor systems
CN1543092A (en) * 2003-11-07 2004-11-03 清华大学 SCSI instruction optimization method based on FC-SAN storage device
CN1545030A (en) * 2003-11-14 2004-11-10 清华大学 Data distribution dynamic mapping method based on magnetic disc characteristic
CN1996226A (en) * 2006-12-28 2007-07-11 华中科技大学 I/O requests area forecasting method based on sequence-degree clustering algorithm and time series
CN101183298A (en) * 2007-12-26 2008-05-21 杭州华三通信技术有限公司 SCSI data read-write method, system and device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033477A1 (en) * 2001-02-28 2003-02-13 Johnson Stephen B. Method for raid striped I/O request generation using a shared scatter gather list
WO2004066059A2 (en) * 2003-01-22 2004-08-05 Falanx Microsystems As Microprocessor systems
CN1543092A (en) * 2003-11-07 2004-11-03 清华大学 SCSI instruction optimization method based on FC-SAN storage device
CN1545030A (en) * 2003-11-14 2004-11-10 清华大学 Data distribution dynamic mapping method based on magnetic disc characteristic
CN1996226A (en) * 2006-12-28 2007-07-11 华中科技大学 I/O requests area forecasting method based on sequence-degree clustering algorithm and time series
CN101183298A (en) * 2007-12-26 2008-05-21 杭州华三通信技术有限公司 SCSI data read-write method, system and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姜国松 等: ""RAID控制器中I/O调度算法研究"", 《小型微型计算机系统》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106469174B (en) * 2015-08-19 2019-10-29 阿里巴巴集团控股有限公司 Method for reading data and device
CN106469174A (en) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 Method for reading data and device
US11102322B2 (en) 2015-09-29 2021-08-24 Huawei Technologies Co., Ltd. Data processing method and apparatus, server, and controller
CN105282244A (en) * 2015-09-29 2016-01-27 华为技术有限公司 Data processing method and device, server and controller
CN105282244B (en) * 2015-09-29 2018-10-02 华为技术有限公司 a kind of data processing method, device, server and controller
EP3273664A4 (en) * 2015-09-29 2018-04-04 Huawei Technologies Co., Ltd. Data processing method and device, server, and controller
WO2017054540A1 (en) * 2015-09-29 2017-04-06 华为技术有限公司 Data processing method and device, server, and controller
US10708378B2 (en) 2015-09-29 2020-07-07 Huawei Technologies Co., Ltd. Data processing method and apparatus, server, and controller
CN109857682A (en) * 2017-11-30 2019-06-07 华为技术有限公司 Data access method, memory and processor
CN110489353A (en) * 2019-07-19 2019-11-22 苏州浪潮智能科技有限公司 A kind of raising solid state hard disk bandwidth reading performance method and device
CN111176566A (en) * 2019-12-25 2020-05-19 山东方寸微电子科技有限公司 eMMC read-write control method supporting queue command and storage medium
CN111176566B (en) * 2019-12-25 2023-09-19 山东方寸微电子科技有限公司 eMMC read-write control method supporting queue command and storage medium
CN111190844A (en) * 2019-12-31 2020-05-22 杭州华澜微电子股份有限公司 Protocol conversion method and electronic equipment
CN112380148A (en) * 2020-11-30 2021-02-19 海光信息技术股份有限公司 Data transmission method and data transmission device
CN113485948A (en) * 2021-06-29 2021-10-08 成都忆芯科技有限公司 NVM bad block management method and control unit
CN113485948B (en) * 2021-06-29 2023-11-14 成都忆芯科技有限公司 NVM bad block management method and control part
CN115794700A (en) * 2022-11-28 2023-03-14 无锡众星微系统技术有限公司 Aggregation management disc access method and device

Also Published As

Publication number Publication date
CN103617136B (en) 2017-02-01

Similar Documents

Publication Publication Date Title
CN103617136A (en) SCSI drive side and I/O request control method
CN1324450C (en) Storage system and storage controller
US9135190B1 (en) Multi-profile memory controller for computing devices
US7596660B2 (en) System and method for storage system
US8307186B2 (en) Computer system performing capacity virtualization based on thin provisioning technology in both storage system and server computer
US7596642B2 (en) System and program for determining the availability of paths to a device
JP5729774B2 (en) Memory controller, memory system, solid state drive, and method for processing several commands
US8639898B2 (en) Storage apparatus and data copy method
JP7116381B2 (en) Dynamic relocation of data using cloud-based ranks
US20150242329A1 (en) Computer system, computer and method for performing thin provisioning capacity management in coordination with virtual machines
CN102609215B (en) Data processing method and device
CN102123176B (en) Space distribution and management method and device for network storage system
JP5537732B2 (en) Storage system
US8151079B2 (en) Computer system, storage area allocation method, and management computer
CN106873903B (en) Data storage method and device
CN103176913B (en) Hard disk method for mapping dynamically and the server applying it
US9223516B2 (en) Data accessing method and apparatus for performing the same using a host logical unit (HLUN)
US20170039140A1 (en) Network storage device for use in flash memory and processing method therefor
CN101815036B (en) Method and device for realizing access control
US8996805B2 (en) Shared cache module and method thereof
CN104571960B (en) I/O request dispensing device and method, main frame, storage array and computer system
CN103530236A (en) Method and device for obtaining hybrid hard disk
US20130031570A1 (en) Sas virtual tape drive
US9015410B2 (en) Storage control apparatus unit and storage system comprising multiple storage control apparatus units
US20210311654A1 (en) Distributed Storage System and Computer Program Product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant