Embodiment
For making the object of the invention, technical scheme and advantage clearer, the embodiment of the invention is explained further details below in conjunction with accompanying drawing.The embodiment of the invention is a kind of technology of automatic distribution RAID 6 bandwidth; Target bandwidth parameter according to user's input is distributed to user's utilized bandwidth; Thereby avoid and to carry out computing with fixed-bandwidth; Good quality of service not only is provided, and has made the certain power consumption of hardware saving on the RAID 6.
At this, illustrative examples of the present invention and explanation thereof are used to explain the present invention, but not as to qualification of the present invention.
Embodiment one
The embodiment of the invention provides the method for bandwidth in a kind of automatic distribution RAID 6 arithmetic systems, and as shown in Figure 1, said method comprises:
101, receive the target bandwidth parameter of input;
102, confirm the utilized bandwidth parameter according to said target bandwidth parameter;
103, according to the buffer memory bandwidth of the buffer unit in said RAID 6 arithmetic systems of said utilized bandwidth parameter configuration and the computing bandwidth of arithmetic element.
Can receive the target bandwidth parameter of user communication device input in the embodiment of the invention step 101; This target bandwidth parameter can be that user communication device hopes to communicate the bandwidth numerical value that expectation reaches with RAID 6 arithmetic systems; The big more explanation user communication device of bandwidth parameter hopes that the speed that communicates with RAID 6 arithmetic systems is fast more, hopes to obtain communication efficiency preferably with this.Step 102 is confirmed the utilized bandwidth parameter according to the target bandwidth parameter that step 101 receives.Because the total bandwidth in the RAID6 arithmetic system is limited after all,, could reach reasonable disposition to total bandwidth like this so will confirm the utilized bandwidth parameter that said target bandwidth parameter is corresponding according to certain condition.Such as the utilized bandwidth parameter that can confirm user communication device according to conditions such as the priority of user communication device or network conditions, the information that ID carried when wherein conditions such as the priority of user communication device or network condition can be landed according to user communication device etc. is obtained.Step 103 can be according to the buffer memory bandwidth of the buffer unit in definite utilized bandwidth parameter configuration RAID 6 arithmetic systems of step 102 and the computing bandwidth of arithmetic element; Because source data is to arrive arithmetic element again through buffer unit; So at every turn in the process that source data is handled; The bandwidth of buffer unit and arithmetic element must be complementary; But because each source data amount of handling is different; So each buffer memory bandwidth that requires is also different with the computing amount of bandwidth, so buffer memory bandwidth in the buffer unit and the computing bandwidth in the arithmetic element must be adjustable, can not all fix as buffer memory bandwidth in the buffer unit of the prior art and the computing bandwidth in the arithmetic element.Such as the adjustable pushup storage of buffer unit available depth, i.e. the CELL FIFO of depth-adjustment (CELL First In First Out), arithmetic element available parallelism multiplier.
So just can distribute the bandwidth in RAID 6 arithmetic systems automatically; Thereby also adjusted the utilized bandwidth of user communication device; Make user communication device communicate through utilized bandwidth and RAID 6 arithmetic systems; RAID 6 arithmetic systems also can be carried out corresponding operation according to the bandwidth of automatic distribution, thereby proper service quality (QoS, Quality of Service) are provided for user communication device.
Need to prove; To before last time source data is handled, the target bandwidth parameter that newly receives input is not deposited in the storer, such as register; When to after last time source data is handled, newly confirm the utilized bandwidth parameter according to target bandwidth parameter renegotiation.
According to the bandwidth in RAID 6 arithmetic systems of said utilized bandwidth parameter configuration not necessarily is exactly the corresponding target bandwidth of said target bandwidth parameter; Generally do not have only when the maximum utilized bandwidth in RAID 6 arithmetic systems is assigned with and just can obtain the corresponding target bandwidth of target bandwidth parameter when finishing; Promptly the bandwidth numerical value in RAID 6 arithmetic systems of configuration this moment equals the target bandwidth parameter; Perhaps when the priority of user communication device is higher, just can obtain the corresponding target bandwidth of target bandwidth parameter, i.e. utilized bandwidth; If but the priority of certain user communication device is lower; And the maximum utilized bandwidth in RAID 6 arithmetic systems is assigned with and finishes; The utilized bandwidth that this moment, user communication device was assigned with possibly just be not equal to the target bandwidth; But serve as that the basis be the only utilized bandwidth of the user communication device distribution of lower priority through algorithm (such as priority algorithm) with the target bandwidth parameter; Though the user communication device of lower priority can not communicate through target bandwidth and RAID 6 arithmetic systems like this, also can communicate through a more suitable bandwidth and RAID 6 arithmetic systems, obtain good quality of service.
Like this, different user communication devices just can obtain different bandwidth and RAID 6 arithmetic systems communicate, thereby obtain different service quality.
Need to prove; The target bandwidth parameter can not be greater than the applicable maximum bandwidth of user communication device self of input target bandwidth parameter; Even the target bandwidth parameter of input greater than the applicable maximum bandwidth of user self, also can receive user self the restriction of applicable maximum bandwidth.
Present embodiment advantage compared with prior art is; User communication device no longer relies on fixed-bandwidth and RAID 6 arithmetic systems to communicate; Can obtain the corresponding utilized bandwidth of target bandwidth parameter according to the target bandwidth parameter of input; Rationally obtain utilized bandwidth separately, thereby enjoy service separately.
Embodiment two
The embodiment of the invention also provides the method for bandwidth in a kind of automatic distribution RAID 6 arithmetic systems; This method is behind the target bandwidth parameter that receives input; Confirm the utilized bandwidth parameter according to said target bandwidth parameter, and according to the buffer memory bandwidth of the buffer unit in said utilized bandwidth parameter configuration RAID 6 arithmetic systems and the computing bandwidth of arithmetic element.As shown in Figure 2, in the method that present embodiment provides, confirm that according to said target bandwidth parameter the utilized bandwidth parameter comprises:
201, the maximum bandwidth of judging RAID 6 whether be assigned with finish and the target bandwidth parameter whether smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth; If said maximum bandwidth be not assigned with finish and the target bandwidth parameter smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth, then execution in step 202; If said maximum bandwidth be assigned with finish or the target bandwidth parameter greater than the bandwidth that is not assigned with in the maximum bandwidth, then execution in step 203;
202, confirm that the utilized bandwidth parameter is the target bandwidth parameter;
203, confirm the priority of the user communication device of the said target bandwidth parameter of input, confirm the utilized bandwidth parameter that said target bandwidth parameter is corresponding according to said priority.
Confirm the utilized bandwidth parameter according to the target bandwidth parameter that receives in the embodiment of the invention; Wherein definite actual bandwidth parameter that uses can be confirmed according to the priority of the user communication device of importing the target bandwidth parameter and/or the maximum bandwidth distribution condition of RAID 6 arithmetic systems; Such as when the maximum bandwidth of RAID 6 arithmetic systems not by whole distribution and target bandwidth parameter the time smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth, general utilized bandwidth parameter just equals the target bandwidth parameter; But when the maximum bandwidth of RAID6 has all been assigned or target bandwidth parameter greater than the bandwidth that is not assigned with in the maximum bandwidth time; Will consider to import the priority of the user communication device of target bandwidth parameter; The user communication device that priority is high can obtain the corresponding target bandwidth of target bandwidth parameter, also is the obtainable utilized bandwidth of user communication device.The utilized bandwidth that the user communication device that priority is low obtains just is not the corresponding target bandwidth of target bandwidth parameter, but the corresponding utilized bandwidth parameter of target bandwidth parameter that the process priority algorithm obtains.As long as confirm that the utilized bandwidth parameter just can be according to the buffer memory bandwidth of the buffer unit in said utilized bandwidth parameter configuration RAID 6 arithmetic systems and the computing bandwidth of arithmetic element, thereby acquisition utilized bandwidth.
Behind the target bandwidth parameter that receives the user communication device input, will carry out allocated bandwidth according to said target bandwidth parameter.Because the bandwidth that user communication device and RAID 6 arithmetic systems communicate is limited after all;, more user communication device and RAID 6 arithmetic systems can not satisfy each user's target bandwidth when communicating, so will distribute bandwidth according to the rank of the user communication device of input target bandwidth parameter.But the bandwidth that whether maximum bandwidth that before distributing bandwidth, can judge RAID 6 earlier according to step 301 assigns and whether the target bandwidth parameter is not assigned with in smaller or equal to maximum bandwidth; If do not assign and the target bandwidth parameter less this moment smaller or equal to the bandwidth statement that is not assigned with in the maximum bandwidth with the user communication device that RAID 6 arithmetic systems communicate; Can satisfy the target bandwidth parameter of these user communication device inputs fully; Through distributing the target bandwidth to communicate for they and RAID 6 arithmetic systems, RAID 6 arithmetic systems also can communicate according to different bandwidth that is assigned to and corresponding user communication device simultaneously.
But if the maximum bandwidth in RAID 6 arithmetic systems has assigned or though maximum bandwidth does not assign; But the target bandwidth parameter is greater than the bandwidth that is not assigned with in the maximum bandwidth; Explain that this moment and the user communication device that communicates of RAID 6 arithmetic systems are more; All user communication devices that can not satisfy input target bandwidth parameter fully obtain the target bandwidth; So will confirm the priority of the user communication device of the said target bandwidth parameter of input this moment according to step 303, and confirm the utilized bandwidth parameter that the target bandwidth parameter is corresponding according to said priority; And confirm that according to said priority the corresponding utilized bandwidth parameter of said target bandwidth parameter can be is the only utilized bandwidth parameter of the user communication device selection of lower grade through priority algorithm, thereby be that subsequent step is according to said utilized bandwidth parameter configuration utilized bandwidth.Though the user communication device of lower grade can not communicate through target bandwidth and RAID 6 arithmetic systems like this, also can communicate through a more suitable bandwidth and RAID 6 arithmetic systems, obtain good quality of service.
For instance; When the maximum bandwidth in RAID 6 arithmetic systems was 10M, user communication device D hoped to communicate with RAID 6 arithmetic systems, supposed that the target bandwidth parameter that user communication device D is provided with is 2M; Inserting the user communication device A of RAID 6 arithmetic systems and the utilized bandwidth of user communication device B acquisition earlier respectively is 3M; The utilized bandwidth that user communication device C obtains is 2M, the RAID6 arithmetic system after finding have user communication device D to insert, can judge whether current maximum bandwidth 10M assigns and target bandwidth parameter 2M whether smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth; Because the utilized bandwidth that user communication device A and user communication device B obtain respectively is 3M; The utilized bandwidth that user communication device C obtains is 2M, and promptly total bandwidth is assigned as 8M, also has the 2M bandwidth not to be assigned with; And the target bandwidth parameter of user communication device D is 2M; Vacant 2M bandwidth can satisfy the target bandwidth of user communication device D fully, so the actual bandwidth parameter of user communication device D is the target bandwidth parameter, the utilized bandwidth of acquisition is 2M.
When having user communication device E to hope to communicate again with RAID 6 arithmetic systems, can judge earlier still whether current maximum bandwidth 10M assigns, suppose that the target bandwidth parameter that user communication device E is provided with is 2M; Because the utilized bandwidth that user communication device A and user communication device B obtain respectively is 3M; The utilized bandwidth that user communication device C and user communication device D obtain is 2M respectively, and promptly total bandwidth is assigned as 10M, does not have bandwidth left; So need the priority of judges communication facilities E this moment; The user profile that obtains when inserting according to user communication device E, as according to the priority that sign is confirmed user communication device E landed in the user profile, and the priority that user communication device A, B, C, D report when inserting before searching; Confirm that user communication device A, B, E are same one-level; The priority of user communication device C, D is identical and lower than user communication device A, B, E, thus maximum bandwidth is distributed again, because the priority of user communication device E is higher than user communication device C, D; So user communication device E can actual bandwidth parameter be the target bandwidth parameter, the utilized bandwidth of acquisition is 2M.The utilized bandwidth of user communication device A, B is constant, still respectively is 3M.The priority of user communication device C, D is minimum, respectively is 1M.In above-mentioned example; If user communication device A, B, C are same one-level; The priority of user communication device D, E is identical and lower than user communication device A, B, C, thus also to distribute again maximum bandwidth, because the priority of user communication device E is lower than user communication device A, B, C; So user communication device E can actual bandwidth parameter be not the target bandwidth parameter just; Can dispose number percent according to priority algorithm the bandwidth of user communication device D, E is configured this moment, and such as being 50% according to priority algorithm configuration number percent of the prior art, then the utilized bandwidth that obtains of user communication device D, E is 1M.The utilized bandwidth of user communication device A, B, C is constant.The priority of user communication device D, E is minimum, respectively is 1M.
Like this, different user communication devices just can obtain different bandwidth and RAID 6 arithmetic systems communicate, thereby obtain different service quality.
The advantage of doing like this is; Can according to priority the suitable utilized bandwidth parameter of user communication device selection of different stage; Thereby more rationally dispose the buffer memory bandwidth of the buffer unit in RAID 6 arithmetic systems and the computing bandwidth of arithmetic element accurately according to the utilized bandwidth parameter; Be the utilized bandwidth of user communication device, make the distribution of bandwidth to adjust flexibly, no longer arrest in each user and all communicate with fixed-bandwidth and RAID 6 arithmetic systems.
In the present embodiment; Will be after confirming the utilized bandwidth parameter according to the buffer memory bandwidth of the buffer unit in said utilized bandwidth parameter configuration RAID 6 arithmetic systems and the computing bandwidth of arithmetic element according to said target bandwidth parameter; Buffer memory bandwidth according to the said buffer unit of said utilized bandwidth parameter configuration can realize through mode as shown in Figure 3; Please with reference to Fig. 3, this method comprises:
301, the quantity of cache module in the said buffer unit of the corresponding said utilized bandwidth parameter of distribution;
302, adjust the buffer memory framework of said buffer unit according to the quantity of said cache module.
Said buffer memory bandwidth is meant the bandwidth of data buffer in RAID 6 arithmetic systems, also claims the front end data bandwidth according to the transmission direction of source data, so the data of buffer zone promptly can be described as front end data here.Because the source data that when user communication device and RAID 6 arithmetic systems communicate, inserts is the process buffer unit earlier; So using that the source data of suitable bandwidth and entering is flux matched must be according to the utilized bandwidth parameter; The quantity of cache module in the said buffer unit of the corresponding said utilized bandwidth parameter of step 301 distribution; Buffer unit in the present embodiment is the adjustable buffer unit of bandwidth, and such as the CELL FIFO of depth-adjustment, said buffer unit all has the data storage capacities cache module by several and forms; Such as the cell among the CELL FIFO; The quantity of these cache modules can change according to the utilized bandwidth parameter accordingly, and the quantity of said cache module changes the change that also means buffer memory framework in the buffer unit, finally makes the buffer memory bandwidth change.Such as in the CELL of depth-adjustment FIFO, the utilized bandwidth parameter is 3M, then needs 3 cell to carry out the buffer memory to source data; When the utilized bandwidth parameter is 5M, then just need 5 cell to carry out buffer memory to source data; Certainly the maximum bandwidth number in the buffer memory can not become, and promptly cache size can not become, but the change of cell quantity also means the change of each cell storage data capability.So in case change when the quantity of cache module, original buffer memory framework of buffer unit also just changes, be adjusted into new buffer memory framework according to the quantity of new cache module, thereby adapt to new source data amount size.
The buffer memory bandwidth indicate the RAID6 arithmetic system can the process source data volume ability of size; Adjust the buffer memory framework according to the corresponding cache module of parameter configuration; Thereby reach the purpose of allocating cache bandwidth; Improve the dirigibility of RAID6 arithmetic system greatly, when handling small amount of data, can save system power dissipation.
Computing bandwidth according to said utilized bandwidth parameter configuration arithmetic element in the present embodiment can realize that please with reference to Fig. 4, this method comprises through mode as shown in Figure 4:
The quantity of 401, distributing the concurrent operation unit of corresponding said utilized bandwidth parameter;
402, according to said concurrent operation element number adjustment computing framework.
Said computing bandwidth is meant according to the bandwidth in data operation district in said utilized bandwidth parameter configuration RAID 6 arithmetic systems, also claims the Back end data bandwidth according to the transmission direction of source data, so the data here promptly can be described as Back end data.And the computing bandwidth is configured mainly is to distribute the quantity of the concurrent operation unit of corresponding said utilized bandwidth parameter to realize through step 401; Because the concurrent operation unit can carry out concurrent operation to Back end data; The quantity of concurrent operation unit is many more; It is just strong more in the set time, simultaneously Back end data to be carried out the ability of computing, makes the computing bandwidth big more.But the change of the quantity of concurrent operation unit means the variation of computing framework, thus also to adjust the computing framework according to said concurrent operation element number according to step 402, thus could accomplish operation of data.
Back end data mainly comprises checking data and failure recovery data in the RAID arithmetic system, thus distribute the quantity of the concurrent operation unit of corresponding said utilized bandwidth parameter just distribute corresponding said utilized bandwidth parameter the parallel computation checking data arithmetic element and distribute the parallel fail data of corresponding said utilized bandwidth parameter to recover arithmetic element.
So it is main just to of the configuration of actual checking data computing bandwidth with considered repealed data recovery computing bandwidth to the configuration of computing bandwidth.Describe respectively in the face of this down.
It is different that different user communications device accesses RAID 6 arithmetic systems communicate mutual data; And each source data all will be carried out verification computing acquisition checking data in RAID 6 arithmetic systems, so how many source datas are the utilized bandwidth of different user communication facilities determined to be carried out the verification computing basically.Source data is carried out the arithmetic element that the verification computing then needs certain parallel computation checking data; So distribute the quantity of arithmetic element of the parallel computation checking data of corresponding said utilized bandwidth parameter; The arithmetic element quantity of parallel computation checking data is many more; It is just strong more Back end data to be carried out the ability of verification computing in unit interval, makes that verification computing bandwidth is big more.After distributing the arithmetic element of parallel computation checking data,, thereby prepare for the verification source data again according to the framework of the quantity adjustment verification computing of the arithmetic element of parallel computation checking data.The framework of wherein said verification computing comprises path, flow process and the operation time sequence of verification computing.
Equally, recover computing because how many source datas are the utilized bandwidth of different user communication facilities determine to have at most to be carried out data basically.Source data is carried out data recover the parallel fail data recovery arithmetic element that computing then need be certain; Recover the quantity of arithmetic element so distribute the parallel fail data of corresponding said utilized bandwidth parameter; The quantity that parallel fail data is recovered arithmetic element is many more; Back end data being carried out data in unit interval, to recover the ability of computing just strong more, and it is big more to make fail data recover the computing bandwidth.Distribute after parallel fail data recovers arithmetic element, the quantity adjustment fail data of recovering arithmetic element according to parallel fail data is again recovered the framework of computing, thereby prepares for the recovery computing of source data.The framework of wherein said fail data recovery computing comprises the sequential of path, flow process and the fail data recovery computing of fail data recovery computing.
In the present embodiment, the adjustment through to checking data computing bandwidth and fail data recovery bandwidth finally makes the computing bandwidth identical with the buffer memory bandwidth, thereby has guaranteed that Back end data bandwidth and front end data bandwidth are complementary.The adjustable fifo buffer of buffer unit available depth wherein, i.e. the CELL FIFO of depth-adjustment (CELL First In First Out), arithmetic element available parallelism multiplier.
The advantage of present embodiment is; Not only can confirm the utilized bandwidth parameter of target bandwidth parameter according to priority; And can be according to utilized bandwidth parameter configuration buffer memory bandwidth and computing bandwidth; And when configuration computing bandwidth, can obtain actual checking data computing bandwidth and obtain considered repealed data recovery computing bandwidth through disposing parallel fail data recovery arithmetic element through the arithmetic element of configuration parallel computation checking data; Thereby make that front end data bandwidth and Back end data bandwidth are complementary in the RAID6 arithmetic system; Not only more help inserting user communication device and obtain the proper service quality, also brief power consumption necessarily on hardware is promptly used the reasonable configuration bandwidth service of offering the best.
Embodiment three
In order better to realize embodiment one, embodiment two described methods; The embodiment of the invention also provides the device of bandwidth in a kind of automatic distribution RAID 6 arithmetic systems; This device can provide RAID6 service for user communication device, and is as shown in Figure 5, and Fig. 5 is the structured flowchart of device of a kind of automatic distribution RAID 6 bandwidth of the embodiment of the invention; Said device comprises receiving element 501, decision package 502 and band width configuration unit 503, wherein:
Receiving element 501 is mainly used in the target bandwidth parameter that receives input;
Decision package 502 is mainly used in according to said target bandwidth parameter and confirms the utilized bandwidth parameter;
Allocated bandwidth unit 503 is mainly used in the buffer memory bandwidth of the buffer unit in the said RAID6 arithmetic system of confirming according to said decision package of utilized bandwidth parameter configuration and the computing bandwidth of arithmetic element.
In the present embodiment; Decision package 502 be mainly used in whether the maximum bandwidth of judging in RAID 6 arithmetic systems assigns and the target bandwidth parameter whether smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth; If do not assign and the target bandwidth parameter smaller or equal to the bandwidth that is not assigned with in the maximum bandwidth, confirm that then the utilized bandwidth parameter is the target bandwidth parameter; If assign or the target bandwidth parameter greater than the bandwidth that is not assigned with in the maximum bandwidth, then confirm the utilized bandwidth parameter that said target bandwidth parameter is corresponding according to the priority of the said target bandwidth parameter side of input.
Wherein, said allocated bandwidth unit 503 can comprise: buffer memory band width configuration module 531 and computing band width configuration module 532,
Buffer memory band width configuration module 531 is mainly used in the quantity of cache module in the said buffer unit that distributes corresponding said utilized bandwidth parameter, and adjusts the buffer memory framework of said buffer unit according to the quantity of said cache module;
Computing band width configuration module 532 is mainly used in the quantity of the concurrent operation unit that distributes corresponding said utilized bandwidth parameter, and according to said concurrent operation element number adjustment computing framework.
Wherein, When said computing band width configuration module 532 is used to distribute the quantity of concurrent operation unit of corresponding said utilized bandwidth parameter in said computing band width configuration module; Can specifically be used to distribute the quantity of arithmetic element of the parallel computation checking data of corresponding said utilized bandwidth parameter, and according to the computing framework of the quantity adjustment parallel computation checking data of the arithmetic element of parallel computation checking data; Can also specifically be used to distribute the parallel fail data of corresponding said utilized bandwidth parameter to recover the quantity of arithmetic element, and recover the computing framework that the parallel fail data of quantity adjustment of arithmetic element is recovered according to parallel fail data.
The adjustable fifo buffer of buffer unit available depth in the present embodiment, i.e. the CELL FIFO of depth-adjustment (CELL First In First Out), arithmetic element available parallelism multiplier.
The device of bandwidth not only can provide RAID6 service for user communication device in automatic distribution RAID 6 arithmetic systems in the embodiment of the invention; And can be according to buffer memory bandwidth and the computing bandwidth in the utilized bandwidth parameter configuration RAID6 arithmetic system; Thereby make the front end data bandwidth of RAID 6 and rear end computing bandwidth be complementary; Not only more help inserting user communication device and obtain the proper service quality; And on hardware brief power consumption necessarily, use the reasonable configuration bandwidth service of offering the best.
The method of describing in conjunction with embodiment disclosed herein or the step of algorithm can be directly with the software modules of hardware, processor execution, and perhaps the combination of the two is implemented.Software module can place the storage medium of any other form known in random access memory (RAM), internal memory, ROM (read-only memory) (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or the technical field.
Above-described specific embodiment; The object of the invention, technical scheme and beneficial effect have been carried out further explain, and institute it should be understood that the above is merely specific embodiment of the present invention; And be not used in qualification protection scope of the present invention; All within spirit of the present invention and principle, any modification of being made, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.