Server digital twin model construction method and device, and electronic device

By acquiring and parsing device association information described in structured markup language through the baseboard management controller, the problems of difficult data parsing and poor readability of server digital twin models are solved, thus improving construction efficiency.

CN117539738BActive Publication Date: 2026-06-23INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2023-11-17
Publication Date
2026-06-23

AI Technical Summary

Technical Problem

Existing methods for constructing server digital twin models suffer from problems such as difficulty in data parsing and poor data readability.

Method used

The target device data is obtained through the baseboard management controller of the server, the device association information described by structured markup language is parsed, and a digital twin model is constructed based on the device association information.

Benefits of technology

It enables rapid and efficient parsing of target device data, improving the efficiency and readability of building server digital twin models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117539738B_ABST
    Figure CN117539738B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a method and device for constructing a server digital twin model and electronic equipment, wherein the method comprises: obtaining target device data transmitted by a basic input / output system of a server through a baseboard management controller of the server, wherein the target device data is device association information of a group of devices on the server described by using a structured markup language; analyzing the target device data through the baseboard management controller to obtain the device association information of the group of devices; and constructing a digital twin model according to the device association information of the group of devices through the baseboard management controller to obtain the digital twin model of the server. Through the present application, the problem of difficult data analysis and poor data readability in the related art method for constructing a server digital twin model is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computers, and more specifically, to a method, apparatus, and electronic device for constructing a server digital twin model. Background Technology

[0002] In the server field, the server's BMC (Baseboard Management Controller) can use digital twin technology to simulate the overall state of the server: when the server is first powered on or at other times, the BIOS (Basic Input Output System) starts up and runs, performs hardware self-test, and sends all device component data to the BMC; the BMC uses this data to build a digital twin model, and in this way, it can realize real-time monitoring of the server's operating status such as device temperature and device failure.

[0003] In related technologies, the BIOS sends device data to the BMC by using industry-standard hardware data transmission. For example, the BIOS sends raw SMBIOS (System Management BIOS) data to the BMC. However, hardware data such as SMBIOS data is usually binary data, and its parsing depends on industry-standard hardware data specifications, making parsing difficult and resulting in poor readability.

[0004] It is evident that the methods for constructing server digital twin models in related technologies suffer from problems such as difficulty in data parsing and poor data readability. Summary of the Invention

[0005] This application provides a method, apparatus, and electronic device for constructing a server digital twin model, which at least solves the problems of data parsing difficulties and poor data readability in the construction methods of server digital twin models in related technologies.

[0006] According to one aspect of the embodiments of this application, a method for constructing a server digital twin model is provided, comprising: acquiring target device data transmitted by the server's basic input / output system through the server's baseboard management controller, wherein the target device data is device association information of a group of devices on the server described using structured markup language; parsing the target device data through the baseboard management controller to obtain the device association information of the group of devices; and constructing a digital twin model based on the device association information of the group of devices through the baseboard management controller to obtain a digital twin model of the server.

[0007] According to another aspect of the embodiments of this application, an apparatus for constructing a server digital twin model is provided, comprising: an acquisition unit, configured to acquire target device data transmitted by the server's basic input / output system through a baseboard management controller, wherein the target device data is device association information of a group of devices on the server described using a structured markup language; a parsing unit, configured to parse the target device data through the baseboard management controller to obtain the device association information of the group of devices; and a construction unit, configured to construct a digital twin model based on the device association information of the group of devices through the baseboard management controller to obtain a digital twin model of the server.

[0008] As an optional solution, the device association information of the group of devices includes the device information of each device in the group and the topology information of the group of devices, wherein the topology information of the group of devices is used to describe the topological relationship between the group of devices; the construction unit includes: a first construction module, used to call a preset device model corresponding to each device according to the device information of each device through the baseboard management controller, and establish a digital twin model of each device; a second construction module, used to combine the digital twin models of each device into the digital twin model of the server according to the topological relationship between the group of devices indicated by the topology information of the group of devices through the baseboard management controller.

[0009] As an optional solution, the second construction module includes: a construction submodule, used to combine the digital twin models of other devices in the group of devices, excluding the target device, into a digital twin model of the server in the event that the device information of the target device in the group of devices is damaged, by means of the baseboard management controller according to the topological relationship between the group of devices indicated by the topological information of the group of devices.

[0010] As an optional solution, the device information of each device includes a parent device identifier for indicating the parent device of each device; the apparatus further includes: an update unit, configured to update the topology information of the group of devices according to the parent device identifier in the device information of each device, in the event that the topology information of the group of devices is damaged, before the digital twin model of the server is constructed by the baseboard management controller based on the device association information of the group of devices, so as to obtain the updated topology information of the group of devices.

[0011] As an optional embodiment, the apparatus further includes: an initialization unit, configured to, before obtaining the target device data transmitted by the server's basic input / output system through the server's baseboard management controller, during the initialization process of the group of devices on the server, obtain device information of each device in the group of devices through the basic input / output system to obtain a device linked list, wherein the device information of each device includes a parent device identifier for indicating the parent device of each device; a conversion unit, configured to, after the group of devices has been initialized, traverse the device linked list through the basic input / output system and construct the device information of each device described by structured markup language and the topology information of the group of devices to obtain the target device data; and a transmission unit, configured to transmit the target device data to the baseboard management controller through the basic input / output system.

