CN103714023A - Method to prevent I/O starvation of slower hosts in a multi-host environment - Google Patents

Method to prevent I/O starvation of slower hosts in a multi-host environment Download PDF

Info

Publication number
CN103714023A
CN103714023A CN201310447283.XA CN201310447283A CN103714023A CN 103714023 A CN103714023 A CN 103714023A CN 201310447283 A CN201310447283 A CN 201310447283A CN 103714023 A CN103714023 A CN 103714023A
Authority
CN
China
Prior art keywords
control unit
storage control
main frame
busy condition
usability status
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
CN201310447283.XA
Other languages
Chinese (zh)
Other versions
CN103714023B (en
Inventor
M·R·克雷格
C·A·哈代
B·W·霍利
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103714023A publication Critical patent/CN103714023A/en
Application granted granted Critical
Publication of CN103714023B publication Critical patent/CN103714023B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

A method, system and computer-usable medium are disclosed for managing storage control unit input/output (I/O) operations in a multi-host environment. A storage control unit sends a busy status message when it has exhausted its resources to process new I/O requests. Once the utilization of the storage control unit's resources has subsided to a predetermined upper utilization value, it sends an availability status message to a first predetermined number of host systems that are owed an availability statue message. After the first predetermined number of availability status messages are sent, the storage control unit then waits for a predetermined period of time before sending a second predetermined number of availability status messages.

Description

Prevent the method and system of slower main frame I/O hunger in multi-host environment
Technical field
Present invention relates in general to computer realm and similar technology, and more specifically relate to the software using in this field.Further particularly, the present invention relates to for method, system and computer usable medium in multi-host environment managed storage control module I/O (I/O) operation.
Background technology
In multi-mode, multi-link environment, the ability that host computer using storage control unit starts a plurality of I/O (I/O) operations usually exceeds the ability of the I/O request that this control module has enough resources to process all to enter.When this thing happens, storage control unit will respond the main frame of the request of sending with busy condition designator (such as, CUBusy status message), to indicate it to exhaust its available resources and can not process when the request that advance into.When receiving busy condition message, main frame is hung up the new I/O request to the logical path of appointment, until storage control unit responds with availability indicator (such as, CUEnd status message), the condition having operated before this designator indication stops no longer exists.
But when the same storage control unit of a plurality of host accesss, some main frame may be able to respond usability status message quickly than other main frame.For example, in storage area network (SAN) configuration, the main frame of accessing storage control unit through switch, extender and other SAN element will visit control module through longer path.In addition, some main frame is just only due to its design or intrinsic hardware capabilities and faster.
In any case once storage control unit is jumped out from busy condition, it just sends usability status message to previous every the logical path that has sent busy condition message.As response, each main frame that receives this usability status message will drive its uncompleted I/O request again.But main frame generally starts slow main frame their uncompleted I/O requests quickly faster.Therefore,, because storage control unit will be first receives and process I/O request from main frame faster, this makes it before the I/O request that can process from slower main frame, exhaust its internal resource, therefore slower main frame possibility " suffering from hunger ".
Summary of the invention
Disclose for method, system and computer usable medium in multi-host environment managed storage control module I/O (I/O) operation.In various embodiments, storage control unit I/O management system is implemented as being limited to from the main frame number of storage control unit availability of reception status message the subset that it had previously sent busy condition message.In these and other embodiment, the number that limits busy condition message, by having allowed time enough all again to drive their uncompleted I/O by All hosts, gives thus the equal chance of slower main frame and visits the resource of being managed by storage control unit.
In these various embodiment, storage control unit sends busy condition message when exhausting its resource to such an extent as to can not process new I/O request.For example, once the utilization factor of the resource of storage control unit is subsided to the predetermined upper limit (upper) utilization factor value (, 70%), it just enters controlled availability and sends state.In this state, storage control unit cycles through all logical paths of owing (owe) its usability status message and the host computer system that usability status message is sent to the ensuing predetermined quantity of owing its usability status message in " wheel turns (round-robin) " mode.In various embodiments, the predetermined quantity of main frame can be amount or dynamic definite amount of fixing.
After sending the usability status message of the first predetermined quantity, storage control system was waited for predetermined time section before the usability status message that sends the second predetermined quantity.In one embodiment, measure the required time quantum of response of host busy condition message of the request of sending.Then, determine whether the response time of measuring is greater than current time delay interval.If be greater than, current time delay interval is reset the busy condition message response time of measuring.In certain embodiments, for example, to a time delay intervals application factor (, 1.5 times), to guarantee that it is greater than the required maximum time amount of the slowest response of host busy condition message.In certain embodiments, when the utilization factor of the resource of storage control unit be subsided to predetermined compared with poor efficiency value (for example, 50%), time, storage control unit sends usability status message by stopping the controlled transmission of usability status message and restarting for owing all logical paths of its usability status message.
Accompanying drawing explanation
By reference to accompanying drawing, the present invention can be better understood, and its a plurality of targets, feature & benefits will become obvious to those skilled in the art.Run through several accompanying drawings, same or analogous element is all indicated in the use of same numeral.
Fig. 1 has drawn wherein can realize exemplary client computer of the present invention;
Fig. 2 is the simplified block diagram of network environment;
Fig. 3 is the simplified block diagram that comprises the storage system of storage control unit;
Fig. 4 is the vague generalization operational flowchart of controlled usability status marking operation; And
Fig. 5 a-b is the vague generalization operational flowchart that controlled usability status message management operates.
Specific embodiment
The invention discloses for method, system and computer usable medium in multi-host environment managed storage control module I/O (I/O) operation.As the skilled person will recognize, the present invention can be presented as method, system or computer program.Correspondingly, embodiments of the invention can be completely with hardware, realize with software (comprising firmware, resident software, microcode etc.) or with the embodiment in conjunction with software and hardware completely.These various embodiment can be called " circuit ", " module " or " system " in this article in general manner.In addition, the present invention can also take the form of the computer program in computer-usable storage medium, in this medium, has comprised computer usable program code.
Can use any suitable computing machine to use or computer-readable medium.Computing machine can with or computer-readable medium can be such as, but not limited to, electricity, magnetic, optical, electrical magnetic, infrared ray or semiconductor system, device or equipment.The more specifically example of computer-readable medium (non-exhaustive list) will comprise following: portable computer diskette, hard disk, random-access memory (ram), ROM (read-only memory) (ROM), EPROM (Erasable Programmable Read Only Memory) (EPROM or flash memories), portable optic disk ROM (read-only memory) (CD-ROM), optical storage apparatus or magnetic storage apparatus.Under the background of this document, computing machine can with or computer-readable medium can be can comprise, storage, transmission or transmission procedure use or combine with it any medium of use for instruction execution system, device or equipment.
For carrying out the computer program code of the present invention's operation, can use OO programming language, such as Java, Smalltalk, C++ etc., writes.But, for carrying out the computer program code of the present invention's operation, also can, with traditional process programming language, such as " C " programming language or similar programming language, write.Program code can be completely on user's computing machine, partly on user's computing machine, as independently software package, part on user's computing machine and also part on far-end computer or completely, on far-end computer or server, carry out.Under rear a kind of scene, far-end computer can be connected to user's computing machine by Local Area Network or wide area network (WAN), or can be connected to outside computing machine (for example,, by utilizing the internet of ISP).
Below with reference to describing embodiments of the invention according to flowchart text and/or the block diagram of the method for the embodiment of the present invention, device (system) and computer program.To understand, in each piece of described flowchart text and/or block diagram and described flowchart text and/or block diagram, the combination of piece can be realized by computer program instructions.These computer program instructions can offer the processor of multi-purpose computer, special purpose computer or other programmable data treating apparatus, produce a kind of machine, make, when described instruction is when the processor of machine or other programmable data treating apparatus is carried out as calculated, to produce for realizing the device one or more of described process flow diagram and/or block diagram specified function/actions.
These computer program instructions can also be stored in computer-readable memory, described instruction can instruct computer or other programmable data treating apparatus function in a particular manner, the instruction that makes to be stored in computer-readable memory produces a kind of manufacture article, and these article comprise the command device of realizing specified function/action in described process flow diagram and/or block diagram one or more.
Described computer program instructions can also be loaded on computing machine or other programmable data treating apparatus, sequence of operations step is carried out on computing machine or other programmable device, to produce a kind of computer implemented process, the instruction that makes to carry out on described computing machine or other programmable device is provided for realizing the step of specified function/action in described process flow diagram and/or block diagram one or more.
Fig. 1 wherein can utilize the block diagram of exemplary client computer 102 of the present invention.Client computer 102 comprises the processor unit 104 that is coupled to system bus 106.The video adapter 108 of controlling display 110 is also coupled to system bus 106.System bus 106 is coupled to I/O (I/O) bus 114 through bus bridge 112.I/O interface 116 is coupled to I/O bus 114.I/O interface 116 provides and the communicating by letter of various I/O equipment, and these I/O equipment comprise keyboard 118, mouse 120, compact disc read-only memory (CD-ROM) driver 122, floppy disk 124 and flash drive storer 126.The form that is connected to the port of I/O interface 116 can be known to the skilled any form of field of computer architecture, includes but not limited to USB (universal serial bus) (USB) port.
Client computer 102 can utilize network interface 130 to communicate by letter with service provider server 152 through network 128, and wherein network interface 130 is coupled to system bus 106.Network 128 can be the external network such as internet, or such as the internal network of Ethernet or VPN(Virtual Private Network).Utilize network 128, client computer 102 can be used the present invention to visit service provider server 152.
Hard disk driver interface 132 is also coupled to system bus 106.Hard disk driver interface 132 and hard disk driver 134 interfaces.In a preferred embodiment, hard disk driver 134 construction system storeies 136, this system storage 136 is also coupled to system bus 106.The data of construction system storer 136 comprise operating system (OS) 138 and the software program 144 of client computer 102.
OS138 comprises the shell 140 for the transparent user's access of the Resource Supply to such as software program 144.Conventionally, shell 140 is the programs of interpreter and interface that provide between user and operating system.More particularly, shell 140 carry out be input to command line user interface or from the order of file.Thereby, shell 140(just as
Figure BDA0000388391450000051
middle called like that),
Figure BDA0000388391450000052
in also referred to as command processor, top in operating system software level and serve as command interpreter normally.Shell provides system prompt, explains by the order of keyboard, mouse or the input of other user's input media, and the order after explaining is sent to lower level suitable in operating system (for example, kernel 142) to process.Although shell 140 normally text based, towards row user interface, the present invention also can support other user interface mode, such as figure, voice, gesture etc.
As depicted, OS138 also comprises kernel 142, this kernel comprises the lower level function for OS138, comprises other parts and the required basic service of software program 144 of OS138, comprises memory management, process and task management, disk management and mouse and Keyboard management.Software program 144 can comprise browser 146 and email client 148.(browser 146 comprises makes world wide web (www) client, client computer 102) can utilize super rext transfer agreement (HTTP) message to the program module and instruction of internet sending and receiving internet message, make it possible to thus communicate by letter with service provider server 152.In various embodiments, software program 144 can also comprise storage control unit I/O (I/O) management system 150.In these and other embodiment, storage control unit I/O management system 150 comprises for realizing the code of process hereinafter described.In one embodiment, client computer 102 can be from service provider server 152 downloaded stored control module I/O management systems 150.
The hardware elements of drawing in client computer 102 is not limit, but representative, so that outstanding parts used in the present invention.For example, client computer 102 can comprise standby memory storage device, such as magnetic tape cassette, numeral variation dish (DVD), Bernoulli tape cassete etc.These and other variant will be within purport of the present invention, scope and intention.
Fig. 2 is according to the simplified block diagram of the network environment of embodiment of the present invention realization.In such an embodiment, network environment 200 comprises the one or more client 202 that are interconnected to one or more host computer systems 206 by network 204.In various embodiments, network 204 can comprise Local Area Network, wide area network (WAN), internet, Intranet or can the one or more client 202 of operation handlebar be connected to any other networks of one or more host computer systems 206.In various embodiments, client 202 can comprise server system (herein also referred to as " host computer system 206 ").In the middle of some embodiment in these embodiments, this server system 202 can carry out peering session with host computer system 206.Generally speaking, client 202 can start communication session, and host computer system 206 can be waited for the request from client 202.In certain embodiments, client 202 and host computer system 206 for example can be connected to one or more inside or outside directly attached storage system 212(, the array of hard disk drive, solid-state drive, tape drive etc.).In these and other embodiment, client 202, host computer system 206 and direct attached storage system 212 can be utilized protocol communications such as ATA, SATA, SCSI, SAS, optical-fibre channel.
In various embodiments, network environment 200 can comprise storage networking 208, such as storage area network (SAN) or LAN(for example, and when using network-attached reservoir).In these and other embodiment, storage networking 208 is connected to one or more storage systems 210 host computer system 206, such as array 210a, tape library 210b, each hard disk drive 210c or the solid-state drive 210c of hard disk drive or solid-state drive, tape drive 210d, CD-ROM storehouse etc.Storage networking 208 is in the embodiment of SAN therein, and host computer system 206 can be utilized such as the networking standard of optical-fibre channel (FC) and communicate by letter with storage system 210.
Fig. 3 is according to the simplified block diagram of the storage system that comprises storage control unit of embodiment of the present invention realization.In such an embodiment, storage system 210a comprises storage control unit 300, one or more switch 302 and one or more memory device 304, for example, such as hard disk drive, solid-state drive (, the driver based on flash memories).In this and other embodiment, storage control unit 300 can make one or more host computer systems 206 can access the data that are stored in one or more memory devices 304.
In various embodiments, storage control unit 300 can comprise one or more server 306a-b.In these and other embodiment, storage control unit 300 can also comprise host adapter 308 and device adapter 310, to respectively storage control unit 300 is connected to host computer system 106 and memory device 304.In these various embodiment, a plurality of server 306a-b can provide redundancy, to guarantee that data always can allow the host computer system 206 connecting obtain.Therefore, if server 306a is out of order, other server 306b can keep its function, to guarantee that I/O can continue between host computer system 206 and memory device 304.This process can be called as " fault transfer ".
As shown in Figure 3, each server 306a-b for example comprises one or more processor 312(, n road symmetric multiprocessor) and storer 314.In these and other embodiment, storer 314 can comprise that volatile memory (for example, RAM) and nonvolatile memory (for example, ROM, EPROM, EEPROM, hard disk, flash memories etc.).Volatile memory and nonvolatile memory can be stored on processor 312 operation and for the software module of the data of accessing storage device 304, such as storage control unit I/O management system 150.Server 306a-b can deposit at least one example of these software modules.In certain embodiments, these software modules can be managed all read-write requests of logical volume in memory device 304.
In various embodiments, host computer system 206 can for example, be communicated by letter with the storage control unit 300 of controlling physical storage device (, memory device 304).In these and other embodiment, the physical storage device that controlled by storage control unit 300 can logical expressions be a plurality of logical path resources in storage control unit 300.Application in host computer system 206 can be carried out I/O (I/O) operation for the logical path resource of storage control unit 300.For example, the application in host computer 206 can be write logical path resource.Conversely, storage control unit 300 can maintain the corresponding relation between storage medium in logical path resource and physical storage device through logic and physical volume.Although data can physically be write the storage medium in physical storage device under the control of storage control unit 300, with regard to the application in related host computer, this application is carried out write operation for logical path resource.
Those skilled in the art recognize, when storage control unit 300 arrives wherein its and lacks the condition of processing from the necessary resource of the new I/O request of system host 206, it will send busy condition message, such as connecting at optical fiber the CUBusy message defining in (FICON) agreement.Busy condition message indication mechanism main frame 206 should not start any more I/O operation again on the logical path of appointment, until storage control unit 300 sends follow-up usability status to this passage, such as CUEnd message, it connects in (FICON) agreement and defines at optical fiber equally.
Generally speaking, because host computer system 206 will drive their I/O simply again, until target storage control unit 300 has available resource, this I/O management method is enough.But, along with multisystem environment becomes more heterogeneous, can not guarantee the I/O that slower host computer system 206 can be utilized storage control unit 300 to start immediately them again to be driven before they run into busy condition again.Therefore, because storage control unit 300 is by the I/O request that first receives and process from very fast host computer system 206, this makes it before the I/O request that can process from slower host computer system 206, exhaust its internal resource, therefore slower host computer system 206 possibilities " suffering from hunger ".
In various embodiments, storage control unit I/O management system 150 is implemented as the number of the host computer system 206 from storage control unit 300 availability of reception status messages is limited to the subset that it had previously sent busy condition message.In these and other embodiment, the quantity that limits usability status message, by having allowed time enough all again to drive their uncompleted I/O by All hosts system 206, gives thus the equal chance of slower main frame and visits the resource that is stored control module 300 management.
In these various embodiment, when storage control unit 300 exhausts its resource to such an extent as to can not process new I/O request, first it send busy condition message.Once storage control unit 300 reaches this busy condition, it sends busy condition message with regard to continuing in response to new I/O request, until the utilization factor of its resource is subsided to predetermined UpperUtilizationValue value.As used in this, UpperUtilizationValue value refers to the upper limit number percent (for example, 70%) of the resource of storage control unit.
Once the utilization factor of the resource of storage control unit 300 is subsided to this predetermined UpperUtilizationValue value, it just enters controlled usability status.In this state, storage control unit 300 cycles through and owes all logical paths of its usability status message and usability status message is sent to an ensuing predetermined quantity host computer system 206 of owing its usability status message in " wheel turns " mode.In various embodiments, this predetermined quantity of main frame is called as LogicalPathQnty.LogicalPathQnty used herein refers to be selected to start the logical path amount in the AvailabilityMessageOwed path list of usability status message.In the middle of some embodiment in these embodiments, LogicalPathQnty can be differently amount or dynamic definite amount of fixing.
After having sent a LogicalPathQnty usability status message, storage control unit 300 will be waited for predetermined time section before sending a 2nd LogicalPathQnty usability status message.In various embodiments, section can be differently quiet hour interval or dynamic definite time interval this predetermined time.In one embodiment, measure the required time quantum of system host 206 response busy condition message of the request of sending.Then whether definite measured response time is greater than current AvailabilityDelay value, and this value is equal to the current usability status message delay time interval.If be greater than, current AvailabilityDelay value is reset the measured busy condition message response time.According to noted earlier, those skilled in the art will recognize that, AvailabilityDelay value will finally be equal to the required time quantum of response of host busy condition message the slowest in multi-host environment.In certain embodiments, the factor (for example, 1.5 times) is applied to AvailabilityDelay value, to guarantee that it is greater than the required maximum time amount of the slowest response of host busy condition message.
In certain embodiments, with following pattern, place LogicalPathQnty logical path above: in this pattern, to the new I/O request in those paths, will when storage control unit 300 moves to follow-up LogicalPathQnty logical path, receive busy condition message.If the utilization factor of storage control unit 300 resources is subsided to predetermined LowerUtilizationValue value, it sends usability status message by stopping the controlled transmission of usability status message and recovering to all logical paths of owing its usability status message.As used in this, LowerUtilizationValue refers to the lower number percent (for example, 50%) of storage control unit 300 resources.
In certain embodiments, the logical path that 300 pairs of storage control units have wherein sent last controlled usability status message keeps following the tracks of, and, if its resource exhausts again and must send busy condition message time,, when it starts controlled usability status message management again, it will turn back to described last logical path.In various embodiments, if storage control unit 300 completes whole logical path list and again do not run into the condition that it must send busy condition message, it is stopped to controlled usability status message management operation.
Fig. 4 is the vague generalization operational flowchart of the controlled usability status marking operation realized in embodiments of the present invention.In such an embodiment, controlled usability status marking operation starts in step 402, is then to monitor the initial I/O(SIO entering from main frame at step 404 storage control unit) request.Then in step 406, determine whether to receive SIO request from main frame.If no, this process continues, and proceeds step 404.Otherwise, in step 408, increase progressively the quantity (" numActiveI/O ") of the movable I/O of storage control unit.
Then in step 410, determine whether storage control unit has abundant resource and can be used for treatment S IO request.If had, just treatment S IO request in step 412, is then in step 428, to determine whether to finish controlled usability status marking operation.If no, this process just continues, and proceeds step 404.Otherwise the usability status marking operation controlled in step 430 finishes.
But, if determine that in step 410 storage control unit does not have enough resources to process the SIO on its counterlogic path, in step 414, to the main frame of the request of sending, send busy condition message.In step 416, measure the required time quantum of response of host busy condition message of the request of sending, then in definite measured response time of step 418, whether be greater than current AvailabilityDelay value, this value is equal to the current usability status message delay time interval.If be greater than, in step 420, current AvailabilityDelay value is reset to the measured busy condition message response time.
If determine that in step 418 the measured response time is less than current AvailabilityDelay value, once or AvailabilityDelay value is reset in step 420, just AvailabilityMessageOwed mark is set for sending the logical path of the main frame of request in step 422.Thereafter, in order to carry out follow-up " wheel turns ", check, the head of AvailabilityMessageOwed path list is labeled in step 424, and controlled usability status mark is set in step 426.Then, in step 428, determine whether to finish controlled usability status marking operation.If no, this process continues, and proceeds step 402.Otherwise usability status marking operation controlled in step 430 finishes.
Fig. 5 a-b is the vague generalization operational flowchart of the controlled usability status message management operation that realizes in embodiments of the present invention.In such an embodiment, controlled usability status message management operates in step 502 to start, and is then in step 504, to be UpperUtilizationValue, LowerUtilizationValue and LogicalPathQnty settings.Once be provided with the value of UpperUtilizationValue, LowerUtilizationValue and LogicalPathQnty in step 504, just determine whether to exist usability status message will give this passage in step 506.If there is no, just in step 508, determine whether to finish controlled usability status message management operation.If no, this process just continues, and proceeds step 506.Otherwise, in step 526, finish controlled usability status message management operation.
But, if define usability status message in step 506, to give this passage, just in step 510, determine whether to have arranged controlled usability status mark.If also do not had, just in step 512, to all logical paths on AvailabilityMessageOwed path list, send usability status message and process continues, proceed step 506.Otherwise, just in step 514, determine whether the movable I/O counting of storage control unit is less than the UpperUtilizationValue value setting in step 504.If be not less than, process continues, and proceeds step 506.Otherwise the logical path to the number that in AvailabilityMessageOwed path list, the ensuing LogicalPathQnty value by setting in step 506 defines in step 516, starts controlled usability status message.
Then, in step 518, start AvailabilityDelay timer, then in step 520, determine whether to have passed through the AvailabilityDelay time interval.Once determine and passed through the AvailabilityDelay time interval in step 520, just determine in step 522 whether the movable I/O counting of storage control unit is less than LowerUtilizationValue value set in step 504.If be not less than, this process continues, and proceeds step 506.Otherwise controlled usability status is marked in step 524 and resets and process continuation, proceeds step 506.
Although specifically described the present invention, should be appreciated that in the situation that not deviating from defined by the appended claims purport of the present invention and scope, can carry out various changes, replacement and change to it.

