Test method, device and equipment for redundant array of independent disks and storage medium
By generating multiple test stimuli to perform front-end testing on the RAID card, the problems of long verification cycles and insufficient coverage of RAID cards are solved, realizing an efficient and comprehensive testing process and ensuring the correctness and consistency of RAID card functions.
Patent Information
- Application Number
- CN202511074982.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-31
- Publication Date
- 2025-11-18
AI Technical Summary
In existing technologies, the verification cycle for the front-end verification of RAID cards is lengthy, the test coverage is insufficient, the tests are inaccurate, and the degree of automation is low.
By receiving test requests from the verification system, multiple test stimuli are generated. Based on the configuration information and pre-configured input/output characteristic information, front-end testing of the RAID card is performed, and the checker is used to verify whether the function is normal.
It improves testing efficiency, saves time, increases test coverage, ensures the comprehensiveness and accuracy of testing, and can reproduce edge scenarios in the production environment, simulate extreme situations, and locate intermittent failures.
Smart Images

Figure CN120973613A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of servers, and particularly relates to a test method and device for a redundant array of independent disks (RAID) card, an equipment and a storage medium. BACKGROUND
[0002] With the rapid growth of data volume, the RAID (Redundant Array of Independent Disks) technology has become a key application for improving data storage reliability and access speed. The RAID technology integrates multiple hard disk drives to achieve redundant backup of data, expansion of storage capacity and enhancement of performance. It significantly improves the security and access efficiency of data through parallel processing and data backup. The RAID card is a decisive factor for the performance of the entire storage system. It is crucial to ensure the correctness and reliability of the design in the front-end verification stage of the design.
[0003] In the related art, the function of the RAID card is mainly tested by physical hardware detection and log testing. In the physical hardware detection mode, the processor needs to issue multiple test instructions to the RAID card. This mode has a long verification period, insufficient test coverage and inaccurate testing. SUMMARY
[0004] The present application provides a test method and device for a RAID card, an equipment and a storage medium to at least solve the problems of a long verification period, insufficient test coverage and inaccurate testing of the front-end verification of the RAID card in the related art.
[0005] The present application provides a test method for a RAID card, which comprises the following steps: receiving a test request sent by a verification system, the test request being used to indicate front-end testing of a target function of the RAID card, and the test request carrying configuration information of the RAID card; generating multiple test stimuli according to the configuration information and preconfigured input / output characteristic information; sending the multiple test stimuli to the verification system, so that the verification system performs front-end testing on the target function of the RAID card through the multiple test stimuli to obtain a first test result; performing front-end testing on the target function of the pre-set RAID card through an inspector based on the multiple test stimuli and the configuration information to obtain a second test result; receiving the first test result sent by the verification system; and determining whether the target function of the RAID card is normal according to the first test result and the second test result.
[0006] The application further provides a testing device of a redundant array of independent disks card, which comprises: a transceiving module, configured to receive a test request sent by a verification system, the test request being used to instruct front-end testing of a target function of the redundant array of independent disks card, and the test request carrying configuration information of the redundant array of independent disks card; a generating module, configured to generate a plurality of test excitations according to the configuration information and preconfigured input / output characteristic information; the transceiving module is further configured to send the plurality of test excitations to the verification system, so that the verification system performs front-end testing on the target function of the redundant array of independent disks card through the plurality of test excitations and obtains a first test result; a processing module, configured to perform front-end testing on the target function of the preset redundant array of independent disks card through an inspector based on the plurality of test excitations and the configuration information, and obtain a second test result; the transceiving module is configured to receive the first test result sent by the verification system; and the processing module is further configured to determine whether the target function of the redundant array of independent disks card is normal according to the first test result and the second test result.
[0007] The application further provides an electronic device, comprising: a memory configured to store a computer program; and a processor configured to implement the steps of the testing method of the redundant array of independent disks card when executing the computer program.
[0008] The application further provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the steps of the testing method of the redundant array of independent disks card.
[0009] The application further provides a computer program product, comprising a computer program, and the computer program is executed by a processor to implement the steps of the testing method of the redundant array of independent disks card.
[0010] Through the present application, the test stimulus generated by the configuration information of the independent disk redundant array card can trigger multiple test tasks at the same time, compared with the serial execution mode of the test command issued by the processor, the test efficiency can be improved, and the test time can be saved; at the same time, since the generated test stimulus is based on the configuration information and the generated test case, the edge scene in the production environment can be accurately reproduced, the extreme situation difficult to trigger in the RAID card firmware is simulated, the test coverage is improved, an efficient and comprehensive test process is realized, and the comprehensiveness and accuracy of the test are ensured. The test stimulus can be automatically generated and executed based on the preset rules, avoiding the omission and time-consuming when manually writing and executing the test command. And the test stimulus is generated based on the same configuration information, ensuring that the results can be repeatedly verified, and facilitating the positioning of intermittent faults. In addition, the test stimulus of the comprehensive RAID function is generated, and is reused in multiple verification levels, which can ensure the correctness and consistency of each function, subsystem and system on chip of the RAID card, accelerate verification convergence, and shorten the research and development cycle, and improve product stability and reliability. BRIEF DESCRIPTION OF DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present application, the drawings needed in the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0012] Figure 1 The topological graph of the test system of the independent disk redundant array card provided by the embodiments of the present application is shown in the figure.
[0013] Figure 2 The component block diagram of the test device of the independent disk redundant array card provided by the embodiments of the present application is shown in the figure.
[0014] Figure 3 The flowchart of the test method of the independent disk redundant array card provided by the embodiments of the present application is shown in the figure.
[0015] Figure 4 The flowchart of another test method of the independent disk redundant array card provided by the embodiments of the present application is shown in the figure.
[0016] Figure 5 The structural block diagram of the test device of the independent disk redundant array card provided by the embodiments of the present application is shown in the figure.
[0017] Figure 6 The hardware structure diagram of the electronic equipment provided by the embodiments of the present application is shown in the figure. DETAILED DESCRIPTION
[0018] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0019] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0020] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0021] The embodiments of this application are applied to the scenario of testing a standalone disk redundant array card.
[0022] As the core hardware for implementing RAID technology, a Redundant Array of Independent Disks (RAID) card consists of components such as an input / output processor, a hard drive controller, hard drive interfaces, and a cache. Depending on their functionality, RAID cards support a range of RAID levels, from basic Just a Bunch of Disks (JBOD) to complex RAID 1, RAID 5, RAID 6, and RAID 10. In terms of implementation, RAID cards can be categorized into software RAID cards, combined hardware / software RAID cards, and hardware RAID cards. RAID cards need to handle numerous logic gates and complex control logic to ensure data consistency and integrity across different RAID levels and input / output (IO) operations, which undoubtedly increases the complexity of testing.
[0023] In related technologies, the main methods rely on physical hardware testing and log testing to determine if the RAID card is functioning correctly. Physical hardware testing involves the processor issuing multiple test commands to the RAID card. This method has a long verification cycle, insufficient test coverage, inaccurate results, and low automation.
[0024] To address the aforementioned technical issues, this application provides a testing method for a Redundant Array of Independent Disks (RAID) card. This method receives a test request from a verification system and generates multiple test stimuli based on configuration information and pre-configured input / output characteristics. These multiple test stimuli are then used to perform front-end testing on the target functions of the RAID card to determine whether these functions are functioning correctly. The test stimuli generated from the RAID card's configuration information can trigger multiple test tasks simultaneously, improving testing efficiency and saving time compared to the serial execution of test commands issued by the processor. Furthermore, since the generated test stimuli are based on configuration information and test cases, they can accurately reproduce edge scenarios in the production environment, simulating extreme situations that are difficult to trigger in RAID card firmware, thus improving test coverage and achieving an efficient and comprehensive testing process, ensuring the comprehensiveness and accuracy of the tests. Test stimuli can be automatically generated and executed based on preset rules, avoiding omissions and time consumption when manually writing and executing test commands. Moreover, since all test stimuli are generated based on the same configuration information, the results are repeatedly verifiable, facilitating the location of intermittent faults.
[0025] The following is based on Figure 1 Taking the test system of the independent disk redundant array card shown as an example, the method provided in the embodiments of this application is described. Figure 1 This is merely an illustrative diagram and does not constitute a limitation on the applicable scenarios of the technical solutions provided in this application.
[0026] like Figure 1 As shown, Figure 1 This is a topology diagram of a test system for a standalone redundant disk array card provided in an embodiment of this application. Figure 1 The test system 100 for independent disk redundant array cards may include a test device 101 and a verification system 102 for independent disk redundant array cards.
[0027] The test device 101 for independent disk redundant array cards, hereinafter referred to as the test device, can be any device with communication and computing functions. For example, the test device can be a server or a cloud server. The test device includes a conversion layer, a proxy layer, and a checker.
[0028] like Figure 2 As shown, Figure 2 This is a schematic block diagram of the components of a test apparatus for a standalone redundant disk array card provided in an embodiment of this application.
[0029] The conversion layer is used to communicate with the upper-layer verification system 102. Figure 2 In this context, the conversion layer includes the conversion layer interface, building modules, and top-level test suite.
[0030] The conversion layer acts as a bridge between the verification system and the RAID agent. It includes a conversion layer interface, building blocks, and a top-level test set. The conversion layer is responsible for converting test stimuli, verification system responses, and RAID card-related operations; mapping test stimuli to the agent layer; sending RAID group creation operations to the agent layer; retrieving the test set corresponding to the test stimuli from the agent layer; and sending the configuration information and test stimuli of the RAID to be tested to the checker.
[0031] The conversion layer interface is used for communication between the verification system and the proxy layer. It is implemented through a template class, internally implementing a corresponding adapter to convert the verification system's transmission packets to those of the proxy layer. It forwards test requests and responses from the verification system to the proxy layer and the checker, retrieves the test set from the proxy layer, and forwards it to the verification system for testing.
[0032] The building module is used to construct the corresponding RAID group through the proxy layer based on the configuration information, and to store the mapping relationship between multiple RAID groups in the proxy layer and test requests.
[0033] The top-level test set is used to store the test set including test stimuli for reuse of the checker.
[0034] The proxy layer, acting as the data processing center in the testing system, is responsible for parsing, storing, and managing information related to test requests. Figure 2 In this module, the proxy layer includes an information storage module, an information calculation module, and a feature test set module.
[0035] The information storage module is used to store the RAID card's configuration information and pre-configured input / output characteristic information.
[0036] The information calculation module generates feature test sets corresponding to multiple test stimuli based on configuration information and pre-configured input / output feature information. An interface for users to add custom test factors is reserved in the proxy layer to meet the differentiated needs of different testing functions and different levels of verification.
[0037] The feature test set module is used to store feature test sets.
[0038] Understandably, the proxy layer is used to uniformly process and parse all test requests sent by the upper-layer verification system, and return the test incentives corresponding to each test request.
[0039] The checker is a key component for ensuring the correctness of I / O operations. The checker verifies the execution results of RAID I / O operations through end-to-end read / write tests and end-of-IO checks of disk / system data, ensuring data consistency and correctness.
[0040] The verification system 102 can be a verification system for each function of the RAID card, or a subsystem composed of at least one function, or the entire on-chip system.
[0041] Furthermore, the execution process between modules in the independent disk redundant array card test device includes: instantiating the conversion layer according to the current verification system's transmission type; inheriting the conversion layer interface and overriding the adapter function, disk access function, and host access function; setting the conversion interface parameters required by the current verification platform, initializing the construction module, and passing the top-level test set. Configuring the proxy layer and loading configuration information to prepare storage and computing modules. Setting the checker data acquisition and verification methods, preparing the comparison logic, and acquiring the transport layer interface. The conversion layer sends a request to the proxy layer to create a RAID group. The conversion layer provides options for traversal testing, random testing, direct testing, and performance testing. The proxy layer generates a feature test set based on the configuration information, combined with pre-configured input / output characteristic information and user-defined test factors, and returns it to the conversion layer. The conversion layer generates specific test vectors based on the test set and sends them to the verification system. The verification system initiates test stimuli for the Device Under Test (DUT) based on the feature test vectors, driven by the top-level driver. The verification system returns a response, the checker acquires the necessary data, and executes the verification logic. The checker analyzes the comparison results and generates a test report.
[0042] Figure 1 The test system 100 for the independent disk redundant array card shown is for illustrative purposes only and is not intended to limit the technical solutions of this application. Those skilled in the art should understand that in specific implementations, the test system 100 for the independent disk redundant array card may also include other devices, without limitation.
[0043] Embodiments of this application provide a testing method for a standalone redundant disk array card, and a testing apparatus for standalone redundant disk array cards, such as... Figure 3 As shown, Figure 3 The flowchart illustrates a testing method for a standalone redundant disk array card provided in this application embodiment. The testing method for the standalone redundant disk array card includes the following steps:
[0044] S301 receives test requests sent by the verification system.
[0045] The verification system can also be called the top-level system.
[0046] The test request is used to instruct front-end testing of the target functionality of the RAID card, and the test request carries the configuration information of the RAID card.
[0047] The configuration information includes several configuration parameters. The configuration information can be seen in Table 1.
[0048] Table 1 lists at least two of the following configuration parameters: stripe size, block size, status information, loop direction, block arrangement, and disk information for each independent disk redundant array group created by the independent disk redundant array card; and level information for each independent disk redundant array group.
[0049] Disk information includes the disk capacity and number of disks for each disk that makes up each independent redundant disk array group.
[0050] For example, in the test apparatus for a standalone redundant disk array card, the conversion layer receives a test request sent by the verification system and forwards the test request to the proxy layer.
[0051] Table 1
[0052] Name Description RAID Group ID RAID group number RAID Level RAID level: RAID0 / 1 / 5 / 6 / 10 / 50 / 60 Stripe Length Stripe size Chunk Size Chunk size of RAID group RAID State RAID group state: normal / disk failure / promotion / demotion Circulation Direction Circulation direction: left circulation / right circulation Chunk Sync / Async Chunk arrangement: synchronous / asynchronous DiskInfo Disk information
[0053] S302 generates multiple test stimuli based on configuration information and pre-configured input / output characteristic information.
[0054] The pre-configured input / output feature information includes multiple input / output parameters. The input / output feature information is shown in Table 2.
[0055] Multiple input / output parameters include at least two of the following: the starting logic block address corresponding to the input / output operation, the input / output type, the input / output size, the access mode information, the input / output stripe information, the channel mapping information, and the input / output verification information.
[0056] For example, in the test device for a standalone redundant disk array card, the agent layer receives a test request, generates multiple test stimuli based on the configuration information and pre-configured input / output characteristic information in the test request, and sends the multiple test stimuli to the conversion layer.
[0057] Table 2
[0058] Name Description SLBA Starting logical block address NLB IO size OPC IO type DiskInfo IO access mode information StripeInfo IO stripe information ChMapInfo IO channel mapping information ParityInfo IO check information
[0059] S303 sends multiple test stimuli to the verification system, enabling the verification system to perform front-end testing on the target function of the independent disk redundant array card through multiple test stimuli and obtain the first test result.
[0060] The first test result includes the values of multiple metrics corresponding to the target function. For example, if the target function is a data read / write operation, the multiple metrics are data read / write rate, data accuracy, and data integrity. If the target function is a fault-tolerant function, the multiple metrics are recovery time and data recovery rate after disk failure.
[0061] For example, the conversion layer in the test apparatus for a Redundant Array of Independent Disks (RAID) sends multiple test stimuli to a verification system. The verification system performs front-end testing on the target functionality of the RAID based on these multiple test stimuli, obtaining a first test result.
[0062] S304, based on multiple test stimuli and configuration information, performs front-end testing on the target function of the preset independent disk redundant array card through the checker, and obtains the second test result.
[0063] All functions of the pre-set redundant disk array card are normal.
[0064] For example, in the test device for a standalone redundant disk array card, the agent layer sends multiple test stimuli and configuration information to the checker; based on the multiple test stimuli and configuration information, the checker performs front-end testing on the target function of the preset standalone redundant disk array card and obtains a second test result.
[0065] S305 receives the first test result sent by the verification system.
[0066] For example, in the testing apparatus for a standalone redundant disk array card, the conversion layer obtains a first test result from the verification system and forwards the first test result to the inspector; the inspector obtains the first test result.
[0067] S306. Based on the first and second test results, determine whether the target function of the independent disk redundant array card is normal.
[0068] For example, the checker in the test apparatus for a standalone redundant disk array card determines whether the target function of the standalone redundant disk array card is normal based on the first test result and the second test result.
[0069] In one example, the checker extracts a first indicator value corresponding to the target function from the first test result and a second indicator value corresponding to the preset indicator from the second test result, based on the target function; determines the deviation between the first indicator value and the second indicator value; if the deviation between the first indicator value and the second indicator value is less than or equal to a preset threshold corresponding to the preset indicator, then the target function of the independent disk redundant array card is determined to be normal.
[0070] The preset threshold can be set according to actual needs and is not restricted. For example, the preset threshold could be 3%.
[0071] For example, taking data read / write speed as an example, when the target function is data read / write operation, the data read / write speed in the first test result is compared with the corresponding indicator in the second test result; the deviation between the data read / write speed in the first test result and the data read / write speed in the second test result is calculated; if the deviation between the data read / write speed in the first test result and the data read / write speed in the second test result is less than or equal to 10%, then the data read / write function of the independent disk redundant array card is determined to be normal.
[0072] Optionally, for the target function, the inspector can also obtain the indicator value corresponding to each of the multiple indicators in the first test result; obtain the weight value corresponding to each indicator; determine the score value corresponding to the target function based on the weight value and the indicator value corresponding to each indicator; if the score value is greater than a preset threshold, the target function is determined to be normal; if the score value is less than or equal to the preset threshold, the target function is determined to be abnormal.
[0073] The preset threshold can be dynamically adjusted according to different RAID levels or business scenarios.
[0074] Understandably, by comprehensively considering multiple metrics (such as throughput, error rate, and response time) in the first test results, the problem of the one-sidedness of a single metric is avoided. For example, even if the throughput meets the target, an excessively high error rate will lead to a lower score for the target function. In addition, by flexibly allocating the weight of each metric according to business needs, the test results are more accurate.
[0075] Based on the above Figure 3 The method described herein can receive a test request sent by a verification system, generate multiple test stimuli based on the configuration information and pre-configured input / output characteristic information in the test request, send the multiple test stimuli to the verification system so that the verification system can perform front-end testing on the target function of the independent disk redundant array card through the multiple test stimuli to obtain a first test result; based on the multiple test stimuli and configuration information, perform front-end testing on the target function of the preset independent disk redundant array card through an inspector to obtain a second test result; and determine whether the target function of the independent disk redundant array card is normal based on the first test result and the second test result.
[0076] The test stimuli generated from the configuration information of the independent disk redundant RAID card can trigger multiple test tasks simultaneously. Compared to the serial execution of test commands issued by the processor, this improves testing efficiency and saves testing time. Furthermore, since the generated test stimuli are based on configuration information and test cases, they can accurately reproduce edge scenarios in the production environment, simulating extreme situations that are difficult to trigger in the RAID card firmware, thus improving test coverage and achieving an efficient and comprehensive testing process, ensuring the comprehensiveness and accuracy of the tests. Test stimuli can be automatically generated and executed based on preset rules, avoiding omissions and time-consuming processes when manually writing and executing test commands. Moreover, since all test stimuli are generated based on the same configuration information, the results can be repeatedly verified, facilitating the location of intermittent faults. In addition, generating comprehensive RAID function test stimuli and reusing them across multiple verification levels ensures the correctness and consistency of various functions, subsystems, and the overall on-chip system functions within the RAID card system, accelerating verification convergence, shortening the development cycle, and improving product stability and reliability.
[0077] In an optional example, based on the foregoing embodiments and as described above, multiple test stimuli are generated according to the configuration information and pre-configured input / output characteristic information, as follows: (See details in the original text.) Figure 4 As shown, Figure 4 A flowchart illustrating another testing method for a standalone redundant disk array card provided in this application embodiment includes:
[0078] S401, obtain the number of data disks, the number of parity disks, and the location of the parity disks corresponding to each independent disk redundant array group.
[0079] For example, each independent disk redundant array group can have 3 data disks, 1 parity disk, and the parity disk can be the fourth disk.
[0080] S402 determines the striping information for each independent disk redundant array group based on the number of data disks, the number of parity disks, the location of the parity disks, and the block size.
[0081] The stripe information includes the stripe group data size and stripe group distribution information for each stripe group in each independent disk redundant array group.
[0082] For example, taking a RAID 5 configuration with 4 data disks, 1 parity disk, a block size of 64KB, and distributed parity disks, the stripe information for each independent disk redundant array group is determined based on the number of data disks, the number of parity disks, the location of the parity disk, and the block size. The stripe information includes the following step-by-step information: each stripe group in each independent disk redundant array group contains 4 data blocks (stored on 4 data disks) + 1 parity block (circuitously stored on one of the 4 disks). The stripe group data size is (4+1)×64KB=320KB, of which the effective data is 4×64KB=256KB.
[0083] S403 generates multiple test stimuli corresponding to the independent disk redundant array group based on the starting logical block address, input / output size, stripe information, disk information, and level information.
[0084] In one example, the agent layer in the test device of the Independent Disk Redundancy Array (IDA) determines multiple stripe test stimuli corresponding to each stripe group in each IDA group based on the starting logical block address, input / output size, and stripe information; determines the available storage capacity of each IDA group based on disk information and level information; and, based on the multiple stripe test stimuli, performs block traversal on each IDA group according to the available storage capacity, starting logical block address, and input / output size to obtain the multiple test stimuli corresponding to each IDA group.
[0085] For example, taking RAID level 5 as an example, each independent disk redundant array group includes 4 disks (3 data disks + 1 parity disk), disk information: each disk has a capacity of 2TB, sector size of 512 bytes, stripe unit size (block size) of 64KB, stripe group size of 256KB, starting logical block address (LBA) of 1,048,576 (corresponding to 512GB position), and I / O size of 1MB. Based on the available storage capacity, starting logical block address, and I / O size of each independent disk redundant array group, the physical location corresponding to the LBA is calculated, the stripe group index is calculated, the range of stripe groups involved is determined, and block traversal is performed on each independent disk redundant array group to obtain multiple test stimuli corresponding to each independent disk redundant array group, including: for disk 1: confirm For disk 1: the physical offset corresponding to the test stimulus is set to 134,217,728B, the operation type is read, the data block size is 64KB, and the test mode is sequential data mode; for disk 2: the physical offset corresponding to the test stimulus is set to 134,282,240B, the operation type is read, the data block size is 64KB, and the test mode is random data mode; for disk 3: the physical offset corresponding to the test stimulus is set to 134,346,752B, the operation type is read, the data block size is 64KB, and the test mode is parity data mode; for disk 4: the physical offset corresponding to the test stimulus is set to 134,411,264B, the operation type is read, the data block size is 64KB, and the test mode is error injection mode.
[0086] In the test device for Independent Redundant Array of Independent Disks (IRAD), the agent layer can calculate the product between disk capacity and number of disks to calculate the total storage capacity of each IAD group; determine the redundant storage capacity corresponding to each IAD group based on its level; and obtain the available storage capacity of each IAD group based on the difference between the total storage capacity and the redundant storage capacity.
[0087] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.
[0088] Embodiments of this application also provide a testing device for a standalone redundant disk array card, such as... Figure 5 As shown, Figure 5 This is a structural block diagram of a testing apparatus for a standalone redundant disk array card provided in an embodiment of this application. The testing apparatus for the standalone redundant disk array card includes:
[0089] The transceiver module 501 is used to receive test requests sent by the verification system. The test requests are used to instruct front-end testing of the target functions of the independent disk redundant array card. The test requests carry the configuration information of the independent disk redundant array card.
[0090] The generation module 502 is used to generate multiple test stimuli based on configuration information and pre-configured input and output feature information.
[0091] The transceiver module 501 is also used to send multiple test stimuli to the verification system so that the verification system can perform front-end testing on the target function of the independent disk redundant array card through multiple test stimuli and obtain the first test result.
[0092] The processing module 503 is used to perform front-end testing on the target function of the preset independent disk redundant array card based on multiple test stimuli and configuration information through the checker, and obtain the second test result.
[0093] The transceiver module 501 is also used to receive the first test result sent by the verification system.
[0094] The processing module 503 is also used to determine whether the target function of the independent disk redundant array card is normal based on the first test result and the second test result.
[0095] In some optional implementations, the configuration information includes multiple configuration parameters, including at least two of the following: stripe size, block size, status information, loop direction, block arrangement, and disk information for each independent disk redundant array group created by the independent disk redundant array card, and level information for each independent disk redundant array group.
[0096] In some optional implementations, the pre-configured input / output feature information includes multiple input / output parameters, which include at least two of the following: the starting logic block address corresponding to the input / output operation, the input / output type, the input / output size, the access mode information, the input / output stripe information, the channel mapping information, and the input / output verification information.
[0097] In some optional implementations, the generation module 502 is specifically used to obtain the number of data disks, the number of parity disks, and the location of the parity disks corresponding to each independent disk redundant array group; determine the stripe information of each independent disk redundant array group based on the number of data disks, the number of parity disks, the location of the parity disks, and the block size; and generate multiple test stimuli corresponding to the independent disk redundant array group based on the starting logical block address, input / output size, stripe information, disk information, and level information.
[0098] In some optional implementations, the generation module 502 is specifically used to determine multiple stripe test stimuli corresponding to each stripe group in each independent disk redundant array group based on the starting logical block address, input / output size, and stripe information; determine the available storage capacity of each independent disk redundant array group based on disk information and level information; and, based on the multiple stripe test stimuli, perform block traversal on each independent disk redundant array group according to the available storage capacity, starting logical block address, and input / output size to obtain multiple test stimuli corresponding to each independent disk redundant array group.
[0099] In some optional implementations, the disk information includes the disk capacity and number of disks of each disk that makes up each independent redundant disk array group; the generation module 502 is specifically used to calculate the product between the disk capacity and the number of disks to calculate the total storage capacity of each independent redundant disk array group; determine the redundant storage capacity corresponding to each independent redundant disk array group according to the level of each independent redundant disk array group; and obtain the available storage capacity of each independent redundant disk array group based on the difference between the total storage capacity and the redundant storage capacity.
[0100] In some optional implementations, the processing module 503 is specifically used to extract a first indicator value of a preset indicator corresponding to the target function from the first test result and a second indicator value of the preset indicator from the second test result, according to the target function; determine the deviation value between the first indicator value and the second indicator value; if the deviation value between the first indicator value and the second indicator value is less than or equal to a preset threshold corresponding to the preset indicator, then the target function of the independent disk redundant array card is determined to be normal.
[0101] For a description of the features in the embodiment corresponding to the test apparatus for a redundant independent disk array card, please refer to the relevant description in the embodiment corresponding to the test method for a redundant independent disk array card, which will not be repeated here.
[0102] Embodiments of this application also provide an electronic device, such as... Figure 6 As shown, Figure 6 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. The electronic device includes a processor 10 and a memory 20, in which a computer program is stored. The processor 10 is configured to run the computer program to execute the steps in any of the above-described test method embodiments for a standalone redundant disk array card.
[0103] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in the test method embodiments of any of the above-described independent disk redundant array cards when running.
[0104] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0105] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in the test method embodiments of any of the above-described independent disk redundant array cards.
[0106] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in the test method embodiments of any of the above-described independent disk redundant array cards.
[0107] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0108] The foregoing has provided a detailed description of the testing apparatus, device, and storage medium for an independent disk redundant array card provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A test method for a standalone disk redundant array card, characterized in that, The method includes: The system receives a test request sent by the verification system. The test request is used to instruct the front-end testing of the target function of the independent disk redundant array card. The test request carries the configuration information of the independent disk redundant array card. Based on the configuration information and pre-configured input / output characteristic information, multiple test stimuli are generated; Multiple test stimuli are sent to the verification system so that the verification system performs front-end testing on the target function of the independent disk redundant array card through the multiple test stimuli and obtains a first test result. Based on the multiple test stimuli and the configuration information, the front-end test of the target function of the preset independent disk redundant array card is performed by the checker to obtain the second test result; Receive the first test result sent by the verification system; Based on the first test result and the second test result, determine whether the target function of the independent disk redundant array card is normal.
2. The method according to claim 1, characterized in that, The configuration information includes multiple configuration parameters, including at least two of the following: stripe size, block size, status information, loop direction, block arrangement, and disk information for each of the multiple independent redundant disk array groups created by the independent redundant disk array card; and level information for each independent redundant disk array group.
3. The method according to claim 2, characterized in that, The pre-configured input / output feature information includes multiple input / output parameters, which include at least two of the following: the starting logic block address corresponding to the input / output operation, the input / output type, the input / output size, the access mode information, the input / output stripe information, the channel mapping information, and the input / output verification information.
4. The method according to claim 3, characterized in that, The step involves generating multiple test stimuli based on the configuration information and pre-configured input / output feature information, including: Obtain the number of data disks, the number of parity disks, and the location of the parity disks for each independent disk redundancy array group; Based on the number of data disks, the number of parity disks, the location of the parity disks, and the block size, determine the stripe information for each independent disk redundancy array group; Based on the starting logical block address, the input / output size, the stripe information, the disk information, and the level information, multiple test stimuli corresponding to the independent disk redundancy array group are generated.
5. The method according to claim 4, characterized in that, The step of generating multiple test stimuli corresponding to each independent disk redundancy array group based on the starting logical block address, the input / output size, the stripe information, the disk information, and the level information includes: Based on the starting logical block address, the input / output size, and the stripe information, determine multiple stripe test stimuli corresponding to each stripe group in each independent disk redundant array group; Based on the disk information and the level information, determine the available storage capacity of each independent disk redundant array group; Based on multiple stripe test stimuli, and according to the available storage capacity of each independent disk redundant array group, the starting logical block address, and the input / output size, a block traversal is performed on each independent disk redundant array group to obtain multiple test stimuli corresponding to each independent disk redundant array group.
6. The method according to claim 5, characterized in that, The disk information includes the disk capacity and number of disks for each disk that makes up each of the independent redundant disk array groups; determining the available storage capacity of each of the independent redundant disk array groups based on the disk information and the level information includes: Calculate the product between the disk capacity and the number of disks, and calculate the total storage capacity of each independent redundant disk array group; The redundant storage capacity corresponding to each independent disk redundant array group is determined according to the level of each independent disk redundant array group; The available storage capacity of each independent redundant disk array group is obtained based on the difference between the total storage capacity and the redundant storage capacity.
7. The method according to any one of claims 1-6, characterized in that, The step of determining whether the target function of the independent disk redundant array card is normal based on the first test result and the second test result includes: Based on the target function, extract the first indicator value of the preset indicator corresponding to the target function from the first test result, and extract the second indicator value of the preset indicator from the second test result; Determine the deviation between the first indicator value and the second indicator value; If the deviation between the first indicator value and the second indicator value is less than or equal to the preset threshold corresponding to the preset indicator, then the target function of the independent disk redundant array card is determined to be normal.
8. A testing device for a standalone redundant disk array card, characterized in that, The testing apparatus for the independent disk redundancy array card includes: The transceiver module is used to receive test requests sent by the verification system. The test requests are used to instruct front-end testing of the target function of the independent disk redundant array card. The test requests carry the configuration information of the independent disk redundant array card. The generation module is used to generate multiple test stimuli based on the configuration information and pre-configured input / output feature information; The transceiver module is used to send multiple test stimuli to the verification system, so that the verification system can perform front-end testing on the target function of the independent disk redundant array card through multiple test stimuli and obtain a first test result; The processing module is used to perform front-end testing on the target function of the preset independent disk redundant array card based on multiple test stimuli and the configuration information through an inspector, and obtain a second test result; The transceiver module is used to receive the first test result sent by the verification system; The processing module is further configured to determine whether the target function of the independent disk redundant array card is normal based on the first test result and the second test result.
9. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the steps of the test method for a standalone redundant disk array card as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the test method for the independent disk redundant array card as described in any one of claims 1 to 7.