Search

US-12619568-B2 - Multi-interface/protocol component management system

US12619568B2US 12619568 B2US12619568 B2US 12619568B2US-12619568-B2

Abstract

A multi-interface/protocol component management system includes a BMC device coupled to each of a plurality of components by one of its plurality of communication interfaces. The BMC device identifies a subset of the components that communicate via a first transport protocol, retrieves protocol/communication interface information from each of the subset of the components that identifies a messaging protocol used by that component and the communication interface that couples that component to the BMC device, and transmits a respective management command for each of the subset of the components using the first transport protocol, the messaging protocol used by that component, and the communication interface coupled to that component. The BMC device then receives management data from each of the subset of the components in response to transmitting the respective management commands, and manages the subset of the components using the management data.

Inventors

  • Chandrasekhar Mugunda
  • Rui An
  • Shivabasava Karibasappa Komaranalli

Assignees

  • DELL PRODUCTS L.P.

Dates

Publication Date
20260505
Application Date
20240617

Claims (20)

  1. 1 . A multi-interface/protocol component management system, comprising: a plurality of components; and a Baseboard Management Controller (BMC) device that includes a plurality of communication interfaces and that is coupled to each of the plurality of components by one of the plurality of communication interfaces, where the BMC device is configured to: discover a first subset of the plurality of components that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC device; determine, as part of the discovery of the first subset of the plurality of components, that the first subset of the plurality of components communicate via a first transport protocol; retrieve, from each of the first subset of the plurality of components using the first transport protocol, protocol/communication interface information that identifies one of a plurality of first messaging protocols used by that component and the one of the plurality of communication interfaces that couples that component to the BMC device; transmit a respective first management command for each of the first subset of the plurality of components using the first transport protocol, the one of the plurality of first messaging protocols identified by the protocol/communication interface information retrieved for that component, and the one of the plurality of communication interfaces identified by the protocol/communication interface information retrieved for that component; receive, in response to transmitting the respective first management commands, first management data from each of the first subset of the plurality of components; and manage, using the first management data, the first subset of the plurality of components.
  2. 2 . The system of claim 1 , where the BMC device is configured to: discover a second subset of the plurality of components that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC device; determine, as part of the discovery of second first subset of the plurality of components, that the second subset of the plurality of components communicate via a second transport protocol that is different than the first transport protocol; transmit a respective second management command for each of the second subset of the plurality of components using the second transport protocol, a second messaging protocol that is different than the plurality of first messaging protocols, and the one of the plurality of communication interfaces that couples that component to the BMC device; receive, in response to transmitting the respective second management commands, second management data from each of the second subset of the plurality of components; and manage, using the second management data, the second subset of the plurality of components.
  3. 3 . The system of claim 2 , wherein the first transport protocol is a Management Component Transport Protocol (MCTP), and the second transport protocol is an Inter-Integrated Circuit (I2C) protocol.
  4. 4 . The system of claim 2 , wherein the plurality of first messaging protocols include at least one of a Platform Level Data Model (PLDM) protocol, a System Management Bus Post Box Interface (SMBPBI) protocol, a Network Controller-Sideband Interface (NC-SI) protocol, and a Non-Volatile Memory express (NVMe) protocol, and wherein the second messaging protocol includes an Inter-Integrated Circuit (I2C) protocol.
  5. 5 . The system of claim 1 , wherein the plurality of communication interfaces include a Peripheral Component Interconnect express (PCIe) interface and an Inter-Integrated Circuit (I2C) interface.
  6. 6 . The system of claim 1 , wherein the BMC device is configured to: retrieve communication bus topology information that includes virtual bus identifiers; use the virtual bus numbers in the communication bus topology information to discover the first subset of the plurality of components; generate, for each of the first subset of the plurality of components, a respective component identifier; and associate, for each of the first subset of the plurality of components, the protocol/communication interface information for that component with the component identifier generated for that component.
  7. 7 . An Information Handling System (IHS), comprising: a Baseboard Management Controller (BMC) processing system; and a BMC memory system that is coupled to the BMC processing system and that includes instructions that, when executed by the BMC processing system, cause the BMC processing system to provide a BMC engine that is configured to: discover a first subset of a plurality of components that are coupled to the BMC processing system and that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC engine; determine, as part of the discovery of the first subset of the plurality of components, that the first subset of the plurality of components communicate via a first transport protocol; retrieve, from each of the first subset of the plurality of components using the first transport protocol, protocol/communication interface information that identifies one of a plurality of first messaging protocols used by that component and the one of a plurality of communication interfaces that couples that component to the BMC processing system; transmit a respective first management command for each of the first subset of the plurality of components using the first transport protocol, the one of the plurality of first messaging protocols identified by the protocol/communication interface information retrieved for that component, and the one of the plurality of communication interfaces identified by the protocol/communication interface information retrieved for that component; receive, in response to transmitting the respective first management commands, first management data from each of the first subset of the plurality of components; and manage, using the first management data, the first subset of the plurality of components.
  8. 8 . The IHS of claim 7 , where the BMC engine is configured to: discover a second subset of the plurality of components that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC engine; determine, as part of the discovery of second first subset of the plurality of components, that the second subset of the plurality of components communicate via a second transport protocol that is different than the first transport protocol; transmit a respective second management command for each of the second subset of the plurality of components using the second transport protocol, a second messaging protocol that is different than the plurality of first messaging protocols, and the one of the plurality of communication interfaces that couples that component to the BMC processing system; receive, in response to transmitting the respective second management commands, second management data from each of the second subset of the plurality of components; and manage, using the second management data, the second subset of the plurality of components.
  9. 9 . The IHS of claim 8 , wherein the first transport protocol is a Management Component Transport Protocol (MCTP), and the second transport protocol is an Inter-Integrated Circuit (I2C) protocol.
  10. 10 . The IHS of claim 8 , wherein the plurality of first messaging protocols include at least one of a Platform Level Data Model (PLDM) protocol, a System Management Bus Post Box Interface (SMBPBI) protocol, a Network Controller-Sideband Interface (NC-SI) protocol, and a Non-Volatile Memory express (NVMe) protocol, and wherein the second messaging protocol includes an Inter-Integrated Circuit (I2C) protocol.
  11. 11 . The IHS of claim 7 , wherein the plurality of communication interfaces include a Peripheral Component Interconnect express (PCIe) interface and an Inter-Integrated Circuit (I2C) interface.
  12. 12 . The IHS of claim 7 , wherein the BMC engine is configured to: retrieve communication bus topology information that includes virtual bus identifiers; use the virtual bus numbers in the communication bus topology information to discover the first subset of the plurality of components; generate, for each of the first subset of the plurality of components, a respective component identifier; and associate, for each of the first subset of the plurality of components, the protocol/communication interface information for that component with the component identifier generated for that component.
  13. 13 . The IHS of claim 7 , wherein the first management data includes thermal sensor data, and wherein the managing the first subset of the plurality of components using the first management data includes using the thermal sensor data to control a fan system.
  14. 14 . A method for managing components that use multiple interfaces and protocols, comprising: discovering, by a Baseboard Management Controller (BMC) device, a first subset of a plurality of components that are coupled to the BMC device and that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC device; determining, by the BMC device as part of the discovery of the first subset of the plurality of components, that the first subset of the plurality of components communicate via a first transport protocol; retrieving, by the BMC device from each of the first subset of the plurality of components using the first transport protocol, protocol/communication interface information that identifies one of a plurality of first messaging protocols used by that component and the one of the plurality of communication interfaces that couples that component to the BMC device; transmitting, by the BMC device, a respective first management command for each of the first subset of the plurality of components using the first transport protocol, the one of the plurality of first messaging protocols identified by the protocol/communication interface information retrieved for that component, and the one of the plurality of communication interfaces identified by the protocol/communication interface information retrieved for that component; receiving, by the BMC device in response to transmitting the respective first management commands, first management data from each of the first subset of the plurality of components; and managing, by the BMC device using the first management data, the first subset of the plurality of components.
  15. 15 . The method of claim 14 , further comprising: discovering, by the BMC device, a second subset of the plurality of components that utilize communication protocols and one or more of the plurality of communication interfaces that have not been identified to the BMC device; determine, by the BMC device as part of the discovery of second first subset of the plurality of components, that the second subset of the plurality of components communicate via a second transport protocol that is different than the first transport protocol; transmitting, by the BMC device, a respective second management command for each of the second subset of the plurality of components using the second transport protocol, a second messaging protocol that is different than the plurality of first messaging protocols, and the one of the plurality of communication interfaces that couples that component to the BMC device; receiving, by the BMC device in response to transmitting the respective second management commands, second management data from each of the second subset of the plurality of components; and managing, by the BMC device using the second management data, the second subset of the plurality of components.
  16. 16 . The method of claim 15 , wherein the first transport protocol is a Management Component Transport Protocol (MCTP), and the second transport protocol is an Inter-Integrated Circuit (I2C) protocol.
  17. 17 . The method of claim 15 , wherein the plurality of first messaging protocols include at least one of a Platform Level Data Model (PLDM) protocol, a System Management Bus Post Box Interface (SMBPBI) protocol, a Network Controller-Sideband Interface (NC-SI) protocol, and a Non-Volatile Memory express (NVMe) protocol, and wherein the second messaging protocol includes an Inter-Integrated Circuit (I2C) protocol.
  18. 18 . The method of claim 14 , wherein the plurality of communication interfaces include a Peripheral Component Interconnect express (PCIe) interface and an Inter-Integrated Circuit (I2C) interface.
  19. 19 . The method of claim 14 , further comprising: retrieving, by the BMC device, communication bus topology information that includes virtual bus identifiers; using, by the BMC device, the virtual bus numbers in the communication bus topology information to discover the first subset of the plurality of components; generating, by the BMC device for each of the first subset of the plurality of components, a respective component identifier; and associating, by the BMC device for each of the first subset of the plurality of components, the protocol/communication interface information for that component with the component identifier generated for that component.
  20. 20 . The method of claim 14 , wherein the first management data includes thermal sensor data, and wherein the managing the first subset of the plurality of components using the first management data includes using the thermal sensor data to control a fan system.

