一种兼具带内和带外两种方式的BMC固件升级系统及方法[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202010125197.7
(22)申请日 2020.02.27
(71)申请人 苏州浪潮智能科技有限公司
地址 215100 江苏省苏州市吴中区吴中经
济开发区郭巷街道官浦路1号9幢
(72)发明人 徐明 王志浩 
(74)专利代理机构 济南诚智商标专利事务所有
限公司 37105
代理人 黄晓燕
(51)Int.Cl.
G06F  8/65(2018.01)
(54)发明名称
一种兼具带内和带外两种方式的BMC固件
级系统及方法
(57)摘要
本发明涉及服务器技术领域,提供一种兼具
带内和带外两种方式的BMC固件升级系统及方
法,系统包括BMC模块扩展模块和专用网口;专
用网口为BMC模块提供常规的BMC固件带外方式
的升级;扩展模块接收主机端发送的BMC固件升
级包,并将接收到的BMC固件升级包转发或透传
给BMC模块;BMC模块接收扩展模块转发或透传的
BMC固件升级包,同时对接收到的BMC固件升级包
进行解析,并执行BMC固件带内升级动作,从而实
现兼容带内和带外两种升级BMC固件的方式,并
且针对存储系统提供更多可靠性策略,可以使搭
载BMC的存储扩展系统同时应用于统一存储系统
和服务器系统等,大大提高了设备部署和管理的
可靠性和灵活性。权利要求书2页  说明书6页  附图3页CN 111338676 A 2020.06.26
C N  111338676
A
1.一种兼具带内和带外两种方式的BMC固件升级系统,其特征在于,包括BMC模块、扩展模块和专用网口;
所述专用网口,与所述BMC模块连接,用于为所述BMC模块提供常规的BMC固件带外方式的升级;
所述扩展模块,设置在存储系统的板卡上,与主机端host以及所述BMC模块连接,用于接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块;
所述BMC模块,设置在存储系统的板卡上,用于接收所述扩展模块转发或透传的BMC固件升级包,同时对接收到的所述BMC固件升级包进行解析,并执行BMC固件带内升级动作;
其中,在所述扩展模块与所述主机端建立带内升级通讯交互前,所述主机端通过所述扩展模块控制关闭所述专用网口,当所述BMC模块执行BMC固件带内升级动作结束时,所述主机端通过所述扩展模块打开所述专用网口,同时,当所述BMC模块执行BMC固件带内升级动作失败时,所述主机端通过所述扩展模块打开所述专用网口的同时,配合所述BMC模块执行BMC固件带外升级动作。
2.根据权利要求1所述的兼具带内和带外两种方式的BMC固件升级系统,其特征在于,所述扩展模块具体包括:
升级包接收模块,与所述主机端连接,用于接收所述主机端发送的BMC固件升级包;
转发模块,与所述升级包接收模块连接,用于将所述升级包接收模块接收到的BMC固件升级包转发给所述BMC模块;
透传模块,与所述升级包接收模块连接,用于将所述升级包接收模块接收到的BMC固件升级包透传给所述BMC模块。
3.根据权利要求2所述的兼具带内和带外两种方式的BMC固件升级系统,其特征在于,所述扩展模块还包括:
升级包传输方式确定模块,用于根据所述扩展模块的RAM的空间大小,与所述主机端确定升级包的传输方式,所述传输方式包括一次性传输方式和分片传输方式;
当采用所述分片传输方式进行BMC固件升级包的传输时,所述主机端还包括一数据包分片模块;
所述数据包分片模块,用于根据所述扩展模块的RAM的空间大小,对BMC固件升级包进行分片,生成若干个BMC固件升级分片包。
4.根据权利要求3所述的兼具带内和带外两种方式的BMC固件升级系统,其特征在于,当所述主机端与所述扩展模块之间采用分片传输方式传输所述BMC固件升级包时,所述BMC 模块还包括一分片包拼装模块;
所述分片包拼装模块,用于对所述扩展模块转发或透传的若干个所述BMC固件升级分片包进行拼装,生成完整的BMC固件升级包。
5.根据权利要求3所述的兼具带内和带外两种方式的BMC固件升级系统,其特征在于,所述存储系统的多存储节点的对应的扩展模块之间相互通讯连接;
当其中一个存储节点的带内数据链路出现故障时,正常运行的扩展模块向出现故障的带内数据链路所对应的BMC模块转发BMC固件升级包,出现故障的带内数据链路所对应的BMC模块执行BMC固件升级动作。
6.一种基于权利要求1所述的兼具带内和带外两种方式的BMC固件升级系统的兼具带内和带外两种方式的BMC固件升级方法,其特征在于,所述方法包括下述步骤:主机端通过扩展模块控制关闭所述专用网口;
扩展模块接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块;
BMC模块接收所述扩展模块转发或透传的BMC固件升级包,同时对接收到的所述BMC固件升级包进行解析,并执行BMC固件带内升级动作;
当所述BMC模块执行BMC固件带内升级动作结束时,所述主机端通过所述扩展模块打开所述专用网口;
当所述BMC模块执行BMC固件带内升级动作失败时,所述主机端通过所述扩展模块打开所述专用网口的
同时,配合所述BMC模块执行BMC固件带外升级动作。
7.根据权利要求6所述的兼具带内和带外两种方式的BMC固件升级方法,其特征在于,所述扩展模块接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块的步骤具体包括下述步骤:
升级包接收模块接收所述主机端发送的BMC固件升级包;
转发模块将所述升级包接收模块接收到的BMC固件升级包转发给所述BMC模块;
透传模块将所述升级包接收模块接收到的BMC固件升级包透传给所述BMC模块。
8.根据权利要求7所述的兼具带内和带外两种方式的BMC固件升级方法,其特征在于,所述方法还包括下述步骤:
根据所述扩展模块的RAM的空间大小,升级包传输方式确定模块与所述主机端确定升级包的传输方式,所述传输方式包括一次性传输方式和分片传输方式;
当采用所述分片传输方式进行BMC固件升级包的传输时,所述主机端还的数据包分片模块根据所述扩展模块的RAM的空间大小,对BMC固件升级包进行分片,生成若干个BMC固件升级分片包。
9.根据权利要求8所述的兼具带内和带外两种方式的BMC固件升级方法,其特征在于,当所述主机端与所述扩展模块之间采用分片传输方式传输所述BMC固件升级包时,所述方法还包括下述步骤:
分片包拼装模块对所述扩展模块转发或透传的若干个所述BMC固件升级分片包进行拼装,生成完整的BMC固件升级包。
10.根据权利要求8所述的兼具带内和带外两种方式的BMC固件升级方法,其特征在于,所述方法还包括下述步骤:
所述存储系统的多存储节点的对应的扩展模块之间相互通讯连接,当其中一个存储节点的带内数据链路出现故障时,正常运行的扩展模块向出现故障的带内数据链路所对应的BMC模块转发BMC固件升级包,出现故障的带内数据链路所对应的BMC模块执行BMC固件升级动作。
一种兼具带内和带外两种方式的BMC固件升级系统及方法
技术领域
[0001]本发明属于服务器技术领域,尤其涉及一种兼具带内和带外两种方式的BMC固件升级系统及方法。
背景技术
[0002]服务器系统中一般应用BMC的专用网口进行FW升级,这种方式为常见的管理和业务分离的带外升级方式。在存储系统中,因存储host端定制OS的原因,更多的采用带内的方式进行设备FW升级。随着服务器和存储业务的发展,两者间的界限越发模糊,特别是存储扩展柜系统,不论是存储主机端还是服务器端都可以应用,这就需要对BMC的FW升级方式提出更多的要求。
[0003]目前,盘控一体的存储系统下,BMC挂接在PCH下,作为PCH的一个end point设备,上层OS通过PCH和BMC之间PCIE链路进行带内BMC FW升级。但是在盘控分离场景下,控制柜通过高速线缆(中间只能跑高速SAS或者PCIE)连接存储扩展柜,控制柜的OS只能通过PCIE/ SAS链路连接到扩展柜上的SAS Expander、PCIE Switch等扩展器件,无法直接链接扩展柜中的BMC,也无法实现对扩展柜上BMC的带内升级。
发明内容
[0004]针对现有技术中的缺陷,本发明提供了一种兼具带内和带外两种方式的BMC固件升级系统,旨在解决现有技术中盘控分离的情形下,无法实现BMC固件带内升级的问题。[0005]本发明所提供的技术方案是:一种兼具带内和带外两种方式的BMC固件升级系统,包括BMC模块、扩展模块和专用网口;
[0006]所述专用网口,与所述BMC模块连接,用于为所述BMC模块提供常规的BMC固件带外方式的升级;
[0007]所述扩展模块,设置在存储系统的板卡上,与主机端host以及所述BMC模块连接,用于接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块;
[0008]所述BMC模块,设置在存储系统的板卡上,用于接收所述扩展模块转发或透传的BMC固件升级包,同时对接收到的所述BMC固件升级包进行解析,并执行BMC固件带内升级动作;
[0009]其中,在所述扩展模块与所述主机端建立带内升级通讯交互前,所述主机端通过所述扩展模块控制关闭所述专用网口,当所述BMC模块执行BMC固件带内升级动作结束时,所述主机端通过所述扩展模块打开所述专用网口,同时,当所述BMC模块执行BMC固件带内升级动作失败时,所述主机端通过所述扩展模块打开所述专用网口的同时,配合所述BMC模块执行BMC固件带外升级动作。
[0010]作为一种改进的方案,所述扩展模块具体包括:
[0011]升级包接收模块,与所述主机端连接,用于接收所述主机端发送的BMC固件升级
包;
[0012]转发模块,与所述升级包接收模块连接,用于将所述升级包接收模块接收到的BMC 固件升级包转发给所述BMC模块;
[0013]透传模块,与所述升级包接收模块连接,用于将所述升级包接收模块接收到的BMC 固件升级包透传给所述BMC模块。
[0014]作为一种改进的方案,所述扩展模块还包括:
[0015]升级包传输方式确定模块,用于根据所述扩展模块的RAM的空间大小,与所述主机端确定升级包的传输方式,所述传输方式包括一次性传输方式和分片传输方式;[0016]当采用所述分片传输方式进行BMC固件升级包的传输时,所述主机端还包括一数据包分片模块;
[0017]所述数据包分片模块,用于根据所述扩展模块的RAM的空间大小,对BMC固件升级包进行分片,生成若干个BMC固件升级分片包。
[0018]作为一种改进的方案,当所述主机端与所述扩展模块之间采用分片传输方式传输所述BMC固件升级包时,所述BMC模块还包括一分片包拼装模块;
[0019]所述分片包拼装模块,用于对所述扩展模块转发或透传的若干个所述BMC固件升级分片包进行拼装,生成完整的BMC固件升级包。
[0020]作为一种改进的方案,所述存储系统的多存储节点的对应的扩展模块之间相互通讯连接;
[0021]当其中一个存储节点的带内数据链路出现故障时,正常运行的扩展模块向出现故障的带内数据链路所对应的BMC模块转发BMC固件升级包,出现故障的带内数据链路所对应的BMC模块执行BMC固件升级动作。
[0022]本发明的另一目的在于提供一种基于兼具带内和带外两种方式的BMC固件升级系统的兼具带内和带外两种方式的BMC固件升级方法,所述方法包括下述步骤:
[0023]主机端通过扩展模块控制关闭所述专用网口;
[0024]扩展模块接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块;
[0025]BMC模块接收所述扩展模块转发或透传的BMC固件升级包,同时对接收到的所述BMC固件升级包进行解析,并执行BMC固件带内升级动作;
[0026]当所述BMC模块执行BMC固件带内升级动作结束时,所述主机端通过所述扩展模块打开所述专用网口;
[0027]当所述BMC模块执行BMC固件带内升级动作失败时,所述主机端通过所述扩展模块打开所述专用网口的同时,配合所述BMC模块执行BMC固件带外升级动作。
[0028]作为一种改进的方案,所述扩展模块接收所述主机端发送的BMC固件升级包,并将接收到的BMC固件升级包转发或透传给所述BMC模块的步骤具体包括下述步骤:
[0029]升级包接收模块接收所述主机端发送的BMC固件升级包;
[0030]转发模块将所述升级包接收模块接收到的BMC固件升级包转发给所述BMC模块;[0031]透传模块将所述升级包接收模块接收到的BMC固件升级包透传给所述BMC模块。[0032]作为一种改进的方案,所述方法还包括下述步骤:
[0033]根据所述扩展模块的RAM的空间大小,升级包传输方式确定模块与所述主机端确

本文发布于:2024-09-20 21:40:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/463184.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模块   固件   升级   扩展   接收   带外
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议