[0012] As an optional solution, the transmission unit includes: a transmission module for transmitting the target device data to the baseboard management controller via shared memory through the basic input / output system, wherein the shared memory is the memory used for data transmission between the basic input / output system and the baseboard management controller.

[0013] As an optional solution, the parsing unit includes: a parsing module, used to parse the target device data by calling a parsing library corresponding to the structured markup language through the baseboard management controller to obtain the device association information of the group of devices, wherein the structured markup language is at least one of the following: Extensible Markup Language, JavaScript Object Graph, and the obtained device association information of the group of devices is stored in the database of the baseboard management controller.

[0014] According to another aspect of the embodiments of this application, a computer-readable storage medium is provided, the computer-readable storage medium including a stored program, wherein the program executes the steps in any of the above method embodiments when it is run.

[0015] According to another aspect of the present application, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to perform the steps of any of the above method embodiments via the computer program.

[0016] In this embodiment, target device data transmitted by the server's basic input / output system is obtained through the server's baseboard management controller. This target device data is device association information of a group of devices on the server, described using structured markup language. The baseboard management controller parses the target device data to obtain the device association information of the group of devices. Based on this device association information, the baseboard management controller constructs a digital twin model of the server to obtain its digital twin model. Since the target device data in this embodiment is device association information of a group of devices on the server, described using structured markup language, the baseboard management controller can quickly and efficiently parse the target device data to obtain the device association information of the group of devices and construct the server's digital twin model based on this information. This solves the problems of difficult data parsing and poor data readability in related technologies for constructing server digital twin models. Attached Figure Description

[0017] Figure 1 This is a schematic diagram of the hardware environment for an optional method of constructing a server digital twin model according to an embodiment of this application;

[0018] Figure 2 This is a flowchart illustrating an optional method for constructing a server digital twin model according to an embodiment of this application.

[0019] Figure 3 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application;

[0020] Figure 4 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application;

[0021] Figure 5 This is a schematic diagram illustrating the process of constructing an optional server digital twin model according to an embodiment of this application;

[0022] Figure 6 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application;

[0023] Figure 7 This is a structural block diagram of an optional server digital twin model construction apparatus according to an embodiment of this application;

[0024] Figure 8 This is a structural block diagram of a computer system for an optional electronic device according to an embodiment of this application. Detailed Implementation

[0025] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0026] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0027] The methods and embodiments provided in this application can be executed on a server, mobile terminal, computer terminal, or similar computing device. Taking running on a server as an example, Figure 1 This is a schematic diagram of the hardware environment for a method of constructing a server digital twin model according to an embodiment of this application. Figure 1 As shown, a server may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. The server may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the server described above. For example, the server may also include components that are more complex than... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.

[0028] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the server digital twin model construction method in this embodiment. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thus implementing the above-described method. The memory 104 may include high-speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0029] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the computer terminal. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0030] According to one aspect of the embodiments of this application, a method for constructing a server digital twin model is provided. The BIOS (Basic Input Output System), as the lowest-level and most direct hardware settings and control manager of the server motherboard, provides the server with more simple and easy-to-use functions. The BIOS is a set of programs embedded in a Flash ROM (Quick Eraser Read-Only Programmer) chip on the motherboard. It stores the computer's most important basic input / output programs, system settings information, power-on self-test programs, and system startup programs. Its main function is to provide the computer with the lowest-level and most direct hardware settings and control. During system startup, in addition to completing the system's hardware self-test and operating system boot, the BIOS also reports asset information of devices such as the CPU (Central Processing Unit), memory, and peripherals to the BMC (Baseboard Management Controller) for the BMC to display to the user via a webpage.

[0031] With the development of technology, digital twin technology has gradually emerged. Digital twins fully utilize data such as physical models, sensor updates, and operational history to integrate multi-disciplinary, multi-physical quantity, multi-scale, and multi-probabilistic simulation processes, completing a mapping in virtual space to reflect the entire lifecycle of the corresponding physical equipment. Digital twins are a concept that transcends reality, and can be viewed as a digital mapping system of one or more important, interdependent equipment systems. Among related technologies, BMC (Battery Management Center) can not only provide asset information management but also utilize digital twin technology to simulate the overall status of servers, monitor equipment temperature, faults, and other operational statuses in real time, and make predictions based on historical data, thereby reducing server failure rates and improving data center operation and maintenance efficiency.

