Server fault diagnosis method and device, storage medium and product

By responding to preset monitoring services and decrypting self-test codes, the fault analysis model is used to automatically analyze the cause of server failure, solving the problem of low manual analysis efficiency in the existing technology, and achieving efficient and accurate fault diagnosis.

CN119201613APending Publication Date: 2024-12-27SHANGHAI QIANHAI EVOC ELECTRONIC TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411256705.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-09
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

In the prior art, manual analysis is used to determine the cause of server failure and requires manual query, which is low efficiency and is difficult to achieve efficient and accurate fault diagnosis.

Method used

By responding to the preset listening service, requesting to connect to the data transmission channel, receiving and decrypting the encrypted self-test code, using the preset fault analysis model to analyze the server status data and self-test code, and automatically determine the cause of the fault.

Benefits of technology

It improves the accuracy and efficiency of fault diagnosis, reduces the need for manual intervention and manual query, and realizes automated fault analysis and diagnosis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201613A_ABST
    Figure CN119201613A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of data processing, and discloses a server fault diagnosis method and device, a storage medium and a product. A preset monitoring service is responded, a data transmission channel is requested to be connected, and the data transmission channel is established when a server receives a transmission channel link request; receiving an encrypted self-check code transmitted by the server based on the data transmission channel, and decrypting the encrypted self-check code based on a preset private key to obtain self-check code data; and inputting the state data of the server and the self-check code data into a preset fault analysis model for fault analysis to obtain fault reason information. Compared with the prior art that the fault reason is judged through manual analysis, manual query is needed, and the efficiency is low, the fault reason of the server is analyzed through the fault analysis model, the accuracy and efficiency of fault diagnosis are improved, and the requirements of manual intervention and manual query are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a server fault diagnosis method, device, storage medium and product. Background Art

[0002] There are some technologies that are used to parse and analyze BIOS POST codes, such as using hardware debugging tools or debugging cards to monitor and record POST codes, and then manually querying the error information corresponding to the POST code to determine the cause of the fault. In addition, there are some software tools that can analyze POST codes by parsing system logs or BIOS logs. However, these methods require manual analysis and experience to determine the cause of the fault and require manual query, which is inefficient and prone to errors. Summary of the invention

[0003] The main purpose of this application is to provide a server fault diagnosis method, device, storage medium and product, aiming to solve the technical problem that the cause of the fault is determined by manual analysis in the prior art and manual query is required, which is inefficient.

[0004] To achieve the above object, the present application provides a server fault diagnosis method, which is applied to a terminal device and includes:

[0005] Respond to the preset listening service and request to connect the data transmission channel, which is established by the server upon receiving the transmission channel connection request;

[0006] Receiving the encrypted self-check code transmitted by the server based on the data transmission channel, and decrypting the encrypted self-check code based on a preset private key to obtain the self-check code data;

[0007] The server status data and self-check code data are input into a preset fault analysis model for fault analysis to obtain fault cause information.

[0008] Optionally, the step of inputting the status data and self-check code data of the server into a preset fault analysis model for fault analysis to obtain fault cause information includes:

[0009] Perform digital preprocessing on the server status data and self-check code data to obtain the self-check code time series and server status information matrix set;

[0010] According to the preset PCA algorithm, the eigenvector matrix of the server status information matrix set is extracted as the initial value of the weight matrix in the preset fault analysis model, and the self-check code time series is sequentially input into the preset fault analysis model to obtain the fault cause information.

[0011] Optionally, the step of digitally preprocessing the status data and self-check code data of the server to obtain a self-check code time series and a server status information matrix set includes:

[0012] Digitally preprocess the server status data based on preset data specifications to obtain a server status information matrix set;

[0013] The self-check code data is digitally preprocessed to obtain the self-check code time series.

[0014] Optionally, before the step of inputting the status data and self-check code data of the server into a preset fault analysis model for fault analysis and obtaining fault cause information, the step further includes:

[0015] Collect self-check code data samples and processing methods for various BUG situations;

