BMC IPMI Command Routing via Hash-Registered Service Objects

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing BMC systems with IPMI protocol implementations face robustness and maintainability issues due to the complexity of the IPMI daemon, leading to potential system abnormalities when problems occur.

Innovation Solution

The solution involves creating a 'virtual bus' in the BMC system, splitting the complete ipmid service into multiple management service functions, and registering these functions in a Hash table for data sharing and message communication, using a first process to determine and process IPMI commands through pre-registered objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a large and complete ipmid daemon is used to implement all IPMI protocol contents, then the software structure is simplified, but the system robustness deteriorates because once problems occur in any link, the whole IPMI function may be abnormal

Engineering Contradiction:
Improvesoftware structureVSAvoidsystem robustness
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent divides the monolithic ipmid daemon into multiple independent processes (first process, second process, third process, etc.), each responsible for specific IPMI functions. These processes communicate through a hash table mechanism, allowing the system to maintain simplicity while improving robustness through functional separation.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If a large and complete ipmid daemon is used to implement all IPMI protocol contents, then the software structure is simplified, but the maintainability deteriorates due to the numerous contents and rigorous handling requirements

Engineering Contradiction:
Improvesoftware structureVSAvoidsoftware maintainability
Core Design Contradiction:
Device complexityVSEase of repair

Solution Approach 1:

The patent segments the ipmid daemon into multiple independent processes with distinct responsibilities. Each process can be developed, tested, and maintained separately, improving maintainability while the hash table integration maintains overall system coordination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hash table as an intermediary mechanism that enables communication and coordination between the segmented processes. This intermediary allows independent processes to work together without requiring complex inter-process communication protocols, maintaining ease of maintenance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the ipmid daemon is segmented into multiple processes, then the system robustness and maintainability are improved, but the device complexity increases due to multiple processes and hash table management

Engineering Contradiction:
Improvesystem robustnessVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses a hash table as a simple intermediary mechanism to manage communication between multiple processes. This approach provides a straightforward method for inter-process communication without requiring complex message queues or shared memory management, thus limiting the increase in system architecture complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12517800B2IPMI command processing method and system for BMC, and device and medium
Publication Date: 2026.01.06 INSPUR SUZHOU INTELLIGENT TECH CO LTD
  • US12517800B2 patent drawing
  • US12517800B2 patent drawing
  • US12517800B2 patent drawing

AI summary

Disclosed is an IPMI command processing method for a BMC. The method includes the following steps: in response to receiving an IPMI command, determining character strings of several processing objects corresponding to the IPMI command; according to the character strings of the several processing objects, determining the several processing objects which are pre-registered with a hash table on a first process; and processing the IPMI command by using the several processing objects. Further disclosed are a system, a computer device and a readable storage medium. In the solution provided in the present disclosure, a first process is created in a BMC system, and data sharing and message communication between daemon processes of services are performed by means of the first process, such that the robustness of an IPMI function is significantly improved, which is more conducive to bug positioning, post-maintenance, etc.