[0032] When a server boots up for the first time, the BIOS performs a hardware self-test, sending all device component data to the BMC. The BMC uses this data to build a digital twin model for asset information management and device monitoring. There are several ways the BIOS sends device data to the BMC. Some use industry-standard hardware data, such as sending raw SMBIOS (System Management BIOS) data. The advantage of this method is that SMBIOS data is generated during BIOS execution and reported to the OS (Operating System), allowing for reuse without regenerating other data. The disadvantage is that SMBIOS data is binary data, parsing depends on the SMBIOS industry standard, making parsing difficult and resulting in poor readability; it also doesn't contain device topology information. Others use the Redfish (a management standard based on HTTPS) protocol to send device information. The advantage is that device information can be directly displayed to the user using the Redfish interface, but this data doesn't contain topology information and is unsuitable for building digital twin models. Still others use vendor-defined binary data. The advantage of binary data transmission is high efficiency, and it can be highly customized according to the model building method, but the disadvantage is poor data readability and maintainability.

[0033] Because the solution in this embodiment obtains the target device data transmitted by the server's basic input / output system through the baseboard management controller, the baseboard management controller parses the target device data to obtain a set of device association information, and the baseboard management controller constructs a digital twin model based on the set of device association information to obtain the server's digital twin model. The target device data in this solution is described using structured markup language, which achieves the purpose of quickly and efficiently parsing the target device data, thereby solving the problems of difficult data parsing and poor data readability in the construction methods of server digital twin models in related technologies.

[0034] The method for constructing a server digital twin model in this embodiment can be applied to scenarios involving the construction of a server digital twin model. Here, a server refers to a type of computer that is faster, has a higher load capacity, and is more expensive than a regular computer. Servers provide computing or application services to other clients (such as PCs, smartphones, ATMs, and even large equipment like train systems) on a network. Servers have high-speed CPU computing power, long-term reliable operation, powerful I / O external data throughput capabilities, and better scalability. Digital twins fully utilize physical models, sensor updates, operating history, and other data to integrate multi-disciplinary, multi-physical, multi-scale, and multi-probability simulation processes, completing mapping in virtual space to reflect the entire lifecycle of the corresponding physical equipment. The server's digital twin model can simulate the overall state of the server, enabling real-time monitoring of the server's operating status, such as equipment temperature and equipment failures.

[0035] Optionally, the method for constructing the server digital twin model in this embodiment can be executed by the server itself. Here, "server" refers to the entire server, including the relevant components within the server that need to execute the method for constructing the server digital twin model, as well as the processor, etc. Alternatively, the method for constructing the server digital twin model in this embodiment can be jointly executed by the BIOS and BMC. Here, when multiple devices jointly execute the method, information can be transmitted between different devices through communication connections, thereby enabling different devices to jointly execute the method for constructing the server digital twin model in this embodiment. In some examples of this embodiment, the method for constructing the server digital twin model is described using the execution by the server as an example.

[0036] See Figure 2 , Figure 2 This is a flowchart illustrating an optional method for constructing a server digital twin model according to an embodiment of this application, as shown below. Figure 2 As shown, the above method includes the following steps:

[0037] Step S202: Obtain the target device data transmitted by the server's basic input / output system through the server's baseboard management controller. The target device data is device association information of a group of devices on the server, described using structured markup language.

[0038] Here, a structured markup language (SML) is a programming language used to describe, define, and organize document structure. It uses tags, elements, and attributes to represent different parts of a document, facilitating parsing and display on different platforms and devices. Common SMLs include HTML (Hypertext Markup Language), XML (Extensible Markup Language), and JSON (JavaScript Object Notation). HTML is a markup language used to create web pages, describing their structure and content; XML is a markup language used to describe data, which can be used to store and transmit data; JSON is a lightweight data-interchange format used to store and transmit structured data. The structured markup languages ​​in this embodiment include, but are not limited to, at least one of the following: XML and JSON.

[0039] A set of devices on a server refers to the various components within the server. In this embodiment, since it is necessary to construct a digital twin model of the server, a set of devices on a server here refers to all the components within the server. A set of devices on a server includes, but is not limited to, at least one of the following: CPU, memory, southbridge, and PCIe (peripheral component interconnect express, high-speed serial computer expansion bus standard).

[0040] In this embodiment, target device data refers to device association information of a group of devices on a server, described using Structured Markup Language. This device association information is required by the server when building a digital twin model. The device association information may include, but is not limited to, at least one of the following: device information for each device in the group, and topology information for the group. Specifically, the device information for each device in the group is required during the construction of the digital twin model for each device, and may include, but is not limited to, at least one of the following: device ID, manufacturer, serial number, functional specifications, and parent device ID (identity document). The topology information for the group represents the topological relationships between each device.

[0041] The target device data is obtained by the server's baseboard management controller from the server's basic input / output system. Here, the baseboard management controller and the basic input / output system are connected in communication. The basic input / output system of the server can transmit the target device data to the baseboard management controller of the server in a way that includes, but is not limited to, at least one of the following: shared memory transmission method and data line transmission method.

[0042] Step S204: The target device data is parsed through the baseboard management controller to obtain a set of device association information.

[0043] The target device data described by the structured markup language is parsed to obtain a set of device association information. Here, the baseboard management controller calls the parsing library to parse the target device data. The parsing library is used to parse the target device data transmitted by the basic input / output system and convert the target device data into device association information that can be used to build a digital twin model for the server. In this embodiment, the parsing library can extract and parse structured data. In this embodiment, the parsing library can be Beautiful Soup (Python library), which can extract data from XML files.

