Method and system for forwarding control instructions
Patent Information
- Application Number
- CN202311159701.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-08
- Publication Date
- 2026-09-25
- Estimated Expiration
- 2043-09-08
AI Technical Summary
[0004]针对相关技术中,如何提高控制指令的转发效率的技术问题,尚未提出有效的解决方案
[0016]通过本申请,由于通过确定出主板基板控制管理器的第一接口;在确定第一接口与网卡之间为连通状态的情况下,通过第一接口将上位机通过局域网发送至网卡的控制指令转发至与主板基板控制管理器的第一接口相连通的第二接口;在确定第一接口与网卡之间为非连通状态的情况下,使用分别与第一接口和第二接口连通的交换机将来自上位机的控制指令转发至主板基板控制管理器的第二接口,因此,可以解决如何提高控制指令的转发效率的技术问题,达到了提高控制指令的转发效率的效果。
Smart Images

Figure CN117061306B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer systems, and more specifically, to a method and system for forwarding control instructions. Background Technology
[0002] Currently, with the rapid development of information technology in today's society, data centers have an increasing demand for servers, such as AI servers. Correspondingly, the management design for AI servers is becoming increasingly complex. In current designs, network interface cards (NICs) can only send control commands to the server board for network management, not directly to the GPU box for management. While some approaches have proposed using low-speed buses such as I2C and SPI between the GPU box and the server board, with the server board then connecting to the local area network to forward control commands to the GPU box for management, this method suffers from high latency, slow forwarding speed, and the possibility of information loss in the control commands during this process, resulting in unreliable information and extremely low forwarding efficiency.
[0003] Therefore, in related technologies, there is a technical problem of how to improve the forwarding efficiency of control commands.
[0004] No effective solution has yet been proposed for the technical problem of improving the forwarding efficiency of control commands in related technologies. Summary of the Invention
[0005] This application provides a method and system for forwarding control commands, which at least solves the technical problem of how to improve the forwarding efficiency of control commands.
[0006] According to one embodiment of this application, a method for forwarding control commands is provided, applied to a motherboard baseboard control manager connected to a network interface card (NIC), comprising: determining a first interface of the motherboard baseboard control manager; if it is determined that the first interface and the NIC are in a connected state, forwarding control commands from the NIC to a second interface of the motherboard baseboard control manager through the first interface; wherein the first interface and the second interface are connected, and the control commands are sent from a host computer to the NIC via a local area network; if it is determined that the first interface and the NIC are not in a connected state, using a switch to forward control commands from the host computer to the second interface of the motherboard baseboard control manager, wherein the switch is connected to both the first interface and the second interface.
[0007] In an exemplary embodiment, after determining that there is a connection between the first interface and the network card, and forwarding the control command from the network card to the second interface of the motherboard baseboard control manager through the first interface, the method further includes: parsing the control command received through the first interface to obtain a first parsing result; if it is determined that the first parsing result is used to instruct a control server, controlling the server according to the control command; if it is determined that the first parsing result is used to instruct the control of a graphics processor device, sending the control command to the graphics processor baseboard control manager, and controlling the graphics processor baseboard control manager according to the control command.
[0008] In one exemplary embodiment, sending the control command to the graphics processor board control manager includes: determining from the switching interfaces of the switch a first switching interface connected to the local area network, a second switching interface connected to the second interface, and a third switching interface connected to the graphics processor board control manager; sending the control command to the switch through the second switching interface; and forwarding the control command to the graphics processor board control manager through the third switching interface.
[0009] In an exemplary embodiment, after forwarding the control command to the graphics processor board control manager through the third switching interface, the method further includes: upon receiving a response command generated when the graphics processor board control manager is controlled through the switching interface of the switch, parsing the response command to obtain a second parsing result; and sending the second parsing result to a host computer connected to the local area network through a first interface, so that the host computer displays the second parsing result to the target object.
[0010] In an exemplary embodiment, when it is determined that the first interface and the network card are not connected, using a switch to forward control commands from the host computer to the second interface of the motherboard control manager includes: determining a first switch interface connected to the local area network and a second switch interface connected to the second interface from the switch interfaces; forwarding the control commands to the second switch interface through the first switch interface, and forwarding the control commands to the second interface through the second switch interface, wherein the first switch interface and the second switch interface are connected.
[0011] In one exemplary embodiment, after forwarding the control command to the second interface via the second exchange interface, the method further includes: parsing the control command forwarded via the second interface to obtain a third parsing result; if it is determined that the third parsing result is used to control the server, controlling the server according to the control command; if it is determined that the third parsing result is used to instruct the control of the graphics processor device, sending the control command to the graphics processor board control manager.
[0012] In an exemplary embodiment, sending the control command to the graphics processing unit (GPU) board control manager includes: determining a third switching interface connected to the GPU board control manager from the switching interfaces of the switch, wherein the second switching interface is connected to the third switching interface; forwarding the control command to the third switching interface through the second switching interface, and forwarding the control command to the GPU board control manager through the third switching interface; upon receiving a response command generated when the GPU board control manager is controlled through the switching interface of the switch, parsing the response command to obtain a fourth parsing result; and sending the fourth parsing result to a host computer connected to the local area network (LAN) through a second interface, so that the host computer displays the fourth parsing result to a target object; wherein sending the fourth parsing result to the host computer connected to the LAN through the second interface includes: forwarding the fourth parsing result to the second switching interface through the second interface and the second switching interface; and forwarding the fourth parsing result to the host computer connected to the LAN through the second switching interface and the first switching interface.
[0013] According to another embodiment of this application, a control command forwarding system is provided, comprising a network interface card (NIC) connected to a local area network (LAN), a motherboard baseboard control manager (BAM), a graphics processor baseboard control manager (GPU), and a switch connected to both the BAM and GPU. The BAM has a first interface connected to the NIC, and the first interface and the NIC are either connected or disconnected. The switch has a first switching interface connected to the LAN, a second switching interface connected to a second interface of the BAM, and a third switching interface connected to the GPU. The BAM is configured to, when a connection is established between the first interface and the NIC, forward control commands from the NIC to the second interface of the BAM via the first interface. The first and second interfaces are connected, and the control commands are sent from a host computer to the NIC via the LAN. When a disconnect is established between the first interface and the NIC, the switch forwards control commands from the host computer to the second interface of the BAM, wherein the switch is connected to both the first and second interfaces.
[0014] According to yet another embodiment of this application, a computer-readable storage medium is also provided, wherein a computer program is stored therein, and the computer program is configured to perform the steps in any of the above method embodiments when it is run.
[0015] According to yet another embodiment of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0016] By identifying the first interface of the motherboard baseboard control manager, and when it is determined that the first interface and the network card are connected, the control commands sent from the host computer to the network card via the local area network are forwarded through the first interface to the second interface connected to the first interface of the motherboard baseboard control manager; when it is determined that the first interface and the network card are not connected, the control commands from the host computer are forwarded to the second interface of the motherboard baseboard control manager using switches connected to the first interface and the second interface respectively. Therefore, the technical problem of how to improve the forwarding efficiency of control commands can be solved, and the effect of improving the forwarding efficiency of control commands can be achieved. Attached Figure Description
[0017] Figure 1This is a schematic diagram illustrating the principle of a control instruction forwarding method according to an embodiment of this application;
[0018] Figure 2 This is a flowchart of a control instruction forwarding method according to an embodiment of this application;
[0019] Figure 3 This is a structural block diagram of a control instruction forwarding system according to an embodiment of this application;
[0020] Figure 4 A schematic block diagram of a computer system architecture for implementing an electronic device according to embodiments of this application is shown.
[0021] Figure 5 A schematic diagram of an electronic device for implementing embodiments of this application is shown. Detailed Implementation
[0022] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0023] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0024] The following is a description of some of the technical terms used in this application:
[0025] NCSI, Network Controller Sideband Interface, refers to the network controller sideband interface protocol.
[0026] AI stands for Artificial Intelligence.
[0027] BMC stands for Baseboard Management Controller.
[0028] GPU, graphics processing unit.
[0029] MB stands for Mother Board.
[0030] QSFP, Quad Small Form-factor Pluggable 4-channel SFP interface.
[0031] DPU, Data Processing Unit.
[0032] According to one aspect of the embodiments of this application, a method for forwarding control instructions is provided. The method embodiments provided in this disclosure can be executed in a motherboard control manager or a similar computing device. Taking execution on a motherboard control manager as an example, such as... Figure 1 The diagram illustrates the principle of a control command forwarding method, including a local area network, a host computer, a network card, a CPU, a memory module (MB), and a GPU box.
[0033] GPU BOX refers to an external graphics processing unit (GPU) expansion device. It can be connected to a computer or laptop to provide additional computing and graphics processing capabilities. GPU devices typically contain one or more high-performance GPUs, which can be used to accelerate computation, render graphics, and process complex images. By using GPU devices, users can improve computing and graphics processing performance without upgrading or replacing their entire computer system.
[0034] like Figure 1 As shown, a BMC chip is designed on the motherboard (i.e., MB). (To distinguish it from the BMC in the GPU BOM, the BMC on the motherboard will be referred to as MB_BMC below.)
[0035] Among them, through the "RJ45-MDI bus-BMC management dedicated port ( Figure 1 The port 2 of MB_BMC shown above (i.e., the second interface mentioned above) can be used to manage the server.
[0036] Among them, through the "BMC shared port ( Figure 1The path shown is "Port 1 of MB_BMC (i.e., the first interface mentioned above) - NCSI bus - network card - optical port (QSFP) - local area network". This allows the shared port of BMC to manage network devices (abbreviated as network card in the illustration of this invention) through the NCSI bus, and the network card is then connected to the local area network deployed by the external switch through the QSFP optical cable.
[0037] like Figure 1 As shown, a LAN SW chip (i.e., ...) has been added to the GPU BOX. Figure 1 The LAN Switch connects internally to the management network port (i.e., port 2 of GPU_BMC) of the onboard BMC chip (hereinafter referred to as GPU_BMC) through the "P2-MDI bus".
[0038] Among them, P1 of LAN SW (i.e. the second switching interface mentioned above) is connected to the external gigabit port RJ45_1 via the MDI bus, and P0 is connected to the external gigabit port RJ45_0 via the MDI bus (i.e. the first switching interface mentioned above).
[0039] P0 is configured as an access port, and P1 is configured as a hybrid port. In other words, the routing configuration in the LAN SW's firmware divides the VLANs. P1 can be routed to P2 (i.e., the third switching interface mentioned above) for internal management, and P1 can also be routed to P0 for external communication with the main network. However, P0 cannot be directly routed to P2.
[0040] Optionally, when a user accesses the server via a LAN link to RJ45_0, the IP address obtained is the IP address of MB_BMC, and the IP address of GPU_BMC is not visible to the outside world.
[0041] Optionally, when the network card is connected to the local area network, the MB BMC chip can be accessed through the NCSI link and the shared network port of the BMC (i.e., P1 of MB_BMC), thereby enabling out-of-band management of the server.
[0042] This embodiment provides a method for forwarding control commands, such as... Figure 2 As shown, the specific steps include:
[0043] Step S202: Determine the first interface of the motherboard baseboard control manager;
[0044] Step S204: If it is determined that the first interface and the network card are connected, the control command from the network card is forwarded to the second interface of the motherboard baseboard control manager through the first interface; wherein, the first interface and the second interface are connected, and the control command is sent from the host computer to the network card through the local area network;
[0045] Step S206: If it is determined that the first interface and the network card are not connected, the control command from the host computer is forwarded to the second interface of the motherboard baseboard control manager using a switch, wherein the switch is connected to the first interface and the second interface respectively.
[0046] By following the above steps, the first interface of the motherboard baseboard control manager is determined. If the first interface and the network card are connected, control commands sent from the host computer to the network card via the local area network are forwarded through the first interface to the second interface connected to the first interface of the motherboard baseboard control manager. If the first interface and the network card are not connected, a switch connected to both the first and second interfaces is used to forward the control commands from the host computer to the second interface of the motherboard baseboard control manager. Therefore, the technical problem of improving the forwarding efficiency of control commands can be solved, achieving the effect of improving the forwarding efficiency of control commands.
[0047] Optionally, the entity performing the above steps can be a server, a terminal, etc., but is not limited to these.
[0048] Optionally, in an exemplary embodiment, after executing the technical solution in step S204 above, where it is determined that the first interface and the network card are in a connected state, and forwarding the control command from the network card to the second interface of the motherboard baseboard control manager through the first interface, the following steps can be further implemented: Step S11, parsing the control command received through the first interface to obtain a first parsing result; Step S12, where it is determined that the first parsing result is used to instruct the control server, controlling the server according to the control command; Step S13, where it is determined that the first parsing result is used to instruct the control of the graphics processor device, sending the control command to the graphics processor baseboard control manager, and controlling the graphics processor baseboard control manager according to the control command.
[0049] Optionally, in this embodiment, combined with Figure 1 The architecture diagram shown illustrates that the process of receiving the control command through the first interface can be understood as transmitting the control command to the MB_BMC through the path of "LAN -> QSFP -> NIC -> NCSI bus -> MB_BMC shared port", thereby enabling the MB_BMC to parse the command.
[0050] Through the above embodiments, the control instructions can be sent to the graphics processor board control manager, thereby controlling the graphics processor board control manager according to the control instructions, thus improving the control efficiency of the graphics processor board control manager.
[0051] Optionally, in an exemplary embodiment, the technical solution of sending the control command to the graphics processor board control manager in step S13 above may further include the following implementation steps: Step S21, determining from the switching interfaces of the switch a first switching interface connected to the local area network, a second switching interface connected to the second interface, and a third switching interface connected to the graphics processor board control manager; Step S22, sending the control command to the switch through the second switching interface; Step S23, forwarding the control command to the graphics processor board control manager through the third switching interface.
[0052] The above embodiments further enrich the implementation method of sending the control command to the graphics processing unit (GPU) board control manager, thereby controlling the GPU board control manager according to the control command, and improve the control efficiency of the GPU board control manager.
[0053] Optionally, in an exemplary embodiment, after controlling the server according to the control instructions, upon receiving a response message generated when the graphics processor board control manager is controlled, the response message is displayed on a visual interactive interface; operation instructions are generated based on the interactive operations of the target object on the visual interactive interface, and the graphics processor board control manager is controlled according to the operation instructions.
[0054] The above embodiments provide users with a way to interactively control the graphics processor board control manager, thereby improving the control efficiency of the graphics processor board control manager.
[0055] Optionally, in an exemplary embodiment, after forwarding the control command to the graphics processor board control manager through the third switching interface in step S23, step S13 may further include: step S24, in the case of receiving a response command generated when the graphics processor board control manager is controlled through the switching interface of the switch, parsing the response command to obtain a second parsing result; step S25, sending the second parsing result to a host computer connected to the local area network through the first interface, so that the host computer displays the second parsing result to the target object.
[0056] Optionally, in this embodiment, combined with Figure 1The schematic diagram shown illustrates that the process of receiving the response command generated by the graphics processor board control manager when it is controlled through the switching interface of the switch can be understood as the MB_BMC receiving the response command generated by the GPU_BMC based on the control command through the path "GPU_BMC management port -> P2 -> P1 -> RJ45_1 -> RJ45 -> MB_BMC management port".
[0057] Optionally, in this embodiment, combined with Figure 1 The architecture diagram shown illustrates that the process of sending the second parsing result to a host computer connected to the local area network through the first interface, so that the host computer can display the second parsing result to the target object, can be understood as follows: after receiving the response instruction, the MB_BMC decodes, verifies, and re-encodes the data carried in the response instruction. After confirming that there are no errors, it realizes an information interaction with the user through "MB_BMC sharing -> NCSI bus -> network card -> QSFP -> local area network -> host computer".
[0058] Optionally, in an exemplary embodiment, to better understand the specific implementation process of forwarding control commands from the host computer to the second interface of the motherboard control manager using a switch in step S206 when it is determined that the first interface and the network card are not connected, the following implementation steps are proposed: Step S31, determine the first switching interface connected to the local area network and the second switching interface connected to the second interface from the switching interfaces of the switch; Step S32, forward the control commands to the second switching interface through the first switching interface and forward the control commands to the second interface through the second switching interface, wherein the first switching interface and the second switching interface are connected.
[0059] Optionally, in an exemplary embodiment, after performing the above-described step S32 of forwarding the control command to the second interface through the second exchange interface, step S206 may further include: step S33, parsing the control command forwarded via the second interface to obtain a third parsing result; step S34, if it is determined that the third parsing result is used to control the server, controlling the server according to the control command; step S35, if it is determined that the third parsing result is used to instruct the control of the graphics processor device, sending the control command to the graphics processor board control manager.
[0060] Optionally, in an exemplary embodiment, upon receiving a response message generated when the graphics processor board control manager is controlled, the response message is displayed on a visual interactive interface; an operation instruction is generated based on the interactive operation of the target object on the visual interactive interface, and the graphics processor board control manager is controlled according to the operation instruction.
[0061] Optionally, in an exemplary embodiment, the technical solution of sending the control command to the graphics processor board control manager in step S35 is described by the following steps: Step S41, determining a third switching interface connected to the graphics processor board control manager from the switching interfaces of the switch, wherein the second switching interface is connected to the third switching interface; Step S42, forwarding the control command to the third switching interface through the second switching interface, and forwarding the control command to the graphics processor board control manager through the third switching interface; Step S43, when a response command generated when the graphics processor board control manager is controlled is received through the switching interface of the switch, parsing the response command to obtain a fourth parsing result; Step S44, sending the fourth parsing result to a host computer connected to the local area network through the second interface, so that the host computer displays the fourth parsing result to the target object.
[0062] Through the above embodiments, control commands can be forwarded to the graphics processor board control manager in a timely manner, providing users with a way to control the graphics processor board control manager using a host computer, thereby improving the user experience.
[0063] Optionally, in this embodiment, combined with Figure 1 The architecture diagram shown illustrates that the process of receiving the response command generated by the graphics processor board control manager when it is controlled through the switching interface of the switch can be understood as the MB_BMC receiving the response command generated by the GPU_BMC based on the control command through the path "GPU_BMC management port -> P2 -> P1 -> RJ45_1 -> RJ45 -> MB_BMC management port".
[0064] Optionally, in this embodiment, combined with Figure 1The architecture diagram shown illustrates that the process of sending the fourth parsing result to the host computer connected to the local area network via the second interface, so that the host computer can display the fourth parsing result to the target object, can be understood as follows: after receiving the response instruction, MB_BMC decodes, verifies, and re-encodes the data carried in the response instruction. After confirming that there are no errors, it realizes an information interaction with the user through the path of "MB_BMC management port -> RJ45 -> RJ45_1 -> P1 -> P0 -> RJ45_0 -> local area network -> host computer".
[0065] Optionally, the implementation process of sending the fourth parsing result to the host computer connected to the local area network through the second interface in step S44 includes at least the following steps: step S51, forwarding the fourth parsing result to the second switching interface through the second interface and the second switching interface; step S51, forwarding the fourth parsing result to the host computer connected to the local area network through the second switching interface and the first switching interface.
[0066] Optionally, in one embodiment, a method based on, for example, is provided. Figure 1 The implementation schemes for forwarding control commands in the system architecture shown include at least Scheme 1 and Scheme 2.
[0067] In this embodiment, Scheme 1 is a dedicated management network port scheme, which requires the following hardware infrastructure:
[0068] 1) The MB BMC's dedicated management network port is connected to the BOX BMC's cascade network port via a network cable;
[0069] 2) Connect the GPU BOX's RJ45_0 port to the local area network via a network cable;
[0070] when Figure 1 When the network card shown is not in place (the server does not have an external network card, i.e., the BMC shared port is in a disconnected state), the specific steps of the control command forwarding method are as follows:
[0071] Step 1: The user connects the host computer to the local area network, obtains the server IP, i.e. the IP of MB_BMC, and enters the command to manage and access the network after the network connection is successful.
[0072] Step 2: By default, control commands are routed through the LAN to RJ45_0, and then through LAN SW P0 to P1->RJ45_1->RJ45->MB_BMC management port, reaching MB_BMC.
[0073] Step 3: MB_BMC receives control commands and determines whether it is controlling the management server or the GPU BOX based on the control commands.
[0074] If it is a control server, the received control commands are executed, and the user can continue to manage the server through the interactive interface.
[0075] If the command is to control the GPU BOX, since the command is forwarded through the RJ45_0 switch, it is directly transferred to the GPU_BMC through the RJ45_0->P0->-P1->Pt2->GPU_BMC management port, thus achieving fast forwarding of the control command.
[0076] Step 4: After receiving the forwarded instruction, the GPU_BMC responds and sends the response instruction back to the MB_BMC through the path "GPU_BMC management port -> P2 -> P1 -> RJ45_1 -> RJ45 -> MB_BMC management port".
[0077] Step 5: After receiving the return instruction, MB_BMC decodes, verifies, and re-encodes the data. Once the information is confirmed to be correct, it performs an information exchange through the path "MB_BMC management port -> RJ45 -> RJ45_1 -> P1 -> P0 -> RJ45_0 -> LAN -> host computer (user)".
[0078] The host computer is equipped with a (visual / non-visual) interactive interface, through which users can interact.
[0079] In this embodiment, Scheme 2 is a shared management network port scheme, which requires the following hardware foundation: connecting the MB BMC dedicated management network port to the BOX BMC cascade network port via a network cable.
[0080] when Figure 1 When the network card shown is in place and the shared port between the network card and the MB_BMC is connected, the management port of the MB_BMC is disabled because the shared port between the network card and the MB_BMC is connected. The shared management port solution needs to be enabled. The specific steps are as follows:
[0081] Step 1: The user connects the host computer to the local area network and obtains the server IP. At this time, the only IP address the user can obtain is the IP address of the network chip on the network card. After the network connection is successful, the user enters the command to manage and access the network.
[0082] Step 2: Control commands are forwarded to the MB_BMC through the path of "LAN -> QSFP -> NIC -> NCSI bus -> MB_BMC shared port", and the MB_BMC recognizes the commands.
[0083] Step 3: After receiving and recognizing the control command, MB_BMC determines whether it is controlling the management server or controlling the GPU BOX.
[0084] If it is a control server, the received control commands are executed, and the user can continue to manage the server through the interactive interface.
[0085] If it is controlling the GPU BOX, the MB_BMC will receive the instructions through "MB_BMC management port -> RJ45 -> RJ45_1 -> P1 -> P2 -> GPU_BMC management port (i.e. Figure 1 The path of "port 2) of GPU_BMC" shown is handed over to GPU_BMC to realize the fast forwarding of control commands.
[0086] Step 4: After receiving the forwarded instruction, the GPU_BMC responds and sends the response instruction back to the MB_BMC through the path "GPU_BMC management port -> P2 -> P1 -> RJ45_1 -> RJ45 -> MB_BMC management port".
[0087] Step 5: After receiving the return instruction, MB_BMC decodes, verifies, and re-encodes the data. Once the information is confirmed to be correct, it performs an information exchange through the path of "MB_BMC shared -> NCSI bus -> network card -> QSFP -> LAN -> host computer (user)".
[0088] Based on the above steps, by placing a LAN switch on the GPU BOX, the current mainstream server network management architecture is optimized, improving server network management efficiency and making server operation and maintenance more convenient. This significantly reduces the construction cost of data centers, including the number of switches and network cables. In addition, it effectively solves the problem of poor network management compatibility in multi-slave cascading scenarios, enabling the LAN network to directly access the two BMC chips in the baseboard and GPU BOX through the network card, improving network access efficiency, real-time monitoring of the status of all devices in the AI server, and enabling one IP to manage multiple network devices, reducing the number of IPs, lowering data center operating costs, reducing operation and maintenance costs, and improving operation and maintenance efficiency and problem localization efficiency.
[0089] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0090] This embodiment also provides a structural block diagram of a control command forwarding system, which is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0091] In one embodiment, combined Figure 3 A control command forwarding system is provided, such as Figure 3 As shown, the control command forwarding system includes: a network interface card (NIC) connected to the local area network (LAN). Figure 3 (not shown), motherboard baseboard control manager 32, graphics processor baseboard control manager 34, and switch 36 connected to both the motherboard baseboard control manager and the graphics processor baseboard control manager.
[0092] The first interface of the motherboard baseboard control manager 32 is connected to the network card, and the first interface and the network card are either in a connected state or a disconnected state.
[0093] The first switching interface of the switch 36 is connected to the local area network, the second switching interface of the switch 36 is connected to the second interface of the motherboard baseboard control manager 32, and the third switching interface of the switch 36 is connected to the graphics processor baseboard control manager 34.
[0094] The motherboard baseboard control manager is configured to, when determining that the first interface and the network card are in a connected state, forward control commands from the network card to a second interface of the motherboard baseboard control manager through the first interface; wherein the first interface and the second interface are connected, and the control commands are sent from the host computer to the network card via a local area network; and when determining that the first interface and the network card are not in a connected state, use the switch to forward control commands from the host computer to the second interface of the motherboard baseboard control manager, wherein the switch is connected to both the first interface and the second interface.
[0095] Through the above embodiments, by identifying the first interface of the motherboard control manager; when it is determined that the first interface and the network card are connected, the control commands sent from the host computer to the network card via the local area network are forwarded through the first interface to the second interface connected to the first interface of the motherboard control manager; when it is determined that the first interface and the network card are not connected, a switch connected to both the first and second interfaces is used to forward the control commands from the host computer to the second interface of the motherboard control manager. Therefore, the technical problem of how to improve the forwarding efficiency of control commands can be solved, achieving the effect of improving the forwarding efficiency of control commands.
[0096] Optionally, in an exemplary embodiment, the motherboard baseboard control manager 32 is further configured to: after executing the technical solution in step S204 above, where it is determined that the first interface and the network card are in a connected state, forwarding the control command from the network card to the second interface of the motherboard baseboard control manager through the first interface, further implement the following steps: step S11, parsing the control command received through the first interface to obtain a first parsing result; step S12, where it is determined that the first parsing result is used to instruct the control server, controlling the server according to the control command; step S13, where it is determined that the first parsing result is used to instruct the control of the graphics processor device, sending the control command to the graphics processor baseboard control manager, and controlling the graphics processor baseboard control manager according to the control command.
[0097] Optionally, in this embodiment, combined with Figure 1 The architecture diagram shown illustrates that the process of receiving the control command through the first interface can be understood as transmitting the control command to the MB_BMC through the path of "LAN -> QSFP -> NIC -> NCSI bus -> MB_BMC shared port", thereby enabling the MB_BMC to parse the command.
[0098] Optionally, in an exemplary embodiment, the motherboard baseboard control manager 32 is further configured to perform the following implementation steps: Step S21, determining from the switching interfaces of the switch a first switching interface connected to the local area network, a second switching interface connected to the second interface, and a third switching interface connected to the graphics processor baseboard control manager; Step S22, sending the control command to the switch through the second switching interface; Step S23, forwarding the control command to the graphics processor baseboard control manager through the third switching interface.
[0099] Optionally, in an exemplary embodiment, the motherboard baseboard control manager 32 is further configured to, after controlling the server according to the control instructions, display the response message on a visual interactive interface upon receiving a response message generated when the graphics processor baseboard control manager is controlled; generate operation instructions based on the interactive operations of the target object on the visual interactive interface, and control the graphics processor baseboard control manager according to the operation instructions.
[0100] Optionally, in an exemplary embodiment, the motherboard baseboard control manager 32 is further configured to perform the following implementation steps: Step S24, when a response instruction generated when the graphics processor baseboard control manager is controlled is received through the switching interface of the switch, the response instruction is parsed to obtain a second parsing result; Step S25, the second parsing result is sent to a host computer connected to the local area network through a first interface, so that the host computer displays the second parsing result to the target object.
[0101] Optionally, in an exemplary embodiment, to better understand the specific implementation process of forwarding control commands from the host computer to the second interface of the motherboard control manager using a switch in step S206 when it is determined that the first interface and the network card are not connected, the motherboard control manager 32 is further configured to perform the following implementation steps: Step S31, determining the first switching interface connected to the local area network and the second switching interface connected to the second interface from the switching interfaces of the switch; Step S32, forwarding the control commands to the second switching interface through the first switching interface and forwarding the control commands to the second interface through the second switching interface, wherein the first switching interface and the second switching interface are connected.
[0102] Optionally, in an exemplary embodiment, after performing the above-described step S32 of forwarding the control command to the second interface via the second exchange interface, the motherboard baseboard control manager 32 is further configured to implement the following steps: step S33, parsing the control command forwarded via the second interface to obtain a third parsing result; step S34, if it is determined that the third parsing result is used to control the server, controlling the server according to the control command; step S35, if it is determined that the third parsing result is used to instruct the control of the graphics processor device, sending the control command to the graphics processor baseboard control manager.
[0103] Optionally, in an exemplary embodiment, the motherboard baseboard control manager 32 is further configured to perform the following steps: Step S41, determining a third switching interface connected to the graphics processor baseboard control manager from the switching interfaces of the switch, wherein the second switching interface is connected to the third switching interface; Step S42, forwarding the control command to the third switching interface through the second switching interface, and forwarding the control command to the graphics processor baseboard control manager through the third switching interface; Step S43, upon receiving a response command generated when the graphics processor baseboard control manager is controlled through the switching interface of the switch, parsing the response command to obtain a fourth parsing result; Step S44, sending the fourth parsing result to a host computer connected to the local area network through a second interface, so that the host computer displays the fourth parsing result to the target object.
[0104] Optionally, the motherboard baseboard control manager 32 is further configured to perform the following steps: step S51, forwarding the fourth parsing result to the second switching interface through the second interface and the second switching interface; step S51, forwarding the fourth parsing result to the host computer connected to the local area network through the second switching interface and the first switching interface.
[0105] It should be noted that the above modules can be implemented by software or hardware. For the latter, they can be implemented in the following ways, but are not limited to: all the above modules are located in the same processor; or, the above modules are located in different processors in any combination.
[0106] Embodiments of this application also provide a computer-readable storage medium storing a computer program / instructions configured to perform the steps in any of the above method embodiments when executed.
[0107] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0108] In one exemplary embodiment, the computer program / instructions include program code for performing the methods shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via communication section 409, and / or installed from removable medium 411. When the computer program is executed by central processing unit 401, it performs various functions provided in the embodiments of this application.
[0109] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0110] Figure 4 A schematic block diagram of a computer system architecture for implementing an electronic device according to embodiments of the present application is shown.
[0111] It should be noted that, Figure 4 The computer system 400 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.
[0112] like Figure 4 As shown, the computer system 400 includes a central processing unit (CPU) 401, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 402 or programs loaded from storage section 408 into random access memory (RAM). The RAM 403 also stores various programs and data required for system operation. The CPU 401, ROM 402, and RAM 403 are interconnected via a bus 404. An input / output interface 405 (I / O interface) is also connected to the bus 404.
[0113] The following components are connected to the input / output interface 405: an input section 406 including a keyboard, mouse, etc.; an output section 407 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 408 including a hard disk, etc.; and a communication section 409 including a network interface card such as a local area network card, modem, etc. The communication section 409 performs communication processing via a network such as the Internet. A drive 410 is also connected to the input / output interface 405 as needed. A removable medium 411, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 410 as needed so that computer programs read from it can be installed into the storage section 408 as needed.
[0114] Specifically, according to embodiments of this application, the processes described in the various method flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 409, and / or installed from removable medium 411. When the computer program is executed by central processing unit 401, it performs various functions defined in the system of this application.
[0115] According to another aspect of the embodiments of this application, an electronic device for implementing the above-described control instruction forwarding method is also provided. The electronic device of this embodiment is as follows: Figure 5 As shown, the electronic device includes a memory 502 and a processor 504. The memory 502 stores a computer program, and the processor 504 is configured to execute the steps of any of the above method embodiments through the computer program.
[0116] Optionally, in this embodiment, the aforementioned electronic device may be located in at least one of a plurality of network devices in a computer network.
[0117] Alternatively, as those skilled in the art will understand, Figure 5 The structure shown is for illustrative purposes only; electronic devices can also be business control devices. Figure 5 This does not limit the structure of the aforementioned electronic devices. For example, the electronic device may also include components that are more... Figure 5 The more or fewer components shown (such as network interfaces, etc.), or having the same Figure 5 The different configurations shown.
[0118] The memory 502 can be used to store software programs and modules, such as the program instructions / modules corresponding to the control instruction forwarding method and apparatus in this embodiment. The processor 504 executes various functional applications and data processing by running the software programs and modules stored in the memory 502, thereby implementing the aforementioned control instruction forwarding method. The memory 502 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 502 may further include memory remotely located relative to the processor 504, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Specifically, the memory 502 may be used, but is not limited to, for information such as logs containing sensitive data. As an example, such as... Figure 5As shown, the memory 502 may include, but is not limited to, the motherboard baseboard control manager 32, the graphics processor baseboard control manager 34, and the switch 36 which is connected to both the motherboard baseboard control manager and the graphics processor baseboard control manager. Furthermore, it may include, but is not limited to, other module units in the control command forwarding system described above, which will not be elaborated upon in this example.
[0119] Optionally, the transmission device 506 described above is used to receive or send data through a network. Specific examples of the network described above may include wired networks and wireless networks. In one example, the transmission device 506 includes a Network Interface Controller (NIC), which can be connected to other network devices and a router via a network cable to communicate with the Internet or a local area network. In another example, the transmission device 506 is a Radio Frequency (RF) module, used for wireless communication with the Internet.
[0120] In addition, the above-mentioned electronic device also includes a display 508 and a connection bus 510 for connecting the various module components in the above-mentioned electronic device.
[0121] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.
[0122] Obviously, those skilled in the art should understand that the modules or steps of this application described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented here, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, this application is not limited to any particular hardware and software combination.
[0123] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the principles of this application should be included within the protection scope of this application.
Claims
1. A method for forwarding control commands, characterized in that, A motherboard baseboard control manager applied to the network card, including: The first interface of the motherboard baseboard control manager is determined; If it is determined that the first interface and the network card are connected, the control command from the network card is forwarded to the second interface of the motherboard baseboard control manager through the first interface; wherein, the first interface and the second interface are connected, and the control command is sent from the host computer to the network card through the local area network; The control command received through the first interface is parsed to obtain a first parsing result; if the first parsing result is determined to instruct the control server, the server is controlled according to the control command; if the first parsing result is determined to instruct the control of the graphics processing unit (GPU), a first switching interface connected to the local area network (LAN), a second switching interface connected to the second interface, and a third switching interface connected to the GPU control manager are determined from the switching interfaces of the switch installed on the GPU; the control command is sent to the switch through the second switching interface; the control command is forwarded to the GPU control manager through the third switching interface, and the GPU control manager is controlled according to the control command. If it is determined that the first interface and the network card are not connected, the switch is used to forward the control commands from the host computer to the second interface of the motherboard baseboard control manager, wherein the switch is connected to the first interface and the second interface respectively.
2. The method according to claim 1, characterized in that, After forwarding the control commands to the graphics processor board control manager via the third switching interface, the method further includes: When a response command generated by the graphics processor board control manager is received through the switching interface of the switch, the response command is parsed to obtain a second parsing result. The second parsing result is sent to a host computer connected to the local area network through the first interface, so that the host computer can display the second parsing result to the target object.
3. The method according to claim 1, characterized in that, If it is determined that the first interface and the network card are not connected, the switch is used to forward the control commands from the host computer to the second interface of the motherboard control manager, including: Identify the first switching interface connected to the local area network and the second switching interface connected to the second interface from the switching interfaces of the switch. The control command is forwarded from the first switching interface to the second switching interface, and then forwarded from the second switching interface to the second interface, wherein the first switching interface and the second switching interface are connected.
4. The method according to claim 3, characterized in that, After forwarding the control command to the second interface via the second switching interface, the method further includes: The control commands forwarded via the second interface are parsed to obtain a third parsing result; If it is determined that the third parsing result is used to control the server, the server is controlled according to the control instructions. If the third parsing result is determined to be used to instruct the control of the graphics processor device, the control command is sent to the graphics processor board control manager.
5. The method according to claim 4, characterized in that, Sending the control commands to the graphics processor board control manager includes: A third switching interface connected to the graphics processor board control manager is determined from the switching interfaces of the switch, wherein the second switching interface is connected to the third switching interface; The control command is forwarded to the third switching interface through the second switching interface, and then forwarded to the graphics processor board control manager through the third switching interface; When a response command generated by the graphics processor board control manager is received through the switching interface of the switch, the response command is parsed to obtain a fourth parsing result. The fourth parsing result is sent to the host computer connected to the local area network through the second interface, so that the host computer can display the fourth parsing result to the target object; The step of sending the fourth parsing result to a host computer connected to the local area network via the second interface includes: The fourth parsing result is forwarded to the second switching interface through the second interface and the second switching interface; The fourth parsing result is forwarded to the host computer connected to the local area network through the second switching interface and the first switching interface.
6. A control command forwarding system, characterized in that, include: A network card connected to a local area network, a motherboard baseboard control manager, a graphics processor baseboard control manager, and a switch connected to both the motherboard baseboard control manager and the graphics processor baseboard control manager; The first interface of the motherboard baseboard control manager is connected to the network card, and the first interface and the network card are either in a connected state or a disconnected state. The first switching interface of the switch is connected to the local area network, the second switching interface of the switch is connected to the second interface of the motherboard baseboard control manager, and the third switching interface of the switch is connected to the graphics processor baseboard control manager. The motherboard baseboard control manager is configured to, when determining that there is a connection between the first interface and the network card, forward control commands from the network card to a second interface of the motherboard baseboard control manager through the first interface; wherein the first interface and the second interface are connected, and the control commands are sent from the host computer to the network card via a local area network; and is further configured to parse the control commands received through the first interface to obtain a first parsing result; if it is determined that the first parsing result is used to instruct a control server, control the server according to the control command; and if it is determined that the first parsing result is used to instruct the control of a graphics processing unit (GPU) device, control the switch configured on the GPU device. The system identifies a first switching interface connected to the local area network, a second switching interface connected to the second interface, and a third switching interface connected to the graphics processing unit (GPU) board control manager. Control commands are sent to the switch via the second switching interface. The control commands are forwarded to the GPU board control manager via the third switching interface, and the GPU board control manager is controlled according to the control commands. If it is determined that the first interface and the network card are not connected, the switch is used to forward control commands from the host computer to the second interface of the motherboard board control manager, wherein the switch is connected to both the first interface and the second interface.
7. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 5.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method described in any one of claims 1 to 5.
Citation Information
Patent Citations
Out-of-band management system and server based on intelligent network card
CN113645047A