Patent ID: 8875154

Claim:
A baseboard management controller (BMC), comprising: a processor; and a memory storing firmware, wherein the firmware, when executed by the processor, is configured to include: a plurality of communication interfaces; a plurality of task modules, each in communication and associated with a respective different one of the communication interfaces; a plurality of message handler queues, each associated with a respective different one of the task modules; and a plurality of message handlers, each associated with a respective different one of the message handler queues; wherein for each communication interface, the task module associated with the communication interface runs on a task thread, and the message handler queue associated with the task module and the message handler associated with the message handler queue run on a handler thread different from the task thread; the task module associated with the communication interface is configured to: receive data from the communication interface; and in response to receiving the data, construct an Intelligent Platform Management Interface (IPMI) request message based on the received data, and post the constructed IPMI request message to the associated message handler queue with the task module; the message handler queue associated with the task module is configured to: temporarily store the IPMI request message posted by the task module; and the message handler associated with the message handler queue is configured to: retrieve the IPMI request message from the message handler queue; process the retrieved IPMI request message; and perform a management function to a host computer of the BMC in accordance with the processed IPMI request message.