[0016] Digitally preprocess the self-check code data sample and the processing method to obtain digital information;

[0017] The digital information is input into the preset RNN model for training to obtain the preset fault analysis model.

[0018] Optionally, before the step of responding to the preset monitoring service and requesting to connect to the data transmission channel, the method further includes:

[0019] Generate a key pair, which includes a public key and a private key;

[0020] Upload the public key to the server to store it in the BMC public key library.

[0021] Optionally, after the step of inputting the status data and self-check code data of the server into a preset fault analysis model for fault analysis and obtaining fault cause information, the method further includes:

[0022] Determine the fault problem to be solved and the target processing method based on the fault cause information;

[0023] The faults to be resolved and the target processing methods are displayed.

[0024] In addition, to achieve the above purpose, the present application also provides a server fault diagnosis method, which is applied to the server side and includes:

[0025] Respond to the data transmission channel connection request initiated by the terminal device and establish a data transmission channel with the terminal device;

[0026] Extract the public key from the BMC public key library to encrypt the self-check code, and obtain the encrypted self-check code;

[0027] The encrypted self-check code is sent to the terminal device through the data transmission channel, so that the terminal device decrypts the encrypted self-check code and performs fault analysis.

[0028] In addition, to achieve the above objectives, the present application also proposes a server fault diagnosis device, which includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the server fault diagnosis method as described above.

[0029] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the server fault diagnosis method as described above are implemented.

[0030] In addition, to achieve the above-mentioned purpose, the present application also proposes a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of the server fault diagnosis method as described above are implemented.

[0031] One or more technical solutions proposed in this application have at least the following technical effects:

[0032] This application responds to a preset listening service and requests to connect a data transmission channel. The data transmission channel is established by the server when receiving a transmission channel link request; based on the data transmission channel, the encrypted self-check code transmitted by the server is received, and the encrypted self-check code is decrypted based on a preset private key to obtain self-check code data; the server status data and self-check code data are input into a preset fault analysis model for fault analysis to obtain fault cause information. This application stores the public key of the terminal device in the public key library of the BMC, sends the POST code encrypted by the corresponding terminal device public key to the terminal device through the data transmission channel, and the terminal device uses its private key to decrypt the POST code. The terminal device inputs the POST code data and the current server status data into the preset fault analysis model for fault analysis to determine the cause of the fault. Compared with the prior art that determines the cause of the fault through manual analysis and requires manual query, which is less efficient, this embodiment analyzes the cause of the server fault through the fault analysis model, improves the accuracy and efficiency of fault diagnosis, and reduces the need for manual intervention and manual query. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0034] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0035] Figure 1 A flowchart of the first embodiment of the server fault diagnosis method of the present application is provided;

[0036] Figure 2 A schematic diagram of a POST code processing system provided for the first embodiment of the server fault diagnosis method of this application;

[0037] Figure 3 A schematic diagram of the RNN model principle provided for the second embodiment of the server fault diagnosis method of this application;

[0038] Figure 4 A flowchart of the third embodiment of the server fault diagnosis method of the present application is provided;

[0039] Figure 5 A schematic diagram of a POST code processing system flow chart provided for the third embodiment of the server fault diagnosis method of this application;

[0040] Figure 6 Schematic diagram of the device structure of the hardware operating environment involved in the server fault diagnosis method in the embodiment of the present application.

[0041] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0042] It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0043] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0044] The main solution of the embodiment of the present application is: respond to the preset monitoring service and request to connect the data transmission channel, the data transmission channel is established by the server when receiving the transmission channel link request; receive the encrypted self-test code transmitted by the server based on the data transmission channel, and decrypt the encrypted self-test code based on the preset private key to obtain self-test code data; input the server status data and self-test code data into the preset fault analysis model for fault analysis to obtain fault cause information.

[0045] In this embodiment, for ease of description, the following description is made with the computing service device as the execution entity.

[0046] Since the prior art uses manual analysis to determine the cause of a fault and requires manual inquiry, the efficiency is low.

