Data processing method and device, electronic equipment and storage medium

By establishing a LAN connection between the operating system and the substrate management controller, the problem of diverse and complex versions of the domestic server in-band refresh tool is solved, the tool unity and standardization are achieved, and work efficiency is improved.

CN119847570AActive Publication Date: 2025-04-18INSPUR (SHANDONG) COMPUTER TECH CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202510329085.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-20
Publication Date
2025-04-18
Estimated Expiration
2045-03-20

AI Technical Summary

Technical Problem

The in-band refresh tool versions of domestic servers are diverse and complex, resulting in compatibility issues between the operating system and hardware, increasing the workload of R&D, customer service and operation and maintenance.

Method used

By establishing a LAN connection between the operating system and the substrate management controller (BMC), the universal serial bus (USB) function is used to achieve in-band refresh, and the identification files and network parameters of different chip models are uniformly managed.

Benefits of technology

It realizes the unification and standardization of in-band refresh tools, reduces operational complexity, improves work efficiency, and is suitable for different operating systems and BMC chip types.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119847570A_ABST
    Figure CN119847570A_ABST
Patent Text Reader

Abstract

The invention provides a data processing method and device, electronic equipment and a storage medium, and is applied to the technical field of computers.The method comprises the steps that the chip model of a substrate management controller is obtained based on a first instruction; determining an identification file based on the chip model of the substrate management controller; copying the identification file to a rule file directory, and identifying the baseboard management controller; controlling the baseboard management controller to start a local area network function based on the second instruction; setting network parameters of a universal serial bus network card of the substrate management controller based on the third instruction; and transmitting in-band refresh parameters to a substrate management controller based on the local area network. Therefore, the local area network connection between the operating system and the substrate management controller can be established, so that the substrate management controller performs firmware refreshing based on the in-band refreshing parameters, and standardization and unification of in-band refreshing are realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a data processing method, device, electronic device and storage medium. Background Art

[0002] At present, the common in-band refresh tools for domestic servers include many versions, which rely on the operating system's cryptographic library (Library for Cryptographic Operations, libcrypto), Graphics Development Kit (Graphics Development Kit, libgdk), GNU Database Manager (GNU DataBase Manager, libgdbm) and other components as well as server hardware. This leads to the complexity of in-band refresh operations during server operation and maintenance. It is necessary to first distinguish which operating system each server is configured with, which in-band refresh tool it supports, and which flash chip it uses, and then develop the corresponding tools and become familiar with how to use the tools. Sometimes, different operating system versions change a certain component, causing the previously adapted in-band refresh tool to fail to work properly. This causes great inconvenience to R&D, customer service, factories, and operation and maintenance. Summary of the invention

[0003] The present disclosure provides a data processing method, device, electronic device and storage medium to at least solve the above technical problems existing in the prior art.

[0004] According to a first aspect of the present disclosure, there is provided a data processing method, which is applied to an operating system, and the method comprises: Acquire a chip model of a baseboard management controller based on the first instruction; Determine an identification file based on the chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; Copying the identification file to a rule file directory to identify the baseboard management controller; Controlling the baseboard management controller to enable a local area network function based on a second instruction; the local area network function includes allowing a universal serial bus to enable a local area network function; Setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; An in-band refresh parameter is transmitted to a baseboard management controller based on the local area network, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

[0005] In the above solution, the step of obtaining the chip model of the baseboard management controller based on the first instruction includes: Sending a first instruction to a baseboard management controller based on an intelligent platform management interface; Receive a chip model of the baseboard management controller returned by the baseboard management controller based on the first instruction.

[0006] In the above solution, the step of determining the identification file based on the chip model of the baseboard management controller includes: In response to the chip model of the baseboard management controller being the first model, determining that the identification file is the first file; Configure parameters corresponding to the first model chip in the first file.

[0007] In the above solution, the step of determining the identification file based on the chip model of the baseboard management controller includes: In response to the chip model of the baseboard management controller being the second model, determining that the identification file is the second file; Configure parameters corresponding to the second model chip in the second file.

[0008] In the above solution, the parameters include at least one of a vendor identification code parameter, a product identification code parameter, a kernel parameter, a symbolic link parameter, and a subsystem parameter.

[0009] In the above solution, copying the identification file to the rule file directory to identify the baseboard management controller includes: Copy the recognition file to the rule file directory, The rule file directory is loaded so that the operating system can identify the baseboard management controller based on the identification file.

[0010] In the above solution, the controlling the baseboard management controller to enable the local area network function based on the second instruction includes: The second instruction is sent to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller starts the local area network function based on the second instruction.

