博通400G网卡的光模块信息无法获取

使用的BMC 基于2509版本
iBMA版本为2.20.0

博通 P1400GD网卡的光模块信息获取不到:


ibma传来的数据为空:

OS下 ethtool命令也无法获取:
image

这个算是问题么? 是否需要iBMA那边处理还是说让BMC尝试通过ncsi over mctp去获取

使用高版本的ethtool可以获取到光模块信息,具体版本是ethtool-6.15

答案内容由AI生成,仅供参考:

结论与建议

这是一个需要处理的问题。光模块信息(温度、功率、状态等)是监控网卡健康与性能的关键数据,持续的“空数据”状态可能导致BMC无法进行正确的光模块温度管理、链路诊断以及故障告警。

处理方案建议(基于上下文提供的选项)

根据 reference_id 2 中用户 liujie_11 的提问和上下文中的其他讨论,主要有两个方向:

方向一:从iBMA层面处理(优先排查)

  • 根本原因:问题根源在于 OS下网卡驱动 无法正常获取光模块EEPROM数据。
  • 行动
    1. 检查网卡驱动 bnxt_en 的版本是否与固件版本完全匹配,或尝试升级到Broadcom推荐的最新稳定版本。
    2. 检查网卡固件本身是否存在已知的与光模块读取相关的Bug,或对特定光模块型号的兼容性问题。
    3. 从逻辑上看,iBMA只是调用了OS的 ethtool 接口,它本身并没有错误。因此,iBMA开发团队的主要关注点在于确保其能正确解析 ethtool -m 返回的数据。如果 ethtool -m 底层失败,iBMA无能为力。

方向二:让BMC尝试通过NC-SI over MCTP去获取(备选方案)

  • 可行性:在 reference_id 2 的讨论中,提问者考虑了是否让BMC绕过OS,直接通过带外方式(NC-SI over MCTP)去获取光模块信息。
  • 行动
    1. 评估网卡支持:需要确认 BCM957608-P1400GDF00 网卡是否 支持BMC通过NC-SI over MCTP协议直接读取其光模块EEPROM。通常,较新的支持带外管理的网卡(如182x系列)具备此能力,但Broadcom的P1400GD系列是否支持,需要查阅其技术规格书,或咨询Broadcom支持。
    2. 代码实现:如果网卡支持,则需要在BMC的 network_adapter 或相关组件中进行开发,实现通过NC-SI over MCTP获取光模块信息的通路。

总结

  1. 这是一个明确的问题,主要表现为OS层已无法获取光模块信息。
  2. 首选处理方是iBMA侧与网卡驱动/固件厂商协同,解决OS下 ethtool -m 获取数据失败这个根因。
  3. 备选方案是确认该Broadcom网卡是否支持带外方式(NC-SI over MCTP)读取光模块信息。若支持,可由BMC开发团队实施,但这会引入额外的复杂度。

建议先联系网卡厂商(Broadcom) 排查驱动和固件问题,同时向iBMA开发团队确认当前版本是否已完整支持该特定型号网卡的光模块信息上报逻辑。

点击此处查看详细分析解答

根据提供的Context信息,针对您描述的“博通400G网卡(BCM957608-P1400GDF00)的光模块信息无法获取”的问题,以下是详细分析:

问题概述

您使用的环境为:

  • BMC版本:基于2509版本
  • iBMA版本:2.20.0
  • 网卡型号:BCM957608-P1400GDF00(Broadcom P1400GD芯片,400GE网卡)

现象如下:

  • iBMA传递的数据为空:在BMC侧通过D-Bus接口查询,IsSffExist属性为false,所有光模块相关信息(如温度、电压、功率等)均为null
  • OS下ethtool命令也无法获取:执行 ethtool -m enp23s0np0 只返回了 Identifier : 0x1e ( reserved or unknown),未能读取到完整的光模块EEPROM数据。

原因分析

从上下文可以推断出两个关键问题点:

1. iBMA获取光模块信息的前置条件未触发