[0047] The present application provides a solution to improve the accuracy and efficiency of fault diagnosis and reduce the need for human intervention and manual query.

[0048] As can be seen from the above embodiments, the present application responds to a preset monitoring service and requests to connect to a data transmission channel, which is established by the server when receiving a transmission channel link request; based on the data transmission channel, the encrypted self-check code transmitted by the server is received, and the encrypted self-check code is decrypted based on a preset private key to obtain self-check code data; the server status data and self-check code data are input into a preset fault analysis model for fault analysis to obtain fault cause information. The present application analyzes the cause of server failures through a fault analysis model, thereby improving the accuracy and efficiency of fault diagnosis and reducing the need for manual intervention and manual query.

[0049] It should be noted that the execution subject of this embodiment may be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, including a server fault diagnosis system, etc. The following takes a computer as an example to illustrate this embodiment and the following embodiments.

[0050] Based on this, the present application embodiment provides a server fault diagnosis method, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the server fault diagnosis method of the present application.

[0051] In this embodiment, the server fault diagnosis method is applied to a terminal device, and the method includes steps S10 to S30:

[0052] Step S10, responding to the preset monitoring service and requesting to connect the data transmission channel, the data transmission channel is established by the server when receiving the transmission channel connection request.

[0053] It should be noted that the preset listening service can be a TCP listening service pre-set and turned on at the server end. The TCP (Transmission Control Protocol) listening service can refer to a network service (such as a server application) waiting for a connection request from a client at a specified IP address and port. When a client attempts to establish a TCP connection with a server, it sends a data transmission channel connection request to the IP address and port specified by the server. After the server listens to the data transmission channel connection request, it will respond to the request and establish a data transmission channel with the client. Once the connection is established, the server and the client can perform two-way data transmission through this connection. In the listening state, the server will continuously check whether there are new connection requests arriving and process each request. Among them, in this embodiment, the terminal device acts as a client, responds to the preset listening service, and requests to connect to the data transmission channel.

[0054] It should be understood that in this embodiment, the terminal device initiates a data transmission channel connection request to the server, and when the server receives the data transmission channel connection request initiated by the terminal device, it establishes a data transmission channel with the terminal device through the TCP protocol.

[0055] Furthermore, before step S10, the process also includes: generating a key pair, the key pair including a public key and a private key; uploading the public key to the server to store it in the BMC public key library.

[0056] It should be noted that in this example, the terminal device can generate a public key and a private key pair through the instruction to generate a key pair when receiving a fault trigger instruction, and store the public key in the BMC public key library on the server side, so as to complete the encryption and decryption process of the self-check code. Among them, the fault trigger instruction can be a fault instruction triggered during the process of the server generating the self-check code.

[0057] It is understandable that the public-private key encryption algorithm in this application can use PSA, DSA, ECC and other algorithms to ensure the security of communication.

[0058] Step S20, receiving the encrypted self-check code transmitted by the server based on the data transmission channel, and decrypting the encrypted self-check code based on a preset private key to obtain self-check code data.

[0059] It should be understood that in order to ensure data security, the present application completes data transmission through a data transmission channel, and the present application receives the encrypted self-check code ciphertext sent by the server through the data transmission channel, and decrypts the encrypted self-check code ciphertext according to a preset private key to obtain the original self-check code data. The self-check code data (BIOS POST code) is in the server field and is a code used to indicate the status of each stage in the server startup process. The self-check code data is used to indicate whether the various hardware devices of the computer are working properly or whether there is a fault, and can be used to analyze whether the server has a fault and the cause of the fault.

[0060] In the specific implementation, this application uses a pre-stored public key and private key pair to decrypt the self-check code ciphertext encrypted by the public key, thereby obtaining the self-check code data. By storing the public key of the terminal device in the public key library of the BMC and using the public and private key encryption algorithm to encrypt and decrypt the POST code, the secure transmission of the POST code is ensured. By using the TCP protocol to transmit the POST code, a communication channel can be quickly established and encrypted transmission of the POST code can be achieved.