[0011] In the above solution, the step of setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction includes: Sending the third instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller sets the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The network parameters include an Internet Protocol address and a gateway.

[0012] In the above scheme, the method further includes: The network parameters of the virtual universal serial bus network card of the operating system are configured based on the fourth instruction, so that the operating system and the baseboard management controller belong to the same local area network.

[0013] In the above solution, the transmitting of the in-band refresh parameters to the baseboard management controller based on the local area network includes: Update the in-band refresh parameters of the firmware to be refreshed in the configuration file; Transmitting the in-band refresh parameter to the baseboard management controller based on the local area network; so that the baseboard management controller writes the in-band refresh parameter; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

[0014] According to a second aspect of the present disclosure, a data processing method is provided, which is applied to a baseboard management controller, and the method includes: receiving a first instruction, and sending a chip model of the baseboard management controller to an operating system based on the first instruction; receiving a second instruction, and enabling a local area network function based on the second instruction; receiving a third instruction, and setting a network parameter of a universal serial bus network card of a baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to a local area network based on the universal serial bus; An in-band refresh parameter is received based on the local area network, and a firmware refresh is performed based on the in-band refresh parameter.

[0015] In the above solution, the receiving of in-band refresh parameters based on the local area network and performing firmware refresh based on the in-band refresh parameters include: Writing the in-band refresh parameters into the flash memory in the baseboard management controller; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction sent by the operating system, and the firmware is refreshed based on the in-band refresh parameter.

[0016] According to a third aspect of the present disclosure, there is provided a data processing device, which is applied to a server corresponding to an operating system, and the device includes: An acquisition unit, configured to acquire a chip model of a baseboard management controller based on a first instruction; A file determination unit, configured to determine an identification file based on a chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; A loading unit, used to copy the identification file to a rule file directory to identify the baseboard management controller; A first control unit, configured to control the baseboard management controller to enable a local area network function based on a second instruction; the local area network function includes allowing a universal serial bus to enable a local area network function; A second control unit is used to set the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The third control unit is used to transmit an in-band refresh parameter to the baseboard management controller based on the local area network, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

[0017] According to a fourth aspect of the present disclosure, a data processing device is provided, which is applied to a baseboard management controller, and the device includes: A first receiving unit, configured to receive a first instruction, and send a chip model of the baseboard management controller to an operating system based on the first instruction; A second receiving unit, configured to receive a second instruction, and enable a function of allowing the universal serial bus to enable a local area network based on the second instruction; A third receiving unit, configured to receive a third instruction, and to set a network parameter of a universal serial bus network card of a baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to a local area network based on the universal serial bus; An in-band refresh unit is used to receive in-band refresh parameters based on the local area network, and perform firmware refresh based on the in-band refresh parameters.

[0018] According to a fifth aspect of the present disclosure, there is provided an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method described in the present disclosure.

[0019] According to a sixth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute the method described in the present disclosure.

[0020] The data processing method disclosed in the present invention obtains the chip model of the baseboard management controller based on the first instruction; determines the identification file based on the chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; the identification file is copied to the rule file directory to identify the baseboard management controller; the baseboard management controller is controlled to enable the local area network function based on the second instruction; the local area network function includes allowing the universal serial bus to enable the local area network function; the network parameters of the universal serial bus network card of the baseboard management controller are set based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; based on the local area network, the in-band refresh parameters are transmitted to the baseboard management controller, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameters. In this way, according to the local area network function based on the universal serial bus that both the operating system and the baseboard management controller have, a local area network connection can be established between the operating system and the baseboard management controller, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameters, and the standardization and unification of in-band refresh can be realized.

[0021] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] The above and other objects, features and advantages of the exemplary embodiments of the present disclosure will become readily understood by reading the detailed description below with reference to the accompanying drawings. In the accompanying drawings, several embodiments of the present disclosure are shown in an exemplary and non-limiting manner, in which: In the drawings, the same or corresponding reference numerals represent the same or corresponding parts.

[0023] Figure 1 A first optional flow chart of the data processing method provided by the embodiment of the present disclosure is shown; Figure 2 A second optional flow chart of the data processing method provided by the embodiment of the present disclosure is shown; Figure 3 A third optional flow chart of the data processing method provided by the embodiment of the present disclosure is shown; Figure 4 A fourth optional flow chart of the data processing method provided by the embodiment of the present disclosure is shown; Figure 5 A first optional structural diagram of a data processing device provided by an embodiment of the present disclosure is shown; Figure 6A second optional structural diagram of a data processing device provided by an embodiment of the present disclosure is shown; Figure 7 A schematic diagram of the structure of an electronic device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0024] In order to make the purpose, features, and advantages of the present disclosure more obvious and easy to understand, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.