根据文档 reference_id 5 的回复,iBMA获取光模块信息的流程如下:

  • iBMA会通过类似 ethtool <网口> 命令判断网卡的接口类型。
  • 只有当 网口状态为 LinkUp网口类型为非电口(即 Supported ports 不显示 TP 时,iBMA才会尝试通过 ethtool -m <网口> 获取光模块信息。

在您的案例中,虽然OS下网卡状态为 LinkUp,但可能由于网卡驱动(bnxt_en)或固件层面的问题,导致iBMA在执行 ethtool 命令时,未将网口正确识别为“光口”(即未触发获取光模块信息的逻辑),或者执行 ethtool -m 命令时,底层驱动返回数据为空,从而导致iBMA上报的 IsSffExistfalse

2. 网卡驱动或固件层面存在问题

  • OS下 ethtool -m 命令失败:这直接表明在操作系统层面,网卡驱动(bnxt_en)未能成功与光模块EEPROM通信。这与iBMA使用的底层机制相同,因此iBMA也无法获取到数据。
  • 网卡固件版本:当前网卡固件版本为 235.1.164.6,驱动版本为 1.10.3-235.1.164.0。这些版本可能存在与光模块通信相关的已知问题或兼容性问题。

结论与建议

这是一个需要处理的问题。光模块信息(温度、功率、状态等)是监控网卡健康与性能的关键数据,持续的“空数据”状态可能导致BMC无法进行正确的光模块温度管理、链路诊断以及故障告警。

处理方案建议(基于上下文提供的选项)

根据 reference_id 2 中用户 liujie_11 的提问和上下文中的其他讨论,主要有两个方向:

方向一:从iBMA层面处理(优先排查)

  • 根本原因:问题根源在于 OS下网卡驱动 无法正常获取光模块EEPROM数据。
  • 行动
    1. 检查网卡驱动 bnxt_en 的版本是否与固件版本完全匹配,或尝试升级到Broadcom推荐的最新稳定版本。
    2. 检查网卡固件本身是否存在已知的与光模块读取相关的Bug,或对特定光模块型号的兼容性问题。
    3. 从逻辑上看,iBMA只是调用了OS的 ethtool 接口,它本身并没有错误。因此,iBMA开发团队的主要关注点在于确保其能正确解析 ethtool -m 返回的数据。如果 ethtool -m 底层失败,iBMA无能为力。

方向二:让BMC尝试通过NC-SI over MCTP去获取(备选方案)

  • 可行性:在 reference_id 2 的讨论中,提问者考虑了是否让BMC绕过OS,直接通过带外方式(NC-SI over MCTP)去获取光模块信息。
  • 行动
    1. 评估网卡支持:需要确认 BCM957608-P1400GDF00 网卡是否 支持BMC通过NC-SI over MCTP协议直接读取其光模块EEPROM。通常,较新的支持带外管理的网卡(如182x系列)具备此能力,但Broadcom的P1400GD系列是否支持,需要查阅其技术规格书,或咨询Broadcom支持。
    2. 代码实现:如果网卡支持,则需要在BMC的 network_adapter 或相关组件中进行开发,实现通过NC-SI over MCTP获取光模块信息的通路。

总结

  1. 这是一个明确的问题,主要表现为OS层已无法获取光模块信息。
  2. 首选处理方是iBMA侧与网卡驱动/固件厂商协同,解决OS下 ethtool -m 获取数据失败这个根因。
  3. 备选方案是确认该Broadcom网卡是否支持带外方式(NC-SI over MCTP)读取光模块信息。若支持,可由BMC开发团队实施,但这会引入额外的复杂度。

建议先联系网卡厂商(Broadcom) 排查驱动和固件问题,同时向iBMA开发团队确认当前版本是否已完整支持该特定型号网卡的光模块信息上报逻辑。

iBMA反馈未支持过该网卡,因此无法获取相关信息。建议确认下如果是新网卡的话可以向PAE提相关的需求。