[0061] Step S30, inputting the server status data and self-check code data into a preset fault analysis model to perform fault analysis and obtain fault cause information.

[0062] It should be noted that the status data of the server may refer to the current status data of the server, which includes but is not limited to BIOS, CPLD and BMC versions, CPU model and quantity, memory module model and quantity, external PCIe card type and position, etc.

[0063] It is understandable that by inputting the server status data and self-check code data into the preset fault analysis model for fault analysis, the fault cause information is obtained, and the fault cause information may include information such as the fault type, the number of faults, and the fault code. Among them, the preset fault analysis model can be a model built on the terminal device based on the RNN model.

[0064] Furthermore, step S30 also includes: digitally preprocessing the server status data and self-check code data to obtain a self-check code time series and a server status information matrix set; extracting the eigenvector matrix of the server status information matrix set according to a preset PCA algorithm as the initial value of the weight matrix in the preset fault analysis model, and inputting the self-check code time series into the preset fault analysis model in sequence to obtain fault cause information.

[0065] It should be noted that in order to optimize the processing efficiency of the server's status data and self-check code data, the present application performs digital preprocessing on the server's status data and self-check code data, thereby converting the server's status data and self-check code data into digital information, and obtaining a self-check code time series and a server status information matrix set. The self-check code time series can be a self-check code sequence generated in a certain order and time interval when BOIS performs self-check. The server status information matrix set can refer to a matrix set containing server status information. Each row of this matrix set can represent the server status at a point in time, and each column represents a specific status parameter (such as CPU usage, memory occupancy, etc.).

[0066] It is understandable that the preset PCA algorithm can be a pre-set principal component analysis (Principal Component Analysis) algorithm, and the PCA algorithm can extract the most important features from the original data for the initialization parameters of the preset fault analysis model, wherein the present application uses the PCA algorithm to calculate the eigenvectors of the matrix set containing the server status information after digital preprocessing, and performs the definition of a new spatial coordinate system to represent the data after dimensionality reduction, and initializes the weight matrix in the preset fault analysis model through the determined eigenvectors, wherein the eigenvectors extracted by PCA can be used as the initial values ​​of the weight matrix in the preset fault analysis model, and the present application can further optimize these weights through the back propagation algorithm to find the weight value that best suits the current task. Therefore, the main function of the PCA algorithm is to provide a relatively reasonable starting point to help the preset fault analysis model converge to a better solution faster, thereby improving the accuracy of the model for fault analysis.

[0067] In the specific implementation, after optimizing the preset fault analysis model through the PCA algorithm, the self-check code time series is input into the preset fault analysis model in sequence to obtain the fault cause information. By using the RNN model to process the POST code and server status data, the cause of the server failure can be quickly calculated. Compared with traditional manual analysis and troubleshooting, this application can save a lot of time and labor costs.

[0068] Furthermore, after step S30, the method further includes: determining the fault problem to be solved and the target processing method according to the fault cause information; and displaying the fault problem to be solved and the target processing method.

[0069] It should be noted that the fault cause information contained in the results output by the preset fault analysis model is used to further determine the fault problem to be solved, and the target processing method is queried according to the fault code corresponding to the fault problem to be solved, so that the fault problem to be solved and the target processing method are displayed on the terminal device.

[0070] In the specific implementation, to further illustrate this application, please refer to Figure 2 The POST code processing system schematic diagram shown in the figure, wherein the present application provides a system for processing server BIOS postcode, wherein the public key of the terminal device is first stored in the public key library of the BMC, the BMC uses the TCP protocol to send the POST code encrypted by the corresponding terminal device public key to the terminal device, the terminal device uses its private key to decrypt the POST code, and the terminal device inputs the POST code data and the current server status data into the RNN model application, wherein the RNN model application can refer to a preset fault analysis model, a model application for analyzing the cause of the fault.

