2. 实现方式 通常,BMC 和 BIOS 之间的通信可以通过 IPMI(Intelligent Platform Management Interface)或 SMBus(System Management Bus)来实现。在这里,我们以 IPMI 为例,介绍如何在 BIOS 中通过 IPMI 协议与 BMC 进行通信。 3. 代码示例 3.1 初始化 IPMI 首先,在 BIOS 中需要初始化 IPMI 协议,以便与 BMC 建立...
PSU、NVMe故障数据采集 针对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管理口是一种带有网络接口的串行管理接口,它可以通过局域网或互联网与服务器远程连接,从而实现对服务器的监视和控制。 BMC管理口支持IPMI(Intelligent Platform Management Interface,智能平台管理接口)协议,该协议定义了服务器管理功能的通用接口标准,SMBus(System Management Bus,系统管理总线)协议、红鲱鱼协议等。 BM...
最初,BMC有一个专用以太网端口来实现远程管理的以太网连接。后来,以太网制造商开始使用专有的边带接口,这是一种让BMC能与操作系统共享以太网端口的机制。这个接口通常基于I2C/SMBus接口,但具有专门的协议。随后,DMTF创建了一个行业标准的边带接口即NCSI接口,它在传输速度上比SMBus更快。
简单来说,NCSI就是主控制器的管理控制器(BMC)和网卡之间通信定义的协议最初,BMC有一个专用以太网端口来实现远程管理的以太网连接后来,以太网制造商开始使用专有的边带接口,这是一种让BMC能与操作系统共享以太网端口的机制。 这个接口通常基于I2C/SMBus接口,但具有专门的协议随后,DMTF创建了一个行业标准的边带接口即...
BMC芯片就相当于计算机中的中央处理器,通过BMC芯片上一对SMBus接口连接网络,用户可通过网络访问实现对远程服务器接管的带外管理(Out-of-band)功能,例如远程接管服务器(Pre-OS),在客户端实现对远程服务器的完全接管;通过RS-232接口连接Modem,在远程服务器宕机情况下,用户可以通过拨号访问获取SDR、SEL数据,分析诊断故障...
基本上服务器上的PSU在设计上都是和PCH(南桥)或者BMC通过I2C相连的,PSU里面控制寄存器设计大多数还是基于PMBus或者SMBus协议设计,如果是PSU也连上了BMC,BMC就可以通过IPMI master write_read CMD 读取PSU中存有电压/电流/功率/Alert信号了,当然得从PSU spec中知道寄存器的地址,PSU的slave address,及PSU要求寄存器读取...
简而言之,BMC就是嵌入到服务器主板上的一块独立处理器,通过IPMB、LPC(low-pin-count-interface)、SMBus等各种接口收集与主机内部的其他软硬件组件进行通信,并通过网络、串行/Moderm、PCI等接口传向本地主机/远程服务器提供查询和控制功能。 典型的BMC系统如下所示: ...
LPC、I2C、SMBUS,Serial等,这些都是比较基本的接口,而IPMI,它是与BMC匹配的总线,所有的BMC都需要实现这种接口,这里需要特别的介绍。 IPMI IPMI的全称是Intelligent Platform Management Interface,智能平台管理接口。 看了名字也不需要特别介绍它用来干什么的了,关于它的详细介绍可以参看https://www.intel.com/content...