假设我想通过with将Get Device Id
命令从LAN
一个通道发送到另一个通道,我需要完成这些步骤:IPMB
BMC
message tracking
Get Device Id
在命令中封装Send Message
命令- 发送
Send Message
命令LAN
以BMC
提供所需的数据,如目标IPMB
地址、所有这些NetFn
s、LUN
s 和在这种情况下最相关的:请求唯一Sequence Number
和message tracking
参数位设置
这里开始我的困惑..因为我看到了两种不同的解决方案如何BMC
处理这种请求:
A
响应在响应中Get Device Id
返回Send Message
B
分开Send Message
和IPMB
回应
,结果取决于BMC
生产者。
所以我需要一些专家知识:
这是IPMI
标准代表的方式,BMC
实现可以提供A
和/或B
?BMC
或者这是对生产者的错误解释?
在我看来和我理解的方式IPMI 2.0 spec
中,唯一的B
解决方案是一个唯一兼容的流程,它应该如何工作,如以下所示6.13.4 Bridged Request Example
:
当通过将请求消息封装在发送消息命令中(来自系统接口以外的源通道)将请求消息桥接到另一个通道时,BMC 立即返回对发送消息命令本身的响应。同时,从发送消息命令中提取请求并转发到指定的目标通道。
IPMI 2.0 spec
甚至提供示例描述:
例如,假设Get Device ID命令已封装在从 LAN 通道定向到 IPMB 的Send Message命令中。BMC 将立即在 LAN 上发送对Send Message命令的响应。BMC 将提取封装的Get Device ID消息内容并将其格式化为 IPMB 的Get Device ID请求。IPMB 上的目标设备以 IPMB 格式的Get Device ID响应消息进行响应。BMC 获取发出发送消息命令时存储的跟踪信息,并使用它来创建 LAN 格式的获取设备 ID响应。
我是 FreeIPMI 的维护者。在我使用过的所有主板中,“B”一直是受支持的实现。我个人从未见过“A”的实现。我会认为“A”实现最低限度是“非标准”的(即使在 IPMI 规范中找到了“A”的法律措辞,行业已经对“B”进行了标准化)。
不确定您的最终目标,但如果您正在开发产品,我可以肯定地说“B”将适用于大多数 IPMI 服务器。如果您有能力与“A”供应商交谈,我肯定会推动他们实施“B”。