[0025] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it can be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0026] In the following description, the terms "first\second" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present disclosure described herein can be implemented in an order other than that illustrated or described herein.

[0027] Unless otherwise defined, all technical and scientific terms used in this disclosure have the same meaning as those commonly understood by those skilled in the art to which this disclosure belongs. The terms used in this disclosure are only for the purpose of describing the embodiments of this disclosure and are not intended to limit this disclosure.

[0028] It should be understood that in the various embodiments of the present disclosure, the size of the serial number of each implementation process does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present disclosure.

[0029] Figure 1 A first optional flow chart of the data processing method provided by the embodiment of the present disclosure is shown, and will be explained according to each step.

[0030] Step S101: acquiring a chip model of a baseboard management controller based on a first instruction.

[0031] In some embodiments, the operating system sends a first instruction to the baseboard management controller, so that the baseboard management controller returns a chip model of the baseboard management controller based on the first instruction.

[0032] The chip model of the baseboard management controller is used by the operating system to identify the baseboard management controller.

[0033] Step S102: determining an identification file based on the chip model of the baseboard management controller.

[0034] In some embodiments, different chip models of baseboard management controllers correspond to different identification files; the identification file is used by the operating system to identify the baseboard management controller, so that the local area network connection between the baseboard management controller and the operating system can be realized based on the identification result, and the operating system can subsequently control the baseboard management controller to perform in-band refresh.

[0035] Step S103, copying the identification file to a rule file directory to identify the baseboard management controller.

[0036] In some embodiments, the operating system copies the identification file to a rule file directory, reads and applies the rule file directory, so as to identify and manage the baseboard management controller and the device corresponding to the baseboard management controller according to the identification file.

[0037] Step S104: controlling the baseboard management controller to enable the local area network function based on the second instruction.

[0038] In some embodiments, the operating system enables the LAN function of the baseboard management controller based on the second instruction, and the LAN function includes allowing the universal serial bus to enable the LAN function, that is, implementing the LAN function based on the universal serial bus.

[0039] Step S105 , setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction.

[0040] In some embodiments, the operating system sets the network parameters of the universal serial bus network card of the baseboard control manager based on the third instruction so that the operating system and the baseboard management controller belong to the same local area network, and the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus.

[0041] Step S106: transmitting in-band refresh parameters to a baseboard management controller based on the local area network.

[0042] In some embodiments, the operating system updates the in-band refresh parameters of the firmware to be refreshed in the configuration file, the configuration file is located in the operating system, the operating system transmits the in-band refresh parameters to the baseboard management controller based on the local area network, and optionally, the operating system can also control the baseboard management controller to refresh the firmware based on the in-band refresh parameters based on a fifth instruction.

[0043] Thus, the disclosed embodiment provides a data processing method, which aims to solve the problem of in-band upgrade of general domestic server firmware. This method does not require specially designed hardware, but only needs to simulate a driver of a local area network (LAN over USB) based on the universal serial bus through a virtual universal serial bus (USB) device between the operating system and the BMC. At this time, the BMC chip is regarded as a network card inserted into the server device, so that the operating system can communicate with the BMC through a local area network (LAN) channel in the operating system band. The web page (Web) server inside the baseboard management controller can be used to transmit the firmware version file to the kernel system of the BMC and verify its legitimacy through the representational state transfer (Restful) interface and a specific uniform resource locator (URL) related to firmware upload and refresh, so that the BMC can update the firmware version to the corresponding device. The disclosed embodiments can use the tool for upgrading on domestic servers using an open source baseboard management controller (OpenBMC), regardless of the central processing unit platform based on any chip, the domestic operating system used, the ASPEED chip or the domestic HAM chip, etc., and its functions cover all types of firmware supported by BMC, including BMC, basic input and output system, mainboard complex programmable logic device (MBCPLD), backplane complex programmable logic device (BPCPLD), system control module complex programmable logic device (SCMCCPLD) and power supply unit, etc., so as to achieve the unification and standardization of in-band upgrade tools for domestic servers as much as possible.

[0044] Figure 2 A second optional flow chart of the data processing method provided in the embodiment of the present disclosure is shown and will be explained according to each step.

[0045] Step S201: Send a first instruction to a baseboard management controller based on an intelligent platform management interface.

[0046] In some embodiments, the operating system sends a first instruction to a baseboard management controller (BMC) based on an intelligent platform management interface (IPMI); the first instruction is used to instruct the baseboard management controller to send the chip model of the baseboard management controller to the operating system. The baseboard management controller can return the chip model of the baseboard management controller based on a platform identifier (Platform ID, PlantformId).