[0071] This embodiment responds to the preset listening service and requests to connect the data transmission channel. The data transmission channel is established by the server when receiving the transmission channel link request; based on the data transmission channel, the encrypted self-check code transmitted by the server is received, and the encrypted self-check code is decrypted based on the preset private key to obtain the self-check code data; the server status data and the self-check code data are input into the preset fault analysis model for fault analysis to obtain the fault cause information. This embodiment stores the public key of the terminal device in the public key library of the BMC, sends the POST code encrypted by the corresponding terminal device public key to the terminal device through the data transmission channel, and the terminal device uses its private key to decrypt the POST code. The terminal device inputs the POSTcode data and the current server status data into the preset fault analysis model for fault analysis, thereby determining the cause of the fault. Compared with the prior art that determines the cause of the fault through manual analysis and requires manual query, which is less efficient, this embodiment analyzes the cause of the server fault through the fault analysis model, improves the accuracy and efficiency of fault diagnosis, and reduces the need for manual intervention and manual query.

[0072] Based on the above Figure 1 The first embodiment shown in the present application proposes a second embodiment of the server fault diagnosis method of the present application; based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as the above-mentioned first embodiment can be referred to the above introduction and will not be repeated later.

[0073] In this embodiment, the step of digitally preprocessing the status data and self-check code data of the server to obtain a self-check code time series and a server status information matrix set includes: digitally preprocessing the status data of the server based on a preset data specification to obtain a server status information matrix set; digitally preprocessing the self-check code data to obtain a self-check code time series.

[0074] It should be noted that the preset data specification can be a pre-set standard filling method for classifying server status information, wherein the various forms of form information in the SMBIOS can be used as a reference, the server status information can be classified and filled in according to the data types in the various forms in the SMBIOS, and the data can be digitally pre-processed. For example: if the current CPU model is Xeon 5318, it is displayed in the 10h field in type 4 of SMBIOS, then it is expressed as 0401005318, and the server status information matrix set S is obtained.

[0075] It is understandable that the POST code is classified and digitized in the six stages of SEC-PEI-DXE-BDS-TSL-RT during server startup. For example, if the POST code "0x92" ("0x92" means: PCI bus initialization starts) occurs in the DXE stage, it is represented as 02092, and the POST code time series P is obtained.

[0076] In the specific implementation, after obtaining the server status information matrix set S and time series P, the PCA algorithm is used to extract the eigenvector matrix of the matrix set S as the initial value of the weight matrix W in the RNN model, and the time series P is input into the RNN model in sequence to obtain the output O, where the output O contains the fault cause information.

[0077] In this embodiment, before step S30, it also includes: collecting self-check code data samples and processing methods under various BUG conditions; digitally preprocessing the self-check code data samples and processing methods to obtain digital information; inputting the digital information into a preset RNN model for training to obtain a preset fault analysis model.

[0078] It should be noted that BIOS development and testing personnel collect POST code data samples and processing methods contained in the solutions for various BUG situations, digitize and pre-process the self-check code data samples and processing methods, and use them to train the RNN model to obtain the corresponding weight matrix set. Then, an RNN model application with the calculated weight matrix set as a parameter is built on the terminal device. Customers use this terminal application to analyze the POST code. Training and analysis based on historical samples: BIOS development and testing personnel collect POST code data samples and solutions for various BUG situations, and digitize them to train the RNN model, which can provide accurate fault diagnosis and solutions in actual applications.

[0079] It is understandable that to further illustrate the principle of the RNN model, refer to Figure 3The schematic diagram of the RNN model principle is shown, where X1~Xn are input vectors that change over time, which are in the input layer; S is a vector, which represents the value of the hidden layer; O is a vector, which represents the value of the output layer; U is the weight matrix from the input layer to the hidden layer; W is the weight of the last value of the hidden layer as the input this time; V is the weight matrix from the hidden layer to the output layer. After the terminal device uses the private key to decrypt the POST code, the POST code data and the current server status data are input into the RNN model, and the cause of the server failure can be output through the calculation of the RNN model. Compared with traditional manual judgment, this technical solution can improve the accuracy of fault diagnosis.