[0044] Step S206: The digital twin model of the server is constructed by the baseboard management controller based on the device association information of a group of devices.

[0045] The baseboard management controller constructs a digital twin model based on the device association information of a group of devices. Here, the construction process of the server's digital twin model can be either directly constructed based on the device association information of a group of devices, or it can be that the digital twin model of each device in the group of devices on the server is constructed separately first, and then the digital twin models of each device are combined to construct the server's digital twin model.

[0046] The baseboard management controller can be configured with preset device models, and a digital twin model can be constructed based on these preset device models. When the construction process of the server's digital twin model is based directly on the device association information of a group of devices, the preset device model can be the preset device model of the entire server. In this case, the server's digital twin model can be constructed based on the preset device model of the entire server and the device association information. When the construction process of the server's digital twin model is based on first constructing the digital twin model of each device in a group of devices on the server separately, and then combining the digital twin models of each device to construct the server's digital twin model, the preset device model can be the preset device model of each device in a group of devices on the server. In this case, the digital twin model of each device in a group of devices on the server can be constructed based on the preset device model of each device in a group of devices on the server and the device association information, and then the digital twin models of each device in a group of devices on the server can be combined to obtain the server's digital twin model.

[0047] The embodiments provided in this application obtain target device data transmitted by the server's basic input / output system through the server's baseboard management controller. The target device data is device association information of a group of devices on the server, described using structured markup language. The baseboard management controller parses the target device data to obtain the device association information of a group of devices. The baseboard management controller constructs a digital twin model based on the device association information of the group of devices to obtain a digital twin model of the server. This solves the problems of difficult data parsing and poor data readability in the construction methods of server digital twin models in related technologies, and improves the construction efficiency of server digital twin models.

[0048] As an optional solution, see [link to relevant documentation]. Figure 3 , Figure 3 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application, as shown below. Figure 3 As shown, the device association information of a group of devices includes the device information of each device in the group and the topology information of the group of devices. The topology information of the group of devices describes the topological relationships between the devices. The baseboard management controller constructs a digital twin model based on the device association information of the group of devices to obtain a digital twin model of the server, including:

[0049] Step S302: The baseboard management controller calls the preset device model corresponding to each device according to the device information of each device to establish a digital twin model of each device.

[0050] In this implementation, the device association information of a group of devices includes the device information of each device in the group of devices and the topology information of the group of devices. Here, the device information refers to the relevant information that each device in the group of devices needs to use in the process of building a digital twin model. The device information may include, but is not limited to, at least one of the following: device ID, manufacturer, serial number, functional specifications, and parent device ID.

[0051] The baseboard management controller calls the preset device model corresponding to each device based on the device information of each device to build a digital twin model of each device. Here, the preset device model corresponding to each device is a preset model that each device needs to use in the process of building the digital twin model of each device. The specific process of building the digital twin model of the device based on the device information and the preset model has been described in related technologies and will not be repeated here.

[0052] Step S304: The digital twin model of each device is combined into a digital twin model of the server by the baseboard management controller according to the topological relationship between the devices indicated by the topology information of a set of devices.

[0053] The topology information of a set of devices is the information needed to combine the digital twin models of each device in a set of devices on the server into the digital twin model of the server. The topology information includes the topological connection relationship between each device in a set of devices on the server. Based on the topology information of a set of devices, the baseboard management controller can combine the digital twin models of each device into the digital twin model of the server.

[0054] The device association information provided in this application includes device information and topology information. A digital twin model of each device is constructed based on the device information. Based on the digital twin model of each device and the topology information, a digital twin model of the server is obtained. The baseboard management controller can quickly construct a digital twin model of the entire server using the topology information, saving the time of the baseboard management controller to re-extract the topology relationship and improving the efficiency of the baseboard management controller in constructing the digital twin model.

[0055] As an optional approach, the baseboard management controller combines the digital twin models of each device into a digital twin model of the server according to the topological relationships between a set of devices indicated by the topology information of a set of devices, including:

[0056] S11: In the event that the device information of the target device in a set of devices is damaged, the digital twin models of the other devices in the set of devices, except for the target device, are combined into a digital twin model of the server by the baseboard management controller according to the topological relationship between the devices indicated by the topological information of the set of devices.

[0057] Here, the target device refers to the device whose device information is corrupted in a group of devices.

[0058] In this embodiment, if the device information of the target device in a group of devices is damaged, it means that the baseboard management controller cannot build a digital twin model of the target device based on the device information of the target device. Since the topology information of a group of devices includes the upper-level or lower-level devices of the target device, the baseboard management controller can combine the digital twin models of the other devices in the group of devices, excluding the target device, into a digital twin model of the server based on the topology relationship between the devices.

[0059] Through the embodiments provided in this application, in the event that the device information of the target device in a group of devices is damaged, a digital twin model of the server can be constructed based on the topology information of the group of devices, thereby increasing the reliability of the method for constructing a digital twin model of the server.