Description

BACKGROUND The present disclosure relates generally to information handling systems, and more particularly to managing components in an information handling system that utilize multiple interfaces and protocols. As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems. Information handling systems such as, for example, server devices and other computing devices known in the art, include components that must be managed, and such management is typically enabled by a Baseboard Management Controller (BMC) such as the integrated DELL® Remote Access Controller (iDRAC) provided in server devices available from DELL® Inc. of Round Rock, Texas, United States. However, as the number of different components provided in server devices increases, the management of such components raises issues. For example, Artificial Intelligence/Machine Learning (AI/ML) server platforms may include any of a variety of multi-Graphics Processing Unit (GPU) systems that are continually increasing the number of components that must be managed by the BMC. Such multi-GPU systems may include GPU components, Network Interface Controller (NIC) components, Field Programmable Gate Array (FPGA) components, re-timer components, and/or other multi-GPU system components that would be apparent to one of skill in the art, and those multi-GPU system components may be connected to the BMC via different interfaces (e.g., Peripheral Component Interconnect express (PCIe) interfaces, Inter-Integrated Circuit (I2C) interfaces, etc.) and may require communication via different messaging protocols (e.g. the Platform Level Data Model (PLDM) protocol, the Non-Volatile Memory express-Management Interface (NVMe-MI) protocol, the Network Controller-Side Band (NC-SI) protocol, the System Management Bus Post Box Interface (SMBPBI) protocol, etc.) and/or transport protocols (e.g., the Management Control Transport Protocol (MCTP), the I2C protocol, etc.) in order to read thermal sensors in those components and/or perform other management operations known in the art. While BMCs include various populator subsystems (e.g., proprietary populators like “PLDMPop” and “PuPop” utilized in the iDRAC discussed above) that are configured to facilitate thermal control, device health monitoring, telemetry data retrieval, and/or other management operations with particular components, such conventional populator subsystems are not scalable as they are customized for particular interfaces and protocols. As such, conventional BMC devices using conventional populator subsystems may experience issues when interacting with different components that communicate via different interfaces and protocols, particularly as new interfaces and/or protocols are introduced in the future. Accordingly, it would be desirable to provide a multi-interface/protocol component management system that addresses the issues discussed above. SUMMARY According to one embodiment, an Information Handling System (IHS) includes a Baseboard Management Controller (BMC) processing system; and a BMC memory system that is coupled to the BMC processing system and that includes instructions that, when executed by the BMC processing system, cause the BMC processing system to provide a BMC engine that is configured to: identify a first subset of a plurality of components that are coupled to the BMC processing system and that communicate via a first transport protocol; retrieve, from each of the first subset of the plurality of components, protocol/communication interface information that identifies one of a plurality of first messaging protocols used by that component and the one of a plurality of communication interfaces that couples that component to the BMC processing sys