Firmware-BMC Inventory Sync Using Combined Redfish Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing mechanisms for providing system inventory data from firmware to a Baseboard Management Controller (BMC) in managed computing systems require sending separate inventory data for each resource, leading to slow boot times and increased computing resource utilization.
Innovation Solution
Implementing a firmware driver that generates a REST HTTP request for combined inventory data using an OEM-defined URI compatible with the REDFISH management standard, allowing for the transmission of inventory data for multiple components in a single request, and updating inventory data only when changes are detected.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate inventory data for each resource is sent to the BMC, then complete inventory data is provided, but boot time increases significantly
Solution Approach 1:
The patent combines inventory data for multiple resources into a single aggregated data structure that is transmitted to the BMC in one operation. Instead of sending separate inventory data for each resource individually, the firmware creates a unified inventory representation that includes all resources, thereby reducing the number of transmission operations and associated overhead while maintaining complete inventory information.
2Reliability
If separate inventory data for each resource is sent to the BMC, then complete inventory data is provided, but computing resource utilization increases
Solution Approach 1:
The patent merges multiple individual inventory data collections into a single aggregated inventory structure. This consolidation reduces the total number of processing operations required, as the firmware and BMC handle one unified data structure instead of multiple separate data sets, thereby reducing CPU cycles and memory operations during the inventory collection and transmission process.
Solution Approach 2:
The patent performs preliminary aggregation of inventory data at the firmware level before transmission to the BMC. By pre-processing and consolidating inventory information into a unified structure beforehand, the system reduces the computational burden during boot time, as the BMC receives already-processed consolidated data rather than requiring it to assemble individual resource inventories.
3Loss of time
If combined inventory data is sent in a single request, then boot time is reduced, but data synchronization accuracy must be maintained
Solution Approach 1:
The patent implements a feedback mechanism where the BMC sends an acknowledgment response after receiving the combined inventory data. This feedback loop allows the firmware to verify that the consolidated inventory data was successfully received and processed, ensuring data synchronization accuracy while maintaining the efficiency benefits of single-request transmission.
Data Source
AI summary
A firmware driver generates a REST Hypertext Transfer Protocol (“HTTP”) request to an identifier for combined inventory data to an interface exposed by a baseboard management controller (“BMC”). The firmware driver receives the combined inventory data from the BMC in response to the request to the identifier exposed by the BMC. The firmware driver performs an inventory of the managed computing system to obtain updated inventory data and determines if the updated inventory data and the combined inventory data are identical. If the updated inventory data and the combined inventory data are not identical, the firmware driver generates new combined inventory data for the managed computing system and posts (e.g., by way of a call to an HTTP POST method) the new combined inventory data for the managed computing system to the identifier exposed by the BMC.