[0060] As an optional approach, the device information for each device includes a parent device identifier that indicates the parent device of each device; before constructing a digital twin model of the server through the baseboard management controller based on the device association information of a set of devices, the method further includes:

[0061] S21: If the topology information of a group of devices is corrupted, update the topology information of the group of devices according to the parent device identifier in the device information of each device to obtain the updated topology information of the group of devices.

[0062] In this embodiment, the updated topology information of a set of devices refers to the topology information of a set of devices that are intact and undamaged.

[0063] Each device's device information includes a parent device identifier that indicates the parent device of each device. That is, the topology relationship is redundant in the topology information and detailed information. If the topology information of a group of devices is corrupted, the topology information of the group of devices is updated according to the parent device identifier in the device information of each device to obtain the updated topology information of the group of devices. Since each device's device information includes a parent device identifier that indicates the parent device of each device, that is, each device's device information includes the topology relationship between the device and other devices, if the topology information of a group of devices is corrupted, the topology information of the group of devices can be updated based on the device information of each device in the group to obtain the updated topology information of the group of devices.

[0064] Through the embodiments provided in this application, in the event of corrupted topology information, the topology information is updated using the device information of each device in a group of devices to obtain intact topology information, thereby increasing the reliability of the method for constructing a server digital twin model.

[0065] As an optional solution, see [link to relevant documentation]. Figure 4 , Figure 4 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application, as shown below. Figure 4 As shown, before obtaining the target device data transmitted by the server's basic input / output system through the server's baseboard management controller, the method further includes:

[0066] Step S402: During the initialization of a group of devices on the server, the device information of each device in the group is obtained through the basic input / output system to obtain a device linked list. The device information of each device includes a parent device identifier used to indicate the parent device of each device.

[0067] In this embodiment, a set of devices on the server is initialized using a Basic Input / Output System (PIS). This initialization process can be performed when the server is powered on. The PIS is used to obtain device information for each device in the set, resulting in a device list. Each device's information includes a parent device identifier indicating the parent device of that device; that is, each device's information contains the topological relationships between the devices in the set. A device list is a data structure used to store and manage information. It consists of multiple nodes, each node containing information about a device and pointing to the next node. The device list can be used to manage the connection order of devices and to find specific device information. Here, the device list stores the device information for each device in the set on the server.

[0068] Step S404: After all devices in a group have been initialized, the device list is traversed through the basic input / output system, and the device information of each device and the topology information of the group of devices are described by the structured markup language to obtain the target device data.

[0069] After all devices in a group have been initialized, the device list is traversed through the basic input / output system to obtain the device information of each device and the topology information of the group of devices. The device information of each device and the topology information of the group of devices are described through structured markup language to obtain the target device data.

[0070] Step S406: Transmit the target device data to the board management controller via the basic input / output system.

[0071] After obtaining the target device data, the target device data is transmitted to the baseboard management controller through the basic input / output system. Here, the data transmission method includes, but is not limited to, at least one of the following: shared memory transmission method and data line transmission method.

[0072] The embodiments provided in this application describe the process of acquiring target device data, which increases the stability of the method for constructing a server digital twin model.

[0073] As an optional solution, data from the target device is transmitted to the board management controller via a basic input / output system, including:

[0074] S31: The target device data is transmitted to the baseboard management controller via shared memory through the basic input / output system. The shared memory is the memory used for data transmission between the basic input / output system and the baseboard management controller.

[0075] In this embodiment, the specific steps for transmitting target device data to the baseboard management controller via shared memory through the basic input / output system can be as follows: the baseboard management controller maps memory to the basic input / output system for use as shared memory; the basic input / output system and the baseboard management controller determine the offset address of the target device data; and the basic input / output system stores the target device data in the shared memory at the specified offset address for the baseboard management controller to read by accessing the shared memory.

[0076] The embodiments provided in this application utilize shared memory to transmit target device data, thereby increasing the data transmission speed between the basic input / output system and the baseboard management controller, and thus improving the efficiency of building the server's digital twin model.

[0077] As an optional solution, the target device data is parsed through the baseboard management controller to obtain a set of device association information, including:

[0078] S41: The target device data is parsed by calling the parsing library corresponding to the structured markup language through the baseboard management controller to obtain a set of device association information, wherein the structured markup language is at least one of the following: Extensible Markup Language, JavaScript Object Graph; the obtained set of device association information is stored in the database of the baseboard management controller.

[0079] In this embodiment, the parsing library is used to parse the target device data transmitted by the basic input / output system and convert the target device data into device association information that can be used to build a digital twin model for the server. In this embodiment, the parsing library can extract and parse structured data. The parsing library in this embodiment can be Beautiful Soup (Python library), which can extract data from XML files.

[0080] After obtaining the device association information of a set of devices, the device association information of the set of devices is stored in the database of the baseboard management controller. When it is necessary to build a digital twin model of the server, the device association information of the set of devices in the database of the baseboard management controller is extracted, and the digital twin model of the server is built based on the device association information of the set of devices.

[0081] Optionally, using Structured Markup Language (SML) as the extensible markup language, taking the device association information of a group of devices, which includes the topological relationships between a group of devices, as an example, the following is the target device data of the device association information of a group of devices described using extensible markup language:

[0082] <cpu0>

[0083] <pcie>

[0084] <Device category=”Network”> ID_000

[0085] <Device category=”Network”> ID_001

[0086] <switch>

[0087] <Device category=”GPU”> ID_002

[0088] <Device category=”GPU”> ID_003

[0089] < / switch>

[0090] < / pcie>

[0091] < / cpu0>

[0092] After the baseboard management controller calls the parsing library corresponding to the Extensible Markup Language (which can be BeautifulSoup) to parse the target device data, the following topology can be obtained:

[0093] CPU0

[0094] |--NetworkID000

[0095] |--NetworkID001

[0096] |--Switch

[0097] |--GPUID002

[0098] |--GPUID003

[0099] Here, CPU0 is the parent device of NetworkID000, NetworkID001, and Switch, and Switch is the parent device of GPUID002 and GPUID003.

[0100] The embodiments provided in this application enable accurate acquisition of device association information for a group of devices, thereby improving the accuracy of building a server digital twin model.

[0101] The method for constructing the server digital twin model in this application is explained below with reference to optional examples. See also Figure 5 , Figure 5 This is a schematic diagram illustrating an optional method for constructing a server digital twin model according to an embodiment of this application, as shown below. Figure 5 As shown, the actual device refers to the server, and the device digital twin model refers to the server's digital twin model. The actual device includes detailed information about a set of devices and the topological relationships between them. Specifically, the PCH (Platform Controller Hub, integrated southbridge) is the parent device of the hard drive. The PCH communicates with CPU0 (the central processing unit numbered 0), and CPU0 communicates with memory 0 and memory 1. CPU0 is the parent device of PCIe network card 0, PCIe network card 1, and PCIe Switch0 (the PCIe expansion interface). PCIe Switch0 is the parent device of PCIe GPU0 (the integrated graphics card numbered 0 connected to PCIe) and PCIe GPU1 (the integrated graphics card numbered 1 connected to PCIe). It should be noted that... Figure 5 The actual device indicated is a part of the server machine, and is only used as an example here; here, the topology information and device details of the actual device are obtained, and a digital twin model of the device is built based on the topology information and device details.

[0102] See Figure 6 , Figure 6 This is a flowchart illustrating another optional method for constructing a server digital twin model according to an embodiment of this application, as shown below. Figure 6 As shown, a method for constructing a server digital twin model is provided, including:

[0103] Step 1: Power on the server;

[0104] Step 2: BIOS initializes the device;

[0105] Step 3: The BIOS reads the device information of each device on the server and establishes a device linked list;

[0106] Step 4: Use Structured Markup Language to describe the data in the device list and generate detailed device information and topology information;

[0107] Step 5: Device details and topology information are transferred from the BIOS to the BMC via shared memory;

[0108] Step 6: BMC parses detailed device information and topology information to obtain raw data;

[0109] Step 7: Store the raw data in the database;

[0110] Step 8: Construct digital twin models for each device based on the original data and preset models in the database;

[0111] Step 9: Combine the digital twin models of each device to obtain the digital twin model of the server;

[0112] Step 10: Use the server's digital twin model for monitoring and simulation.

[0113] Here, an optional method for constructing a server digital twin model may further include the following steps:

[0114] S1: When the host is powered on, the BIOS initializes all devices and performs a power-on self-test, reading device information to obtain binary data of device information;

[0115] S2: After all devices are initialized, a binary data linked list of device details is obtained;

[0116] S3: Traverse the binary data of device details and construct the device topology information XML file and the device details XML file;

[0117] S4: Pass the device topology information XML and device details XML to the BMC via shared memory;

[0118] S5: The BMC parses the device topology information XML and device details XML to obtain raw data, which is then stored in the database for further processing.

[0119] S6: Based on the detailed device information stored in the database, extract and construct digital twin models of each device from the preset model library;

[0120] S7: Based on the device topology information stored in the database, combine the device models constructed in step S6 to generate the server whole machine model;

[0121] S8: Monitor and simulate the model for user use.

[0122] The embodiments provided in this application utilize structured markup language to describe device details, obtaining device topology information XML and device details XML. During the BMC's parsing of target device data, the device topology information XML and device details XML can be parsed quickly and efficiently to obtain device details. Based on the device details, a digital twin model of the server is constructed, thereby solving the problems of difficult data parsing and poor data readability in the construction methods of server digital twin models in related technologies.

[0123] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0124] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM (Read-Only Memory) / RAM (Random Access Memory), magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0125] According to another aspect of the embodiments of this application, an apparatus for constructing a server digital twin model is also provided. This apparatus is used to implement the method for constructing a server digital twin model provided in the above embodiments, and will not be repeated hereafter. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0126] Figure 7 This is a structural block diagram of a server digital twin model construction apparatus according to an embodiment of this application, such as... Figure 7 As shown, the device includes:

[0127] The acquisition unit 702 is used to acquire target device data transmitted by the server's basic input / output system through the server's baseboard management controller. The target device data is device association information of a group of devices on the server, described using structured markup language.

