In-band information processing method and computing device
Patent Information
- Application Number
- CN202610696550.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-20
- Publication Date
- 2026-10-20
AI Technical Summary
[0003]然而,相关技术中的带内信息处理方式,用户无法便捷地查看或操作带内信息,影响了用户体验
[0098]本申请实施例提供的带内信息处理方法及计算设备,外部设备通过与BMC的连接,将对应于带内程序的第一请求发送至BMC,BMC能够作为外部设备与带内程序之间的协议转换桥梁,通过解析第一请求提取操作指令,并生成与带内程序接口兼容的第二请求,实现外部设备与带内程序之间的协议互通,完成外部设备与带内程序的交互。由于BMC能够将来自不同外部设备、不同协议类型的请求统一转换为带内程序接口兼容的请求,用户无需关注底层协议细节,无需受限于特定物理接口,可通过自己选择的任意外部设备对带内程序进行配置、监控和维护。经由不同的外部设备均可进行带内信息的查看和操作,能够提高用户查看或者操作带内信息的便捷性,进而提高用户体验。
Smart Images

Figure FT_1 
Figure FT_2 
Figure FT_3
Abstract
Description
Technical Field
[0001] This application relates to the field of computing device technology, and in particular to an in-band information processing method and computing device. Background Technology
[0002] In the management scenarios of servers, embedded devices, or industrial equipment, it is often necessary to manage in-band information of the server through in-band programs.
[0003] However, the in-band information processing methods in related technologies make it difficult for users to conveniently view or manipulate in-band information, thus affecting the user experience. Summary of the Invention
[0004] This application provides an in-band information processing method and computing device, which can improve the convenience for users to view or operate in-band information, thereby improving the user experience.
[0005] In a first aspect, embodiments of this application provide an in-band information processing method applied to a baseboard management controller of a computing device. One end of the baseboard management controller is communicatively connected to an external device, and the other end of the baseboard management controller is communicatively connected to the in-band program interface of the computing device. The method includes:
[0006] Receive the first request sent by the external device;
[0007] Parse the first request to determine the operation instruction corresponding to the first request;
[0008] Based on the operation instructions, generate a second request compatible with the in-band program interface;
[0009] The second request is sent to the in-band program interface to control the in-band software to execute the operation instructions.
[0010] This application provides a method for operating an in-band program. An external device, connected to the BMC (Band Control Controller), sends a first request corresponding to the in-band program to the BMC. The BMC acts as a protocol conversion bridge between the external device and the in-band program, parsing the first request to extract operation instructions and generating a second request compatible with the in-band program interface. This enables protocol interoperability between the external device and the in-band program, completing their interaction. Because the BMC can uniformly convert requests from different external devices and different protocol types into requests compatible with the in-band program interface, users do not need to concern themselves with underlying protocol details or be limited by specific physical interfaces. They can configure, monitor, and maintain the in-band program using any external device of their choice. The ability to view and operate in-band information via different external devices improves the convenience of viewing or operating in-band information, thereby enhancing the user experience.
[0011] In one possible implementation, generating a second request compatible with the in-band program interface according to the operation instructions includes:
[0012] Obtain a preset first mapping relationship; wherein the preset first mapping relationship is used to characterize the correspondence between operation instructions and corresponding first protocol commands;
[0013] According to the operation instructions, a matching process is performed in the preset first mapping relationship to obtain the second request.
[0014] This application embodiment pre-configures the mapping relationship between operation instructions and first protocol commands compatible with in-band program interfaces in the BMC. When the operation instruction in the first request sent by the external device is parsed, the conversion from semantic layer operation instructions to specific protocol commands can be automatically completed through this pre-configured relationship, without manual intervention or the development of separate adaptation programs for different external devices. This not only improves the efficiency and accuracy of command conversion but also allows the BMC to flexibly support various types of operation instructions, further enhancing the convenience and efficiency of users viewing and operating in-band information.
[0015] In one possible implementation, the baseboard management controller and the in-band program interface establish a communication link via the intelligent platform management interface protocol or the hypertext transfer security protocol.
[0016] When the communication link is established based on the intelligent platform management interface protocol, the first protocol command is an intelligent platform management interface protocol command; or...
[0017] When the communication link is established based on the Hypertext Transfer Security Protocol (HTTP), the first protocol command is an HTTP command.
[0018] In this embodiment, the BMC and the in-band program interface establish a communication link via the Intelligent Platform Management Interface Protocol (IPMI) or Hypertext Transfer Protocol Secure (HTTPS). To adapt to different communication links, this embodiment sets different first protocol commands. IPMI is a standard protocol in the server management field, and HTTPS is a security standard for internet communication; both are widely supported by the in-band program interface. Therefore, the generated second request can be correctly identified and parsed by the in-band program interface, adapting to different computing device scenarios and enabling users to conveniently view and operate in-band information on different computing devices.
[0019] In one possible implementation, the baseboard management controller is connected to the external device via a wired or wireless connection;
[0020] The wired method includes one of serial port, universal asynchronous transceiver, and universal serial bus, and the wireless method includes Bluetooth.
[0021] Here, this application embodiment supports both wired and wireless connections between the BMC and external devices. Since there is no limitation on the specific connection method, users can choose the most suitable method according to the actual scenario, such as using a serial port connection for close-range debugging and a Bluetooth wireless connection for remote operation. This further enhances the flexibility and convenience of user operation, making the access of external devices no longer limited to specific physical interfaces, thus improving the flexibility of user operation.
[0022] In one possible implementation, when the baseboard management controller is connected to the external device via a serial port, the preset first mapping relationship includes the mapping relationship between serial port commands and first protocol commands;
[0023] When the baseboard management controller is connected to the external device via a universal asynchronous transceiver, the preset first mapping relationship includes the mapping relationship between universal asynchronous transceiver commands and first protocol commands;
[0024] When the baseboard management controller is connected to the external device via a universal serial bus, the preset first mapping relationship includes the mapping relationship between universal serial bus commands and first protocol commands;
[0025] When the baseboard management controller is connected to the external device via Bluetooth, the preset first mapping relationship includes the mapping relationship between Bluetooth commands and first protocol commands.
[0026] This application establishes corresponding mapping relationships for different connection methods, including mappings between serial port commands, Universal Asynchronous Receiver / Transmitter commands, Universal Serial Bus commands, and Bluetooth commands and the first protocol commands. Through this differentiated mapping configuration, regardless of how external devices connect, the BMC can uniformly convert commands from different physical channels into an in-band program interface recognizable format. This enables unified protocol conversion across multiple heterogeneous physical interfaces, resolving compatibility issues caused by interface differences and thereby improving the convenience of in-band program control for users in various application scenarios.
[0027] In one possible implementation, parsing the first request to determine the operation instruction corresponding to the first request includes:
[0028] Identify the protocol type of the first request; wherein the protocol type includes serial port protocol, Universal Asynchronous Receiver / Transmitter protocol, Universal Serial Bus protocol or Bluetooth protocol;
[0029] According to the protocol type, the first request is unpacked using the corresponding parsing rules to obtain the operation instructions.
[0030] In this embodiment, the protocol type of the first request is identified, and the corresponding parsing rules are used for unpacking based on the identification result. Since different protocols have different message formats and encapsulation methods, by automatically identifying the protocol type and adapting the parsing rules, the BMC can correctly extract operation instructions without manual configuration by the user. This achieves multi-protocol adaptive parsing, ensuring that requests sent by external devices can be correctly parsed and processed regardless of the protocol used, thus improving the accuracy and efficiency of in-band program control.
[0031] In one possible implementation, the external device includes the display device and / or terminal device of the computing device.
[0032] Here, the external device in this application embodiment can be a display device integrated into a computing device or a terminal device capable of communicating with the computing device. The display device can be a local display screen directly connected to the computing device, suitable for on-site management scenarios; the terminal device can be any terminal device such as a mobile phone, wherein the mobile phone may have a built-in application or connect to a remote terminal device via Bluetooth, suitable for remote wireless management scenarios. By simultaneously supporting both types of devices, this application embodiment satisfies both the needs of on-site maintenance personnel operating through a local display screen and the needs of operation and maintenance personnel for remote management via mobile phones, covering different usage scenarios and improving the flexibility of in-band information processing.
[0033] In one possible implementation, the operation instructions include at least one of in-band information query instructions, wireless network operation instructions, and Bluetooth communication operation instructions.
[0034] In this application, users can perform in-band information queries, wireless network operations, or Bluetooth communication operations using the in-band information processing method described in this embodiment. These three command types correspond to the three core scenarios of information viewing, network configuration, and wireless communication in server management. Through this classification, users can initiate corresponding types of operation commands according to actual management needs. The BMC can process the commands accordingly, allowing users to perform various in-band information processing operations through external devices, further improving the convenience of in-band information processing and enhancing its efficiency through various direct controls.
[0035] In one possible implementation, the operation instructions include in-band information query instructions;
[0036] Accordingly, after sending the second request to the in-band program interface, the method further includes:
[0037] Receive the information query results returned by the in-band program interface;
[0038] The information query result is sent to the external device so that the external device can display the information query result.
[0039] In response to in-band information query commands, the BMC in this embodiment can receive the returned query results and send them to an external device for presentation. Thus, users can intuitively view various types of information within the in-band program through an external device without needing to log into a server operating system or use dedicated management software, simplifying the information viewing process and enabling users to quickly and conveniently obtain the in-band information they need.
[0040] In one possible implementation, the in-band information query instruction includes at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction.
[0041] This application further defines the specific types of in-band information query instructions, including at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction. Through these diverse query instruction types, this application provides users with comprehensive information query capabilities for server management, allowing users to query information from different dimensions as needed. By providing diverse query instructions, comprehensive monitoring of server status is achieved, meeting the needs of operations and maintenance personnel for obtaining various types of operational data and improving the flexibility of users in processing in-band information.
[0042] In one possible implementation, the operation instructions include wireless network operation instructions; the wireless network operation instructions include at least one of wireless network configuration instructions, wireless network query instructions, wireless network enable instructions, and wireless network disable instructions.
[0043] Accordingly, sending the second request to the in-band program interface to control the in-band software to execute the operation instruction includes:
[0044] When the wireless network operation command is a wireless network configuration command, the in-band program is controlled through the in-band program interface to complete the wireless network configuration, so that after successful configuration, the external device can communicate directly with the in-band program through the wireless network.
[0045] When the wireless network operation command is a wireless network query command, wireless network information is obtained through the in-band program interface, so that after receiving the wireless network information, the wireless network information is sent to the external device;
[0046] When the wireless network operation command is a wireless network enable command or a wireless network disable command, the in-band program is controlled through the in-band program interface to perform the corresponding enable or disable operation.
[0047] This application's embodiments define processing flows for various wireless network operation commands, including configuration, query, enabling, and disabling. Specifically, when a configuration command is issued, the BMC controls the in-band program to complete the wireless network configuration through the in-band program interface. After successful configuration, external devices can communicate directly with the in-band program via the wireless network. This means that users do not need to rely on wired or Bluetooth connections to perform subsequent operations on the in-band program via the wireless network. This achieves a complete closed loop from wireless network configuration to use, improving the convenience of network configuration and the efficiency of subsequent communication.
[0048] In one possible implementation, the operation instructions include Bluetooth communication operation instructions; the Bluetooth communication operation instructions include at least one of Bluetooth turn-on instructions, Bluetooth turn-off instructions, Bluetooth status query instructions, and Bluetooth device scan instructions;
[0049] Accordingly, sending the second request to the in-band program interface to control the in-band software to execute the operation instruction includes:
[0050] When the Bluetooth communication operation command is a Bluetooth enable command, the Bluetooth module of the computing device is powered on and the Bluetooth service is initialized through the in-band program interface.
[0051] When the Bluetooth communication operation command is a Bluetooth shutdown command, the Bluetooth module is powered down and the Bluetooth service is turned off via the in-band program interface.
[0052] When the Bluetooth communication operation command is a Bluetooth status query command, the current Bluetooth status information is obtained through the in-band program interface, so that after receiving the Bluetooth status information, the Bluetooth status information is sent to the external device;
[0053] When the Bluetooth communication operation command is a Bluetooth device scan command, the Bluetooth module is controlled to scan for surrounding Bluetooth devices through the in-band program interface, so that after receiving the scan results, the scan results are sent to the external device.
[0054] This application's embodiments define processing flows for various Bluetooth communication operation commands, including turning on, turning off, status querying, and device scanning. Through these flows, users can remotely manage the Bluetooth module of a computing device via external devices, enabling the activation and deactivation of Bluetooth services, real-time status monitoring, and the detection and scanning of surrounding Bluetooth devices. This provides basic link support for wireless communication between external devices and the BMC, improving the ease with which users can configure the Bluetooth module within the computing device.
[0055] Secondly, embodiments of this application provide an in-band information processing apparatus applied to a baseboard management controller of a computing device. One end of the baseboard management controller is communicatively connected to an external device, and the other end of the baseboard management controller is communicatively connected to the in-band program interface of the computing device. The apparatus includes: a receiving module, a parsing module, a generating module, and a transmitting module.
[0056] The receiving module is used to receive the first request sent by the external device;
[0057] The parsing module is used to parse the first request in order to determine the operation instruction corresponding to the first request;
[0058] The generation module is used to generate a second request compatible with the in-band program interface according to the operation instructions;
[0059] The sending module is used to send the second request to the in-band program interface to control the in-band software to execute the operation instructions.
[0060] In one possible implementation, the generation module is specifically used for:
[0061] Obtain a preset first mapping relationship; wherein the preset first mapping relationship is used to characterize the correspondence between operation instructions and corresponding first protocol commands, and the first protocol commands are compatible with the in-band program interface;
[0062] According to the operation instructions, a matching process is performed in the preset first mapping relationship to obtain the second request.
[0063] In one possible implementation, the baseboard management controller and the in-band program interface establish a communication link via the intelligent platform management interface protocol or the hypertext transfer security protocol.
[0064] When the communication link is established based on the intelligent platform management interface protocol, the first protocol command is an intelligent platform management interface protocol command; or, when the communication link is established based on the Hypertext Transfer Security Protocol, the first protocol command is a Hypertext Transfer Security Protocol command.
[0065] In one possible implementation, the baseboard management controller is connected to the external device via a wired or wireless connection;
[0066] The wired method includes one of serial port, universal asynchronous transceiver, and universal serial bus, and the wireless method includes Bluetooth.
[0067] In one possible implementation, when the baseboard management controller is connected to the external device via a serial port, the preset first mapping relationship includes the mapping relationship between serial port commands and first protocol commands;
[0068] When the baseboard management controller is connected to the external device via a universal asynchronous transceiver, the preset first mapping relationship includes the mapping relationship between universal asynchronous transceiver commands and first protocol commands;
[0069] When the baseboard management controller is connected to the external device via a universal serial bus, the preset first mapping relationship includes the mapping relationship between universal serial bus commands and first protocol commands;
[0070] When the baseboard management controller is connected to the external device via Bluetooth, the preset first mapping relationship includes the mapping relationship between Bluetooth commands and first protocol commands.
[0071] In one possible implementation, the parsing module is specifically used for:
[0072] Identify the protocol type of the first request; wherein the protocol type includes serial port protocol, Universal Asynchronous Receiver / Transmitter protocol, Universal Serial Bus protocol or Bluetooth protocol;
[0073] According to the protocol type, the first request is unpacked using the corresponding parsing rules to obtain the operation instructions.
[0074] In one possible implementation, the external device includes the display device and / or terminal device of the computing device.
[0075] In one possible implementation, the operation instructions include at least one of in-band information query instructions, wireless network operation instructions, and Bluetooth communication operation instructions.
[0076] In one possible implementation, the operation instructions include in-band information query instructions;
[0077] Accordingly, after the sending module sends the second request to the in-band program interface, the above-mentioned apparatus further includes a processing module for:
[0078] Receive the information query results returned by the in-band program interface;
[0079] The information query result is sent to the external device so that the external device can display the information query result.
[0080] In one possible implementation, the in-band information query instruction includes at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction.
[0081] In one possible implementation, the operation instructions include wireless network operation instructions; the wireless network operation instructions include at least one of wireless network configuration instructions, wireless network query instructions, wireless network enable instructions, and wireless network disable instructions.
[0082] Accordingly, the sending module is specifically used for:
[0083] When the wireless network operation command is a wireless network configuration command, the in-band program is controlled through the in-band program interface to complete the wireless network configuration, so that after successful configuration, the external device can communicate directly with the in-band program through the wireless network.
[0084] When the wireless network operation command is a wireless network query command, wireless network information is obtained through the in-band program interface, so that after receiving the wireless network information, the wireless network information is sent to the external device;
[0085] When the wireless network operation command is a wireless network enable command or a wireless network disable command, the in-band program is controlled through the in-band program interface to perform the corresponding enable or disable operation.
[0086] In one possible implementation, the operation instructions include Bluetooth communication operation instructions; the Bluetooth communication operation instructions include at least one of Bluetooth turn-on instructions, Bluetooth turn-off instructions, Bluetooth status query instructions, and Bluetooth device scan instructions;
[0087] Accordingly, the sending module is specifically used for:
[0088] When the Bluetooth communication operation command is a Bluetooth enable command, the Bluetooth module of the computing device is powered on and the Bluetooth service is initialized through the in-band program interface.
[0089] When the Bluetooth communication operation command is a Bluetooth shutdown command, the Bluetooth module is powered down and the Bluetooth service is turned off via the in-band program interface.
[0090] When the Bluetooth communication operation command is a Bluetooth status query command, the current Bluetooth status information is obtained through the in-band program interface, so that after receiving the Bluetooth status information, the Bluetooth status information is sent to the external device;
[0091] When the Bluetooth communication operation command is a Bluetooth device scan command, the Bluetooth module is controlled to scan for surrounding Bluetooth devices through the in-band program interface, so that after receiving the scan results, the scan results are sent to the external device.
[0092] Thirdly, embodiments of this application provide a computing device, which includes a memory and a processor;
[0093] Memory and processor are coupled;
[0094] Memory is used to store program instructions;
[0095] The processor is used to invoke program instructions to cause the computing device to perform in-band information processing methods as described in the first aspect and any possible implementation.
[0096] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by an electronic device, are used to implement the in-band information processing method as described in the first aspect and any possible implementation.
[0097] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by an electronic device, implements the in-band information processing method involved in the first aspect and any possible implementation.
[0098] The in-band information processing method and computing device provided in this application embodiment allow an external device to send a first request corresponding to an in-band program to the BMC via a connection. The BMC acts as a protocol conversion bridge between the external device and the in-band program, parsing the first request to extract operation instructions and generating a second request compatible with the in-band program interface. This enables protocol interoperability between the external device and the in-band program, completing their interaction. Because the BMC can uniformly convert requests from different external devices and different protocol types into requests compatible with the in-band program interface, users do not need to concern themselves with underlying protocol details or be limited by specific physical interfaces. They can configure, monitor, and maintain the in-band program using any external device of their choice. The ability to view and operate in-band information via different external devices improves the convenience of viewing or operating in-band information, thereby enhancing the user experience. Attached Figure Description
[0099] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0100] Figure 1 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 1 ;
[0101] Figure 2 A flowchart illustrating the in-band information processing method provided in this application embodiment. Figure 1 ;
[0102] Figure 3 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 2 ;
[0103] Figure 4 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 3 ;
[0104] Figure 5 This is a schematic diagram of the interface of a display device provided in an embodiment of this application;
[0105] Figure 6 This is a schematic diagram of the structure of a baseboard management controller 11 provided in an embodiment of this application;
[0106] Figure 7 A schematic diagram of an in-band information processing device provided in an embodiment of this application;
[0107] Figure 8 A schematic diagram of the structure of a computing device provided in this application embodiment. Figure 1 ;
[0108] Figure 9 A schematic diagram of the structure of a computing device provided in this application embodiment. Figure 2 . Detailed Implementation
[0109] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with those of this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the embodiments of this application as detailed in the appended claims.
[0110] Existing in-band information processing methods suffer from the technical problem that users cannot easily view or manipulate in-band information, impacting user experience. To address this issue, the in-band information processing method and computing device provided in this application involve an external device connecting to a BMC (Band Control Controller) to send a first request corresponding to an in-band program to the BMC. The BMC acts as a protocol conversion bridge between the external device and the in-band program, parsing the first request to extract operation instructions and generating a second request compatible with the in-band program interface. This enables protocol interoperability between the external device and the in-band program, facilitating interaction between them. Ultimately, this allows users to conveniently process in-band information.
[0111] The following is combined Figure 1 The application scenarios involved in the embodiments of this application will be described.
[0112] Figure 1 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 1 .like Figure 1 As shown, the in-band information processing system includes a baseboard management controller 11, an external device 12, and an in-band program interface 13.
[0113] The baseboard management controller 11 is an out-of-band management chip independent of the main processor in a computing device (such as a server, embedded device, or industrial equipment), used for remote monitoring and management of the computing device. Both the baseboard management controller 11 and the in-band program interface 13 can be integrated into the same computing device.
[0114] Specifically, the baseboard management controller 11 is physically connected to the main processor of the computing device via an internal bus. In-band programs (such as operating systems, drivers, or applications) running on the main processor can interact with the baseboard management controller 11 via this internal bus through their respective drivers. For ease of description, this embodiment refers to the software function modules or communication channels used by the in-band programs to access the baseboard management controller 11 as the in-band program interface 13. This in-band program interface 13 can receive requests sent by the baseboard management controller 11 and invoke the in-band programs to perform corresponding operations.
[0115] Optionally, the in-band program interface 13 can be implemented in the form of an application programming interface (API), system call, shared memory, message queue, or socket. The communication between the baseboard management controller 11 and the in-band program interface 13 is bidirectional. The baseboard management controller 11 can send requests to the in-band program interface 13, and the in-band program interface 13 can also return response data to the baseboard management controller 11.
[0116] Optionally, the in-band program interface 13 is created by in-band program initialization during the startup of the computing device and remains available during the operation of the computing device.
[0117] Optionally, the external device 12 can be a device inside the computing device but independent of the baseboard management controller 11, such as a local display screen, Bluetooth module, etc.; the external device 12 can also be a terminal device independent of the computing device that can communicate with the computing device, such as a mobile phone, tablet computer, laptop computer or mobile application, etc.
[0118] Optionally, the baseboard management controller 11 can be connected to the external device 12 via a wired or wireless connection. Wired connections may include a serial port, USB, or a Universal Asynchronous Receiver / Transmitter (UART); wireless connections may include Bluetooth. The baseboard management controller 11 communicates with the in-band programmable interface 13 via the computing device's internal bus and can use IPMI or HTTPS for data exchange.
[0119] In this system, external device 12 sends a first request to board management controller 11, which corresponds to an operation that the user wishes to perform on the in-band program. Upon receiving the first request, board management controller 11 parses it to determine the corresponding operation instruction. Then, based on the operation instruction, board management controller 11 generates a second request compatible with in-band program interface 13 and sends the second request to in-band program interface 13, thereby controlling the in-band program to execute the operation instruction.
[0120] In this way, the baseboard management controller 11 acts as a protocol conversion bridge between the external device 12 and the in-band program. It can uniformly convert first requests from different external devices and different protocol types into second requests compatible with the in-band program interface 13, thus realizing protocol interoperability between the external device and the in-band program. Users do not need to pay attention to the details of the underlying protocol, nor are they limited by specific physical interfaces. They can configure, monitor, and maintain the in-band program through any external device of their choice, thereby improving the convenience for users to view or operate in-band information and enhancing the user experience.
[0121] Understandable, Figure 1 This illustration only schematically shows the logical structure of the in-band information processing system. In actual implementation, the number of the baseboard management controller 11 and external devices 12 can be configured according to actual needs. For example, multiple external devices 12 may be connected to the baseboard management controller 11 simultaneously. This application embodiment does not specifically limit this. Furthermore, the communication protocol between the baseboard management controller 11 and the external devices 12 is not limited to the types listed above; any communication protocol capable of data interaction can be applied to this application embodiment. The type of internal bus between the baseboard management controller 11 and the main processor is also not limited to the types listed above; any internal bus capable of data interaction between the baseboard management controller 11 and the main processor can be applied to this application embodiment. The in-band program interface 13 serves as a software functional module or communication channel, and its specific implementation form (such as application programming interface, system call, shared memory, message queue, socket, etc.) is not limited to the types listed above. This application embodiment does not specifically limit this.
[0122] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the architecture of an in-band information processing system. In other feasible embodiments of this application, the above architecture may include more or fewer components than illustrated, or combine some components, or split some components, or arrange different components, which can be determined according to the actual application scenario and is not limited here. Figure 1 The components shown can be implemented in hardware, software, or a combination of both.
[0123] Furthermore, the network architecture and business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0124] Figure 2 A flowchart illustrating the in-band information processing method provided in this application embodiment. Figure 1 ,like Figure 2 As shown, embodiments of this application provide an in-band information processing method. The execution entity of these embodiments can be the baseboard management controller of a computing device, for example... Figure 1 The baseboard management controller 11 is described in detail below:
[0125] S201: Receive the first request sent by the external device.
[0126] Optionally, external devices include display devices and / or terminal devices of the computing device.
[0127] Exemplary, Figure 3 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 2 ,exist Figure 1 On this basis, Figure 3 The external device 12 includes a terminal device 121, which is connected to the baseboard management controller 11 via a Bluetooth module 122.
[0128] Optionally, the Bluetooth module 122 can be connected to the baseboard management controller 11 via a USB interface, a UART interface, or by being integrated into the baseboard management controller 11. This application embodiment does not limit the specific connection method between the Bluetooth module 122 and the baseboard management controller 11.
[0129] In one possible implementation, the terminal device 121 can be a mobile phone, tablet computer, laptop computer, smartwatch, or other wearable device.
[0130] Optionally, the first request initiated by the terminal device 121 can be based on a mobile application (APP). The user can trigger the generation and sending of the first request by opening the mobile APP and selecting the corresponding operation options on the APP interface, such as "view CPU usage", "configure wireless network (Wireless Fidelity, WiFi)" or "turn on Bluetooth".
[0131] Exemplary, Figure 4 A schematic diagram of the structure of an in-band information processing system provided in this application embodiment. Figure 3 ,exist Figure 1 On this basis, Figure 4 The external device 12 includes a display device 123, which is connected to the baseboard management controller 11 via a Universal Asynchronous Receiver / Transmitter (UART) interface, a serial port, or a Universal Serial Bus (USB) interface.
[0132] Optionally, the display device 123 can be a touch screen or a non-touch screen. When the display device 123 is a touch screen, the user can trigger the first request through touch operation; when the display device 123 is a non-touch screen, the user can trigger the first request through buttons (such as directional keys, confirmation keys, back keys, etc.) associated with the display device 123.
[0133] Here, the external device in this application embodiment can be a display device integrated into a computing device or a terminal device capable of communicating with the computing device. The display device can be a local display screen directly connected to the computing device, suitable for on-site management scenarios; the terminal device can be any terminal device such as a mobile phone, wherein the mobile phone may have a built-in application or connect to a remote terminal device via Bluetooth, suitable for remote wireless management scenarios. By simultaneously supporting both types of devices, this application embodiment satisfies both the needs of on-site maintenance personnel operating through a local display screen and the needs of operation and maintenance personnel for remote management via mobile phones, covering different usage scenarios and improving the flexibility of in-band information processing.
[0134] Specifically, the BMC receives the first request sent by the external device through its communication link with the external device.
[0135] Optionally, the first request may be an original request generated by an external device based on user actions, used to request an in-band program to perform a specific operation.
[0136] Optionally, the user may trigger the first request through at least one of the following methods: clicking on the interface of a mobile app; touching the touchscreen; pressing a physical button; inputting a voice command; or triggering an automatic operation by scanning a QR code. This application embodiment does not limit the specific method by which the user triggers the first request.
[0137] Optionally, the first request can be carried in different physical channels and protocol formats. For example, when an external device connects to the BMC via a serial port, the first request can be a command conforming to the serial port protocol; when an external device connects to the BMC via Bluetooth, the first request can be a data packet conforming to the Bluetooth protocol; when the external device is a local display screen, the first request can be an instruction input by the user via a touchscreen or buttons. This application embodiment does not limit the specific connection method between the external device and the BMC or the specific protocol format of the first request.
[0138] S202: Parse the first request to determine the operation instruction corresponding to the first request.
[0139] In one possible implementation, parsing the first request to determine the operation instruction corresponding to the first request includes: identifying the protocol type of the first request; and unpacking the first request according to the protocol type using the corresponding parsing rules to obtain the operation instruction.
[0140] The protocol types include serial port protocols, Universal Asynchronous Receiver / Transmitter protocols, Universal Serial Bus protocols, or Bluetooth protocols.
[0141] In this embodiment, the protocol type of the first request is identified, and the corresponding parsing rules are used for unpacking based on the identification result. Since different protocols have different message formats and encapsulation methods, by automatically identifying the protocol type and adapting the parsing rules, the BMC can correctly extract operation instructions without manual configuration by the user. This achieves multi-protocol adaptive parsing, ensuring that requests sent by external devices can be correctly parsed and processed regardless of the protocol used, thus improving the accuracy and efficiency of in-band program control.
[0142] In one possible implementation, the baseboard management controller is connected to external devices via a wired or wireless means; the wired means include one of a serial port, a universal asynchronous transceiver, and a universal serial bus, and the wireless means include Bluetooth.
[0143] In one possible implementation, the connection between the baseboard management controller and the external device can be a fixed connection (e.g., a direct connection via cable) or a temporary connection (e.g., temporary pairing via Bluetooth or WiFi). This application does not limit the persistence of the connection.
[0144] In one possible implementation, the baseboard management controller can simultaneously support multiple connection methods and automatically select the optimal connection method based on factors such as the type of external device, communication distance, power consumption requirements, and data transmission rate. For example, when the external device is a mobile phone and is close to the server, the baseboard management controller can prioritize Bluetooth connection to reduce power consumption; when the external device is far away, the baseboard management controller can switch to WiFi connection to ensure communication stability. This application does not limit the connection method selection strategy.
[0145] In one possible implementation, the baseboard management controller can automatically switch to another available connection method when one connection method fails. For example, when a Bluetooth connection is lost due to interference, the baseboard management controller can automatically attempt to re-establish the connection via WiFi or serial port to ensure uninterrupted communication between the external device and the baseboard management controller. This connection redundancy mechanism improves system reliability.
[0146] In one possible implementation, the baseboard management controller can simultaneously establish connections with multiple external devices, which can employ the same or different connection methods. For example, the baseboard management controller can simultaneously connect to a mobile phone via Bluetooth, a local debugging terminal via a serial port, and a USB flash drive. This application does not limit the number of external devices connected simultaneously or the combination of connection methods.
[0147] Here, this application embodiment supports both wired and wireless connections between the BMC and external devices. Since there is no limitation on the specific connection method, users can choose the most suitable method according to the actual scenario, such as using a serial port connection for close-range debugging and a Bluetooth wireless connection for remote operation. This further enhances the flexibility and convenience of user operation, making the access of external devices no longer limited to specific physical interfaces, thus improving the flexibility of user operation.
[0148] Optionally, the BMC parses the received first request and extracts operation instructions decoupled from the specific protocol. These operation instructions are semantically abstract instructions, such as "query CPU usage", "set wireless network name and password", and "turn on Bluetooth module", which do not depend on a specific communication protocol format.
[0149] In one possible implementation, the BMC first identifies the protocol type of the first request. For example, the BMC can determine whether the protocol used by the first request is a serial port protocol, a Universal Serial Bus protocol, a Universal Asynchronous Receiver / Transmitter (UART) protocol, or a Bluetooth protocol based on the message format, header identifier, or transmission channel of the first request. Then, the BMC uses the corresponding parsing rules to unpack the first request according to the identified protocol type, stripping the protocol encapsulation and extracting the payload to obtain the operation instructions. Specifically, after receiving the first request, the BMC first identifies the protocol type of the first request. Protocol types include, but are not limited to, serial port protocols, Universal Asynchronous Receiver / Transmitter (UART) protocols, Universal Serial Bus (USB) protocols, or Bluetooth protocols. The BMC calls the corresponding parsing rules to unpack the first request according to the identified protocol type. For example, if the first request is a serial port protocol data packet, it is parsed according to the frame format of the serial port protocol to extract the opcode and parameters; if the first request is a Bluetooth protocol data packet, it is parsed according to the ATT (Attribute Protocol) or GATT (General Attribute Protocol) format of the Bluetooth protocol. The parsed operation commands can be in-band information query commands, wireless network operation commands, Bluetooth communication operation commands, etc.
[0150] In a specific example, an external device sends a first request via a serial port. The raw data of this first request is "0x01 0x02 0x03". After the BMC identifies the protocol type as a serial port protocol, it parses "0x01" into an opcode (indicating a query for CPU utilization) and "0x02 0x03" into parameters (indicating the CPU core number to be queried) according to the preset serial port protocol parsing rules. Thus, the BMC determines the operation instruction to be "query the utilization of CPU core 2".
[0151] In another specific example, when the first request is a Bluetooth protocol data packet, the BMC unpacks it according to the Bluetooth protocol format, extracts the operation fields, and obtains operation commands such as "ENABLE_WIFI" or "GET_CPU_USAGE". When the first request is a serial port protocol command, the BMC parses it according to the serial port protocol format and obtains operation commands with the same semantics. Through the above parsing process, regardless of the physical channel from which the first request comes or the protocol format used, the BMC can uniformly extract operation commands unrelated to the protocol.
[0152] In another specific example, the computing device is equipped with a touch display screen, which can be connected to the baseboard management controller (BMC) via a UART interface. When the external device is a touch display screen, the user clicks the "View Hardware Status" icon on the screen, and the screen generates a corresponding first request, which is then sent to the BMC via the UART interface. After recognizing that the protocol type of the first request is UART, the BMC parses it according to the UART protocol format and extracts the operation command "Query Hardware Status".
[0153] S203: Based on the operation instructions, generate a second request compatible with the in-band program interface.
[0154] Optionally, the BMC generates a second request that can be recognized by the in-band program interface based on the parsed operation instructions. Since the BMC and the in-band program interface use a specific communication protocol, and the first request sent by the external device usually does not conform to these protocol formats, protocol conversion is required.
[0155] In one possible implementation, generating a second request compatible with the in-band program interface according to the operation instruction includes: obtaining a preset first mapping relationship; and performing matching processing in the preset first mapping relationship according to the operation instruction to obtain the second request.
[0156] The preset first mapping relationship is used to characterize the correspondence between operation instructions and corresponding first protocol commands.
[0157] Optionally, the preset first mapping relationship can be stored in the non-volatile memory of the baseboard management controller in the form of a look-up table (LUT), key-value pairs, mapping array, hash table, or configuration file. The baseboard management controller loads the mapping relationship at startup and performs a fast matching lookup according to operation instructions during runtime. This application embodiment does not limit the specific storage format and data structure of the first mapping relationship.
[0158] In one possible implementation, the preset first mapping relationship can be static, i.e., pre-configured and fixed in the baseboard management controller; or it can be dynamic, i.e., the baseboard management controller can update or adjust the mapping relationship in real time according to the system operating status, external device type, or user configuration. For example, when the baseboard management controller detects a new external device type, it can dynamically obtain the command mapping rule corresponding to that device type by interacting with the in-band program and add it to the first mapping relationship. This application does not limit the static or dynamic characteristics of the first mapping relationship.
[0159] In one possible implementation, the preset first mapping relationship can be updated through at least one of the following methods: online update via a management terminal (such as a web management interface or command line interface), batch update via firmware upgrade package, update uploaded via an external device (such as a USB flash drive or mobile APP), or update remotely pushed via a cloud server. This application embodiment does not limit the method of updating the first mapping relationship.
[0160] In one possible implementation, the baseboard management controller and the in-band program interface establish a communication link via the Smart Platform Management Interface Protocol (SMPIP) or the Hypertext Transfer Security Protocol (HTTP). When the communication link is established based on the SMPIP, the first protocol command is an SMPIP command; or, when the communication link is established based on the HTTP / 10 protocol, the first protocol command is an HTTP / 10 protocol command.
[0161] In this embodiment, the BMC and the in-band program interface establish a communication link via the Intelligent Platform Management Interface Protocol (IPMI) or Hypertext Transfer Protocol Secure (HTTPS). To adapt to different communication links, this embodiment sets different first protocol commands. IPMI is a standard protocol in the server management field, and HTTPS is a security standard for internet communication; both are widely supported by the in-band program interface. Therefore, the generated second request can be correctly identified and parsed by the in-band program interface, adapting to different computing device scenarios and enabling users to conveniently view and operate in-band information on different computing devices.
[0162] In one possible implementation, when the baseboard management controller is connected to an external device via a serial port, the preset first mapping relationship includes a mapping relationship between serial port commands and first protocol commands; when the baseboard management controller is connected to an external device via a universal asynchronous transceiver (UART), the preset first mapping relationship includes a mapping relationship between UART commands and first protocol commands; when the baseboard management controller is connected to an external device via a universal serial bus (USB), the preset first mapping relationship includes a mapping relationship between USB commands and first protocol commands; when the baseboard management controller is connected to an external device via Bluetooth, the preset first mapping relationship includes a mapping relationship between Bluetooth commands and first protocol commands.
[0163] In one possible implementation, the mapping relationship can also be a one-to-many mapping relationship, that is, one operation command can be mapped to multiple first protocol commands according to different contexts or parameters. For example, the operation command "Configure Network" can be mapped to different IPMI commands such as "Set WiFi Config" or "Set Ethernet Config" according to the configuration type (Wireless Fidelity configuration or wired network configuration). This application does not limit the specific type of mapping relationship (one-to-one, one-to-many, many-to-one, many-to-many) in its embodiments.
[0164] In one possible implementation, the first mapping relationship may further include parameter conversion rules. Since parameter formats may differ between different protocols (for example, parameters in serial port commands may be in binary form, while parameters in IPMI commands may be in hexadecimal form), when mapping operation instructions to first protocol commands, the baseboard management controller also needs to convert the format of the parameters in the operation instructions according to preset parameter conversion rules. For example, converting the decimal parameter "65" in the serial port command to the hexadecimal parameter "0x41" in the IPMI command. This application embodiment does not limit the specific content of the parameter conversion rules.
[0165] This application establishes corresponding mapping relationships for different connection methods, including mappings between serial port commands, Universal Asynchronous Receiver / Transmitter commands, Universal Serial Bus commands, and Bluetooth commands and the first protocol commands. Through this differentiated mapping configuration, regardless of how external devices connect, the BMC can uniformly convert commands from different physical channels into an in-band program interface recognizable format. This enables unified protocol conversion across multiple heterogeneous physical interfaces, resolving compatibility issues caused by interface differences and thereby improving the convenience of in-band program control for users in various application scenarios.
[0166] This application embodiment pre-configures the mapping relationship between operation instructions and first protocol commands compatible with in-band program interfaces in the BMC. When the operation instruction in the first request sent by the external device is parsed, the conversion from semantic layer operation instructions to specific protocol commands can be automatically completed through this pre-configured relationship, without manual intervention or the development of separate adaptation programs for different external devices. This not only improves the efficiency and accuracy of command conversion but also allows the BMC to flexibly support various types of operation instructions, further enhancing the convenience and efficiency of users viewing and operating in-band information.
[0167] In some embodiments, when the operation instruction is "Query CPU Usage", the BMC matches the corresponding Smart Platform Management Interface Protocol (SMPIP) command "Get CPU Usage" in the first mapping relationship and encapsulates the command into a second request conforming to the SMPIP protocol. When the operation instruction is "Set WiFi Password", the BMC matches the corresponding SMPIP command "Set WiFi Password" and generates the corresponding second request.
[0168] In some embodiments, when the operation instruction is "query memory usage", the BMC matches the corresponding IPMI command "Get Memory Usage" in the first mapping relationship and generates a second request that conforms to the IPMI protocol; when the operation instruction is "reboot system", the BMC matches the corresponding IPMI command "Chassis Reset" and generates the corresponding second request.
[0169] Optionally, when the BMC communicates with the in-band application interface using the Hypertext Transfer Protocol Secure (HTTP), the second request can be a request message conforming to HTTP, such as an HTTP POST request or an HTTP GET request. For example, when the operation instruction is "Query system log", the BMC can generate an HTTPS GET request with a Uniform Resource Locator (URL) of "https: / / in-band application interface address / api / systemlog" as the second request.
[0170] In this way, BMC converts operation commands from different external devices and different protocol types into a unified second request that can be recognized by the in-band program interface.
[0171] Furthermore, the first mapping relationship can vary depending on the connection method. For example, when the external device connects via a serial port, the first mapping relationship is a mapping between serial port commands and first protocol commands; when the external device connects via Bluetooth, the first mapping relationship is a mapping between Bluetooth commands and first protocol commands. The BMC selects the corresponding first mapping relationship for matching based on the current connection method of the external device.
[0172] Optionally, parsing the first request to determine the corresponding operation instruction may also include the following methods: rule engine-based parsing: BMC has a built-in rule engine that matches and parses the first request according to a predefined parsing rule library; machine learning-based parsing: BMC classifies and parses the first request using a trained model and adaptively learns new protocol formats; and plug-in architecture-based parsing: BMC supports dynamically loading parsing plugins, so when new protocol types need to be supported, there is no need to upgrade the BMC firmware; only the corresponding parsing plugin needs to be loaded.
[0173] This application does not limit the specific parsing method of the first request in the embodiments. Any method that can extract operation instructions from the first request can be applied to the embodiments of this application.
[0174] S204: Send the second request to the in-band program interface to control the in-band software to execute operation instructions.
[0175] Specifically, the BMC sends the generated second request to the in-band programming interface. Upon receiving the second request, the in-band programming interface parses it and calls the corresponding in-band program to execute the operation instructions.
[0176] Optionally, when the second request is an IPMI query for Central Processing Unit (CPU) utilization, the in-band program interface forwards the command to the in-band program (such as the operating system). After obtaining the CPU utilization data, the in-band program returns it to the BMC through the in-band program interface. The BMC then sends the returned result to an external device for display, thus completing a full information query operation.
[0177] Optionally, when the second request is an IPMI command to query hardware status, the in-band program interface forwards the command to the in-band program. After obtaining the hardware status information (such as temperature, voltage, fan speed, etc.), the in-band program returns it to the BMC through the in-band program interface. The BMC then sends the returned result to an external device for display.
[0178] Optionally, when the second request is an IPMI command to configure the wireless network, the in-band program interface forwards the command to the in-band program. The in-band program completes the wireless network configuration based on the wireless network name and password in the command and returns the configuration result. After successful configuration, external devices can communicate directly with the in-band program via the wireless network, without relying on initial connection methods such as Bluetooth or serial port.
[0179] Optionally, when the second request is an IPMI command to turn on the Bluetooth module, the in-band program interface forwards the command to the in-band program. The in-band program then powers on the Bluetooth module and initializes the Bluetooth service, before returning the result. After successful configuration, external devices can establish a communication link with the BMC via Bluetooth.
[0180] Optionally, after executing the operation instructions, the in-band program can return the execution result to the BMC through the in-band program interface. Upon receiving the execution result, the BMC sends it to an external device to provide feedback to the user regarding the success or failure of the operation. For example, when wireless network configuration fails, the BMC can send the reason for the failure (such as incorrect password, network unreachable, etc.) to the external device for notification.
[0181] This application provides a method for operating an in-band program. An external device, connected to the BMC (Band Control Controller), sends a first request corresponding to the in-band program to the BMC. The BMC acts as a protocol conversion bridge between the external device and the in-band program, parsing the first request to extract operation instructions and generating a second request compatible with the in-band program interface. This enables protocol interoperability between the external device and the in-band program, completing their interaction. Because the BMC can uniformly convert requests from different external devices and different protocol types into requests compatible with the in-band program interface, users do not need to concern themselves with underlying protocol details or be limited by specific physical interfaces. They can configure, monitor, and maintain the in-band program using any external device of their choice. The ability to view and operate in-band information via different external devices improves the convenience of viewing or operating in-band information, thereby enhancing the user experience.
[0182] The following describes, in conjunction with specific application scenarios, the in-band information that this application embodiment can provide for convenient processing by users.
[0183] In one possible implementation, the operation instructions include at least one of in-band information query instructions, wireless network operation instructions, and Bluetooth communication operation instructions.
[0184] In this application, users can perform in-band information queries, wireless network operations, or Bluetooth communication operations using the in-band information processing method described in this embodiment. These three command types correspond to the three core scenarios of information viewing, network configuration, and wireless communication in server management. Through this classification, users can initiate corresponding types of operation commands according to actual management needs. The BMC can process the commands accordingly, allowing users to perform various in-band information processing operations through external devices, further improving the convenience of in-band information processing and enhancing its efficiency through various direct controls.
[0185] It should be noted that the above three types of operation commands can be used individually or in combination. For example, a user can first establish a Bluetooth link using a Bluetooth communication operation command, then configure a WiFi network using a wireless network operation command, and finally view the configuration results using an in-band information query command. This application does not limit the order or combination of command types.
[0186] In one possible implementation, the operation instruction includes an in-band information query instruction; correspondingly, after sending the second request to the in-band program interface, the instruction further includes: receiving the information query result returned by the in-band program interface; and sending the information query result to an external device so that the external device can display the information query result.
[0187] In response to in-band information query commands, the BMC in this embodiment can receive the returned query results and send them to an external device for presentation. Thus, users can intuitively view various types of information within the in-band program through an external device without needing to log into a server operating system or use dedicated management software, simplifying the information viewing process and enabling users to quickly and conveniently obtain the in-band information they need.
[0188] Optionally, the information query results can be presented in text form or in a visual form such as charts, dashboards, progress bars, or line graphs. This application embodiment does not limit the specific presentation format of the information query results.
[0189] In one possible implementation, the in-band information query instruction includes at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information (Token) query instruction, task status query instruction, and application status query instruction.
[0190] This application further defines the specific types of in-band information query instructions, including at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction. Through these diverse query instruction types, this application provides users with comprehensive information query capabilities for server management, allowing users to query information from different dimensions as needed. By providing diverse query instructions, comprehensive monitoring of server status is achieved, meeting the needs of operations and maintenance personnel for obtaining various types of operational data and improving the flexibility of users in processing in-band information.
[0191] In one possible implementation, token information may include user authentication tokens, session tokens, or secure access tokens. Task status may include a list of running tasks, task execution progress, task execution results, etc. Application status may include the application's running status, service status, process status, etc. This application embodiment does not limit the specific content of the above information.
[0192] In one possible implementation, the operation instructions include wireless network operation instructions; the wireless network operation instructions include at least one of wireless network configuration instructions, wireless network query instructions, wireless network enable instructions, and wireless network disable instructions; correspondingly, a second request is sent to the in-band program interface to control the in-band software to execute the operation instructions, including: when the wireless network operation instruction is a wireless network configuration instruction, controlling the in-band program through the in-band program interface to complete the wireless network configuration, so that after successful configuration, the external device can communicate directly with the in-band program through the wireless network; when the wireless network operation instruction is a wireless network query instruction, obtaining wireless network information through the in-band program interface, so that after receiving the wireless network information, the wireless network information is sent to the external device; when the wireless network operation instruction is a wireless network enable instruction or a wireless network disable instruction, controlling the in-band program through the in-band program interface to execute the corresponding enable or disable operation.
[0193] This application's embodiments define processing flows for various wireless network operation commands, including configuration, query, enabling, and disabling. Specifically, when a configuration command is issued, the BMC controls the in-band program to complete the wireless network configuration through the in-band program interface. After successful configuration, external devices can communicate directly with the in-band program via the wireless network. This means that users do not need to rely on wired or Bluetooth connections to perform subsequent operations on the in-band program via the wireless network. This achieves a complete closed loop from wireless network configuration to use, improving the convenience of network configuration and the efficiency of subsequent communication.
[0194] In one possible implementation, the operation instructions include Bluetooth communication operation instructions; the Bluetooth communication operation instructions include at least one of Bluetooth turn-on instructions, Bluetooth turn-off instructions, Bluetooth status query instructions, and Bluetooth device scan instructions.
[0195] Accordingly, the second request is sent to the in-band program interface to control the in-band software to perform operation instructions, including: when the Bluetooth communication operation instruction is a Bluetooth turn-on instruction, controlling the Bluetooth module of the computing device to power on and initialize the Bluetooth service through the in-band program interface; when the Bluetooth communication operation instruction is a Bluetooth turn-off instruction, controlling the Bluetooth module to power off and turn off the Bluetooth service through the in-band program interface.
[0196] When the Bluetooth communication operation command is a Bluetooth status query command, the current Bluetooth status information is obtained through the in-band program interface, and the Bluetooth status information is sent to the external device after receiving the Bluetooth status information.
[0197] When the Bluetooth communication operation command is a Bluetooth device scan command, the Bluetooth module is controlled to scan for surrounding Bluetooth devices through the in-band program interface, and the scan results are sent to external devices after being received.
[0198] This application's embodiments define processing flows for various Bluetooth communication operation commands, including turning on, turning off, status querying, and device scanning. Through these flows, users can remotely manage the Bluetooth module of a computing device via external devices, enabling the activation and deactivation of Bluetooth services, real-time status monitoring, and the detection and scanning of surrounding Bluetooth devices. This provides basic link support for wireless communication between external devices and the BMC, improving the ease with which users can configure the Bluetooth module within the computing device.
[0199] The following is combined Figure 4 Taking display device 123 as a touch screen as an example, this paper provides a detailed explanation of the in-band information query scenario.
[0200] In one possible implementation, the BMC (Baseboard Management Controller 11) supports full lifecycle management of the display device. Specifically, the BMC supports at least one of the following display management functions: display presence detection, screen on / off control, screen off control, fault diagnosis, firmware upgrade, and configuration management. Furthermore, the BMC also supports management of the content displayed on the screen and supports obtaining information such as hardware status, CPU usage, memory usage, token information, and task status from in-band programs for presentation on the display screen.
[0201] In one possible implementation, the display screen can be initialized and its status controlled. The specific management process is as follows:
[0202] Step 3.1: Display screen initialization. The BMC initializes the display screen device, starts the display screen service, and starts listening for UART interface data to receive commands from the display screen.
[0203] Step 3.2, Computing device power-off state. When the computing device is powered off, the BMC controls the display screen to remain black to save power.
[0204] Step 3.3: Computing device powered on but no communication link established. When the computing device is powered on, but the BMC has not yet established a communication link with the in-band program, the BMC control display shows the boot screen (e.g., displaying the brand logo, boot progress, etc.) to inform the user that the computing device is starting up.
[0205] Step 3.4: Establish a heartbeat link. The BMC and the in-band program establish a communication link via IPMI commands or IPMI heartbeat messages. After the heartbeat link is established, the BMC and the in-band program can exchange data normally.
[0206] Step 3.5: Presenting the Home Page Interface. After the heartbeat link is successfully established, the BMC control display shows the home page interface. The BMC obtains system status information from the in-band program via IPMI commands. The home page interface can include a system status overview (such as health status, CPU usage, memory usage, etc.) and various function entries (such as hardware information, performance monitoring, Bluetooth management, WiFi management, power management, etc.).
[0207] In one possible implementation, users can query product and hardware information, hardware status, performance information, task status, etc., through the display screen. The specific process is as follows:
[0208] Step 4.1: Interface Switching. The user switches to the corresponding information display interface on the screen, for example, by clicking the "Hardware Status" icon.
[0209] Step 4.2, Instruction Issuance. The display screen generates corresponding instructions based on user operations and sends them to the BMC via the UART interface.
[0210] Step 4.3, Information Acquisition. After receiving the command from the display screen, the BMC retrieves the corresponding information from the in-band program via the IPMI command. For example, when the user queries the hardware status, the BMC sends an IPMI command to the in-band program to obtain hardware status information such as CPU temperature, system voltage, and fan speed; when the user queries performance information, the BMC obtains performance data such as CPU utilization and memory utilization; when the user queries the task status, the BMC obtains the list of currently running tasks and their status.
[0211] Step 4.4, Information Aggregation and Push. The BMC aggregates its own out-of-band information (such as its own firmware version, system event logs, etc.) and information obtained from in-band programs, and pushes it to the display screen. After receiving the information, the display screen presents the corresponding interface, displaying the information in the form of lists, charts, or dashboards.
[0212] In one possible implementation, this application embodiment can also be configured with step 4.5, dynamic curve refresh. When a user views the trend of CPU usage or memory usage, the BMC can periodically (e.g., every 2 seconds) retrieve data from the in-band program and push it to the display screen. The display screen refreshes the values of the corresponding area in the form of a curve, presenting a dynamic moving effect, allowing the user to intuitively observe the historical trend of the data.
[0213] In one possible implementation, the user can manage the Bluetooth module of the computing device via the display screen. The specific process is as follows:
[0214] Step 5.1: Switch to the Bluetooth management interface. The user switches to the Bluetooth management interface on the display screen, which generates the corresponding command and sends it to the BMC. After receiving the command, the BMC pushes the refreshed Bluetooth information interface to the display screen for display. The Bluetooth information interface may include Bluetooth on / off status, a list of paired devices, and a list of nearby scannable devices.
[0215] Step 5.2: Turn Bluetooth on or off. The user triggers a Bluetooth on / off operation on the display screen (e.g., clicking the Bluetooth switch icon). The display screen sends the corresponding operation command to the BMC. After receiving the command, the BMC controls the Bluetooth module to perform the corresponding on / off operation through the in-band program interface. After the operation is completed, the BMC pushes a refreshed Bluetooth status icon to the display screen, and the Bluetooth icon on the display screen displays the corresponding status (e.g., blue indicates Bluetooth is on, gray indicates Bluetooth is off).
[0216] In one possible implementation, the user can manage the WiFi module of the computing device via a display screen. The specific process is as follows:
[0217] Step 5.3: Switch to the wireless network management interface. The user switches to the wireless network management interface on the display screen, which generates the corresponding command and sends it to the BMC. After receiving the command, the BMC obtains the current wireless network information (such as WiFi name, signal strength, Internet Protocol address, enable status, etc.) from the in-band program via IPMI commands, and pushes the refreshed wireless network information interface to the display screen for display.
[0218] Step 5.4, Wireless Network Configuration. The user triggers a wireless network configuration operation on the display screen (e.g., selecting the target WiFi network and entering the password). The display screen sends the configuration instructions (including the WiFi name and password) to the BMC. Upon receiving the instructions, the BMC sends the corresponding operation to the in-band program via IPMI command. The in-band program completes the wireless network configuration according to the configuration instructions and sends the configuration result back to the BMC via IPMI command. The BMC pushes a refreshed wireless network information interface to the display screen based on the feedback result, such as displaying "Configuration successful" or "Configuration failed, please check the password".
[0219] In one possible implementation, the user can manage the power of the computing device through a display screen. Taking the power-down operation of the computing device as an example, the specific process is as follows:
[0220] Step 5.5: Switch to the power management interface. The user switches to the power management interface on the display screen, which generates the corresponding command and sends it to the BMC. After receiving the command, the BMC pushes the power management interface to the display screen for display. The power management interface may include operation options such as "Power Down", "Reboot", and "Power On".
[0221] Step 5.6: Trigger the power-down operation. The user triggers the power-down operation on the display screen (e.g., by clicking the "Power Down" button). The display screen sends the power-down command to the BMC.
[0222] Step 5.7, Password Verification. After receiving the power-off command, the BMC pushes a pop-up administrator password input interface to the display screen. The user enters the administrator password on the display screen and clicks confirm. The display screen then sends the password information to the BMC.
[0223] Step 5.8: Password Verification and Power-Off Execution. After obtaining the password information, the BMC notifies the in-band program to perform password verification via IPMI command. The in-band program verifies the password's accuracy and determines whether power-off is permitted (e.g., checking for any critical tasks currently running). The verification result is fed back to the BMC via IPMI command.
[0224] Step 5.9, Result Feedback and Shutdown Display. After receiving the feedback result, the BMC pushes the corresponding information to the display screen:
[0225] If the verification fails or power-off is not allowed, the display will show "Power-off failed" and the reason for the failure (such as "Incorrect password" or "There is a running task").
[0226] If the verification is successful and power-off is permitted, the display will show "Power-off successful, system will shut down soon". After waiting for a preset time (e.g., 5 or 10 seconds), the BMC will push the shutdown screen to the display, showing the shutdown screen.
[0227] Step 5.10, Screen Off Control. After power-down, the BMC controls the display to turn off to save power.
[0228] Through the above display screen management process, users can perform operations such as information query, Bluetooth management, wireless network management, and power management on computing devices via the touch screen, achieving a convenient local visual management experience.
[0229] In conjunction with the aforementioned display screen, exemplarily, Figure 5 This is a schematic diagram of the interface of a display device provided in an embodiment of this application, such as... Figure 5 As shown, the embodiments of this application can realize the querying of various in-band information. It is understood that... Figure 5 This is merely illustrative; the embodiments of this application do not impose specific limitations on the specific interface display format.
[0230] In one possible implementation, Figure 5 The interface shown may include at least one of the following areas: a status overview area (displaying system health status, CPU usage, memory usage, etc.), a function menu area (providing entry points for functions such as hardware information, performance monitoring, Bluetooth management, WiFi management, and power management), and a detailed information display area (showing the specific content of the function selected by the user). This application embodiment does not limit the specific layout of the interface.
[0231] The following is combined Figure 3 Taking display device 123 as a terminal device (e.g., a wireless network configuration scenario implemented through a mobile APP) as an example, the wireless network configuration scenario in this application embodiment will be described in detail.
[0232] like Figure 3 As shown, the in-band information processing system also includes a wireless network module 14. This wireless network module 14 is communicatively connected to the in-band program interface 13 and is capable of responding to the control of the in-band program interface 13. In one possible implementation, the wireless network module 14 may be a WiFi module, used to provide wireless network connectivity for the computing device.
[0233] Optionally, the baseboard management controller 11 is connected to the Bluetooth module 122. The Bluetooth module 122 can be integrated into the computing device belonging to the BMC, or it can be connected to the BMC as a standalone pluggable module via a USB or UART interface. This application embodiment does not limit the specific implementation and connection method of the Bluetooth module 122.
[0234] In one possible implementation, Figure 6 This is a schematic diagram of the structure of a baseboard management controller 11 provided in an embodiment of this application, as shown below. Figure 6 As shown, the baseboard management controller 11 may contain a device management module 111, a data conversion module 112, and an in-band communication module 113.
[0235] The device management module 111 is connected to the Bluetooth module 122 or an external display screen to manage data transmission and reception with external devices. The in-band communication module 113 is connected to the in-band program interface 13 for communicating with the in-band program. The data conversion module 112 is connected to both the device management module 111 and the in-band communication module 113, and is used to convert commands received from external devices into command types that the in-band program can recognize, and to convert data returned from the in-band program into a format that the external device can recognize.
[0236] Specifically, after establishing a communication link between the mobile app and the Bluetooth module 122, the mobile app sends a query command to the Bluetooth module 122, which forwards the command to the device management module 111 of the baseboard management controller 11. The data conversion module 112 of the baseboard management controller 11 parses the received command, converts it into a command conforming to the IPMI protocol or HTTPS, and then sends it to the in-band program interface 13 through the in-band communication module 113. The message format of the mobile app and the message format generated after parsing by the BMC are converted into a protocol through the data conversion module.
[0237] In some embodiments, this application provides an out-of-box experience (OOBE) function to enable interaction between a mobile app (or mobile APP) and in-band software, allowing users to complete the wireless network configuration and subsequent management of the server using only their mobile phones without the need for network cables or serial cables.
[0238] In one possible implementation, the core of this out-of-the-box functionality is as follows: The BMC integrates a Bluetooth driver, initializes the Bluetooth module, and establishes a Bluetooth link with the mobile app via Bluetooth scanning; the BMC and the in-band program establish a communication link via IPMI heartbeat messages; the BMC is responsible for forwarding messages between the mobile app and the in-band program, completing the out-of-the-box network setup function (i.e., wireless module network configuration). With the above setup, after the mobile app completes wireless network configuration, it can directly communicate with the in-band program via the wireless network, without relying on Bluetooth connectivity.
[0239] The following section uses IPMI commands as an example to explain the out-of-the-box process in detail.
[0240] Step 6.1: BMC initializes the Bluetooth device. After the computing device is powered on, the BMC initializes the Bluetooth module, loads the Bluetooth driver, and prepares to receive Bluetooth connection requests.
[0241] Step 6.2: Establish a heartbeat link between the BMC and the in-band program. The BMC and the in-band program establish a communication link through IPMI commands or IPMI heartbeat messages to ensure that the data exchange channel between the BMC and the in-band program is normal.
[0242] Step 6.3: Start Bluetooth service. The BMC starts the Bluetooth service and begins listening for Bluetooth data on the USB or UART interface, waiting for Bluetooth connection requests from external devices.
[0243] Step 6.4: Establishing a Bluetooth connection between the mobile app and the Bluetooth device. The user opens the mobile app and obtains Bluetooth pairing information by scanning the QR code provided by the BMC, or by using the phone's automatic Bluetooth search function to discover nearby Bluetooth devices. The mobile app initiates a Bluetooth connection request to establish a Bluetooth link with the Bluetooth module.
[0244] Step 6.5, Connection Establishment Confirmation. After receiving the connection establishment message from the mobile app, the BMC notifies the in-band program via IPMI command that an external device has established a Bluetooth connection. The in-band program returns confirmation information upon receiving the notification. If the response fails or times out, the connection establishment fails, and the mobile app prompts the user to retry or check the Bluetooth connection status.
[0245] Step 6.6: The mobile app performs wireless network operations. After the Bluetooth link is successfully established, the mobile app supports at least one of the following operations:
[0246] Querying Wireless Network Information: The mobile app sends a query command to the BMC. Upon receiving the command, the BMC converts it into an IPMI command via a data conversion module and sends it to the in-band program interface to retrieve the current wireless network information. This information may include: wireless network enable status (on / off), Internet Protocol address allocation mechanism (Dynamic Host Configuration Protocol or Static IP), and default Internet Protocol address. The BMC then returns the retrieved wireless network information to the mobile app for display.
[0247] Enable or disable wireless network: The mobile app sends an enable or disable command to the BMC. Upon receiving the command, the BMC converts it into an IPMI command via the data conversion module and sends it to the in-band program interface. The in-band program executes the corresponding enable or disable operation according to the command, and after the operation is completed, the BMC sends the operation result back to the mobile app.
[0248] Setting up a wireless network: The mobile app sends a command to the BMC to set up the wireless network, which includes the wireless network name (SSID) and password. Upon receiving the command, the BMC converts it into an IPMI command using its data conversion module and sends it to the in-band application interface. The in-band application completes the wireless network configuration based on the wireless network name and password in the command. After configuration, the BMC sends the configuration result (success or failure) back to the mobile app.
[0249] Step 6.7: Switch to wireless network communication. After successful wireless network configuration, the mobile app can directly connect to the in-band program via the wireless network, enabling interaction with the program. At this time, users can remotely view the server's hardware status, CPU usage, memory usage, and other information through the mobile app, and also perform power management operations, without relying on Bluetooth connectivity.
[0250] Step 6.8: Turn off Bluetooth. After the wireless network connection is successfully established, or when the user no longer needs to use Bluetooth, the user can turn off Bluetooth on the mobile app. The mobile app sends a Bluetooth turn-off command to the BMC. Upon receiving the command, the BMC disables the Bluetooth service, stops listening for Bluetooth data on the USB or UART interface, and releases related resources. Turning off Bluetooth reduces the power consumption of the computing device.
[0251] In one possible implementation, the following is a complete out-of-the-box workflow example, demonstrating the entire process from receiving a new server to completing wireless network configuration and beginning remote management:
[0252] Step 1: Powering on the server. The user powers on the server, and the BMC automatically initializes the Bluetooth module, starts the Bluetooth service, and begins listening for Bluetooth interface data. Simultaneously, the BMC establishes a communication link with the in-band program via IPMI heartbeat messages.
[0253] Step 2: Connect the mobile app via Bluetooth. The user opens the mobile app and scans the QR code on the server chassis. The mobile app automatically obtains Bluetooth pairing information and establishes a Bluetooth link with the Bluetooth module.
[0254] Step 3: Check the current network status (optional). Users can check the current wireless network information through the mobile app to confirm the server's current network status (such as whether the wireless network is enabled, whether it is connected to the network, etc.).
[0255] Step 4: Configure the wireless network. The user enters the wireless network name (SSID) and password on the mobile app interface and clicks the "Configure" button. The mobile app generates configuration commands and sends them to the BMC via Bluetooth. The BMC performs protocol conversion, converting the configuration commands into IPMI commands, and controls the in-band program to complete the wireless network configuration through the in-band program interface.
[0256] Step 5: Confirm successful configuration. After configuration is complete, BMC will return the configuration results to the mobile app, which will then display a message to the user: "Wireless network configuration successful."
[0257] Step 6: Switch to wireless network communication. The mobile app automatically disconnects from Bluetooth and establishes a direct connection with the in-band program via wireless network.
[0258] Step 7: Remote Management. Users can now remotely view server hardware status, CPU usage, memory usage, and other information via a mobile app, and also perform remote power management operations.
[0259] One possible implementation includes an eighth step: turning off Bluetooth. Users can turn off Bluetooth via the mobile app, causing the BMC to disable the Bluetooth service and stop listening to Bluetooth interface data.
[0260] Through the above process, users do not need to use network cables, serial cables, or connect monitors, keyboards, and mice. They only need a mobile phone to complete the initial wireless network configuration and subsequent management of the server, truly achieving a convenient "out-of-the-box" experience.
[0261] It should be noted that the above out-of-the-box process applies not only to the initial configuration of the server, but also to scenarios involving changes in server network configuration or fault recovery. For example, when the server's wireless network configuration changes (such as replacing the router) or a network connection fails, users can also reconfigure the wireless network using the above process without physically touching the server. This application does not limit the applicable scenarios for the out-of-the-box process.
[0262] Figure 7 This is a schematic diagram of an in-band information processing device provided in an embodiment of this application. The in-band information processing device is applied to the baseboard management controller of a computing device. The in-band information processing device includes: a receiving module 701, a parsing module 702, a generating module 703, and a transmitting module 704.
[0263] The receiving module is used to receive the first request sent by the external device;
[0264] The parsing module is used to parse the first request in order to determine the operation instruction corresponding to the first request;
[0265] The generation module is used to generate a second request that is compatible with the in-band program interface based on the operation instructions;
[0266] The sending module is used to send the second request to the in-band program interface to control the in-band software to execute operation instructions.
[0267] In one possible implementation, the generation module is specifically used for:
[0268] Obtain a preset first mapping relationship; wherein, the preset first mapping relationship is used to characterize the correspondence between operation instructions and corresponding first protocol commands, and the first protocol commands are compatible with in-band program interfaces;
[0269] According to the operation instructions, a matching process is performed in the preset first mapping relationship to obtain the second request.
[0270] In one possible implementation, a communication link is established between the board management controller and the in-band program interface via a smart platform management interface protocol or a hypertext transfer security protocol.
[0271] When the communication link is established based on the intelligent platform management interface protocol, the first protocol command is the intelligent platform management interface protocol command; or...
[0272] When a communication link is established based on the Hypertext Transfer Security Protocol (HTTP), the first protocol command is the HTTP command.
[0273] In one possible implementation, the baseboard management controller is connected to external devices via wired or wireless means;
[0274] Wired methods include one of serial ports, universal asynchronous transceivers, and universal serial buses, while wireless methods include Bluetooth.
[0275] In one possible implementation, when the baseboard management controller is connected to an external device via a serial port, the preset first mapping relationship includes the mapping relationship between serial port commands and first protocol commands;
[0276] When the baseboard management controller is connected to an external device via a universal asynchronous transceiver, the preset first mapping relationship includes the mapping relationship between universal asynchronous transceiver commands and first protocol commands;
[0277] When the baseboard management controller is connected to an external device via a universal serial bus, the preset first mapping relationship includes the mapping relationship between universal serial bus commands and first protocol commands;
[0278] When the baseboard management controller connects to an external device via Bluetooth, the preset first mapping relationship includes the mapping relationship between Bluetooth commands and first protocol commands.
[0279] In one possible implementation, the parsing module is specifically used for:
[0280] Identify the protocol type of the first request; wherein the protocol type includes serial port protocol, Universal Asynchronous Receiver / Transmitter protocol, Universal Serial Bus protocol or Bluetooth protocol;
[0281] Based on the protocol type, the corresponding parsing rules are used to unpack the first request to obtain the operation instructions.
[0282] In one possible implementation, the external device includes the display device and / or terminal device of the computing device.
[0283] In one possible implementation, the operation instructions include at least one of in-band information query instructions, wireless network operation instructions, and Bluetooth communication operation instructions.
[0284] In one possible implementation, the operation instructions include in-band information query instructions;
[0285] Accordingly, after the sending module sends the second request to the in-band program interface, the above-mentioned apparatus further includes a processing module for:
[0286] Receive the query results returned by the in-band program interface;
[0287] The information query results are sent to an external device so that the external device can display the information query results.
[0288] In one possible implementation, the in-band information query instruction includes at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction.
[0289] In one possible implementation, the operation instructions include wireless network operation instructions; the wireless network operation instructions include at least one of wireless network configuration instructions, wireless network query instructions, wireless network enable instructions, and wireless network disable instructions.
[0290] Accordingly, the sending module is specifically used for:
[0291] When the wireless network operation command is a wireless network configuration command, the in-band program is controlled through the in-band program interface to complete the wireless network configuration, so that after successful configuration, external devices can communicate directly with the in-band program through the wireless network.
[0292] When the wireless network operation command is a wireless network query command, the wireless network information is obtained through the in-band program interface, and after receiving the wireless network information, the wireless network information is sent to the external device.
[0293] When the wireless network operation command is a wireless network enable command or a wireless network disable command, the in-band program is controlled through the in-band program interface to execute the corresponding enable or disable operation.
[0294] In one possible implementation, the operation instructions include Bluetooth communication operation instructions; the Bluetooth communication operation instructions include at least one of Bluetooth turn-on instructions, Bluetooth turn-off instructions, Bluetooth status query instructions, and Bluetooth device scan instructions.
[0295] Accordingly, the sending module is specifically used for:
[0296] When the Bluetooth communication operation command is the Bluetooth turn-on command, the Bluetooth module of the computing device is powered on and the Bluetooth service is initialized through the in-band program interface.
[0297] When the Bluetooth communication operation command is a Bluetooth shutdown command, the Bluetooth module is powered down and the Bluetooth service is turned off via the in-band program interface.
[0298] When the Bluetooth communication operation command is a Bluetooth status query command, the current Bluetooth status information is obtained through the in-band program interface, and the Bluetooth status information is sent to the external device after receiving the Bluetooth status information.
[0299] When the Bluetooth communication operation command is a Bluetooth device scan command, the Bluetooth module is controlled to scan for surrounding Bluetooth devices through the in-band program interface, and the scan results are sent to external devices after being received.
[0300] Figure 8 A schematic diagram of the structure of a computing device provided in this application embodiment. Figure 1 .
[0301] like Figure 8 As shown, the computing device 80 may include a processor 81 and a memory 82, wherein the processor 81 and the memory 82 are coupled and can communicate with each other; for example, the processor 81 and the memory 82 communicate through a communication bus 83, the memory 82 is used to store computer execution instructions, and the processor 81 is used to call the computer execution instructions in the memory to execute the in-band information processing method shown in the above method embodiment.
[0302] Optionally, the computing device 80 also includes a baseboard management controller 11. The baseboard management controller 11 is an out-of-band management chip independent of the processor 81, connected to the processor 81 via an internal bus, and is used to interact with in-band programs running on the processor 81.
[0303] Optionally, the baseboard management controller 11 also provides a communication interface (such as a USB interface, UART interface, or Bluetooth module) for connecting to external devices.
[0304] Optionally, the computing device 80 may also include a communication interface, which may include a transmitter and / or a receiver.
[0305] Optionally, the aforementioned processor can be a central processing unit (CPU), a graphics processing unit (GPU), other general-purpose processors, a digital signal processor (DSP), or an application-specific integrated circuit (ASIC), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the embodiments of this application can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0306] Figure 9 A schematic diagram of the structure of a computing device provided in this application embodiment. Figure 2 .like Figure 9 As shown, in Figure 8 On this basis, Figure 9 It also includes display device 123.
[0307] The display device 123 is connected to the substrate management controller 11.
[0308] Optionally, the display device 123 can be connected to the substrate management controller 11 via a UART interface, serial port, or USB interface. The display device 123 is used to display in-band information pushed by the substrate management controller 11 and to receive touch or key input from the user to generate a first request.
[0309] Optionally, the display device 123 can be a touch screen or a non-touch screen. When the display device 123 is a touch screen, the user triggers the first request through touch operation; when the display device 123 is a non-touch screen, the user triggers the first request through a corresponding button.
[0310] This application provides a computer-readable storage medium storing computer program instructions; when the program instructions are executed by an electronic device or a computing device, the electronic device or computing device performs the above-described in-band information processing method.
[0311] This application provides a computer program product, which includes computer program instructions. When the computer program instructions are executed, they cause a computing electronic device or computing device to perform the above-described in-band information processing method.
[0312] All or part of the steps in the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a readable memory. When the program is executed, it performs the steps of the above method embodiments; and the aforementioned memory (storage medium) includes: read-only memory (ROM), RAM, flash memory, hard disk, solid-state drive, magnetic tape, floppy disk, optical disk, and any combination thereof.
[0313] This application describes embodiments of methods, apparatus (systems), and computer program products according to embodiments of this application with reference to flowchart illustrations and / or block diagrams. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processing unit of a general-purpose computer, special-purpose computer, embedded processor, or other programmable terminal device to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0314] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable terminal device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0315] These computer program instructions can also be loaded onto a computer or other programmable terminal device, causing a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable device for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0316] Obviously, those skilled in the art can make various modifications and variations to the embodiments of this application without departing from the spirit and scope of the embodiments of this application. Therefore, if these modifications and variations to the embodiments of this application fall within the scope of the claims of this application and their equivalents, the embodiments of this application are also intended to include these modifications and variations.
[0317] In the embodiments of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. The term "or" and its variations can mean "and / or." In the embodiments of this application, the terms "first," "second," etc., are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. In the embodiments of this application, "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0318] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the invention disclosed in the specification and in practice. The embodiments of this application are intended to cover any variations, uses, or adaptations of the embodiments of this application that follow the general principles of the embodiments of this application and include common knowledge or customary technical means in the art not disclosed in the embodiments of this application.
Claims
1. A method for in-band information processing, characterized in that, A baseboard management controller for a computing device, wherein one end of the baseboard management controller is communicatively connected to an external device, and the other end of the baseboard management controller is communicatively connected to an in-band programmable interface of the computing device, the method comprising: Receive the first request sent by the external device; Parse the first request to determine the operation instruction corresponding to the first request; Based on the operation instructions, generate a second request compatible with the in-band program interface; The second request is sent to the in-band program interface to control the in-band software to execute the operation instructions.
2. The method according to claim 1, characterized in that, The step of generating a second request compatible with the in-band program interface according to the operation instruction includes: Obtain a preset first mapping relationship; wherein the preset first mapping relationship is used to characterize the correspondence between operation instructions and corresponding first protocol commands, and the first protocol commands are compatible with the in-band program interface; According to the operation instructions, a matching process is performed in the preset first mapping relationship to obtain the second request.
3. The method according to claim 2, characterized in that, The baseboard management controller and the in-band program interface establish a communication link through the intelligent platform management interface protocol or the hypertext transfer security protocol. When the communication link is established based on the intelligent platform management interface protocol, the first protocol command is the intelligent platform management interface protocol command. or, When the communication link is established based on the Hypertext Transfer Security Protocol (HTTP), the first protocol command is an HTTP command.
4. The method according to claim 2, characterized in that, The baseboard management controller is connected to the external device via a wired or wireless connection. The wired method includes one of serial port, universal asynchronous transceiver, and universal serial bus, and the wireless method includes Bluetooth.
5. The method according to claim 4, characterized in that, When the baseboard management controller is connected to the external device via a serial port, the preset first mapping relationship includes the mapping relationship between serial port commands and first protocol commands; When the baseboard management controller is connected to the external device via a universal asynchronous transceiver, the preset first mapping relationship includes the mapping relationship between universal asynchronous transceiver commands and first protocol commands; When the baseboard management controller is connected to the external device via a universal serial bus, the preset first mapping relationship includes the mapping relationship between universal serial bus commands and first protocol commands; When the baseboard management controller is connected to the external device via Bluetooth, the preset first mapping relationship includes the mapping relationship between Bluetooth commands and first protocol commands.
6. The method according to claim 4, characterized in that, The step of parsing the first request to determine the operation instruction corresponding to the first request includes: Identify the protocol type of the first request; wherein the protocol type includes serial port protocol, Universal Asynchronous Receiver / Transmitter protocol, Universal Serial Bus protocol or Bluetooth protocol; According to the protocol type, the first request is unpacked using the corresponding parsing rules to obtain the operation instructions.
7. The method according to any one of claims 1 to 6, characterized in that, The external devices include the display devices and / or terminal devices of the computing device.
8. The method according to any one of claims 1 to 6, characterized in that, The operation instructions include at least one of the following: in-band information query instructions, wireless network operation instructions, and Bluetooth communication operation instructions.
9. The method according to claim 8, characterized in that, The operation instructions include in-band information query instructions; Accordingly, after sending the second request to the in-band program interface, the method further includes: Receive the information query results returned by the in-band program interface; The information query result is sent to the external device so that the external device can display the information query result.
10. The method according to claim 9, characterized in that, The in-band information query instructions include at least one of the following: hardware status query instruction, CPU utilization query instruction, memory utilization query instruction, token information query instruction, task status query instruction, and application status query instruction.
11. The method according to claim 8, characterized in that, The operation instructions include wireless network operation instructions; the wireless network operation instructions include at least one of wireless network configuration instructions, wireless network query instructions, wireless network enable instructions, and wireless network disable instructions; Accordingly, sending the second request to the in-band program interface to control the in-band software to execute the operation instruction includes: When the wireless network operation command is a wireless network configuration command, the in-band program is controlled through the in-band program interface to complete the wireless network configuration, so that after successful configuration, the external device can communicate directly with the in-band program through the wireless network. When the wireless network operation command is a wireless network query command, wireless network information is obtained through the in-band program interface, so that after receiving the wireless network information, the wireless network information is sent to the external device; When the wireless network operation command is a wireless network enable command or a wireless network disable command, the in-band program is controlled through the in-band program interface to perform the corresponding enable or disable operation.
12. The method according to claim 8, characterized in that, The operation instructions include Bluetooth communication operation instructions; the Bluetooth communication operation instructions include at least one of Bluetooth turn-on instructions, Bluetooth turn-off instructions, Bluetooth status query instructions, and Bluetooth device scan instructions. Accordingly, sending the second request to the in-band program interface to control the in-band software to execute the operation instruction includes: When the Bluetooth communication operation command is a Bluetooth enable command, the Bluetooth module of the computing device is powered on and the Bluetooth service is initialized through the in-band program interface. When the Bluetooth communication operation command is a Bluetooth shutdown command, the Bluetooth module is powered down and the Bluetooth service is turned off via the in-band program interface. When the Bluetooth communication operation command is a Bluetooth status query command, the current Bluetooth status information is obtained through the in-band program interface, so that after receiving the Bluetooth status information, the Bluetooth status information is sent to the external device; When the Bluetooth communication operation command is a Bluetooth device scan command, the Bluetooth module is controlled to scan for surrounding Bluetooth devices through the in-band program interface, so that after receiving the scan results, the scan results are sent to the external device.
13. A computing device, characterized in that, The computing device includes a memory and a processor; The memory and the processor are coupled; The memory is used to store program instructions; The processor is used to invoke the program instructions to cause the computing device to perform the method as described in any one of claims 1-12.