Claims (12)

1. for the computer implemented method in multi-host environment managed storage control module I/O (I/O) operation, comprising:
In response to receiving the corresponding I/O request set being generated by associated main frame set, generate busy condition massage set, described busy condition massage set is by described storage control unit, not generated when storage control unit has enough resources to process described I/O request set;
When the utilization factor of the resource of described storage control unit is subsided to the first utilization factor value, generate usability status massage set, described usability status massage set is corresponding to described busy condition massage set;
The first subset of described usability status massage set is offered to the first subset of described main frame set; And
The second subset of described usability status massage set is offered to the second subset of described main frame set, the providing until passed through predetermined time interval of the second subset of described usability status massage set is wherein provided.
2. the method for claim 1, wherein when the utilization factor of the resource of described storage control unit is subsided to the second utilization factor value, does not postpone the providing of the second subset of described usability status massage set.
3. the method for claim 1, wherein said predetermined time interval is to be determined by the required very first time amount of the first busy condition message of busy condition massage set described in the first response of host of described main frame set.
4. method as claimed in claim 3, wherein:
The second time quantum and amount of the described very first time are compared, and described the second time quantum is to be determined by the required time quantum of the second busy condition message of busy condition massage set described in the second response of host of described main frame set; And
Described predetermined time interval is that time quantum larger in described the first and second time quantums is determined.
5. method as claimed in claim 4, wherein said predetermined time interval is pressed predetermined factor to be increased.
6. the method for claim 1, wherein by one of the following quantity of determining as the member's of the first and second subsets of described main frame set main frame:
Fixing quantity; And
The quantity dynamically generating.
7. a system, comprising:
Processor;
Be coupled to the data bus of described processor; And
The computer usable medium that comprises computer program code, described computer usable medium is coupled to described data bus, described computer program code is for operating and comprise the instruction that can be carried out by described processor in multi-host environment management control unit I/O (I/O), and described instruction is configured for:
In response to receiving the corresponding I/O request set being generated by associated main frame set, generate busy condition massage set, described busy condition massage set is by described storage control unit, not generated when storage control unit has enough resources to process described I/O request set;
When the utilization factor of the resource of described storage control unit is subsided to the first utilization factor value, generate usability status massage set, described usability status massage set is corresponding to described busy condition massage set;
The first subset of described usability status massage set is offered to the first subset of described main frame set; And
The second subset of described usability status massage set is offered to the second subset of described main frame set, the providing until passed through predetermined time interval of the second subset of described usability status massage set is wherein provided.
8. system as claimed in claim 7, wherein when the utilization factor of the resource of described storage control unit is subsided to the second utilization factor value, does not postpone the providing of the second subset of described usability status massage set.
9. system as claimed in claim 7, wherein said predetermined time interval is to be determined by the required very first time amount of the first busy condition message of busy condition massage set described in the first response of host of described main frame set.
10. system as claimed in claim 9, wherein:
The second time quantum and amount of the described very first time are compared, and described the second time quantum is to be determined by the required time quantum of the second busy condition message of busy condition massage set described in the second response of host of described main frame set; And
Described predetermined time interval is that time quantum larger in described the first and second time quantums is determined.
11. systems as claimed in claim 10, wherein said predetermined time interval is pressed predetermined factor to be increased.
12. systems as claimed in claim 7, wherein by one of the following quantity of determining as the member's of the first and second subsets of described main frame set main frame:
Fixing quantity; And
The quantity dynamically generating.
CN201310447283.XA 2012-10-04 2013-09-27 Prevent method and system hungry for slower main frame I/O in multi-host environment Expired - Fee Related CN103714023B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/644,897 US9311005B2 (en) 2012-10-04 2012-10-04 Method to prevent I/O starvation of slower hosts in a multi-host environment
US13/644,897 2012-10-04