[0080] This embodiment responds to the preset listening service and requests to connect the data transmission channel. The data transmission channel is established by the server when receiving the transmission channel link request; based on the data transmission channel, the encrypted self-check code transmitted by the server is received, and the encrypted self-check code is decrypted based on the preset private key to obtain the self-check code data; the server status data and the self-check code data are input into the preset fault analysis model for fault analysis to obtain the fault cause information. This embodiment stores the public key of the terminal device in the public key library of the BMC, sends the POST code encrypted by the corresponding terminal device public key to the terminal device through the data transmission channel, and the terminal device uses its private key to decrypt the POST code. The terminal device inputs the POSTcode data and the current server status data into the preset fault analysis model for fault analysis, thereby determining the cause of the fault. Compared with the prior art that determines the cause of the fault through manual analysis and requires manual query, which is less efficient, this embodiment analyzes the cause of the server fault through the fault analysis model, improves the accuracy and efficiency of fault diagnosis, and reduces the need for manual intervention and manual query.

[0081] Based on this, the present application embodiment provides a server fault diagnosis method, referring to Figure 4 , Figure 4 This is a flow chart of the third embodiment of the server fault diagnosis method of the present application.

[0082] In this embodiment, the server fault diagnosis method is applied to the server, and the method includes steps S100 to S300:

[0083] Step S100, responding to a data transmission channel connection request initiated by a terminal device, and establishing a data transmission channel with the terminal device.

[0084] It should be noted that the terminal device can act as a client, wherein the terminal device can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device that can realize the above functions, including a server fault diagnosis system device, etc. The server side can refer to the server side, and the server side includes BOIS and BMC, wherein BOIS refers to Basis Input Output System, basic input and output system, and BMC refers to Baseboard Management Controller. The terminal device acts as a client, responds to the TCP listening service, and requests to connect to the TCP transmission channel. In this application, the BMC acts as a server. When receiving the data transmission channel connection request initiated by the terminal device, it applies for a socket and binds the IP and port, starts the TCP listening service, and establishes a data transmission channel with the terminal device based on the TCP protocol. The BMC responds to the client request, and the TCP transmission channel is established.

[0085] In a specific implementation, the terminal device initiates a data transmission channel connection request to the server. When the server receives the data transmission channel connection request initiated by the terminal device, it establishes a data transmission channel with the terminal device through the TCP protocol.

[0086] Step S200: extracting a public key from the BMC public key library to encrypt the self-check code, thereby obtaining the encrypted self-check code.

[0087] It should be noted that since the public key generated by the terminal device is stored in the BMC public key library, in order to ensure transmission security, the BMC takes out the public key of the corresponding terminal device from the public key library, encrypts the POST code with this public key, obtains the self-check code ciphertext, and sends the encrypted POST code to the terminal device by the BMC, so that the terminal device can decrypt the encrypted POST code through the preset private key.

[0088] In the specific implementation, by storing the public key of the terminal device in the public key library of the BMC and using the data transmission channel established by the TCP protocol to send the encrypted POST code to the terminal device, the secure transmission of the POST code can be ensured.

[0089] Step S300, sending the encrypted self-check code to the terminal device through the data transmission channel, so that the terminal device decrypts the encrypted self-check code and performs fault analysis.

[0090] It should be noted that, in this application, the public key of the terminal device is stored in the public key library of the BMC. The BMC uses the TCP protocol to send the POST code encrypted by the corresponding terminal device public key to the terminal device. The terminal device decrypts the POSTcode using its private key. The terminal device inputs the POST code data and the current server status data into the preset fault analysis model for fault analysis, thereby determining the cause of the fault.

[0091] In the specific implementation, to further explain the POST code processing system flow of this application, refer to Figure 5 The POSTcode processing system flow chart shown in the figure is as follows:

[0092] Step 1: As shown in the POST code processing system flow chart: S01, the public key of the terminal device is stored in the public key library of the BMC, and the terminal device generates a public key and a private key pair; the public key of the terminal device is stored in the public key library of the BMC.