[0047] In some embodiments, the operating system receives a chip model of the baseboard management controller based on the IPMI.

[0048] After confirming the chip model of the baseboard management controller, the baseboard management controller needs to be identified. The operating system determines the chip model of the baseboard management controller. If it is the first model, step S202 is executed; if it is the second model, step S203 is executed.

[0049] Step S202: determine that the identified file is a first file.

[0050] In some embodiments, if the chip model of the baseboard management controller is a first model, the identification file for identifying the baseboard management controller is determined to be a first file. The first model may be ASPEED; correspondingly, the first file may be a 10-bmc-eth-ast.rules file.

[0051] In some embodiments, the operating system configures parameters corresponding to the ASPEED chip in the first file; the parameters include at least one of a vendor identification code (Vendor ID) parameter, a product identification code (Product ID) parameter, a kernel (KERNEL) parameter, a symbolic link (SYMLINK) parameter, and a subsystem (SubSystem) parameter.

[0052] Step S203: determine that the identified file is a second file.

[0053] In some embodiments, if the chip model of the baseboard management controller is the second model, the identification file for identifying the baseboard management controller is determined to be the second file. The second model may be HAM; accordingly, the second file may be the 10-bmc-eth-ham.rules file.

[0054] In some embodiments, the operating system configures parameters corresponding to the HAM chip in the second file; the parameters include at least one of a vendor identification code parameter, a product identification code parameter, a kernel parameter, a symbolic link parameter, and a subsystem parameter.

[0055] Step S204, copying the identification file to a rule file directory to identify the baseboard management controller.

[0056] In some embodiments, the operating system copies the identification file to a rule file directory and loads the rule file directory, so that the operating system identifies the baseboard management controller based on the identification file.

[0057] The rule file directory may be / etc / udev / rules.d / , which is used to identify and manage the BMC. Managing the BMC may include configuring a virtual USB network of the BMC.

[0058] Step S205: controlling the baseboard management controller to enable the local area network function based on the second instruction.

[0059] In some embodiments, the operating system sends the second instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller enables the local area network function based on the second instruction. The local area network function is the LAN over USB function, that is, enabling the USB support for the local area network function to prepare for the subsequent operating system to connect to the BMC through the local area network.

[0060] Step S206: setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction.

[0061] In some embodiments, in order to enable the BMC to access the local area network, it is necessary to configure the IP address, gateway and other network-related parameters of USB0 on ​​the BMC side to ensure that it can be connected to the network configured on the operating system side later.

[0062] During specific implementation, the operating system sends the third instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller sets the network parameters of the universal serial bus network card (i.e., USB0) of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to a local area network based on the universal serial bus.

[0063] Step S207: configuring the network parameters of the virtual universal serial bus network card of the operating system based on the fourth instruction.

[0064] In some embodiments, the operating system configures the network parameters of the USB network card of the operating system based on the fourth instruction so that the operating system and the baseboard management controller belong to the same local area network.

[0065] The fourth instruction may be an ifconfig / IP command.

[0066] Step S208: transmitting in-band refresh parameters to a baseboard management controller based on the local area network.

[0067] In some embodiments, the operating system updates the in-band refresh parameters of the firmware to be refreshed in the configuration file; wherein the configuration file may be update_config.sh. The in-band refresh parameters are transmitted to the baseboard management controller based on the local area network; so that the baseboard management controller writes the in-band refresh parameters; based on the fifth instruction, the corresponding uniform resource locator in the baseboard management controller is called, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameters. Wherein, the fifth instruction may be a curl command, which is specifically used to call the URL related to the firmware refresh of the BMC to perform firmware refresh.

[0068] In this way, for the current non-uniform operating systems, non-uniform chips and non-uniform tools corresponding to the operating systems, when the operating system is refreshed in-band through the BMC, it may encounter a situation where there is no corresponding tool and it needs to be downloaded and configured separately, or there is no tool and the connection between the operating system and the BMC cannot be established, resulting in an inability to refresh. The disclosed embodiment creates a LAN connection between the operating system and the USB through the USB function possessed by both the operating system and the BMC, so that regardless of the type of operating system, chip type, and BMC chip type, a LAN can be uniformly established based on the USB, so that the operating system and the BMC can transmit data based on the LAN, realize in-band refresh, and realize the unification and standardization of in-band upgrade tools.

[0069] Figure 3 A third optional flow chart of the data processing method provided in the embodiment of the present disclosure is shown and will be explained according to each step.

