CN101183298A - SCSI data read-write method, system and device - Google Patents

SCSI data read-write method, system and device Download PDF

Info

Publication number
CN101183298A
CN101183298A CNA2007101606409A CN200710160640A CN101183298A CN 101183298 A CN101183298 A CN 101183298A CN A2007101606409 A CNA2007101606409 A CN A2007101606409A CN 200710160640 A CN200710160640 A CN 200710160640A CN 101183298 A CN101183298 A CN 101183298A
Authority
CN
China
Prior art keywords
scsi
request
polymerization
buffer memory
seed
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
CNA2007101606409A
Other languages
Chinese (zh)
Other versions
CN100552613C (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.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CNB2007101606409A priority Critical patent/CN100552613C/en
Publication of CN101183298A publication Critical patent/CN101183298A/en
Application granted granted Critical
Publication of CN100552613C publication Critical patent/CN100552613C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a read and write method for SCSI data used to improve the read-write performance of SCSI systems, which comprises the following steps: an SCSI request of a piece of SCSI initiator equipment is received; according to the received SCSI request, the continuity between the SCSI request and the aggregation seed of a cache is judged; if the continuity does not exist, the SCSI request is used as the new aggregation seed to perform cache; otherwise, the SCSI request and the aggregation seed of the cache are polymerized to generate a new aggregation seed to perform cache; when send-down conditions are satisfied, all the SCSI requests in the cache are sent in sequence to the SCSI target equipment. The invention has the advantages that: by aggregating the read or write operations of a plurality of continuous small block data into one read or write operation request, the transmission time of the read-write operation requests and the execution time of the requests are reduced; the read-write performance is effectively improved, and the requirements of specific read-write algorithms are satisfied.

Description

A kind of scsi data reading/writing method, system and device
Technical field
The present invention relates to electronic information technical field, particularly relate to a kind of scsi data reading/writing method, system and device.
Background technology
SCSI (Small Computer System Interface, the minicomputer system special purpose interface) is mainly used to connect peripheral apparatus to improve system performance or to increase new function, for example hard disk, CD-ROM drive, ZIP, modulator-demodular unit, scanner, magnetic tape station, JAZ, printing or the like.So because scsi interface card and equipment very the machine of costliness scsi interface mainly based on medium-to-high grade equipment such as workstation, servers.But maturation gradually along with the PC technology, scsi device is widely used, the peripheral product of supporting scsi interface is from originally only having hard disk, magnetic tape station, be increased to various devices such as scanner, CD-ROM drive, CD writer, MO, add improvement of Manufacturing Technology, the price of SCSI card and peripheral hardware is all in tolerance interval, so SCSI has obtained widespread use.
As shown in Figure 1, be prior art SCSI processing of request process flow diagram, comprise SCSI initiator equipment, SCSI target equipment and service transmission subsystem among the figure.Wherein, SCSI initiator equipment is the scsi device that comprises client and SCSI initiator port, can be to SCSI target equipment initiating equipment service and task management request, and reception SCSI target equipment return to described device service and task management request responding; SCSI target equipment is connected by the service transmission subsystem with SCSI initiator equipment, is used for device service and task management request that treatment S CSI initiator equipment is initiated; The service transmission subsystem is a SCSI I/O system part, sends the transmission requests service of SCSI initiator equipment to SCSItarget equipment, and the response that SCSI target equipment is returned sends SCSI initiator equipment to.
The SCSI request that Initiator equipment is different with task management demand structure according to device service, request sends to target equipment by the service transmission subsystem; After target equipment receives the SCSI request, handle according to request type, and result is returned to Initiator equipment.Each SCSI request comprises the input of the CDB (command descriptor block) of a definition executable operations and number order appointment and is used for other parameter of processing command.Wherein, CDB is the structure that SCSI initiator device transmission SCSI asks SCSI target equipment to use; Length is generally 6,10,12,16 bytes or random length, first byte representation SCSI requested operation sign indicating number, sign read-write operation request or other request.SCSI request and response asynchronous process after a SCSI request sends to target, do not wait for that target equipment finishes Request Processing, and transmission subsystem continues to send next SCSI request.After Target equipment is finished Request Processing, give Initiator equipment with the SCSI response pass again.
As shown above, SCSI read-write operation request for the generation of SCSI Initiator equipment, the service transmission subsystem is directly passed to SCSI target equipment, SCSI target equipment is directly resolved the scsi command field, carry out corresponding scsi command, then command response (order completion status) is passed to SCSI Initiator equipment by the service transmission subsystem.
In realizing embodiment of the invention process; the inventor finds that there are the following problems at least in the prior art: different or according to the needs of system according to the service application occasion; small data transmission or very high to response time requirement is carried out in requirement, can send continuous fritter read-write operation request usually in order to reach above-mentioned requirements SCSI Initiator equipment.If but SCSI Initiator equipment sends continuous fritter read-write operation request, the service transmission subsystem is little blocks of data of transmission and order continuously, therefore causes the service transmission subsystem performance low.And on the other hand, SCSI target equipment also must be handled a large amount of fritter request of data, and be the continuous Resources allocation of fritter data read-write operation request or carry out related operation, as DMA transmission, RAID read-write algorithm etc., these all can cause the readwrite performance of scsi system to reduce.
Summary of the invention
The problem that the embodiment of the invention will solve provides a kind of scsi data reading/writing method, system and device, solve in the prior art because the caused service transmission subsystem performance of fritter data read-write operation request is low, and the technological deficiency that causes the readwrite performance of scsi system to reduce.
For achieving the above object, the embodiment of the invention proposes a kind of scsi data reading/writing method on the one hand, is used to improve the readwrite performance of scsi system, may further comprise the steps: receive the SCSI request of SCSI initiator equipment; Judge according to the described SCSI request that receives whether described SCSI request is continuous with the polymerization seed of buffer memory; If judge discontinuously, then described SCSI request is carried out buffer memory as new polymerization seed, at follow-up SCSI request and described new polymerization seed consecutive hours, follow-up SCSI request is carried out polymerization with described new polymerization seed; If judge continuously, then the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization; All SCSI requests of buffer memory are sent to described SCSI target equipment successively after issuing condition satisfying.
Wherein, whether the described SCSI of judgement request is specially continuously with the polymerization seed of buffer memory: judge whether described SCSI request is identical with the cenospecies child-operation attribute of described buffer memory; If all be read operation or write operation, judge further then whether described SCSI request is continuous with the address of the polymerization seed institute solicit operation of described buffer memory; If described SCSI request is identical with the operation of the polymerization seed of described buffer memory and address institute's solicit operation is continuous, judge that then described SCSI request is continuous with the polymerization seed of described buffer memory.
Wherein, need the satisfied condition of issuing to be specially: the length of the SCSI request after the polymerization is more than or equal to the length of appointment; Or the polymerization stand-by period is overtime; Or the SCSI of polymerization request quantity reaches the specified request number.
Wherein, described method also comprises: the polymerization seed at described buffer memory is the read operation request, and the described SCSI request that receives is write operation requests, and the address of described read operation request and described write operation requests institute solicit operation is when identical; Or, polymerization seed at described buffer memory is a write operation requests, the described SCSI request that receives is the read operation request, and the address of described write operation requests and described read operation request institute solicit operation is when identical, then earlier the described SCSI request of buffer memory is sent to described SCSI target equipment.
Wherein, described polymerization seed with SCSI request and buffer memory carries out polymerization and is specially: the polymerization seed of described SCSI request and described buffer memory is determined initial initial sector and working length accordingly.
Wherein, after the described SCSI request that buffer memory is all is sent to described SCSI target equipment successively, also comprise: receive the SCSI response that described SCSI target equipment returns; After judging that described SCSI response is for the SCSI request responding of polymerization, corresponding SCSI response is set and returns to described SCSI initiator equipment according to each the SCSI request before the polymerization.
The embodiment of the invention also proposes a kind of scsi data read-write system, be used to improve the readwrite performance of scsi system, comprise SCSI initiator equipment, SCSI target equipment and request polyplant, described SCSIinitiator equipment, be used for sending the SCSI request to described SCSI target equipment, and receive the SCSI response that described SCSI target equipment returns by the described request polyplant by the described request polyplant; Described SCSI target equipment is used for receiving the SCSI request that described SCSI initiator equipment sends by the described request polyplant, carries out corresponding operating, and execution result is returned to described SCSI initiator equipment by described SCSI response; The described request polyplant, be used to receive the SCSI request of described SCSI initiator equipment, and at the polymerization seed consecutive hours of described SCSI request with buffer memory, the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization, when described SCSI request is discontinuous with the polymerization seed of buffer memory, described SCSI request is carried out buffer memory as new polymerization seed, at follow-up SCSI request and described new polymerization seed consecutive hours, follow-up SCSI request is carried out polymerization with described new polymerization seed; And the request of the SCSI after the polymerization is sent to described SCSI target equipment after issuing condition satisfying.
Wherein, the described request polyplant also is used to receive the SCSI response that described SCSI target equipment returns, after judging that described SCSI response is for the SCSI request responding of polymerization, corresponding SCSI response is set and returns to described SCSI initiator equipment according to each the SCSI request before the polymerization.
The embodiment of the invention also proposes a kind of request polyplant, be used to improve the readwrite performance of scsi system, comprise SCSI request receiver module, request judge module, polymerization module and sending module, described SCSI request receiver module is used to receive the SCSI request of SCSI initiator equipment; The described request judge module, be used for judging according to the described SCSI request that described SCSI request receiver module receives whether described SCSI request is continuous with the polymerization seed of buffer memory, at the polymerization seed consecutive hours of described SCSI request, described SCSI request is carried out buffer memory as new polymerization seed with buffer memory; Described polymerization module is used for judging that at the described request judge module described SCSI asks and the polymerization seed consecutive hours of buffer memory, and the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization; Described sending module is used for the request of the SCSI after the polymerization being sent to described SCSI target equipment after issuing condition satisfying.
Wherein, the described request judge module comprises operation judges submodule and address judgement submodule, and described operation judges submodule is used to judge whether described SCSI request is identical with the cenospecies child-operation attribute of described buffer memory; Submodule is judged in described address, be used for after described operation judges submodule judges that the cenospecies child-operation attribute of described SCSI request and described buffer memory is identical, further judge whether described SCSI request continuous with the address of the polymerization seed institute solicit operation of described buffer memory, if described SCSI request is identical with the operation of the polymerization seed of described buffer memory and the address of institute's solicit operation continuously then think that described SCSI asks and the polymerization seed of described buffer memory is continuous.
Wherein, comprise also that SCSI responds receiver module, respond judge module and module is set that described SCSI response receiver module is used to receive the SCSI response that described SCSI target equipment returns; Described response judge module is used to judge whether the described SCSI response that described SCSI response receiver module receives is the SCSI request responding of polymerization; The described module that is provided with is used for corresponding SCSI response being set and returning to described SCSI initiator equipment according to each SCSI request before the polymerization after described response judge module judges that connecing described SCSI response is the SCSI request responding of polymerization.
The embodiment of the invention also proposes a kind of data read-write system, between the originating end and destination end of storage system, comprise reading and writing data software and the hardware that moves this reading and writing data software, wherein this reading and writing data software is used so that data read-write system is carried out the step in the above-mentioned scsi data reading/writing method in the hardware operation.
The technical scheme of the embodiment of the invention has the following advantages, by continuous fritter data read or write is polymerized to a read or write request, thereby the number of transmissions of read-write operation request and the execution time of request have been reduced, effectively improve readwrite performance, and satisfy the demand of specific read-write algorithm.
Description of drawings
Fig. 1 is a prior art SCSI processing of request process flow diagram;
Fig. 2 is the SCSI Initiator equipment of the embodiment of the invention one sends a process flow diagram from the SCSI request message to SCSI target equipment;
Fig. 3 is the SCSI Initiator equipment of the embodiment of the invention two sends a process flow diagram from the SCSI request message to SCSI target equipment;
Fig. 4 is the scsi data reading/writing method process flow diagram of the embodiment of the invention three;
Fig. 5 is the scsi data reading/writing method synoptic diagram of the embodiment of the invention four;
Fig. 6 is the scsi data reading/writing method synoptic diagram of the embodiment of the invention five;
Fig. 7 is an embodiment of the invention scsi data read-write system structural drawing.
Embodiment
Below in conjunction with drawings and Examples, the specific embodiment of the present invention is described in further detail:
The embodiment of the invention mainly is SCSI request the carrying out polymerization with the little blocks of data of SCSI Initiator equipment transmission, being polymerized to a total SCSI request back sends to SCSI target equipment, thereby alleviate the burden of service transmission subsystem, reduce the number of transmissions of read/write operation request and the execution time of request, effectively improve readwrite performance.
As shown in Figure 2, send the process flow diagram of SCSI request message to SCSI target equipment for the SCSI Initiator equipment of the embodiment of the invention one, at first before the SCSI request that SCSI Initiator equipment sends arrives SCSI target equipment, need carry out polymerization to the continuous fritter data read-write operation request that SCSI Initiator equipment sends, a plurality of SCSI requests are aggregated into a SCSI request, be handed down to SCSI target equipment by the service transmission subsystem afterwards, thereby can reduce the number of transmissions of service transmission subsystem, and also can improve SCSI target device processes SCSI rate request, finish identical read-write capability, improve the system read-write performance.As the continuous fritter data reading operation request that sends for 10 SCSI Initiator equipment, SCSI target equipment need carry out analysis request 10 times, and carry out the data that corresponding read operation can be asked SCSI Initiator equipment according to request and all read and send to SCSI Initiator equipment, but for SCSI request through polymerization, only need carry out a read operation gets final product, thereby greatly reduce SCSI target device processes SCSI rate request, improved the system read-write performance.
At first little blocks of data is carried out polymerization in the above-described embodiments and send to SCSI target equipment by the service transmission subsystem again, but also can be earlier by the transmission of service transmission subsystem, again polymerization is carried out in the request after the transmission of service transmission subsystem, though so also can improve SCSI target device processes SCSI rate request, not reduce the number of transmissions of service transmission subsystem.As shown in Figure 3, send the process flow diagram of SCSI request message to SCSI target equipment for the SCSI Initiator equipment of the embodiment of the invention two.
As shown in Figure 4, the scsi data reading/writing method process flow diagram for the embodiment of the invention three may further comprise the steps:
Step S401, SCSI initiator equipment sends the SCSI request by the request polyplant to SCSI target equipment, and this SCSI request can be the read operation request, also can be write operation requests.
Step S402, request polyplant judge whether the polymerization seed of buffer memory after receiving the SCSI request of SCSI initiator equipment, if there is not the polymerization seed of buffer memory, then this SCSI request are carried out buffer memory as new polymerization seed.Wherein, for the request polyplant, may be cached with a plurality of polymerization seeds, after receiving the SCSI request, judge respectively whether it is continuous with the polymerization seed of buffer memory, then itself and this polymerization seed is carried out the new polymerization seed of polymerization generation continuously as itself and any polymerization seed.If the polymerization seed of buffer memory is arranged, then further judge whether to satisfy the condition that issues, issue condition then this SCSI request is sent to SCSI target equipment if satisfy.Wherein the condition of issuing can be the length of the length of the SCSI request after the polymerization greater than appointment, i.e. the data length of the maximum that the length of the request of the SCSI after the polymerization can have been carried more than or equal to the SCSI request; Or the request polyplant polymerization stand-by period is overtime; Or the SCSI of polymerization request quantity reaches the specified request number, can't continue polymerization.
If step S403 less than foot clockwork spring spare, judges then whether this SCSI request is continuous with the polymerization seed (one or more new SCSI requests, or the SCSI of one or more polymerizations request) of buffer memory.If it is discontinuous then this SCSI request is carried out buffer memory as new polymerization seed.But as a preferred version of the present invention, if the SCSI that this time receives request is write operation requests, and when the address of described read operation request and described write operation requests institute solicit operation is identical, then elder generation is sent to SCSI target equipment with the described SCSI request of buffer memory, because if earlier write operation requests is sent to SCSItarget equipment, send the SCSI request after the polymerization again, identical address is read in SCSI request request after this polymerization, the result who reads so is exactly data rather than the original data that SCSI request request writes, and therefore will cause the mistake of read-write.
Judge wherein whether the SCSI request is specially continuously with the polymerization seed of buffer memory: judge whether the SCSI request is identical with the cenospecies child-operation attribute of buffer memory, judges promptly whether these two requests all are read operation or write operation; If these two requests all are read operation or write operation, judge further then whether the SCSI request is continuous with the address of the polymerization seed institute solicit operation of buffer memory; If described SCSI request is identical with the operation of the polymerization seed of described buffer memory and address institute's solicit operation is continuous, judge that then the SCSI request is continuous with the polymerization seed of buffer memory.Each SCSI read-write requests requires the data of SCSI target equipment to designated sector read-write designated length, and the respective field in the CDB structure is represented the initial sector and the read-write length of read-write requests.If the field among two read-write requests CDB satisfies condition 1 or condition 2 in the following table, think that promptly two read-write requests are continuous;
Condition 1:(A) initial sector of initial sector+read/write length=(B)
Condition 2:(B) initial sector of initial sector+read/write length=(A)
If two SCSI read-write requests (A, B) are continuous, can re-construct a SCSI request (C), according to the initial sector of A, B request and the respective field in length filling C request CDB and other command parameter, finish identical read-write requests function.
Ask the parameter of (C) as follows as new SCSI at condition 1:
(C) initial sector of initial sector=(A)
(C) the read-write length of the read-write of read/write length=(A) length+(B)
Ask the parameter of (C) as follows as new SCSI at condition 2:
(C) initial sector of initial sector=(B)
(C) the read-write length of the read-write of read/write length=(A) length+(B)
For convenience of description, will be that example is described below with concrete SCSI request:
As shown in Figure 5, be the scsi data reading/writing method synoptic diagram of the embodiment of the invention four, in three SCSI requests that SCSIinitiator equipment sends, it is 3 continuous that SCSI request 1 and SCSI ask, and it is 3 discontinuous that SCSI request 2 and SCSI request 1 and SCSI ask.At first SCSI is asked 1 buffer memory as the polymerization seed, after receiving SCSI request 2, it is 1 discontinuous to judge that SCSI request 2 and SCSI ask, then SCSI request 2 is carried out buffer memory as a new polymerization seed, receive SCSI request 3 again, and whether polymerization seed SCSI request 1 and the polymerization seed SCSI request 2 of judging SCSI request 3 and buffer memory be continuous, it is 1 continuous that the polymerization seed SCSI of SCSI request 3 and buffer memory asks, and therefore asks 3 polymerizations to generate SCSI request 4 SCSI request 1 and SCSI and wait for follow-up SCSI request carrying out polymerization as new polymerization seed with SCSI request 2.
As shown in Figure 6, scsi data reading/writing method synoptic diagram for the embodiment of the invention five, in three SCSI requests that SCSIinitiator equipment sends, SCSI request 1, SCSI request 2 and SCSI request 3 are all continuous, at first SCSI is asked 1 buffer memory as the polymerization seed, after receiving SCSI request 2, judge that SCSI request 2 is continuous with SCSI request 1 (polymerization seed), then ask 1 polymerization to generate new SCSI request 4 (new polymerization seeds) SCSI request 2 and SCSI, receive SCSI request 3 again, and the polymerization seed 4 of judging SCSI request 3 and buffer memory is continuous, therefore asks 3 polymerizations to generate new SCSI request 5 SCSI request 4 and SCSI.
Step S404, if judge continuously, then the polymerization seed with described SCSI request and buffer memory carries out polymerization, and the request of the SCSI after the polymerization is sent to described SCSI target equipment after issuing condition satisfying.
Step S405, SCSI target equipment is carried out corresponding operating according to the SCSI request that receives, and returns the SCSI response.
Step S406, the request polyplant receives the SCSI response that SCSI target equipment returns, and judge whether this SCSI response is the SCSI request responding of polymerization, if not then normally to the SCSIInitiator device forwards, if then need corresponding SCSI response to be set and to return to described SCSI initiator equipment according to each the SCSI request before the polymerization.
As shown in Figure 7, be embodiment of the invention scsi data read-write system structural drawing, this system is used to improve the readwrite performance of scsi system, comprise SCSI initiator equipment 1, SCSI target equipment 2 and request polyplant 3, SCSI initiator equipment 1 is used for sending the SCSI request by request polyplant 3 to SCSI target equipment 2, and receives the SCSI response that SCSI target equipment 2 returns by request polyplant 3; SCSI target equipment 2 is used for receiving the SCSI request that SCSI initiator equipment 1 sends by request polyplant 3, carries out corresponding operating, and execution result is returned to SCSI initiator equipment 1 by described SCSI response; Request polyplant 3 is used to receive the SCSI request of SCSI initiator equipment 1, and at the polymerization seed consecutive hours of described SCSI request with buffer memory, the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization, when described SCSI request is discontinuous with the polymerization seed of buffer memory, described SCSI request is carried out buffer memory as new polymerization seed, at follow-up SCSI request and described new polymerization seed consecutive hours, follow-up SCSI request is carried out polymerization with described new polymerization seed; And the request of the SCSI after the polymerization is sent to SCSItarget equipment 2 after issuing condition satisfying.
Wherein, request polyplant 3 also is used to receive the SCSI response that SCSI target equipment 2 returns, after judging that described SCSI response is for the SCSI request responding of polymerization, corresponding SCSI response is set and returns to SCSI initiator equipment 1 according to each the SCSI request before the polymerization.
Wherein, request polyplant 3 comprises SCSI request receiver module 31, request judge module 32, polymerization module 33 and sending module 34, and SCSI request receiver module 31 is used to receive the SCSI request of SCSI initiator equipment 1; Request judge module 32 is used for judging according to the SCSI request that SCSI request receiver module 31 receives whether described SCSI request is continuous with the polymerization seed of buffer memory, at the polymerization seed consecutive hours of described SCSI request, described SCSI request is carried out buffer memory as new polymerization seed with buffer memory; Polymerization module 33 is used for judging at request judge module 32 the polymerization seed consecutive hours of described SCSI request and buffer memory, and the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization; Sending module 34 is used for the request of the SCSI after the polymerization being sent to SCSItarget equipment 2 after issuing condition satisfying.Wherein, request judge module 32 comprises operation judges submodule 321 and address judgement submodule 322, and operation judges submodule 321 is used to judge whether described SCSI request is identical with the cenospecies child-operation attribute of described buffer memory; The address judges that submodule 322 is used for after operation judges submodule 321 judges that the cenospecies child-operation attribute of described SCSI request and described buffer memory is identical, further judge whether described SCSI request continuous with the address of the polymerization seed institute solicit operation of described buffer memory, if described SCSI request is identical with the operation of the polymerization seed of described buffer memory and the address of institute's solicit operation continuously then think that described SCSI asks and the polymerization seed of described buffer memory is continuous.
Wherein, request polyplant 3 also comprises SCSI response receiver module 35, responds judge module 36 and module 37 is set, and SCSI response receiver module 35 is used to receive the SCSI response that SCSI target equipment 2 returns; Response judge module 36 is used to judge whether the SCSI response that SCSI response receiver module 35 receives is the SCSI request responding of polymerization; Module 37 is set to be used for corresponding SCSI response being set and returning to described SCSI initiator equipment 1 according to each SCSI request before the polymerization after response judge module 36 judges that connecing described SCSI response is the SCSI request responding of polymerization.
The embodiment of the invention is by being polymerized to a read or write request with continuous fritter data read or write, thereby reduced the number of transmissions of read-write operation request and the execution time of request, effectively improves readwrite performance, and satisfies the demand of specific read-write algorithm.
Through the above description of the embodiments, those skilled in the art can be well understood to the present invention and can realize by the mode that software adds essential general hardware platform, can certainly pass through hardware, but the former is better embodiment under a lot of situation.Based on such understanding, the part that technical scheme of the present invention contributes to prior art in essence in other words can embody with the form of software product, this computer software product is stored in the storage medium, comprise that some instructions are with so that a computer equipment (can be a personal computer, server, the perhaps network equipment etc.) carry out the described method of each embodiment of the present invention.
The above only is a preferred implementation of the present invention; should be pointed out that for those skilled in the art, under the prerequisite that does not break away from the principle of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (12)

1. scsi data reading/writing method is used to improve the readwrite performance of scsi system, it is characterized in that, may further comprise the steps:
Receive the SCSI request of SCSI initiator equipment;
Judge according to the described SCSI request that receives whether described SCSI request is continuous with the polymerization seed of buffer memory;
If judge discontinuously, then described SCSI request is carried out buffer memory as new polymerization seed, at follow-up SCSI request and described new polymerization seed consecutive hours, follow-up SCSI request is carried out polymerization with described new polymerization seed;
If judge continuously, then the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization;
All SCSI requests of buffer memory are sent to described SCSI target equipment successively after issuing condition satisfying.
2. scsi data reading/writing method according to claim 1 is characterized in that, whether the described SCSI of judgement request is specially continuously with the polymerization seed of buffer memory:
Judge whether described SCSI request is identical with the cenospecies child-operation attribute of described buffer memory;
If all be read operation or write operation, judge further then whether described SCSI request is continuous with the address of the polymerization seed institute solicit operation of described buffer memory;
If described SCSI request is identical with the operation of the polymerization seed of described buffer memory and address institute's solicit operation is continuous, judge that then described SCSI request is continuous with the polymerization seed of described buffer memory.
3. scsi data reading/writing method according to claim 1 is characterized in that, the condition of issuing that needs to satisfy is specially:
The length of the SCSI request after the polymerization is more than or equal to the length of appointment;
Or the polymerization stand-by period is overtime;
Or the SCSI of polymerization request quantity reaches the specified request number.
4. as scsi data reading/writing method as described in the claim 2, it is characterized in that, described method also comprises: the polymerization seed at described buffer memory is the read operation request, the described SCSI request that receives is write operation requests, and the address of described read operation request and described write operation requests institute solicit operation is when identical;
Or, polymerization seed at described buffer memory is a write operation requests, the described SCSI request that receives is the read operation request, and the address of described write operation requests and described read operation request institute solicit operation is when identical, then earlier the described SCSI request of buffer memory is sent to described SCSI target equipment.
5. scsi data reading/writing method according to claim 1 is characterized in that, described polymerization seed with SCSI request and buffer memory carries out polymerization and is specially:
The polymerization seed of described SCSI request and described buffer memory is determined initial initial sector and corresponding working length.
6. scsi data reading/writing method according to claim 1 is characterized in that, after the described SCSI request that buffer memory is all is sent to described SCSI target equipment successively, also comprises:
Receive the SCSI response that described SCSI target equipment returns;
After judging that described SCSI response is for the SCSI request responding of polymerization, corresponding SCSI response is set and returns to described SCSI initiator equipment according to each the SCSI request before the polymerization.
7. scsi data read-write system is used to improve the readwrite performance of scsi system, it is characterized in that, comprises SCSI initiator equipment, SCSI target equipment and request polyplant,
Described SCSI initiator equipment is used for sending the SCSI request by the described request polyplant to described SCSI target equipment, and receives the SCSI response that described SCSI target equipment returns by the described request polyplant;
Described SCSI target equipment is used for receiving the SCSI request that described SCSI initiator equipment sends by the described request polyplant, carries out corresponding operating, and execution result is returned to described SCSI initiator equipment by described SCSI response;
The described request polyplant, be used to receive the SCSI request of described SCSI initiator equipment, and at the polymerization seed consecutive hours of described SCSI request with buffer memory, the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization, when described SCSI request is discontinuous with the polymerization seed of buffer memory, described SCSI request is carried out buffer memory as new polymerization seed, at follow-up SCSI request and described new polymerization seed consecutive hours, follow-up SCSI request is carried out polymerization with described new polymerization seed; And the request of the SCSI after the polymerization is sent to described SCSI target equipment after issuing condition satisfying.
8. as scsi data read-write system as described in the claim 7, it is characterized in that, the described request polyplant also is used to receive the SCSI response that described SCSI target equipment returns, after judging that described SCSI response is for the SCSI request responding of polymerization, corresponding SCSI response is set and returns to described SCSI initiator equipment according to each the SCSI request before the polymerization.
9. request polyplant is used to improve the readwrite performance of scsi system, it is characterized in that, comprises SCSI request receiver module, request judge module, polymerization module and sending module,
Described SCSI request receiver module is used to receive the SCSI request of SCSI initiator equipment;
The described request judge module, be used for judging according to the described SCSI request that described SCSI request receiver module receives whether described SCSI request is continuous with the polymerization seed of buffer memory, at the polymerization seed consecutive hours of described SCSI request, described SCSI request is carried out buffer memory as new polymerization seed with buffer memory;
Described polymerization module is used for judging that at the described request judge module described SCSI asks and the polymerization seed consecutive hours of buffer memory, and the polymerization seed of described SCSI request with buffer memory carried out generating new polymerization seed and buffer memory after the polymerization;
Described sending module is used for the request of the SCSI after the polymerization being sent to described SCSI target equipment after issuing condition satisfying.
10. as claim 9 described request polyplant, it is characterized in that the described request judge module comprises operation judges submodule and address judgement submodule,
Described operation judges submodule is used to judge whether described SCSI request is identical with the cenospecies child-operation attribute of described buffer memory;
Submodule is judged in described address, be used for after described operation judges submodule judges that the cenospecies child-operation attribute of described SCSI request and described buffer memory is identical, further judge whether described SCSI request continuous with the address of the polymerization seed institute solicit operation of described buffer memory, if described SCSI request is identical with the operation of the polymerization seed of described buffer memory and the address of institute's solicit operation continuously then think that described SCSI asks and the polymerization seed of described buffer memory is continuous.
11., it is characterized in that as claim 9 described request polyplant, comprise that also SCSI responds receiver module, respond judge module and module is set,
Described SCSI response receiver module is used to receive the SCSI response that described SCSI target equipment returns;
Described response judge module is used to judge whether the described SCSI response that described SCSI response receiver module receives is the SCSI request responding of polymerization;
The described module that is provided with is used for corresponding SCSI response being set and returning to described SCSI initiator equipment according to each SCSI request before the polymerization after described response judge module judges that connecing described SCSI response is the SCSI request responding of polymerization.
12. data read-write system, between the originating end and destination end of storage system, it is characterized in that, comprise reading and writing data software and the hardware that moves this reading and writing data software, wherein this reading and writing data software is used so that data read-write system is carried out as the described step of claim 1-6 in the hardware operation.
CNB2007101606409A 2007-12-26 2007-12-26 A kind of scsi data reading/writing method, system and device Expired - Fee Related CN100552613C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2007101606409A CN100552613C (en) 2007-12-26 2007-12-26 A kind of scsi data reading/writing method, system and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007101606409A CN100552613C (en) 2007-12-26 2007-12-26 A kind of scsi data reading/writing method, system and device

Publications (2)

Publication Number Publication Date
CN101183298A true CN101183298A (en) 2008-05-21
CN100552613C CN100552613C (en) 2009-10-21

Family

ID=39448592

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007101606409A Expired - Fee Related CN100552613C (en) 2007-12-26 2007-12-26 A kind of scsi data reading/writing method, system and device

Country Status (1)

Country Link
CN (1) CN100552613C (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102243617A (en) * 2011-07-08 2011-11-16 福建星网锐捷网络有限公司 Read/write processing method, read/write processing equipment and read/write processing system
CN101448022B (en) * 2008-09-09 2012-05-30 创新科存储技术(深圳)有限公司 Control method of system interface iSCSI receiving end window of internet small computer and device
CN103617136A (en) * 2013-12-04 2014-03-05 华为技术有限公司 SCSI drive side and I/O request control method
CN108491168A (en) * 2018-03-30 2018-09-04 北京联想核芯科技有限公司 A kind of processing method and solid state disk of reading and writing command stream
CN111857590A (en) * 2020-07-17 2020-10-30 苏州浪潮智能科技有限公司 NAND effective data reading method and device
CN113364637A (en) * 2021-08-09 2021-09-07 中建电子商务有限责任公司 Network communication optimization method and system based on batch packing scheduling
WO2023050857A1 (en) * 2021-09-30 2023-04-06 华为技术有限公司 Computing node cluster, data aggregation method and related device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448022B (en) * 2008-09-09 2012-05-30 创新科存储技术(深圳)有限公司 Control method of system interface iSCSI receiving end window of internet small computer and device
CN102243617A (en) * 2011-07-08 2011-11-16 福建星网锐捷网络有限公司 Read/write processing method, read/write processing equipment and read/write processing system
CN102243617B (en) * 2011-07-08 2014-01-01 福建星网锐捷网络有限公司 Read/write processing method, read/write processing equipment and read/write processing system
CN103617136A (en) * 2013-12-04 2014-03-05 华为技术有限公司 SCSI drive side and I/O request control method
CN108491168A (en) * 2018-03-30 2018-09-04 北京联想核芯科技有限公司 A kind of processing method and solid state disk of reading and writing command stream
CN111857590A (en) * 2020-07-17 2020-10-30 苏州浪潮智能科技有限公司 NAND effective data reading method and device
CN111857590B (en) * 2020-07-17 2023-05-05 苏州浪潮智能科技有限公司 NAND effective data reading method and device
CN113364637A (en) * 2021-08-09 2021-09-07 中建电子商务有限责任公司 Network communication optimization method and system based on batch packing scheduling
WO2023050857A1 (en) * 2021-09-30 2023-04-06 华为技术有限公司 Computing node cluster, data aggregation method and related device

Also Published As

Publication number Publication date
CN100552613C (en) 2009-10-21

Similar Documents

Publication Publication Date Title
CN100552613C (en) A kind of scsi data reading/writing method, system and device
US7162550B2 (en) Method, system, and program for managing requests to an Input/Output device
US7730257B2 (en) Method and computer program product to increase I/O write performance in a redundant array
US6260110B1 (en) Virtual tape system with variable size
US8838892B2 (en) Data storage method and storage device
US6070224A (en) Virtual tape system
JP2020038623A (en) Method, device, and system for storing data
EP2557494B1 (en) Storage apparatus and data copy method between thin-provisioning virtual volumes
CN102075401B (en) Method, equipment and system for transmitting message on peripheral component interface express (PCIE) bus
US10956990B2 (en) Methods and apparatuses for adjusting the distribution of partitioned data
US20120324160A1 (en) Method for data access, message receiving parser and system
CN104102693A (en) Object processing method and device
JP2002140233A (en) Storage sub system, control method for i/o interface and information processing system
US6886074B1 (en) Method and apparatus for raid load balancing
CN110597879B (en) Method and device for processing time series data
CN109375868B (en) Data storage method, scheduling device, system, equipment and storage medium
US20040059758A1 (en) Method and apparatus for optimizing extent size
CN111125168B (en) Data processing method and device, electronic equipment and storage medium
EP1782175A2 (en) Time budgeting for non-data transfer operations in drive units
JP2001125749A (en) Recording medium with recorded external storage device driver program and computer having external storage device access function
US8332549B2 (en) Method and system for implementing parallelism with SCSI I/O referrals
CN113687977A (en) Data processing device based on RAID controller to realize calculation performance improvement
US7831741B2 (en) Indexing device and method for data storage system
CN109032965B (en) Data reading method, host and storage device
US20060112301A1 (en) Method and computer program product to improve I/O performance and control I/O latency in a redundant array

Legal Events

Date Code Title Description
C06 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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091021

Termination date: 20191226