[0093] Step 2: Use the TCP protocol to send the POST code encrypted by the public key of the corresponding terminal device to the terminal device. As shown in the POST code processing system flowchart - S02&S03, the BMC, as the server, applies for a socket and binds the IP and port, starts the TCP listening service, and establishes a TCP transmission channel; as shown in the POST code processing system flowchart - S04, the terminal device, as the client, responds to the TCP listening service and requests to connect to the TCP transmission channel; as shown in the POST code processing system flowchart - S05, the BMC responds to the client request, and the TCP transmission channel is established; as shown in the POST code processing system flowchart - S06, the BMC takes out the public key of the corresponding terminal device from the public key library and encrypts the POST code with this public key; as shown in the POST code processing system flowchart - S07, the BMC sends the encrypted POST code to the terminal device.

[0094] Step 3: As shown in the POST code processing system flow chart - S08, the terminal device uses its private key to decrypt the POST code, and the terminal device receives the encrypted POST code; the terminal device uses its private key to decrypt the POST code.

[0095] Step 4: As shown in the POST code processing system flow chart - S09, the POST code data and the current server status data are input into the RNN model to obtain the current server status data, which includes but is not limited to BIOS, CPLD and BMC versions, CPU model and quantity, memory model and quantity, external PCIe card type and position, etc. The POST code data and server status data are input into the RNN model.

[0096] Step 5: As shown in the POST code processing system flow chart - S10, the RNN model calculates and outputs the cause of the server failure. The RNN model calculates and outputs the cause of the server failure; the output result includes information such as the cause of the BUG and the solution.

[0097] This embodiment establishes a data transmission channel with the terminal device by responding to the data transmission channel connection request initiated by the terminal device; extracts the public key from the BMC public key library to encrypt the self-check code to obtain the encrypted self-check code; sends the encrypted self-check code to the terminal device through the data transmission channel, so that the terminal device decrypts the encrypted self-check code and performs fault analysis. This embodiment stores the public key of the terminal device in the BMC public key library, sends the POST code encrypted by the corresponding terminal device public key to the terminal device through the data transmission channel, and the terminal device uses its private key to decrypt the POSTcode. The terminal device inputs the POST code data and the current server status data into a preset fault analysis model for fault analysis, thereby determining the cause of the fault. Compared with the prior art that determines the cause of the fault through manual analysis and requires manual query, which is less efficient, this embodiment analyzes the cause of the server fault through the fault analysis model, improves the accuracy and efficiency of fault diagnosis, and reduces the need for manual intervention and manual query.

[0098] The present application provides a server fault diagnosis device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the server fault diagnosis method in the above-mentioned first embodiment.

[0099] Reference below Figure 6, which shows a schematic diagram of the structure of a server fault diagnosis device suitable for implementing the embodiment of the present application. The server fault diagnosis device in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 6 The server fault diagnosis device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0100] like Figure 6 As shown, the server fault diagnosis device may include a processing device 1001 (such as a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the server fault diagnosis device are also stored. The processing device 1001, ROM1002 and RAM1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Generally, the following systems can be connected to the I / O interface 1006: an input device 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. Communication device 1009 can allow server fault diagnosis equipment to communicate wirelessly or wired with other equipment to exchange data. Although server fault diagnosis equipment with various systems is shown in the figure, it should be understood that it is not required to implement or have all the systems shown. More or less systems can be implemented or have alternatively.

[0101] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0102] The server fault diagnosis device provided by the present application adopts the server fault diagnosis method in the above embodiment to solve the technical problem of server fault diagnosis. Compared with the prior art, the beneficial effects of the server fault diagnosis device provided by the present application are the same as the beneficial effects of the server fault diagnosis method provided by the above embodiment, and other technical features in the server fault diagnosis device are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.

[0103] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0104] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0105] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the server fault diagnosis method in the above-mentioned embodiment.

[0106] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.