[0128] The parsing unit 704 is used to parse the target device data through the baseboard management controller to obtain a set of device association information;

[0129] The construction unit 706 is used to construct a digital twin model of the server by means of the baseboard management controller based on the device association information of a group of devices.

[0130] It should be noted that the acquisition unit 702 in this embodiment can be used to execute the above step S202, the parsing unit 704 in this embodiment can be used to execute the above step S204, and the construction unit 706 in this embodiment can be used to execute the above step S206.

[0131] The embodiments provided in this application obtain target device data transmitted by the server's basic input / output system through the server's baseboard management controller. The target device data is device association information of a group of devices on the server, described using structured markup language. The baseboard management controller parses the target device data to obtain the device association information of a group of devices. The baseboard management controller constructs a digital twin model based on the device association information of the group of devices to obtain a digital twin model of the server. This solves the problems of difficult data parsing and poor data readability in the construction methods of server digital twin models in related technologies, and improves the construction efficiency of server digital twin models.

[0132] As an optional approach, the device association information of a group of devices includes the device information of each device in the group and the topology information of the group of devices, wherein the topology information of the group of devices is used to describe the topological relationship between the group of devices.

[0133] The building blocks include:

[0134] The first construction module is used to call the preset device model corresponding to each device according to the device information of each device through the baseboard management controller, and establish a digital twin model of each device;

[0135] The second building module is used to combine the digital twin models of each device into a digital twin model of the server by means of the baseboard management controller according to the topological relationship between a group of devices indicated by the topological information of a group of devices.

[0136] As an optional solution, the second building block includes:

[0137] A submodule is constructed to combine the digital twin models of the other devices in a set of devices into a digital twin model of the server, in the event that the device information of the target device in a set of devices is damaged, by using the baseboard management controller according to the topological relationship between the devices in a set of devices indicated by the topological information of the set of devices.

[0138] As an optional approach, the device information for each device includes a parent device identifier that indicates the parent device of each device;

[0139] The above-mentioned device also includes:

[0140] The update unit is used to update the topology information of a group of devices according to the parent device identifier in the device information of each device, in the event that the topology information of a group of devices is damaged, before the digital twin model of the server is constructed by the baseboard management controller based on the device association information of a group of devices, and obtain the updated topology information of a group of devices.

[0141] As an optional solution, the above-mentioned device further includes:

[0142] The initialization unit is used to obtain the device information of each device in a group of devices through the basic input / output system during the initialization process of a group of devices on the server before obtaining the target device data transmitted by the basic input / output system of the server through the baseboard management controller of the server, and obtain a device linked list. The device information of each device includes a parent device identifier used to indicate the parent device of each device.

[0143] The conversion unit is used to traverse the device list through the basic input / output system after a group of devices has been initialized, and to construct the device information of each device described by the structured markup language and the topology information of a group of devices to obtain the target device data.

[0144] The transmission unit is used to transmit target device data to the board management controller via the basic input / output system.

[0145] As an optional solution, the transmission unit includes:

[0146] The transmission module is used to transmit target device data to the baseboard management controller via shared memory through the basic input / output system. The shared memory is the memory used for data transmission between the basic input / output system and the baseboard management controller.

[0147] As an optional approach, the parsing unit includes:

[0148] The parsing module is used to parse the target device data by calling the parsing library corresponding to the structured markup language through the baseboard management controller, and obtain a set of device association information. The structured markup language is at least one of the following: Extensible Markup Language, JavaScript Object Graph. The obtained set of device association information is stored in the database of the baseboard management controller.

[0149] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored program, wherein the program executes the steps in any of the above method embodiments when it is run.

[0150] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0151] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to perform the steps of any of the above method embodiments through the computer program.

[0152] In one exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.

[0153] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.

[0154] According to another aspect of the embodiments of this application, a computer program product is provided, the computer program product including a computer program / instructions comprising program code for performing the method shown in the flowchart. In such an embodiment, reference is made to... Figure 8 The computer program can be downloaded and installed from a network via the communication section 809, and / or installed from the removable medium 811. When the computer program is executed by the central processing unit 801, it performs various functions provided in the embodiments of this application. The sequence numbers of the embodiments of this application above are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0155] refer to Figure 8 , Figure 8 This is a structural block diagram of a computer system for an optional electronic device according to an embodiment of this application.

[0156] Figure 8 A schematic block diagram of a computer system architecture for implementing embodiments of the present application is shown. Figure 8 As shown, the computer system 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 802 or programs loaded from storage section 808 into random access memory (RAM). The random access memory 803 also stores various programs and data required for system operation. The CPU 801, ROM 802, and RAM 803 are interconnected via a bus 804. An input / output interface 805 (I / O interface) is also connected to the bus 804.

[0157] The following components are connected to the input / output interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a local area network card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.

[0158] Specifically, according to embodiments of this application, the processes described in the various method flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 809, and / or installed from removable medium 811. When the computer program is executed by central processing unit 801, it performs various functions defined in the system of this application.