Publications (2)

Publication Number Publication Date
CN103714023A true CN103714023A (en) 2014-04-09
CN103714023B CN103714023B (en) 2016-08-17

Family

ID=50407017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310447283.XA Expired - Fee Related CN103714023B (en) 2012-10-04 2013-09-27 Prevent method and system hungry for slower main frame I/O in multi-host environment

Country Status (2)

Country Link
US (1) US9311005B2 (en)
CN (1) CN103714023B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108958950A (en) * 2018-05-29 2018-12-07 联发科技(新加坡)私人有限公司 Task management method, host and the storage device of electronic storage device
CN111324297A (en) * 2018-12-13 2020-06-23 爱思开海力士有限公司 Controller, data storage device and operation method of data storage device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10241685B2 (en) * 2016-08-17 2019-03-26 Oracle International Corporation Externally managed I/O starvation avoidance in a computing device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6349350B1 (en) * 1999-05-04 2002-02-19 International Business Machines Corporation System, method, and program for handling failed connections in an input/output (I/O) system
US20110106746A1 (en) * 2009-10-30 2011-05-05 Google Inc. Affiliate linking
US20120054260A1 (en) * 2010-08-26 2012-03-01 Giraffic Technologies Ltd. Asynchronous data streaming in a peer to peer network

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739418B2 (en) * 2004-04-12 2010-06-15 Hewlett-Packard Development Company, L.P. Resource management system
DE602005021113D1 (en) * 2005-10-17 2010-06-17 Hewlett Packard Development Co Communication system and method
US7797468B2 (en) * 2006-10-31 2010-09-14 Hewlett-Packard Development Company Method and system for achieving fair command processing in storage systems that implement command-associated priority queuing
US8117385B2 (en) * 2008-01-23 2012-02-14 International Business Machines Corporation System and method of maximization of storage capacity in a configuration limited system
US8341314B2 (en) * 2009-06-30 2012-12-25 Hewlett-Packard Development Company, L.P. Managing I/O request in storage system
US8898403B2 (en) 2010-03-12 2014-11-25 International Business Machines Corporation Self-adjusting SCSI storage port queue

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6349350B1 (en) * 1999-05-04 2002-02-19 International Business Machines Corporation System, method, and program for handling failed connections in an input/output (I/O) system
US20110106746A1 (en) * 2009-10-30 2011-05-05 Google Inc. Affiliate linking
US20120054260A1 (en) * 2010-08-26 2012-03-01 Giraffic Technologies Ltd. Asynchronous data streaming in a peer to peer network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108958950A (en) * 2018-05-29 2018-12-07 联发科技(新加坡)私人有限公司 Task management method, host and the storage device of electronic storage device
CN111324297A (en) * 2018-12-13 2020-06-23 爱思开海力士有限公司 Controller, data storage device and operation method of data storage device
CN111324297B (en) * 2018-12-13 2023-03-03 爱思开海力士有限公司 Controller, data storage device and operation method of data storage device