[0070] Step S301, the server is powered on, the BMC runs normally, and the operating system runs normally.

[0071] In some embodiments, multiple related instructions (IPMI OEM commands) are developed on the BMC side, including a command for obtaining PlatformId (a first instruction), a command for controlling the opening and closing of the LAN over USB on the BMC side (a second instruction), and a command for controlling the USB network connect and disconnect of the BMC (a third instruction).

[0072] In other embodiments, multiple related instructions (IPMI OEM commands) are developed on the operating system side, including a command for obtaining PlatformId (first instruction), a command for controlling the opening and closing of LAN over USB on the BMC side (second instruction), and a command for controlling the USB network connect and disconnect of the BMC (third instruction).

[0073] The operating system and BMC correspond to the same server.

[0074] Step S302, running the script lan-over-USB-set.sh, and obtaining the PlantformId through the IPMI protocol in the script.

[0075] In some embodiments, the operating system, or a server corresponding to the operating system, runs the script lan-over-USB-set.sh, and the script sends a first instruction to the BMC through the IPMI protocol, namely, a command to obtain PlatformId; in response to receiving the first instruction, the BMC sends a return value to the operating system, and the operating system can distinguish the chip model of the BMC through the return value.

[0076] Step S303: The script determines the BMC chip used by the current server, copies the corresponding rules configuration file to the / etc / udev / rules / directory, and loads the rules.

[0077] In some embodiments, the script determines the chip model used by the BMC of the current server based on the return value, copies the corresponding rules configuration file to the / etc / udev / rules / directory, and loads the rules to enable the operating system to recognize the BMC.

[0078] In some embodiments, if the return value is 1, it is determined that the chip used by the server is the second model, that is, the HAM chip, and the 10-bmc-eth-ham.rules file is edited. The Vendorld and Productld related to the ham chip, as well as the KERNEL, SYMLINK and SUBSYSTEM parameters are configured in the file. The rule file is copied to the / etc / udev / rules.d / directory, and udevadm contorl--reload is executed to load the rules.

[0079] In other embodiments, if the return value is not 1, it is determined that the chip used by the server is the first model, that is, the ASPEED chip, and the 10-bmc-eth-ast.rules file is edited, and the Vendorld and Productld related to the ast chip, as well as the KERNEL, SYMLINK and SUBSYSTEM parameters are configured in the file; the rule file is copied to the / etc / udev / rules.d / directory, and udevadm contorl--reload is executed to load the rules.

[0080] In specific implementation, the ASPEED chip needs to prepare the corresponding 10-bmc-eth-ast.rules file; the HAM chip needs to prepare the corresponding 10-bmc-eth-ham.rules file, and then copy it to the rule file directory of / etc / udev / rules.d / to configure the virtual USB network. Their purpose is the same, which is to configure the network environment on the operating system side and realize the connection between the operating system and the BMC.

[0081] Step S304: In the script, the LAN OVER USB function under the BMC is enabled through the IPMI command, and the IP and gateway of the USB network card of the BMC are configured to connect to the local area network.

[0082] In some embodiments, the script sends a second instruction to the BMC to enable the LAN OVER USB function on the BMC side.

[0083] In some embodiments, the script sends a third instruction to the BMC to set the IP and gateway of the USB0 network card on the BMC side, and connect the BMC to the local area network.

[0084] Step S305, the script uses the ifconfig / IP command to configure the IP and gateway of the virtual USB network card under the OS to ensure that the network is connected.

[0085] In some embodiments, the script uses the fourth instruction (ifconfig / IP command) to configure the IP and gateway of the virtual USB network card under the OS, so that the operating system can access the local area network, and the operating system and the BMC are connected through the local area network.

[0086] Step S306, modify the configuration file update_config.sh according to the instructions, and modify the parameters related to the required firmware refresh.

[0087] In some embodiments, the operating system edits update_config.sh based on preset refresh parameters, and selects various parameters related to firmware refresh corresponding to the preset refresh parameters.

[0088] In specific implementation, the operating system can modify the configuration file update_config.sh based on the preset refresh parameters, select parameters such as synchronous / asynchronous refresh, whether to retain the configuration, whether to record logs, and whether to record the BMC administrator username and password.

[0089] The preset refresh parameters can be set according to user requirements.

[0090] Step S307, execute upgrade_by_lob.sh, which uses the curl command internally to call the URL related to the firmware refresh of the BMC to perform the firmware refresh.

[0091] In some embodiments, upgrade_by_lob.sh is executed, and BMC ipImage_path flashitem is called to refresh the firmware based on the fifth instruction (curl command), thereby performing firmware refresh.