[0107] The computer-readable storage medium may be included in the server fault diagnosis device; or may exist independently without being assembled into the server fault diagnosis device.

[0108] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by the server fault diagnosis device, the server fault diagnosis device: responds to the preset listening service and requests to connect to the data transmission channel. The data transmission channel is established by the server when receiving the transmission channel link request; receives the encrypted self-test code transmitted by the server based on the data transmission channel, and decrypts the encrypted self-test code based on the preset private key to obtain self-test code data; inputs the server status data and self-test code data into the preset fault analysis model for fault analysis to obtain fault cause information.

[0109] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0110] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0111] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0112] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned server fault diagnosis method, and can solve the technical problem of server fault diagnosis. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the server fault diagnosis method provided by the above-mentioned embodiment, and will not be repeated here.

[0113] The above are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect application in other related technical fields are included in the patent protection scope of the present application.

Claims

1. A server fault diagnosis method, characterized in that: The server fault diagnosis method is applied to a terminal device, and the method comprises: Responding to the preset monitoring service and requesting to connect a data transmission channel, wherein the data transmission channel is established by the server upon receiving the transmission channel connection request; Receiving the encrypted self-check code transmitted by the server based on the data transmission channel, and decrypting the encrypted self-check code based on a preset private key to obtain self-check code data; The server status data and the self-check code data are input into a preset fault analysis model to perform fault analysis and obtain fault cause information.

2. The server fault diagnosis method according to claim 1, characterized in that: The step of inputting the server status data and the self-check code data into a preset fault analysis model to perform fault analysis and obtain fault cause information includes: Performing digital preprocessing on the server status data and the self-check code data to obtain a self-check code time series and a server status information matrix set; According to the preset PCA algorithm, the eigenvector matrix of the server status information matrix set is extracted as the initial value of the weight matrix in the preset fault analysis model, and the self-check code time series is sequentially input into the preset fault analysis model to obtain the fault cause information.

3. The server fault diagnosis method according to claim 2, characterized in that: The step of digitally preprocessing the server status data and the self-check code data to obtain a self-check code time series and a server status information matrix set includes: Performing digital preprocessing on the status data of the server based on a preset data specification to obtain the server status information matrix set; The self-check code data is digitally preprocessed to obtain the self-check code time series.

4. The server fault diagnosis method according to claim 1, characterized in that: Before the step of inputting the server status data and the self-check code data into a preset fault analysis model for fault analysis to obtain fault cause information, the step further includes: Collect self-check code data samples and processing methods for various BUG situations; Performing digital preprocessing on the self-check code data sample and the processing method to obtain digital information; The digitized information is input into a preset RNN model for training to obtain the preset fault analysis model.

5. The server fault diagnosis method according to claim 1, characterized in that: Before the step of responding to the preset monitoring service and requesting to connect the data transmission channel, the method further includes: Generate a key pair, the key pair comprising a public key and a private key; The public key is uploaded to the server to be stored in the BMC public key library.

6. The server fault diagnosis method according to claim 1, characterized in that: After the step of inputting the server status data and the self-check code data into a preset fault analysis model for fault analysis to obtain fault cause information, the method further includes: Determine the fault problem to be solved and the target processing method according to the fault cause information; The troubleshooting problem to be solved and the target processing method are displayed.

7. A server fault diagnosis method, characterized in that: The server fault diagnosis method is applied to the server, and the method comprises: Responding to a data transmission channel connection request initiated by a terminal device, and establishing a data transmission channel with the terminal device; Extract the public key from the BMC public key library to encrypt the self-check code, and obtain the encrypted self-check code; The encrypted self-check code is sent to the terminal device through the data transmission channel, so that the terminal device decrypts the encrypted self-check code and performs fault analysis.

8. A server fault diagnosis device, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the server fault diagnosis method according to any one of claims 1 to 6 or 7.

9. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the server fault diagnosis method according to any one of claims 1 to 6 or 7 are implemented.

10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the steps of the server fault diagnosis method according to any one of claims 1 to 6 or 7 are implemented.