Also Published As

Publication number Publication date
US9311005B2 (en) 2016-04-12
CN103714023B (en) 2016-08-17
US20140101256A1 (en) 2014-04-10

Similar Documents

Publication Publication Date Title
EP3255527B1 (en) Remote keyboard-video-mouse technologies
US11960749B2 (en) Data migration method, host, and solid state disk
US9189387B1 (en) Combined memory and storage tiering
US8301848B2 (en) Virtualizing storage for WPAR clients using node port ID virtualization
KR20210008953A (en) Dynamic configuration of data volumes
KR20160022248A (en) Data access apparatus and operating method thereof
US9542328B2 (en) Dynamically controlling a file system write cache
US20150381734A1 (en) Storage system and storage system control method
WO2014138257A1 (en) A mechanism for establishing temporary background communication between applications
JP7139358B2 (en) Program, system, and method for processing space release commands when mirroring data in source storage to target storage
EP3803663B1 (en) Watchdog timer hierarchy
JP2018514027A (en) System and method for improving quality of service in a hybrid storage system
WO2019053565A1 (en) Storage system using cloud storage as a rank
CN103714023A (en) Method to prevent I/O starvation of slower hosts in a multi-host environment
US8572347B2 (en) Storage apparatus and method of controlling storage apparatus
US20120203935A1 (en) Self-adjusting scsi storage port queue
US9135191B1 (en) Techniques for storage network bandwidth management
TWI662419B (en) A network system with local disks for pooled physical resources
US11487550B1 (en) Event communication management
US8312126B2 (en) Managing at least one computer node
US20080263275A1 (en) Data storage controller
KR20220082563A (en) Storate device and operating method of the same
KR20220067282A (en) Storage device, Server comprising the storage device and method for operation the storage device
JP2020135155A (en) Distributed storage system
CN111066045A (en) Transacting with multiple payment service providers

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
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: 20160817