Fault diagnosis method and device of storage system, electronic equipment and storage medium
By parsing the message data of the FC SAN storage system layer by layer and analyzing the SCSI layer performance, the problem of difficult fault location of the FC SAN storage system in the existing technology is solved, and fast and accurate fault diagnosis and location are achieved.
Patent Information
- Application Number
- CN202511225690.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-29
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2045-08-29
AI Technical Summary
Existing technologies have difficulty in quickly and accurately locating read and write faults in FC SAN storage systems, especially in multi-layer structures due to the lack of in-depth analysis of the SCSI layer, resulting in fault location delays and low accuracy.
By acquiring the message data of the storage system, parsing the protocol information layer by layer based on the multi-level structure, focusing on analyzing the performance data of the SCSI layer, combining read and write operations for fault diagnosis, and using a dedicated high-speed processing chip to achieve line-speed capture and analysis.
It realizes full-level fault location of FC SAN storage system, improves the accuracy and efficiency of fault diagnosis, and can quickly and accurately identify read and write failures.
Smart Images

Figure CN120743716A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of fault diagnosis technology, and in particular to a fault diagnosis method, device, electronic device, and storage medium for a storage system. Background Art
[0002] Information centers handle a wide range of internal and external business operations, making their performance and stability crucial. Fiber Channel Storage Area Networks (FC SANs), with their high bandwidth and low latency, have become the preferred storage system for mission-critical scenarios. However, with the continuous growth of business, the scale of storage systems has also increased, making it difficult to quickly detect and accurately locate faults when anomalies occur. Therefore, accurate read and write fault diagnosis for FC SAN storage systems has become a pressing issue. Summary of the Invention
[0003] The present application provides a storage system fault diagnosis method, apparatus, electronic device, and storage medium to at least solve the problem in the related art of how to accurately diagnose read and write faults in an FC SAN storage system.
[0004] The present application provides a storage system fault diagnosis method, comprising: obtaining message data of the storage system; Based on the multi-level structure of the storage system, the message data is parsed layer by layer to obtain the protocol information corresponding to each layer. The multi-level structure includes at least the system interface layer, which is the highest layer in the multi-level structure of the storage system; Determine the target performance data of the system interface layer based on the protocol information corresponding to each layer and the read and write operations of the system interface layer; Perform fault diagnosis on the storage system based on the target performance data to obtain fault diagnosis results.
[0005] The present application also provides a storage system fault diagnosis device, comprising: an acquisition module, configured to acquire message data of the storage system; A processing module is configured to parse the message data layer by layer based on the multi-layer structure of the storage system to obtain protocol information corresponding to each layer, wherein the multi-layer structure includes at least a system interface layer, which is the highest layer in the multi-layer structure of the storage system; The processing module is further used to determine target performance data of the system interface layer based on the protocol information corresponding to each layer and the read and write operations of the system interface layer; The processing module is further used to perform fault diagnosis on the storage system according to the target performance data to obtain a fault diagnosis result.
[0006] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned storage system fault diagnosis methods when executing the computer program.
[0007] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned storage system fault diagnosis methods are implemented.
[0008] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned storage system fault diagnosis methods when executed by a processor.
[0009] Through this application, the message data of the storage system is obtained; based on the multi-level structure of the storage system, the message data is parsed layer by layer to obtain the protocol information corresponding to each layer, and the multi-level structure includes at least the system interface layer, which is the highest layer in the multi-level structure of the storage system; based on the protocol information corresponding to each layer and the read and write operations of the system interface layer, the target performance data of the system interface layer is determined; based on the target performance data, the storage system is fault diagnosed to obtain the fault diagnosis result. In this solution, each level of the storage system can perform data parsing to achieve full-level fault location, and focuses on analyzing the performance data of the system interface layer, namely the SCSI layer. It can accurately analyze the fault situation in combination with the read and write operations, and achieve accurate diagnosis, precise location and type judgment of storage system read and write faults. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0011] Figure 1 A schematic diagram of a storage system fault diagnosis method provided in an embodiment of the present application Figure 1 ; Figure 2 A schematic diagram of a storage system fault diagnosis method provided in an embodiment of the present application Figure 2 ; Figure 3 A schematic diagram of the structure of a fault diagnosis device for a storage system provided in an embodiment of the present application; Figure 4 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0012] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0013] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.
[0014] It should be noted that in the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be interpreted as being more preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
[0015] In today's rapidly developing information age, business systems across all industries rely heavily on the stable operation of information centers. Information centers handle a wide range of internal and external business processes, making their performance and stability crucial. Business systems running in information centers, such as databases and cloud computing platforms, typically require extensive data exchange with storage systems. FC SAN, with its high bandwidth and low latency, has become the preferred storage network solution for critical business scenarios.
[0016] FC SAN is a high-speed, dedicated storage network built on Fibre Channel technology, used to connect servers and storage devices for efficient data transmission and centralized management. Based on the Fibre Channel (FC) protocol, FC SAN interconnects storage arrays (such as disk arrays and tape libraries) with server hosts through Fibre Channel switches, forming an independent, dedicated storage network. An FC SAN may include: Fibre Channel switches, which connect storage devices and servers to achieve high-speed data transmission and support multipath redundancy (such as dual FC switches and dual HBAs); storage devices, such as Fibre Channel disk arrays and NAS, connected to the switches via fiber optic interfaces; and servers, which communicate with storage devices using the FC protocol to achieve data transmission and storage, supporting load balancing and fault tolerance.
[0017] As FC SANs continue to expand in scale, their complexity increases. When performance issues arise in business systems, traditional network performance monitoring (NPM) and application performance management (APM) can help analyze the network and business application systems, quickly locating whether the problem originates at the network layer or the host application layer. However, when the problem involves FC SAN storage connected to the database, locating the fault becomes extremely difficult. It's difficult to determine whether the problem lies within the database or within the backend FC SAN storage, such as the storage controller, disk array, or FC network link.
[0018] The development of domestic FC SANs has made significant progress in recent years, but as the scale has expanded, related problems have also gradually increased. I / O read and write issues in FC SAN storage networks have become increasingly complex, mainly manifesting in the following aspects: Difficulty locating multi-layer faults: FC SAN involves multiple layers, including the FC physical layer, link layer, network layer, transport layer, and the upper Small Computer System Interface (SCSI) protocol layer. Failures at any layer can cause input / output (I / O) read and write anomalies, but traditional tools currently available on the market struggle to conduct comprehensive and in-depth analysis of each layer.
[0019] High-speed data processing challenges: FC network transmission rates continue to increase, from early 2Gbps and 4Gbps to current 16Gbps and even higher, 32Gbps and 64Gbps. Traditional software-based analysis tools struggle to perform real-time, line-rate analysis of high-speed FC data flows, often resulting in the loss of critical fault information.
[0020] Lack of SCSI layer performance parameters: The root cause of I / O read and write failures is often closely related to SCSI layer operations, such as SCSI command execution time, retry counts, and error codes. However, existing solutions lack comprehensive statistics and analysis of SCSI layer performance parameters, making them unable to provide accurate evidence for fault location.
[0021] According to statistics, approximately 30% of storage performance issues in large data centers originate within the FC SAN storage network. Due to a lack of effective diagnostic tools, the average time to locate these issues exceeds four hours, severely impacting business continuity and efficiency. Therefore, there is an urgent need for a precise diagnostic method for FC SAN storage network I / O read and write failures to quickly locate faults and improve system reliability and operational efficiency.
[0022] Currently, a FC SAN storage network monitoring method based on the Simple Network Management Protocol (SNMP) has been proposed. This method deploys an SNMP agent to collect storage device performance metrics, such as bandwidth utilization and error counts, and combines this with topology discovery technology to construct a network topology map. However, SNMP is a polling-based monitoring method with a low sampling frequency, making it incapable of capturing sudden I / O failures in real time. Furthermore, this method only captures macroscopic performance metrics at the device level and lacks detailed analysis at the FC protocol and SCSI layers, making it difficult to pinpoint specific failure points.
[0023] Another related technique proposes deploying a software probe on the host side to intercept I / O requests between the host and the FC HBA (host bus adapter) and analyze I / O performance parameters. However, since the software probe must run on the host side, it consumes host CPU and memory resources, impacting business system performance. Furthermore, this method only monitors I / O requests on the host side and cannot obtain information about the original data packets transmitted on the FC network, making it difficult to analyze network link and storage device failures. In summary, relevant technologies have many deficiencies in solving FC SAN storage network I / O read and write fault diagnosis, mainly reflected in the following aspects: Lack of real-time performance: Traditional monitoring methods such as SNMP polling and software probes cannot respond to sudden faults in FC SAN in real time, resulting in delayed fault location.
[0024] Insufficient analysis depth: Most existing tools can only monitor performance at the device level or host end, lacking in-depth analysis of the various layers of the FC protocol and the SCSI layer, and are unable to obtain key performance parameters and fault characteristics.
[0025] Lack of high-speed processing capabilities: As FC network speeds continue to increase, software-based analysis tools are unable to meet the needs of high-speed data processing, resulting in packet loss and processing delays.
[0026] Low fault location accuracy: Due to the lack of comprehensive protocol analysis and performance parameter statistics, it is impossible to accurately distinguish whether the fault occurs within the database, FC network link, or storage device, causing operation and maintenance personnel to spend a lot of time on troubleshooting.
[0027] In order to solve all or part of the above-mentioned technical problems, the embodiments of the present application provide a storage system fault diagnosis method, device, electronic device and storage medium. In order to enable technical personnel in this technical field to better understand the application scheme, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0028] like Figure 1 As shown, Figure 1 This is a flowchart of a storage system fault diagnosis method provided in an embodiment of the present application. The method may include the following steps: 101. Obtain message data from the storage system.
[0029] In the embodiment of the present application, the storage system may be a FC SAN storage network, and the message data may be a Fibre Channel data packet (FC PACKET) obtained by capturing a data stream in the FC network at line speed.
[0030] In some embodiments, the FC Packet is the basic unit of data transmission in the FC protocol. Designed to achieve high-speed, reliable, and low-latency block-level data transmission, it is the core support for FC SAN network performance. The FC Packet is based on a frame. Each frame consists of: a 24-byte Frame Header containing addressing information (such as the World Wide Names (WWNs) of the source and destination ports) and transmission control flags (such as priority and flow control information); a Payload (maximum 2112 bytes), carrying the actual data (such as SCSI commands and disk block data); and a 4-byte cyclic redundancy check (CRC) in the Frame Trailer for detecting transmission errors.
[0031] 102. Based on the multi-level structure of the storage system, the message data is parsed layer by layer to obtain the protocol information corresponding to each layer.
[0032] In an embodiment of the present application, the storage system can be configured as a multi-level structure, which can include at least a system interface layer, namely the SCSI layer. Since the root cause of I / O read and write failures is often closely related to the operation of the SCSI layer, when parsing message data, it is necessary to at least pay attention to the protocol information corresponding to the SCSI layer.
[0033] In some embodiments, the multi-layered structure of the storage system may include a physical layer, a link layer, a network layer, a transport layer, and a SCSI layer. The SCSI layer may be the highest layer in the multi-layered structure of the storage system. The captured FC PACKET may be parsed layer by layer through FC-0 to FC-4 to extract key protocol information.
[0034] Among them, the physical layer (FC-0) can be used to define the transmission medium, interface specifications and signaling mechanisms, and is the physical foundation of FC SAN; the link layer (FC-1) can be used to be responsible for frame encoding / decoding, error detection and link control to ensure reliable data transmission; the network layer (FC-2) can be used to define the frame structure, flow control and quality of service (QoS), and is the core transport layer of FC SAN; for the transport layer (FC-3), the FC protocol partially integrates the transport layer functions (such as end-to-end flow control and error recovery) into the link layer or network layer (FC-1 / FC-2), and realizes reliable transmission through the BB_Credit mechanism and CRC check, without the need for an independent transport layer protocol; the SCSI layer (FC-4) can be used to encapsulate SCSI commands into FC frames to realize block-level storage access, and is the key to the interaction between FC SAN and storage devices.
[0035] In some embodiments, according to the five levels described above, the message data may be parsed layer by layer, which may include the following implementations: The physical layer performs signal detection, encoding and decoding, and error detection. Specifically, it analyzes signal characteristics of the FC physical layer, such as signal strength and noise level, to determine the quality of the physical layer connection. It decodes the FC physical layer's encoded data to restore the original bit stream. For example, for 8B / 10B encoding, 10 bits of encoded data are decoded into 8 bits of original data. The physical layer's CRC checksum is calculated and compared with the received CRC to detect physical layer transmission errors. When an error is detected, the error type and location are recorded and reported to the upper layer protocol.
[0036] The link layer performs frame boundary identification, frame control information extraction, and link status monitoring. Specifically, it uses the frame delimiter state machine to identify SOF (Start of Frame) and EOF (End of Frame), detect the start of frame (SOF) and end of frame (EOF), and identify FC frame boundaries, ensuring accurate parsing of each FC frame and completing frame boundary identification within four clock cycles. It also parses the control field of the FC frame to obtain information such as the frame type (data frame, command frame, response frame), priority, and destination. It also tracks FC link status changes, such as link initialization, link login, and link disconnection, and records the time and cause of link state transitions.
[0037] The network layer performs address resolution, routing information extraction, and network performance statistics. Specifically, it parses the source and destination node addresses in FC frames to obtain information such as the node's WWN and port name. For frames transmitted through FC switches, it parses the switching path information and constructs the FC network topology. It also collects statistics on network layer performance parameters, such as frame forwarding latency and switch buffer utilization, to evaluate FC network performance.
[0038] The transport layer performs connection management, flow control, and error recovery. Specifically, it tracks the FC transport layer's connection establishment and release processes, recording connection status and parameters. It analyzes transport layer flow control information, such as credit management and the sending and receiving of flow control frames, to ensure smooth data transmission. It also handles transport layer error recovery operations, such as frame retransmission and connection reset, to ensure data transmission reliability.
[0039] The SCSI layer extracts protocol data, identifies command types, and extracts key parameters. Specifically, it extracts SCSI protocol data from the data field of the FC frame, including the SCSI command description block (CDB), data buffer, and status response. It parses the opcodes in the CDB and identifies SCSI command types, such as read, write, and query. It also extracts key parameters from SCSI commands, such as the LUN number, logical block address (LBA), transfer length, and command priority, providing a basis for subsequent performance statistics and troubleshooting.
[0040] 103. Determine target performance data of the system interface layer based on the protocol information corresponding to each layer and the read and write operations of the system interface layer.
[0041] In the embodiment of the present application, since storage system failures may exist at any layer in the multi-layer structure, but the failures are basically related to the read and write operations of the SCSI layer, after parsing the protocol information of each layer, the read and write operations of the SCSI layer can be focused on to determine the various read / write performance parameters of the SCSI layer, and a full stack analysis of the physical layer (signal integrity) → transport layer (FC frame error) → SCSI layer (command timeout) can be carried out to obtain the target performance data of the system interface layer.
[0042] 104. Perform fault diagnosis on the storage system based on the target performance data to obtain a fault diagnosis result.
[0043] In an embodiment of the present application, after the target performance data is determined, the target performance data can be analyzed to perform fault diagnosis on the storage system and obtain a fault diagnosis result.
[0044] In the embodiment of the present application, each layer of the storage system can perform data analysis to achieve full-level fault location, and focus on analyzing the performance data of the system interface layer, namely the SCSI layer. It can accurately analyze the fault situation in combination with read and write operations, and achieve accurate diagnosis, precise location and type judgment of storage system read and write faults.
[0045] like Figure 2 As shown, Figure 2Another flowchart of a storage system fault diagnosis method provided in an embodiment of the present application, the method may include the following steps: 201. Collect data streams through the target processing chip.
[0046] In embodiments of the present application, the target processing chip can be a high-speed processing chip, such as an ASIC or FPGA. The target processing chip can be a core component of the analysis device. The target processing chip integrates a high-speed data reception engine and a cache management unit to ensure packet loss prevention under high load conditions. After the data stream is introduced to the analysis device, the target processing chip can receive the data stream via the FC physical layer interface. The target processing chip can have the same network configuration as the storage system and be in a full-traffic capture state.
[0047] In some embodiments, hardware deployment can be performed before data collection. The analysis device can be installed in a suitable location within the FC SAN network. For example, an optical splitter can be connected to the mirror port of an FC switch or in the link between the storage array and the switch to direct the FC data stream to the FC interface of the analysis device. This access method does not affect the normal operation of the original FC network, ensuring the stability of the service system. A high-speed processing chip (such as an FPGA) can then be configured to set parameters such as the FC interface's transmission rate (e.g., 16 Gbps) and encoding method (e.g., 8B / 10B or 128B / 130B) to ensure consistency with the FC network configuration. The target processing chip can then be set to full-traffic capture mode to ensure that all FC packets are captured without missing any data. Furthermore, a sufficiently large cache area (e.g., 8MB) can be configured within the chip to temporarily store captured FC packets to prevent packet loss due to processing delays. The FC data stream is directed to the analysis device via an optical splitter or switch mirror port in the FC network. The target processing chip then receives the data stream from the FC physical layer interface.
[0048] It's important to note that the hardware architecture of an analysis device utilizes a dedicated high-speed processing chip (such as an ASIC or FPGA) as its core processing unit, coupled with components such as a high-speed FC interface chip, to achieve line-speed capture of FC data streams. Configuring a high-speed processing chip (such as an FPGA) involves configuring the core components of the analysis device. By setting parameters such as the target processing chip's transmission rate and encoding method, the analysis device is ensured to match the FC network configuration, enabling accurate data stream capture. This is essential for the proper functioning of the analysis device. In summary, the analysis device is a hardware device that includes the target processing chip (such as an FPGA), which is the core processing unit of the analysis device. The two are essentially the same: a whole and a core component.
[0049] 202. Perform data diversion processing on the data stream to obtain message data.
[0050] In an embodiment of the present application, after obtaining the data stream, the data stream can be diverted. Specifically, different data streams can be assigned to different processing queues based on information such as the source address, destination address, and logical unit number (LUN) of the FC frame. That is, data streams belonging to the same LUN can be assigned to the same queue for subsequent protocol parsing and performance statistics.
[0051] In some embodiments, dedicated processing chips (such as ASICs or FPGAs) are used to implement line-speed analysis of data streams at 16 Gbps and above, ensuring no packet loss or delay, and meeting the fault diagnosis needs in high-speed FC SAN environments.
[0052] In some embodiments, after the data stream is acquired, the data stream may be pre-processed such as signal amplification, equalization, and clock recovery to eliminate attenuation and distortion during signal transmission and ensure the accuracy of the received data.
[0053] During transmission, the signal amplitude may decrease due to dielectric loss, distance attenuation, or noise interference, and may fall below the sensitivity threshold of the receiving device. Signal amplification can proportionally increase the voltage or current of weak signals through electronic circuits (such as operational amplifiers) or optical devices (such as photomultiplier tubes) to restore them to a processable range. This can be understood as combating transmission losses by increasing signal strength and signal-to-noise ratio (SNR), and ensuring that the signal amplitude is higher than the noise floor of the receiving device, thereby avoiding data loss or misjudgment due to weak signals.
[0054] Among them, the transmission medium (such as cables and optical fibers) attenuates signals of different frequencies to different degrees, resulting in greater loss of high-frequency components and causing signal waveform distortion (such as inter-symbol interference). Signal equalization can compensate for the frequency domain characteristics through filters or digital algorithms to make the attenuation of each frequency component tend to be consistent. By compensating for frequency domain distortion, inter-symbol interference is eliminated, the original waveform of the signal is restored, and the receiving end can ensure that the data can be correctly decoded.
[0055] In high-speed serial transmission, the clock signal is usually embedded in the data stream through data encoding (such as 8b / 10b). The receiver needs to extract the clock component from the random data for synchronous sampling. Clock recovery can track the data phase through a phase-locked loop (PLL) or delay-locked loop (DLL) to generate a sampling clock synchronized with the transmitter. The synchronous clock is extracted from the data stream to achieve accurate sampling, ensuring that the receiver samples the data at the correct time and avoiding bit errors caused by clock offset.
[0056] In some embodiments, for data flows, a cache management unit within the target processing chip may allocate multiple data cache queues to each FC port and schedule the queues based on the priority and type of the FC frame to avoid delays in high-priority data.
[0057] FC frames, the basic data unit transmitted in FC networks, have a priority attribute assigned to data during transmission (a characteristic of the collected data itself). This attribute identifies the data's importance or processing priority. Queue scheduling based on the FC frame's inherent priority ensures that high-priority data (such as mission-critical I / O request frames) is not delayed by lower-priority data, thereby ensuring the real-time performance and processing efficiency of core data. This is a crucial mechanism for cache management in high-speed data acquisition modules.
[0058] In some embodiments, when collecting data streams, data traffic can be monitored in real time. When the input data rate exceeds the chip processing capability, the flow control mechanism temporarily stops data transmission by sending a PAUSE frame to the FC network to prevent data loss.
[0059] 203. Input the message data into the first data layer in the multi-level structure of the storage system, so that the first data layer parses the message data to obtain protocol information corresponding to the first data layer.
[0060] In an embodiment of the present application, the storage system has a multi-level structure, and data can be transmitted between adjacent layer structures. When the message data is parsed through the storage system, the message data can be parsed through each layer separately, that is, the input of each layer includes message data. In addition, since adjacent layers are connected to each other, the input of the upper layer can also include the output of the next layer. That is to say, for the first data layer in the multi-level structure, since the first data layer is the bottom layer of the entire storage system, the input of the first data layer only includes message data, that is, the first data layer only parses the message data to obtain the protocol information corresponding to the first data layer.
[0061] 204. Input the message data and the protocol information corresponding to the n-1th data layer into the nth data layer in the multi-level structure of the storage system, so that the nth data layer parses the message data and the protocol information corresponding to the n-1th data layer to obtain the protocol information corresponding to the nth data layer.
[0062] In an embodiment of the present application, in the hierarchical structure of the storage system, except for the bottom layer, i.e., the first data layer, the input of other data layers may include, in addition to message data, the protocol information parsed by the previous data layer. That is to say, the message data and the protocol information corresponding to the previous data layer may be parsed together.
[0063] It should be noted that, for the nth data layer in a multi-level structure, n is an integer greater than 1, that is, the nth data layer can be the second data layer or a higher data layer. It can be understood that the nth data layer is a data layer with a lower layer (i.e., the n-1 data layer). After the n-1 data layer completes parsing and obtains the protocol information corresponding to the n-1 data layer, the n-1 data layer can send the message data and the protocol information corresponding to the n-1 data layer together to the nth data layer. In this way, the nth data layer can parse the message data and the protocol information corresponding to the n-1 data layer to obtain the protocol information corresponding to the nth data layer. Furthermore, if the n+1 data layer exists, the nth data layer can send the message data and the protocol information corresponding to the n data layer together to the n+1 data layer.
[0064] In some embodiments, in the storage system disclosed in the present application, the physical layer is the lowest layer, so the physical layer can parse the message data to obtain the protocol information corresponding to the physical layer; then the link layer can parse the message data and the protocol information corresponding to the physical layer to obtain the protocol information corresponding to the link layer; then the network layer can parse the message data and the protocol information corresponding to the link layer to obtain the protocol information corresponding to the network layer; then the transport layer can parse the message data and the protocol information corresponding to the network layer to obtain the protocol information corresponding to the transport layer; then the SCSI layer can parse the message data and the protocol information corresponding to the transport layer to obtain the protocol information corresponding to the SCSI layer.
[0065] In some embodiments, detailed information at each FC layer is deeply analyzed, and comprehensive performance parameters are counted to accurately distinguish faults within the database, FC network links, and storage devices. The positioning accuracy reaches the device component level. Data at each layer is clearly distinguished during the analysis process, and the information extracted at each layer is targeted, providing a data basis for upper-layer analysis layer by layer, ensuring the independence and accuracy of protocol information at each layer.
[0066] 205. Determine classification information of at least one target command according to the protocol information corresponding to each layer.
[0067] In an embodiment of the present application, after parsing and obtaining the protocol information corresponding to each layer, SCSI operations can be classified and counted to understand the distribution of different types of commands. Specifically, the SCSI commands parsed in real time can be classified according to the SCSI command operation code, such as read commands, write commands, control commands, etc., and then the number of each type of command can be counted at time intervals (such as per second, per minute) to generate a command type distribution histogram to understand the composition of the I / O load and obtain classification information of at least one target command.
[0068] 206. Determine read and write operations corresponding to the at least one target command based on classification information of the at least one target command, and perform performance analysis on the at least one target command and the corresponding read and write operations to obtain target performance data of the system interface layer.
[0069] In an embodiment of the present application, different target commands may correspond to different read and write operations. Therefore, the target commands and read and write operations can be matched, that is, the read and write operations corresponding to at least one target command can be determined, and then performance analysis can be performed on the target commands and the corresponding read and write operations to obtain the target performance data of the system interface layer. The target performance data may at least include command response time, data transmission volume, number of retries and error code data.
[0070] In some embodiments, the above-mentioned target performance data can be calculated separately. Specifically, performance analysis is performed on at least one target command and the corresponding read and write operations to obtain the target performance data of the system interface layer, which can specifically include: determining the command response time based on the sending time and response time of the target command; determining the data transmission volume based on the data transmitted in the read and write operations; when it is detected that the response command to the target command is not received within a preset time length, or there is an error code in the response command, resending the target command and updating the number of retries; extracting the error code from the field of the target command, and classifying and counting it according to the error type to obtain error code data.
[0071] Among them, a timestamp record can be maintained for each SCSI command. When the SCSI command is sent, the sending time is recorded. When the corresponding response frame is received, the response time is recorded. The difference between the two is the command response time. The execution delay of the command is calculated to determine the response performance of the storage device. For commands and responses transmitted across multiple FC frames, they are associated through frame sequence numbers.
[0072] The amount of data transferred in each SCSI read and write operation can be counted and accumulated to obtain the total data transfer volume, thereby analyzing the size of the I / O load.
[0073] If a SCSI command is sent but no response is received within the specified time, or if the response contains an error code, the command's retry count is recorded. The command's retry processing is tracked until the command is successfully executed or ultimately fails. Excessive retry counts may indicate issues such as an unstable network link or a storage device failure.
[0074] The status field and sense data in the SCSI response are parsed, error codes are extracted, and statistics are classified by error type, such as medium error, device error, parameter error, etc. The frequency of each type of error is calculated.
[0075] In some embodiments, based on the in-depth analysis of the protocol information at each level of FC, further in-depth statistics of the SCSI layer read / write performance parameters can be performed to quickly and accurately locate I / O read / write failures in the FC SAN storage system, open up the full-process analysis of each level structure, and effectively improve the accuracy of fault diagnosis and location.
[0076] 207. Store the target performance data of the system interface layer in the database according to the time series, and establish a field index for the target performance data.
[0077] In an embodiment of the present application, after determining the target performance data of the system interface layer, the target performance parameters may be stored in a database in a time series for subsequent historical data analysis and fault diagnosis.
[0078] The stored time series format may be: timestamp, LUN, command type, command response time, data transmission volume, number of retries, and error code data.
[0079] In some embodiments, the database may be a database suitable for storing time series data, such as InfluxDB.
[0080] It should be noted that after being stored in the database, field indexes may be created for the target performance data, which may specifically include: a timestamp index, a LUN index, a command type index, and the like.
[0081] In some embodiments, the performance data is stored in a database according to a time series, and a field index is established, which can facilitate subsequent data query and reading and improve the efficiency of data query and analysis.
[0082] 208. When the storage system is in normal operation, continuously collect historical message data corresponding to multiple moments of the storage system.
[0083] In an embodiment of the present application, before testing the performance data, a performance baseline can be established first. The performance baseline can be understood as the normal range of the performance indicator. If it exceeds the performance baseline, then there may be an abnormal situation. Therefore, a performance baseline can be established based on the performance data during historical normal operation. Then, it is necessary to continuously collect historical message data corresponding to multiple moments of the storage system when the storage system is in normal operation. The historical message data can be data that is continuous over a period of time, such as: one week, one month, etc.
[0084] 209. Perform statistical analysis on historical message data at multiple moments to obtain preset performance baselines corresponding to multiple performance indicators.
[0085] In an embodiment of the present application, the process of statistically analyzing historical message data at multiple moments can be similar to the process of processing message data, that is, the historical message data is input into the multi-level structure of the storage system for layer-by-layer analysis, and then historical performance data of the system interface layer is statistically obtained. Since the historical message data collected is from multiple moments, historical performance data from multiple moments is also obtained. At the same time, the historical performance data may also include multiple performance indicators. Therefore, for each performance indicator, the average, standard deviation, percentile, and other statistics of the performance data corresponding to multiple moments can be calculated, thereby establishing a preset performance baseline corresponding to each performance indicator. For example, the average and 95th percentile of the SCSI read command response time can be calculated as a performance reference under normal conditions.
[0086] 210. When it is detected that at least one performance indicator in the target performance data exceeds a corresponding warning threshold, a warning event is triggered to perform fault diagnosis on the storage system based on the target performance data to obtain a fault diagnosis result.
[0087] In an embodiment of the present application, the preset performance baseline can be pre-calculated based on historical message data. After obtaining the target performance data in the current scenario, the warning threshold corresponding to each performance indicator can be determined based on the preset performance baseline, and then each performance indicator included in the target performance data is compared with the corresponding warning threshold. If there is at least one performance indicator that exceeds the corresponding warning threshold, it can be indicated that there may be an abnormal situation at present, so an early warning event can be triggered. The early warning event can indicate that a fault diagnosis of the storage system is required. Therefore, the storage system can be diagnosed based on the target performance data to obtain a fault diagnosis result.
[0088] In some embodiments, by setting a warning threshold determined according to a performance baseline, a preliminary fault judgment can be made first. Subsequent accurate fault diagnosis can only be performed when the performance indicator exceeds the warning. This can avoid the need for accurate diagnosis of all data, reduce workload, and improve fault diagnosis efficiency.
[0089] In some embodiments, the aforementioned warning threshold is determined based on a preset performance baseline for the corresponding performance indicator. Furthermore, the warning threshold can also be determined based on the preset performance baseline corresponding to the performance indicator and current business needs. In other words, the specific value of the preset performance baseline can be adjusted based on the current business needs to obtain the warning threshold.
[0090] In some embodiments, when comparing a performance indicator with a corresponding warning threshold, if the performance indicator exceeds the corresponding warning threshold, the warning level can be determined based on the degree of deviation and the duration. The degree of deviation is the difference between the performance indicator and the corresponding warning threshold, and the duration is the statistical length of time the performance indicator exceeds the corresponding warning threshold. The warning levels may include: warning, serious warning, failure, etc.; specific fault diagnosis strategies can be determined for different warning levels, for example: when the warning level is a warning, fault diagnosis may not be performed immediately, and changes in performance indicators may continue to be observed; when the warning level is a serious warning, fault diagnosis may be further performed; when the warning level is a failure, fault reminder information may be directly output to the staff, etc.
[0091] In some embodiments, when diagnosing a storage system fault, in addition to the target performance data, fault diagnosis can also be performed based on the protocol information corresponding to each layer obtained by parsing the message data layer by layer. In other words, based on the target performance data and the protocol information corresponding to each layer, the fault can be accurately located through correlation analysis of all-level information.
[0092] In some embodiments, when performing fault diagnosis on a storage system, a combination of a machine learning algorithm (such as a learning model) and a rule engine can be used to analyze target performance parameters. That is, based on the target performance data, the storage system is diagnosed for faults to obtain fault diagnosis results. Specifically, this may include: based on the target performance data, a pre-stored fault rule library and a pre-trained fault diagnosis model, the storage system is diagnosed for faults to obtain fault diagnosis results.
[0093] It should be noted that the fault rule base can be a fault location rule base established based on a rule engine, which can store corresponding fault phenomena, diagnostic rules, optimization suggestions, etc.; the fault diagnosis model can be a machine learning model obtained after pre-model training, and performance data can be input into the fault diagnosis model to obtain diagnostic results.
[0094] Furthermore, based on the target performance data, the pre-stored fault rule library and the pre-trained fault diagnosis model, the storage system is diagnosed to obtain a fault diagnosis result, which may specifically include: extracting features from the target performance data and warning events to obtain fault features; determining a first diagnosis result based on the fault features and the fault diagnosis model; determining a second diagnosis result based on the fault features and the fault rule library; and fusing the first diagnosis result and the second diagnosis result to determine the fault diagnosis result.
[0095] In an embodiment of the present application, fault characteristics can be first extracted from performance parameters and warning events, such as a sudden increase in response time, a sharp increase in the number of retries, frequent occurrence of specific error codes, etc.; then the fault characteristics can be input into the fault diagnosis model to obtain a first diagnostic result output by the fault diagnosis model; at the same time, the fault characteristics can also be matched with data on various fault phenomena stored in the fault rule library, and data matching the fault characteristics can be determined as a second diagnostic result. The first diagnostic result and the second diagnostic result are both diagnostic results about the fault characteristics. Finally, the first diagnostic result and the second diagnostic result can be fused to obtain the final fault diagnosis result.
[0096] Furthermore, the process of fusing diagnostic results can be achieved through weighted summation, that is, fusing the first diagnostic result and the second diagnostic result to determine the fault diagnosis result, which can specifically include: weighted summing the abnormal data deviation value indicated in the first diagnostic result and the abnormal data deviation value indicated in the second diagnostic result to obtain a fault probability score; and determining the fault diagnosis result according to a preset score range corresponding to the fault probability score.
[0097] It should be noted that the diagnostic results may indicate the presence of abnormal performance indicators, as well as specific abnormal situations, namely, the abnormal data deviation value of the abnormal indicator. The abnormal data deviation value can be understood as the difference between the numerical value of the abnormal indicator and the normal numerical value. The abnormal indicators indicated in the first diagnostic result and the second diagnostic result may be the same indicators or different indicators. The corresponding weights can be determined for the indicators indicated in the first diagnostic result and the second diagnostic result respectively, and then the abnormal data deviation values of each indicator are weighted and summed according to the corresponding weights to obtain a fault probability score. Different score ranges can be pre-assigned to different fault degrees, and the score range of the fault probability score can be determined to obtain the corresponding fault diagnosis result.
[0098] In some embodiments, both the first diagnostic result and the second diagnostic result may include specific fault results and fault probabilities. It is understandable that the fault diagnosis model and the fault rule base are based on fault diagnosis based on performance data, and are not used to detect faults in actual scenarios. Therefore, the fault diagnosis results cannot be guaranteed to be absolutely correct, and sometimes the fault phenomenon may correspond to multiple fault causes and fault types. Therefore, the first diagnostic result and the second diagnostic result may include multiple fault types and their corresponding probabilities.
[0099] Based on a fault rule base (e.g., rules indicating that a large number of media error codes and increased response time correspond to disk media failures), real-time fault characteristics (such as error code type and response time changes) are matched against the fault patterns in the rule base. This is combined with the frequency of occurrence of these patterns in historical cases to initially determine the probability range. The fault diagnosis model, after pre-training, automatically outputs the matching probability of each fault type based on input fault characteristics (such as the number of retries and error code distribution). This probability is directly calculated by the algorithm model.
[0100] This allows the most likely fault type to be determined by probability sorting.
[0101] In some embodiments, the process of acquiring a fault rule base and a fault diagnosis model may include: respectively acquiring a first sample data set when the storage system is in a normal operating state, and a second sample data set and corresponding fault phenomena when the storage system is in a faulty operating state; performing feature analysis on the first sample data set and the second sample data set to obtain a normal feature set and a fault feature set; training a preset model based on the normal feature set, the fault feature set and the fault phenomenon to obtain a fault diagnosis model; and storing the fault feature set and the fault phenomenon in correspondence to obtain a fault rule base.
[0102] It should be noted that the fault diagnosis model needs to be pre-trained. It can be understood that the fault diagnosis model performs fault diagnosis by analyzing the correlation between features and phenomena. Therefore, a first sample data set when the storage system has no faults, as well as a second sample data set and corresponding fault phenomena when the storage system has faults can be obtained. After feature analysis, a normal feature set and a fault feature set are obtained respectively. Then, the model is made to learn the normal feature set, the fault feature set and the fault phenomenon to generate a fault diagnosis model.
[0103] It should be noted that since the fault rule base matches the corresponding fault type directly based on the fault characteristics, it can be understood that the fault rule base stores a large amount of data such as fault phenomena, fault causes, fault types, fault characteristics, etc. Therefore, it is possible to obtain a second sample data set and the corresponding fault phenomenon when a storage system fails, perform feature analysis on the second sample data set, obtain a fault feature set, and store the fault feature set and the fault phenomenon in correspondence to generate a fault rule base.
[0104] In some embodiments, a fault diagnosis system that integrates a rule engine and a machine learning model uses a fault rule base and a fault diagnosis model to perform fault diagnosis simultaneously and output fault diagnosis results, thereby achieving automatic identification and precise positioning of I / O read and write faults in the FC SAN storage system, reducing dependence on the experience of operation and maintenance personnel, and not only improving the accuracy and consistency of fault diagnosis, but also shortening the diagnosis time.
[0105] 211. According to the fault diagnosis results, output the corresponding fault warning information and fault handling strategy.
[0106] In an embodiment of the present application, after obtaining the fault diagnosis results, the fault diagnosis results can be output to the staff, specifically, fault warning information and fault handling strategy can be output. The fault warning information is used to indicate that there may be a fault in the current storage system, and the fault handling strategy is the handling strategy corresponding to the current possible fault.
[0107] In some embodiments, operation and maintenance personnel may be allowed to configure personalized warning rules according to business needs, including warning thresholds, warning levels, warning notification methods, etc.
[0108] In some embodiments, when a warning event occurs, relevant operation and maintenance personnel can be notified through various methods such as email, text message, instant messaging tools, etc.
[0109] In some embodiments, corresponding processing suggestions can be generated based on the fault diagnosis results and historical fault handling experience, such as checking the FC link connection, restarting the storage controller, replacing the faulty disk, etc., to provide decision support for operation and maintenance personnel.
[0110] In some embodiments, a visualization tool such as Grafana may be used to display performance indicators and fault conditions of the FC SAN storage network in the form of charts.
[0111] In some embodiments, key performance indicators of the FC SAN storage network, such as SCSI command response time, data transmission rate, error code statistics, etc., can be displayed in real time in the form of dashboards, graphs, etc.
[0112] Specifically, an intuitive dashboard interface can be designed to display key performance indicators of the FC SAN storage network. Each indicator is displayed in the form of charts, digital cards, etc., making it easy for operation and maintenance personnel to quickly understand the system status.
[0113] Specifically, a network topology diagram of the FC SAN can be generated based on the topology information obtained by parsing the FC network layer, which can intuitively display the connection relationship and status of storage devices, switches, hosts and other devices.
[0114] Specifically, when the fault diagnosis result indicates a warning, the alarm information, including the alarm level, fault location and cause, can be displayed in a striking manner (such as a red alarm box, sound prompt, etc.) on the monitoring interface.
[0115] In some embodiments, historical data query and analysis functions can be provided, supporting filtering and statistics by dimensions such as time, device, and command type, to help operation and maintenance personnel discover potential performance trends and failure modes.
[0116] Specifically, flexible query condition settings can be provided, allowing operation and maintenance personnel to query historical performance data by dimensions such as time range, device type, LUN number, and command type.
[0117] Specifically, the queried historical data can be displayed in the form of graphs, bar charts, pie charts, etc., to facilitate analysis of performance trends and failure modes. For example, the changing trend of SCSI read command response time over the past 24 hours can be displayed.
[0118] Specifically, it can support comparative analysis of performance data of different time periods and different devices, helping operation and maintenance personnel to discover performance differences and potential problems.
[0119] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0120] like Figure 3 As shown, an embodiment of the present application further provides a storage system fault diagnosis device, which may include: Acquisition module 301, used to acquire message data from the storage system; Processing module 302, configured to parse the message data layer by layer based on the multi-layer structure of the storage system to obtain protocol information corresponding to each layer, wherein the multi-layer structure includes at least a system interface layer, which is the highest layer in the multi-layer structure of the storage system; The processing module 302 is further configured to determine target performance data of the system interface layer based on the protocol information corresponding to each layer and the read and write operations of the system interface layer; The processing module 302 is further configured to perform fault diagnosis on the storage system according to the target performance data to obtain a fault diagnosis result.
[0121] In some embodiments, the acquisition module 301 is specifically configured to collect data streams through a target processing chip, where the target processing chip is a chip having the same network configuration as the storage system and being in a full-flow capture state; The processing module 302 is specifically configured to perform data splitting processing on the data stream to obtain message data.
[0122] In some embodiments, the processing module 302 is specifically configured to input the message data into the first data layer in the multi-level structure of the storage system, so that the first data layer parses the message data to obtain protocol information corresponding to the first data layer; The processing module 302 is specifically used to input the message data and the protocol information corresponding to the n-1th data layer into the nth data layer in the multi-level structure of the storage system, so that the nth data layer parses the message data and the protocol information corresponding to the n-1th data layer to obtain the protocol information corresponding to the nth data layer; n is an integer greater than 1.
[0123] In some embodiments, the processing module 302 is specifically configured to determine classification information of at least one target command based on protocol information corresponding to each layer; The processing module 302 is specifically used to determine the read and write operations corresponding to the at least one target command based on the classification information of the at least one target command, and perform performance analysis on the at least one target command and the corresponding read and write operations to obtain the target performance data of the system interface layer. The target performance data includes at least command response time, data transmission volume, number of retries and error code data.
[0124] In some embodiments, the processing module 302 is specifically configured to determine a command response time based on a sending time and a response time of a target command; The processing module 302 is specifically configured to determine the data transmission amount based on the data transmitted in the read and write operations; The processing module 302 is specifically configured to resend the target command and update the number of retries when detecting that a response command to the target command is not received within a preset time period or an error code is contained in the response command; The processing module 302 is specifically used to extract error codes from the fields of the target command, and classify and count them according to error types to obtain error code data.
[0125] In some embodiments, the processing module 302 is further configured to store the target performance data of the system interface layer in a database according to a time series, and to establish a field index for the target performance data.
[0126] In some embodiments, the processing module 302 is specifically configured to trigger an early warning event when detecting that at least one performance indicator in the target performance data exceeds a corresponding early warning threshold, so as to perform a fault diagnosis on the storage system based on the target performance data and obtain a fault diagnosis result; The warning threshold is determined based on a preset performance baseline of the corresponding performance indicator.
[0127] In some embodiments, the acquisition module 301 is further configured to continuously collect historical message data corresponding to multiple moments of the storage system when the storage system is in normal operation; The processing module 302 is further configured to perform statistical analysis on historical message data at multiple moments to obtain preset performance baselines corresponding to the multiple performance indicators.
[0128] In some embodiments, the processing module 302 is specifically configured to perform fault diagnosis on the storage system based on target performance data, a pre-stored fault rule library, and a pre-trained fault diagnosis model to obtain a fault diagnosis result.
[0129] In some embodiments, the processing module 302 is specifically configured to extract features from the target performance data and the warning events to obtain fault features; The processing module 302 is specifically configured to determine a first diagnosis result based on the fault characteristics and the fault diagnosis model; The processing module 302 is specifically configured to determine a second diagnosis result based on the fault characteristics and the fault rule base; The processing module 302 is specifically configured to fuse the first diagnosis result and the second diagnosis result to determine a fault diagnosis result.
[0130] In some embodiments, the acquisition module 301 is further configured to respectively acquire a first sample data set when the storage system is in a normal operating state, and a second sample data set when the storage system is in a faulty operating state, and corresponding fault phenomena; The processing module 302 is further configured to perform feature analysis on the first sample data set and the second sample data set to obtain a normal feature set and a fault feature set; The processing module 302 is further used to train a preset model based on the normal feature set, the fault feature set and the fault phenomenon to obtain a fault diagnosis model; The processing module 302 is further configured to store the fault feature set and the fault phenomenon in correspondence with each other to obtain a fault rule base.
[0131] In some embodiments, the processing module 302 is specifically configured to perform a weighted summation of the abnormal data deviation value indicated in the first diagnostic result and the abnormal data deviation value indicated in the second diagnostic result to obtain a fault probability score; The processing module 302 is specifically configured to determine a fault diagnosis result according to a preset score range corresponding to the fault probability score.
[0132] In the embodiments of the present application, the description of the features in the embodiments corresponding to the fault diagnosis device of the storage system can be found in the relevant description of the embodiments corresponding to the fault diagnosis method of the storage system, and will not be repeated here.
[0133] like Figure 4 As shown, an embodiment of the present application also provides an electronic device, including a memory 401 and a processor 402, wherein the memory 401 stores a computer program, and the processor 402 is configured to run the computer program to execute the steps in any of the above-mentioned storage system fault diagnosis method embodiments.
[0134] An embodiment of the present application further provides a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps of any of the above-mentioned storage system fault diagnosis method embodiments when running.
[0135] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
[0136] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above-mentioned storage system fault diagnosis methods are implemented.
[0137] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above-mentioned storage system fault diagnosis methods are implemented.
[0138] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may 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.
[0139] The above is a detailed introduction to the fault diagnosis method, device, electronic device and storage medium of a storage system provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only intended to help understand the method and core ideas of the present application. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.
Claims
1. A storage system fault diagnosis method, characterized in that: include: Acquiring message data from the storage system; Based on the multi-level structure of the storage system, the message data is parsed layer by layer to obtain protocol information corresponding to each layer, the multi-level structure including at least a system interface layer, which is the highest layer in the multi-level structure of the storage system; Determining target performance data of the system interface layer according to the protocol information corresponding to each layer and the read and write operations of the system interface layer; Perform fault diagnosis on the storage system according to the target performance data to obtain a fault diagnosis result.
2. The method according to claim 1, characterized in that The acquiring of the message data of the storage system includes: Collecting data streams through a target processing chip, where the target processing chip has the same network configuration as the storage system and is in a full-flow capture state; Perform data splitting processing on the data stream to obtain the message data.
3. The method according to claim 1, characterized in that The multi-level structure based on the storage system is used to parse the message data layer by layer to obtain protocol information corresponding to each layer, including: Inputting the message data into a first data layer in the multi-level structure of the storage system, so that the first data layer parses the message data to obtain protocol information corresponding to the first data layer; The message data and the protocol information corresponding to the n-1th data layer are input into the nth data layer in the multi-level structure of the storage system, so that the nth data layer parses the message data and the protocol information corresponding to the n-1th data layer to obtain the protocol information corresponding to the nth data layer; n is an integer greater than 1.
4. The method according to claim 1, wherein Determining target performance data of the system interface layer according to the protocol information corresponding to each layer and the read and write operations of the system interface layer includes: Determining classification information of at least one target command according to the protocol information corresponding to each layer; Based on the classification information of the at least one target command, the read and write operations corresponding to the at least one target command are determined, and performance analysis is performed on the at least one target command and the corresponding read and write operations to obtain the target performance data of the system interface layer, wherein the target performance data includes at least command response time, data transmission volume, number of retries and error code data.
5. The method according to claim 4, characterized in that The performing performance analysis on the at least one target command and the corresponding read and write operations to obtain target performance data of the system interface layer includes: Determining the command response time according to the sending time and the response time of the target command; determining the data transmission amount according to the data transmitted in the read and write operations; When it is detected that no response command to the target command is received within a preset time period, or an error code is contained in the response command, the target command is resent, and the number of retries is updated; Error codes are extracted from the fields of the target command, and classified and counted according to error types to obtain the error code data.
6. The method according to claim 4, characterized in that After determining, based on the classification information of the at least one target command, the read and write operations corresponding to the at least one target command, and performing performance analysis on the at least one target command and the corresponding read and write operations to obtain target performance data of the system interface layer, the method further includes: The target performance data of the system interface layer are stored in a database according to a time series, and a field index is established for the target performance data.
7. The method according to claim 1, characterized in that The performing fault diagnosis on the storage system according to the target performance data to obtain a fault diagnosis result includes: When it is detected that at least one performance indicator in the target performance data exceeds a corresponding warning threshold, a warning event is triggered to perform fault diagnosis on the storage system based on the target performance data to obtain the fault diagnosis result; The warning threshold is determined according to a preset performance baseline of the corresponding performance indicator.
8. The method according to claim 7, characterized in that The method further comprises: When the storage system is in normal operation, continuously collecting historical message data corresponding to multiple moments of the storage system; Statistical analysis is performed on the historical message data at the multiple moments to obtain preset performance baselines corresponding to the multiple performance indicators.
9. The method according to claim 7, characterized in that The performing fault diagnosis on the storage system according to the target performance data to obtain the fault diagnosis result includes: According to the target performance data, a pre-stored fault rule library and a pre-trained fault diagnosis model, fault diagnosis is performed on the storage system to obtain the fault diagnosis result.
10. The method according to claim 9, characterized in that The performing fault diagnosis on the storage system according to the target performance data, a pre-stored fault rule library, and a pre-trained fault diagnosis model to obtain the fault diagnosis result includes: Extracting features from the target performance data and the warning events to obtain fault features; Determining a first diagnosis result according to the fault characteristics and the fault diagnosis model; determining a second diagnosis result according to the fault characteristics and the fault rule base; The first diagnostic result and the second diagnostic result are integrated to determine the fault diagnosis result.
11. The method according to claim 10, characterized in that The method further comprises: respectively acquiring a first sample data set when the storage system is in a normal operating state, and a second sample data set when the storage system is in a faulty operating state, and corresponding fault phenomena; Performing feature analysis on the first sample data set and the second sample data set respectively to obtain a normal feature set and a fault feature set; Training a preset model according to the normal feature set, the fault feature set, and the fault phenomenon to obtain the fault diagnosis model; The fault feature set and the fault phenomenon are stored in correspondence to obtain the fault rule base.
12. The method according to claim 10, characterized in that The fusing the first diagnostic result and the second diagnostic result to determine the fault diagnosis result includes: performing a weighted summation of the abnormal data deviation value indicated in the first diagnostic result and the abnormal data deviation value indicated in the second diagnostic result to obtain a fault probability score; The fault diagnosis result is determined according to a preset score range corresponding to the fault probability score.
13. A fault diagnosis device for a storage system, characterized in that: include: An acquisition module, configured to acquire message data from the storage system; a processing module configured to parse the message data layer by layer based on a multi-layer structure of the storage system to obtain protocol information corresponding to each layer, wherein the multi-layer structure includes at least a system interface layer, which is the highest layer in the multi-layer structure of the storage system; The processing module is further configured to determine target performance data of the system interface layer based on the protocol information corresponding to each layer and the read and write operations of the system interface layer; The processing module is further configured to perform fault diagnosis on the storage system according to the target performance data to obtain a fault diagnosis result.
14. An electronic device, characterized in that: include: memory for storing computer programs; A processor, configured to implement the steps of the storage system fault diagnosis method according to any one of claims 1 to 12 when executing the computer program.
15. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the fault diagnosis method for the storage system according to any one of claims 1 to 12 are implemented.
Citation Information
Patent Citations
Data monitoring method and device, electronic equipment and computer readable storage medium
CN113934593A
Abnormal message identification method and device, electronic equipment and storage medium
CN119449747A
System anomaly detection method and device, storage medium and electronic equipment
CN120029805A
Packet processing method, gateway device, and storage system
US20240388545A1
Cited By
Railway power distribution station intelligent operation and maintenance monitoring and analyzing method and system
CN122437759A
