硬件连接与独立运行BMC是服务器主板上的一个独立芯片或模块,拥有自己独立的处理器、内存、存储和电源供应。它与服务器的其他关键组件(如CPU、内存、硬盘等)通过特定的硬件接口和总线进行连接,例如系统管理总线(SMBus) 。这种独立设计使得BMC能够在服务器主操作系统(OS)未启动、甚至主电源关闭的情况下依然正常运...
BMC管理口是一种带有网络接口的串行管理接口,它可以通过局域网或互联网与服务器远程连接,从而实现对服务器的监视和控制。 BMC管理口支持IPMI(Intelligent Platform Management Interface,智能平台管理接口)协议,该协议定义了服务器管理功能的通用接口标准,SMBus(System Management Bus,系统管理总线)协议、红鲱鱼协议等。 BM...
NVMe 固件更新的协议由 NVM Express 标准指定,NVMe 设备通常都会支持。只要设备支持带外的 NVMe-MI,带外固件更新应该可以正常工作。通常带外的 NVMe-MI 协议是通过 MCTP 协议实现, 物理链路根据不同的设备可能是 SMBus, PCIe,此文档基于 SMBus 和 PCIe 的实现进行说明, 也就是常说的 NVMe-MI over MCPT over...
简而言之,BMC本身也是一个具备独立处理能力的小系统,通常搭载的是ARM处理器。在服务器系统中的位置大致如下:BMC通过LPC、I2C、SMBUS、Serial等基本接口与系统中的其他组件相连结。特别值得一提的是,IPMI——这一与BMC相匹配的总线协议。所有BMC都必须实现IPMI接口,它全称为Intelligent Platform Management Interface...
简而言之,BMC就是嵌入到服务器主板上的一块独立处理器,通过IPMB、LPC(low-pin-count-interface)、SMBus等各种接口收集与主机内部的其他软硬件组件进行通信,并通过网络、串行/Moderm、PCI等接口传向本地主机/远程服务器提供查询和控制功能。 典型的BMC系统如下所示: ...
通信总线:包括I2C、SMBus和IPMB等,确保BMC与主板和其他组件的顺畅通信。 BMC核心功能实践 现代BMC实现提供了广泛的管理功能。让我们通过实际示例和真实应用来检验这些功能。以下是使用IPMI命令的BMC操作全面概述: # 基本系统信息检索 ipmitool -I lanplus -H [BMC_IP] -U [USERNAME] -P [PASSWORD] sdr list ...
针对NVMe硬盘,可以通过BMC透过Smbus协议读NVMe的寄存器,具体命令为i2ctransfer -y {bus} w2@0xd4 0x00 0x04 r1,或者通过代码中Smbus标准接口获取寄存器信息。 针对PSU电源,可以通过BMC透过Pmbus协议读PSU的寄存器,具体命令为i2ctransfer -y {bus} w1@addr 0x79 r2, 或者通过代码中Pmbus标准接口获取寄存器信息。
SMBus系统接口(SSIF)定义了到BMC的基于SMBus的系统接口。与其他系统接口定义(例如KCS)不同,SSIF不指定一组映射到I/O或主机处理器空间的内存。SSIF假定系统中存在一个SMBus主机控制器。 SSIF封装了IPMI消息,并使用SMBus“写块”和“读取块”协议在主机控制器和BMC之间传输它们。使用SSIF,BMC总是作...
通常,BMC 和 BIOS 之间的通信可以通过 IPMI(Intelligent Platform Management Interface)或 SMBus(System Management Bus)来实现。在这里,我们以 IPMI 为例,介绍如何在 BIOS 中通过 IPMI 协议与 BMC 进行通信。 3. 代码示例 3.1 初始化 IPMI 首先,在 BIOS 中需要初始化 IPMI 协议,以便与 BMC 建立通信。以下是...
技术实现:通过传感器(如I2C、SMBus)采集硬件数据,并存储在BMC的寄存器中。 应用场景:当硬件参数超出预设阈值时,BMC会触发告警或自动执行保护措施(如关机)。 电源管理 功能描述:支持远程开关机、重启、电源状态查询等操作。 技术实现:通过IPMI(Intelligent Platform Management Interface)协议实现电源控制。