Hybrid BMC System Adapter Module Protocol Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing BMC systems struggle to integrate diverse functionalities from different BMC solutions, requiring significant effort and time to rewrite task modules for compatibility, especially when using proprietary or open source BMCs with different communication protocols.

Innovation Solution

A hybrid BMC system and method that selects a host BMC and a client BMC with different communication protocols, using an adapter module to interface and compile source code from the client BMC, allowing the host BMC to perform additional tasks through an emulated toolchain and runtime environment, thereby integrating multiple functionalities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple BMC solutions with different communication protocols are integrated into one BMC system, then the functionality and versatility of the BMC system is improved, but the device complexity and difficulty of integration increases

Engineering Contradiction:
Improvefunctionality integrationVSAvoidintegration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces an adapter module as an intermediary component that sits between BMCs with different communication protocols. This adapter module contains protocol translation functionality that converts messages from one protocol to another, enabling seamless communication between BMCs without requiring complex direct integration logic. The adapter module abstracts the protocol differences, making the overall system easier to manage and integrate.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The adapter module is designed with multi-functionality to handle multiple communication protocols simultaneously. It can translate between different BMC protocols (such as IPMI, Redfish, or proprietary protocols) and provides a universal interface that works with various BMC implementations. This universal approach reduces the need for separate integration solutions for each protocol combination.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Loss of time

If source code from client BMC is obtained and compiled on host BMC, then the development time and effort is reduced, but the compatibility and compilation success rate may worsen due to different toolchain requirements

Engineering Contradiction:
Improvedevelopment timeVSAvoidcompilation compatibility
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent implements a toolchain copying mechanism where the compilation toolchain from the client BMC is extracted and copied to the host BMC environment. This copied toolchain is then used to compile the client BMC's source code on the host BMC, ensuring that the compilation process maintains the same environment and dependencies as the original client BMC. This approach preserves compilation reliability while enabling centralized code management.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary actions by pre-configuring the emulated runtime environment and copying necessary toolchains before the actual compilation process. This includes setting up the appropriate compiler versions, libraries, and configuration files in advance, so that when source code needs to be compiled on the host BMC, the environment is already prepared and compatible, avoiding compilation failures.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If an emulated runtime environment is configured on host BMC, then the ability to execute client BMC code on host BMC is improved, but the system resource consumption and complexity increases

Engineering Contradiction:
Improvecode execution capabilityVSAvoidruntime environment complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a nested runtime environment structure where the client BMC's runtime environment is emulated within the host BMC's existing runtime infrastructure. The emulated environment is nested as a virtualized layer that leverages the host BMC's hardware resources while maintaining the client-specific runtime characteristics. This nesting approach allows code execution capability without requiring completely separate runtime systems.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The system merges the client BMC's runtime requirements with the host BMC's existing runtime environment. By combining the emulated client environment with the host's native environment, the patent reduces the overhead of maintaining completely separate runtime systems. The merged approach allows shared resources while preserving the specific execution characteristics needed for client code.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11645219B2Method for generating a hybrid BMC system and hybrid BMC system
Publication Date: 2023.05.09 AMERICAN MEGATRENDS
  • US11645219B2 patent drawing
  • US11645219B2 patent drawing
  • US11645219B2 patent drawing

AI summary

A method for generating a hybrid BMC system and a hybrid BMC system are provided. The method includes: selecting, among a plurality of BMCs, one BMC to be a host BMC; selecting, among the plurality of BMCs, another BMC to be a client BMC, wherein the client BMC uses a first communication protocol different from a second communication protocol used by the host BMC, the client BMC being configured to perform a first task, and the host BMC being configured to perform a second task different from the first task; and configuring an adapter module of the host BMC to interface with the client BMC through the first communication protocol and interface with the host BMC through a second communication protocol such that the host BMC performs the first task through the adapter module.