[0092] After the refresh is completed, the network configuration will be automatically restored without affecting the related configurations under the operating system.

[0093] It should be noted that the embodiment of the present disclosure utilizes the LAN function of both the operating system and the BMC chip to achieve network connection between the operating system and the BMC, and transforms the in-band operation into an out-of-band operation. This method can not only be used to achieve the uniformity of the in-band refresh tool, but also provides ideas for other operations that need to be performed under the operating system.

[0094] In this way, the data processing method provided by the embodiment of the present disclosure solves the complexity and non-uniformity of the current domestic server in-band refresh tools. For the server in-band firmware refresh function, a unified refresh method and device are proposed, which reduces the workload of R&D, customer service, production line and maintenance personnel and improves work efficiency. In addition, the data processing method provided by the embodiment of the present disclosure solves the diversity and singleness of the in-band refresh tools in the field of domestic servers. By using the LAN function of both the operating system and the BMC chip, the network connection between the operating system and the BMC is realized through script configuration and IPMI protocol execution and function development, and the in-band operation is transformed into an out-of-band operation, which greatly enriches the limitations of the in-band operation, and realizes that one tool can refresh all firmware types supported by the BMC, which greatly enhances the functional perfection of the in-band firmware refresh tool. This invention supports various domestic operating systems and platforms, reduces the workload of R&D personnel for the maintenance of in-band refresh tools, and improves the work efficiency of the product in the early factory production and later customer service maintenance.

[0095] Figure 4 A fourth optional flow chart of the data processing method provided in the embodiment of the present disclosure is shown and will be explained according to each step.

[0096] Step S401: receiving a first instruction, and sending a chip model of the baseboard management controller to the operating system based on the first instruction.

[0097] Step S402, receiving a second instruction, and enabling the local area network function based on the second instruction.

[0098] Step S403: receiving a third instruction, and setting network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction.

[0099] The operating system and the baseboard management controller are connected to a local area network based on a universal serial bus.

[0100] Step S404: receiving in-band refresh parameters based on the local area network, and performing firmware refresh based on the in-band refresh parameters.

[0101] In specific implementation, the BMC writes the in-band refresh parameters into the flash memory in the baseboard management controller; based on the fifth instruction sent by the operating system, the corresponding uniform resource locator in the baseboard management controller is called, and the firmware is refreshed based on the in-band refresh parameters.

[0102] Specifically, the operating system executes upgrade_by_lob.sh, which uses the curl command internally to call the URL related to the BMC firmware refresh to perform the firmware refresh.

[0103] In this way, for the current non-uniform operating systems, non-uniform chips and non-uniform tools corresponding to the operating systems, when the operating system is refreshed in-band through the BMC, it may encounter a situation where there is no corresponding tool and it needs to be downloaded and configured separately, or there is no tool and the connection between the operating system and the BMC cannot be established, resulting in an inability to refresh. The disclosed embodiment creates a LAN connection between the operating system and the USB through the USB function possessed by both the operating system and the BMC, so that regardless of the type of operating system, chip type, and BMC chip type, a LAN can be uniformly established based on the USB, so that the operating system and the BMC can transmit data based on the LAN, realize in-band refresh, and realize the unification and standardization of in-band upgrade tools.

[0104] Figure 5 A first optional structural diagram of a data processing device provided in an embodiment of the present disclosure is shown and will be described according to each part.

[0105] In some embodiments, the data processing unit 500 is applied to a server corresponding to the operating system, and the device includes: an acquisition unit 501, a file determination unit 502, a loading unit 503, a first control unit 504, a second control unit 505 and a third control unit 506.

[0106] The acquisition unit 501 is used to acquire the chip model of the baseboard management controller based on the first instruction; The file determination unit 502 is used to determine the identification file based on the chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; The loading unit 503 is used to copy the identification file to the rule file directory to identify the baseboard management controller; The first control unit 504 is used to control the baseboard management controller to enable the local area network function based on the second instruction; the local area network function includes allowing the universal serial bus to enable the local area network function; The second control unit 505 is used to set the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The third control unit 506 is used to transmit an in-band refresh parameter to the baseboard management controller based on the local area network, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

[0107] The acquisition unit 501 is specifically configured to send a first instruction to a baseboard management controller based on an intelligent platform management interface; and receive a chip model of the baseboard management controller returned by the baseboard management controller based on the first instruction.

[0108] The file determination unit 502 is specifically configured to determine that the identification file is a first file in response to the chip model of the baseboard management controller being a first model; Configure parameters corresponding to the first model chip in the first file.