[0159] It should be noted that, Figure 8 The computer system 800 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0160] Obviously, those skilled in the art should understand that the modules or steps of the embodiments of this application described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented here, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the embodiments of this application are not limited to any particular combination of hardware and software.

[0161] The above are merely preferred embodiments of this application and are not intended to limit the embodiments of this application. For those skilled in the art, various modifications and variations can be made to the embodiments of this application. Any modifications, equivalent substitutions, improvements, etc., made within the principles of the embodiments of this application should be included within the protection scope of the embodiments of this application.

Claims

1. A method for constructing a server digital twin model, characterized in that, include: The target device data transmitted by the basic input / output system of the server is obtained through the baseboard management controller of the server, wherein the target device data is device association information of a group of devices on the server described using structured markup language; The target device data is parsed by the baseboard management controller to obtain the device association information of the group of devices; The digital twin model of the server is obtained by constructing a digital twin model based on the device association information of the group of devices through the baseboard management controller; The device association information of the group of devices includes device information for each device in the group and topology information for the group of devices. The topology information of the group of devices is used to describe the topological relationship between the devices. The step of constructing a digital twin model of the server by the baseboard management controller based on the device association information of the group of devices includes: the baseboard management controller calling a preset device model corresponding to each device based on the device information of each device to establish a digital twin model for each device; and the baseboard management controller combining the digital twin models of each device into a digital twin model of the server according to the topological relationship between the devices indicated by the topology information of the group of devices. The step of combining the digital twin models of each device into the digital twin model of the server by means of the baseboard management controller according to the topological relationship between the devices indicated by the topological information of the group of devices includes: in the case that the device information of the target device in the group of devices is damaged, combining the digital twin models of the other devices in the group of devices other than the target device into the digital twin model of the server by means of the baseboard management controller according to the topological relationship between the devices indicated by the topological information of the group of devices; The device information of each device includes a parent device identifier for indicating the parent device of each device; before the digital twin model of the server is constructed by the baseboard management controller based on the device association information of the group of devices, the method further includes: in the event that the topology information of the group of devices is damaged, updating the topology information of the group of devices according to the parent device identifier in the device information of each device to obtain the updated topology information of the group of devices.

2. The method according to claim 1, characterized in that, Before acquiring the target device data transmitted by the server's basic input / output system via the server's baseboard management controller, the method further includes: During the initialization of the set of devices of the server, the device information of each device in the set of devices is obtained through the basic input / output system to obtain a device linked list, wherein the device information of each device includes a parent device identifier for indicating the parent device of each device; After all the devices in the group have been initialized, the device list is traversed through the basic input / output system, and the device information of each device and the topology information of the group of devices are constructed using structured markup language to obtain the target device data. The target device data is transmitted to the baseboard management controller via the basic input / output system.

3. The method according to claim 2, characterized in that, The step of transmitting the target device data to the baseboard management controller via the basic input / output system includes: The target device data is transmitted to the baseboard management controller via shared memory through the basic input / output system, wherein the shared memory is the memory used for data transmission between the basic input / output system and the baseboard management controller.

4. The method according to any one of claims 1 to 3, characterized in that, The step of parsing the target device data through the baseboard management controller to obtain the device association information of the group of devices includes: The baseboard management controller calls a parsing library corresponding to the structured markup language to parse the target device data, thereby obtaining device association information for the group of devices. The structured markup language is at least one of the following: Extensible Markup Language (EXPLAIN) or JavaScript Object Graph. The obtained device association information for the group of devices is stored in the database of the baseboard management controller.

5. A device for constructing a server digital twin model, characterized in that, include: The acquisition unit is used to acquire target device data transmitted by the basic input / output system of the server through the baseboard management controller of the server, wherein the target device data is device association information of a group of devices on the server described using structured markup language; The parsing unit is used to parse the target device data through the baseboard management controller to obtain the device association information of the group of devices; A construction unit is used to construct a digital twin model of the server by means of the baseboard management controller based on the device association information of the group of devices. The device association information of the group of devices includes device information of each device in the group and topology information of the group of devices. The topology information of the group of devices is used to describe the topological relationship between the group of devices. The construction unit includes: a first construction module, used to call a preset device model corresponding to each device according to the device information of each device through the baseboard management controller, and establish a digital twin model of each device; and a second construction module, used to combine the digital twin models of each device into a digital twin model of the server according to the topological relationship between the group of devices indicated by the topology information of the group of devices through the baseboard management controller. The second construction module includes: a construction submodule, used to combine the digital twin models of other devices in the group of devices (excluding the target device) into the digital twin model of the server in the event that the device information of the target device in the group of devices is damaged, by means of the baseboard management controller according to the topological relationship between the group of devices indicated by the topological information of the group of devices; The device information for each device includes a parent device identifier that indicates the parent device of each device. The device further includes an update unit, configured to update the topology information of the group of devices according to the parent device identifier in the device information of each device, in the event that the topology information of the group of devices is damaged, before the digital twin model of the server is constructed by the baseboard management controller based on the device association information of the group of devices, so as to obtain the updated topology information of the group of devices.

6. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 4.

7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method described in any one of claims 1 to 4.