[0109] The file determination unit 502 is specifically configured to determine that the identification file is a second file in response to the chip model of the baseboard management controller being a second model; Configure parameters corresponding to the second model chip in the second file.

[0110] In some embodiments, the parameters include at least one of a vendor identification code parameter, a product identification code parameter, a kernel parameter, a symbolic link parameter, and a subsystem parameter.

[0111] The loading unit 503 is specifically configured to copy the identification file to a rule file directory; and load the rule file directory so that the operating system can identify the baseboard management controller based on the identification file.

[0112] The first control unit 504 is specifically configured to send the second instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller enables the local area network function based on the second instruction.

[0113] The second control unit 505 is specifically used to send the third instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller sets the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The network parameters include an Internet Protocol address and a gateway.

[0114] The second control unit 505 is further configured to configure network parameters of the virtual universal serial bus network card of the operating system based on the fourth instruction, so that the operating system and the baseboard management controller belong to the same local area network.

[0115] The third control unit 506 is specifically used to update the in-band refresh parameters of the firmware to be refreshed in the configuration file; Transmitting the in-band refresh parameter to the baseboard management controller based on the local area network; so that the baseboard management controller writes the in-band refresh parameter; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

[0116] Figure 6 A second optional structural diagram of the data processing device provided in the embodiment of the present disclosure is shown and will be explained according to each part.

[0117] In some embodiments, the data processing device 600 is applied to a baseboard management controller, and the device includes: a first receiving unit 601 , a second receiving unit 602 , a third receiving unit 603 and an in-band refresh unit 604 .

[0118] The first receiving unit 601 is used to receive a first instruction, and send the chip model of the baseboard management controller to the operating system based on the first instruction; The second receiving unit 602 is used to receive a second instruction, and enable the universal serial bus to enable the local area network function based on the second instruction; The third receiving unit 603 is used to receive a third instruction, and set the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The in-band refresh unit 604 is configured to receive an in-band refresh parameter based on the local area network, and perform firmware refresh based on the in-band refresh parameter.

[0119] The in-band refresh unit 604 is specifically used to write the in-band refresh parameters into the flash memory in the baseboard management controller; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction sent by the operating system, and the firmware is refreshed based on the in-band refresh parameter.

[0120] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device and a readable storage medium.

[0121] Figure 7 A schematic block diagram of an example electronic device 800 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0122] like Figure 7 As shown, the electronic device 800 includes a computing unit 801, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 802 or a computer program loaded from a storage unit 808 to a random access memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the electronic device 800 can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.

[0123] Multiple components in the electronic device 800 are connected to the I / O interface 805, including: an input unit 806, such as a keyboard, a mouse, etc.; an output unit 807, such as various types of displays, speakers, etc.; a storage unit 808, such as a disk, an optical disk, etc.; and a communication unit 809, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 809 allows the electronic device 800 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0124] The computing unit 801 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 801 performs the various methods and processes described above, such as data processing methods. For example, in some embodiments, the data processing method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 808. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 800 via the ROM 802 and / or the communication unit 809. When the computer program is loaded into the RAM 803 and executed by the computing unit 801, one or more steps of the data processing method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the data processing method in any other appropriate manner (e.g., by means of firmware).

[0125] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0126] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0127] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, 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 foregoing.

[0128] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0129] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0130] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

[0131] It should be understood that various forms of processes shown above can be used to sequence, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document is not limited here.

[0132] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of the present disclosure, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0133] The above is only a specific embodiment of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.

Claims

1. A data processing method, characterized in that: Applied to an operating system, the method comprises: Acquire a chip model of a baseboard management controller based on the first instruction; Determine an identification file based on the chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; Copying the identification file to a rule file directory to identify the baseboard management controller; Controlling the baseboard management controller to enable a local area network function based on a second instruction; the local area network function includes allowing a universal serial bus to enable a local area network function; Setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; An in-band refresh parameter is transmitted to a baseboard management controller based on the local area network, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

2. The method according to claim 1, characterized in that The step of obtaining the chip model of the baseboard management controller based on the first instruction includes: Sending a first instruction to a baseboard management controller based on an intelligent platform management interface; Receive a chip model of the baseboard management controller returned by the baseboard management controller based on the first instruction.

3. The method according to claim 1, characterized in that The chip model based on the baseboard management controller determines the identification file, including: In response to the chip model of the baseboard management controller being the first model, determining that the identification file is the first file; Configure parameters corresponding to the first model chip in the first file.

4. The method according to claim 1, characterized in that The chip model based on the baseboard management controller determines the identification file, including: In response to the chip model of the baseboard management controller being the second model, determining that the identification file is the second file; Configure parameters corresponding to the second model chip in the second file.

5. The method according to claim 3 or 4, characterized in that: The parameters include at least one of a vendor identification code parameter, a product identification code parameter, a kernel parameter, a symbolic link parameter, and a subsystem parameter.

6. The method according to claim 1, characterized in that The step of copying the identification file to a rule file directory to identify the baseboard management controller includes: Copy the recognition file to the rule file directory; The rule file directory is loaded so that the operating system can identify the baseboard management controller based on the identification file.

7. The method according to claim 1, characterized in that The controlling the baseboard management controller to enable the local area network function based on the second instruction includes: The second instruction is sent to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller starts the local area network function based on the second instruction.

8. The method according to claim 1, characterized in that The method of setting the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction includes: Sending the third instruction to the baseboard management controller based on the intelligent platform management interface, so that the baseboard management controller sets the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The network parameters include an Internet Protocol address and a gateway.

9. The method according to claim 1, characterized in that: The method further comprises: The network parameters of the virtual universal serial bus network card of the operating system are configured based on the fourth instruction, so that the operating system and the baseboard management controller belong to the same local area network.

10. The method according to claim 1, characterized in that The transmitting the in-band refresh parameter to the baseboard management controller based on the local area network includes: Update the in-band refresh parameters of the firmware to be refreshed in the configuration file; Transmitting the in-band refresh parameter to the baseboard management controller based on the local area network; so that the baseboard management controller writes the in-band refresh parameter; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

11. A data processing method, characterized in that: Applied to a baseboard management controller, the method comprises: receiving a first instruction, and sending a chip model of the baseboard management controller to an operating system based on the first instruction; receiving a second instruction, and enabling a local area network function based on the second instruction; receiving a third instruction, and setting a network parameter of a universal serial bus network card of a baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to a local area network based on the universal serial bus; An in-band refresh parameter is received based on the local area network, and a firmware refresh is performed based on the in-band refresh parameter.

12. The method according to claim 11, characterized in that The receiving the in-band refresh parameter based on the local area network and performing firmware refresh based on the in-band refresh parameter includes: Writing the in-band refresh parameters into a flash memory in a baseboard management controller; The corresponding uniform resource locator in the baseboard management controller is called based on the fifth instruction sent by the operating system, and the firmware is refreshed based on the in-band refresh parameter.

13. A data processing device, characterized in that: Applied to a server corresponding to an operating system, the device comprises: An acquisition unit, configured to acquire a chip model of a baseboard management controller based on a first instruction; A file determination unit, configured to determine an identification file based on a chip model of the baseboard management controller; different chip models correspond to different identification files; the identification file includes a file for identifying the baseboard management controller; A loading unit, used to copy the identification file to a rule file directory to identify the baseboard management controller; A first control unit, configured to control the baseboard management controller to enable a local area network function based on a second instruction; the local area network function includes allowing a universal serial bus to enable a local area network function; A second control unit is used to set the network parameters of the universal serial bus network card of the baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to the local area network based on the universal serial bus; The third control unit is used to transmit an in-band refresh parameter to the baseboard management controller based on the local area network, so that the baseboard management controller performs firmware refresh based on the in-band refresh parameter.

14. A data processing device, characterized in that: Applied to a baseboard management controller, the device comprises: A first receiving unit, configured to receive a first instruction, and send a chip model of the baseboard management controller to an operating system based on the first instruction; A second receiving unit, configured to receive a second instruction, and enable a function of allowing the universal serial bus to enable a local area network based on the second instruction; A third receiving unit, configured to receive a third instruction, and to set a network parameter of a universal serial bus network card of a baseboard management controller based on the third instruction, so that the operating system and the baseboard management controller are connected to a local area network based on the universal serial bus; An in-band refresh unit is used to receive in-band refresh parameters based on the local area network, and perform firmware refresh based on the in-band refresh parameters.

15. An electronic device, characterized in that: include: 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 method according to any one of claims 1 to 10; Alternatively, perform the method according to any one of claims 11-12.

16. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to make a computer execute the method according to any one of claims 1 to 10; Alternatively, perform the method according to any one of claims 11-12.

Citation Information

Patent Citations

  • Integrated firmware implementation method and system based on various different models of BMC (baseboard management controller)

    CN106055361A

  • Chip updating method based on BMC (Baseband Management Controller), equipment and storage medium

    CN108363583A

  • Firmware update device and firmware update method

    CN112015445A

  • Method, device and equipment for in-band refreshing of BMC firmware and medium

    CN114840233A

  • Firmware refreshing method and device of array card, storage medium and electronic equipment

    CN116954666A