CN100550771C - 实现远程加载单板固件的方法和*** - Google Patents

实现远程加载单板固件的方法和*** Download PDF

Info

Publication number
CN100550771C
CN100550771C CNB200610083906XA CN200610083906A CN100550771C CN 100550771 C CN100550771 C CN 100550771C CN B200610083906X A CNB200610083906X A CN B200610083906XA CN 200610083906 A CN200610083906 A CN 200610083906A CN 100550771 C CN100550771 C CN 100550771C
Authority
CN
China
Prior art keywords
firmware
loading
ipmi
data
bmc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB200610083906XA
Other languages
English (en)
Other versions
CN1983977A (zh
Inventor
刘强
余承泽
宋铜铃
王晨光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB200610083906XA priority Critical patent/CN100550771C/zh
Publication of CN1983977A publication Critical patent/CN1983977A/zh
Application granted granted Critical
Publication of CN100550771C publication Critical patent/CN100550771C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种实现远程加载单板固件的方法和***,其核心是:将远端发送给的IPMI数据报文转换为本地能够识别的IPMI数据报文;根据所述转换后的数据报文对本地的单板固件进行加载。通过本发明能够提供标准的IPMI接口实现远端对现场各种单板固件的加载,实现方便,并且可靠性、可扩展性以及可移植性较好,并能够缩短开发周期,降低开发成本。再者,本发明基于IPMI技术能够使IPMI子***独立于CPU***而存在,当CPU***故障时,BMC仍可操作。另外,本发明通过***管理模块将远端传送给的IPMI报文转换为各个单板能够识别的IPMI报文,能够实现对多个单板上的固件的加载。

Description

实现远程加载单板固件的方法和***
技术领域
本发明涉及通信领域,尤其涉及单板固件的加载技术。
背景技术
IPMI(Intelligent Platform Management Interface,智能化平台管理接口)标准是使服务器具备智能化管理的新一代通用接口标准,所述IPMI能够为服务器提供设备管理、传感器/事件管理、用户管理、风扇框/电源框管理、远程维护等功能。
IPMI技术的“智能化”来自于一个管理微控制器。在一个主机***里,这个控制器被称为BMC(Baseboard Management Controller,基板管理控制器)。BMC自备电源,并自动地监控***健康状况。如果发现任何被控单元异常,它能立即采取行动,例如记录事件、报警、自动关机或重启动。与BMC相关联的是一组无源内存,用来存储传感器的数据(Sensor DataRecords,SDR)、***事件记录文件,以及一些单元信息,如序列号和部件号信息等。IPMI通过指定通用、精简、基于消息的接口,将信息传输到管理微控制器,实现软件与硬件信息的分离。因此所述IPMI技术可以独立于主处理器对硬件平台进行监视和控制。如,用户可以利用IPMI监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应以及机箱入侵等,为***管理、恢复以及资产管理提供信息。
由于人们对通信的功能需求日益提升,需要对一些单板固件进行升级,升级的过程需要对单板固件进行加载。
与本发明有关的现有技术一提出了一种在本地对单板固件进行加载的方法,其核心是:通过单板固件具有的接口,并使用专用工具实现对所述单板固件的加载。如CPLD(Complex Programmable Logical Device,可编程逻辑器件)固件可通过连接电脑的JTAG(边界扫描)接口进行加载的方式,或FLASH固件可通过烧片机烧写。
现有技术一需要将单板从机框中卸下来,甚至将固件从单板上卸下来,并使用专用的加载工具实现对单板固件的加载,操作复杂,为单板固件的升级维护带来困难。
与本发明有关的现有技术二提出了另一种在本地对单板固件进行加载的方法,其核心是:通过主机的CPU对连接在所述CPU上的单板固件进行加载。如FLASH固件可通过单板上与其连接的CPU进行加载。
现有技术二只能在本地通过主机软件对连接在所述主机上的单板固件进行加载,其不能通过远程对连接在主机上的单板固件进行加载。
与本发明有关的现有技术三提出了一种实现远程加载的方法,其需要连接固件的CPU能够与远程的远端管理***进行通信,其核心是:所述CPU通过与远程的远端管理***进行通信,并获得加载软件,然后所述CPU将加载软件加载到固件上。
现有技术三虽然能够实现对连接在CPU上的单板固件进行远程加载,但是如果需要加载的单板固件连接在不同的CPU时,则需要设置每个CPU具有与远端管理***进行通信的功能,这样加载接口不统一,实现比较复杂。
由上述现有技术可以看出,现有技术一与现有技术二只能实现对本地单板固件进行加载,而当需要实现远程加载时,需要针对需要加载的不同单板固件连接的CPU具有与远端管理***进行通信的功能,此时加载接口不统一,实施起来较困难。
发明内容
本发明的目的是提供一种实现远程加载单板固件的方法和***,提供标准的加载接口对现场各种单板固件进行远程加载,从而能够为单板固件的升级和维护管理提供方便。
本发明的目的是通过以下技术方案实现的:
本发明提供一种实现远程加载单板固件的方法,其包括:
A、将远端发送的利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给基板管理控制器BMC,所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文;
或者,
将远端发送的利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给***管理模块,所述***管理模块判断出所述IPMI数据报文对应的目的单板,将接收到的所述IPMI数据报文转换为所述目的单板本地协议承载的IPMI数据报文,并将转换后的IPMI数据报文发送给所述目的单板的BMC;
B、根据所述转换后的数据报文对本地的单板固件进行加载。
其中,所述步骤B具体包括:
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据;并将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
本发明提供一种实现远程加载单板固件的***,其包括固件加载单元,且所述固件加载单元包括:
远程与本地数据转换单元,以及本地数据处理单元;
所述远程与本地数据转换单元,用于根据远端发送给的IPMI数据报文判断出其对应的本地数据处理单元,并将接收到的利用适合远距离传输的协议承载的所述IPMI数据报文转换为目的单板本地协议承载的IPMI数据报文,并将其发送给所述本地数据处理单元;
所述本地数据处理单元,用于根据所述转换后的IPMI数据报文对本地相应的单板固件进行加载;
所述远程与本地数据转换单元设置在***管理模块中,所述本地数据处理单元设置在至少一个单板的基板管理控制器BMC中;
或,
所述远程与本地数据转换单元以及所述本地数据处理单元设置在一个单板的基板管理控制器BMC中。
其中,所述的***还包括:
远端管理***,用于实现远端线路数据的翻译和IPMI协议的通信,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
其中,当所述远程与本地数据转换单元设置在***管理模块中,所述本地数据处理单元设置在至少一个单板的基板管理控制器BMC中时,所述单板包括:
BMC、处理器模块和与所述处理器模块连接的至少一个固件;
所述BMC通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
BMC和与所述BMC连接的至少一个固件;
所述BMC用于通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC,用于通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
其中,当所述远程与本地数据转换单元以及所述本地数据处理单元设置在一个单板的基板管理控制器BMC中时,所述单板包括:
BMC、处理器模块和与所述处理器模块连接的至少一个固件;
所述BMC通过所述远程与本地数据转换单元将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
或者,
BMC和与所述BMC连接的至少一个固件;
所述BMC,用于通过所述远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
或者,
所述BMC,用于通过所述远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
由上述本发明提供的技术方案可以看出,本发明将远端发送给的IPMI数据报文转换为本地能够识别的IPMI数据报文,并根据所述转换后的数据报文对本地的单板固件进行加载,具有以下优点:
1、本发明基于IPMI技术能够提供标准的IPMI接口,远端只需要最终输出适合远距离传输协议承载的IPMI数据报文就能够对现场各种单板固件进行加载,实现方便,并且可靠性、可扩展性以及可移植性较好,并能够缩短开发周期,降低开发成本。
2、本发明基于IPMI技术能够使IPMI子***,如BMC的供电电源可以独立于CPU***而存在,当CPU***故障时,BMC仍可操作。
3、本发明通过***管理模块将远端传送给的IPMI报文转换为各个单板能够识别的IPMI报文,从而能够提供统一的IPMI接口实现对多个单板上的固件进行加载。
附图说明
图1为本发明提供的第一实施例的流程图;
图2为本发明提供的第二实施例的流程图;
图3为本发明提供的第四实施例的流程图;
图4为本发明提供的第五实施例的流程图;
图5为本发明提供的第六实施例的流程图;
图6为本发明提供的第七实施例的流程图。
具体实施方式
由于IPMI技术能够独立于主处理器对硬件平台进行监视和控制,因此能够基于所述IPMI技术实现为现场各种单板固件进行加载提供标准的加载接口。
本发明提供的第一实施例是一种实现远程加载单板固件的***,其结构如图1所示,包括:远端管理***和固件加载单元。其中所述固件加载单元包括***管理模块和至少一个单板。其中所述单板包括BMC(基板管理控制器)、处理器模块和与所述处理器模块连接的至少一个固件。所述***管理模块中设置有远程与本地数据转换单元;所述BMC中设置有本地数据处理单元。
各个功能器件的功能如下:
所述远端管理***,用于实现远程线路数据的翻译和IPMI协议通讯,并提供远程管理界面和相关数据接口。
所述***管理模块,用于通过远程与本地数据转换单元实现IPMI协议从本地线路与远程线路间的数据转换。其中的本地线路可以是I2C、IPMB、PCI、PCI-E、PCI-X、SMBus、RS-232和本地IO总线等常用本地线路传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。所述的远程线路可以是以太网、令牌网、光纤、×DSL或无线网络等适合远距离传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。所述的***管理模块设置在单板所在的本地端,其可以设置在由多块单板构成的***(如ATCA***或CPCI***)或者其它服务器群组***等***整机中。当然如果将所述***管理模块设置在远端管理***所在的远端,也能够实现本发明,但是这样会增加***管理模块到各个单板间的本地线路的连线,从而会增加相应的成本。
所述BMC,用于通过本地数据处理单元进行IPMI协议处理,获得控制命令和固件加载所需的数据。
所述处理器模块,用于通过控制命令控制BMC,以及各加载接口的数据转换。其中的加载接口可以是固件特有的加载接口,也可以是常用的加载接口,如JTAG接口,或者是BMC的本地IO总线,等等。
所述固件,可以是FLASH、CPLD、FPGA、EEPROM、NvRAM、EPROM、CF卡或硬盘等。
各个功能器件间的信息传递关系为:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过***管理模块中的远程与本地数据转换单元判断出所述IPMI数据报文对应的目的单板,并将接收到的利用适合远距离传输的协议承载的所述IPMI数据报文转换为目的单板本地协议承载的IPMI数据报文,并将其发送给所述对应的单板。
所述单板中的BMC通过本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给所述单板中的处理器模块。
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
本发明提供的第二实施例是第二种实现远程加载单板固件的***,其与第一实施例的区别在于:所述单板不再包括处理器模块,而仅仅包括BMC和与所述BMC连接的至少一个固件。其结构如图2所示,包括:远端管理***和固件加载单元。其中所述固件加载单元包括***管理模块和至少一个单板。其中所述单板包括BMC(基板管理控制器)、处理器模块和与所述处理器模块连接的至少一个固件。所述***管理模块中设置有远程与本地数据转换单元;所述BMC中设置有本地数据处理单元。
这种情况下,BMC用于通过其内设置的本地数据处理单元进行IPMI协议处理,获得控制命令和固件加载所需的数据,以及通过控制命令控制BMC和各加载接口的数据转换。其它功能器件的功能雷同于第一实施例中的相关描述,这里不再详细描述。
该***的各个器件间的信息传递关系如下:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过***管理模块中的远程与本地数据转换单元判断出所述IPMI数据报文对应的目的单板,并将接收到的利用适合远距离传输的协议承载的所述IPMI数据报文转换为目的单板本地协议承载的IPMI数据报文,并将其发送给所述对应的单板。
所述单板中的BMC通过其内设置的本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
本发明提供的第三实施例是第三种实现远程加载单板固件的***,其与第一实施例的区别之处在于:所述单板仅仅包括BMC。其包括:远端管理***和固件加载单元。其中所述固件加载单元包括***管理模块和至少一个单板。其中所述单板仅仅包括BMC。其中所述***管理模块中设置有远程与本地数据转换单元;所述BMC中设置有本地数据处理单元。
这种情况下,固件内置于所述BMC的底层。此时的BMC用于IPMI协议处理,获得控制命令和固件加载所需的数据,以及通过控制命令控制BMC对其自身进行加载。
该***的各个器件间的信息传递关系如下:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过***管理模块判断出所述IPMI数据报文对应的目的单板,并将接收到的利用适合远距离传输的协议承载的所述IPMI数据报文转换为目的单板本地协议承载的IPMI数据报文,并将其发送给所述对应的单板。
所述单板中的BMC从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载数据对设置在其内的底层固件进行加载。
本发明提供的第四实施例是第四种实现远程加载单板固件的***,其结构如图3所示,包括:远端管理***和固件加载单元。其中所述固件加载单元包括BMC、处理器模块和与所述处理器模块连接的至少一个固件。其中所述BMC中设置有远程与本地数据转换单元以及本地数据处理单元。
所述***中各个器件的功能如下:所述远端管理***,用于实现远程线路数据的翻译和IPMI协议通讯,并提供远程管理界面和相关数据接口。
所述BMC,用于通过其内设置的远程与本地数据转换单元实现IPMI协议从本地线路与远程线路间的数据转换;以及用于通过其内设置的本地数据处理单元进行IPMI协议处理,获得控制命令和固件加载所需的数据。其中的本地线路可以是I2C、IPMB、PCI、PCI-E、PCI-X、SMBus、RS-232和本地IO总线等常用本地线路传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。所述的远程线路可以是以太网、令牌网、光纤、xDSL或无线网络等适合远距离传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。
所述处理器模块,用于通过控制命令控制BMC,以及各加载接口的数据转换。其中的加载接口可以是固件特有的加载接口,也可以是常用的加载接口,如JTAG接口,或者是BMC的本地IO总线,等等。
所述固件,可以是FLASH、CPLD、FPGA、EEPROM、NvRAM、EPROM、CF卡或硬盘等。
该***的各个器件间的信息传递关系如下:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过所述BMC中设置的远程与本地数据转换单元将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,并通过其内设置的本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给处理器模块。
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
本发明提供的第五实施例是第五种实现远程加载单板固件的***,其与第四实施例的区别之处在于:所述固件加载单元不再包括处理器模块,而仅仅包括BMC和与所述BMC连接的至少一个固件。其结构如图4所示,包括:远端管理***和固件加载单元。其中所述固件加载单元包括BMC以及与其连接的至少一个固件。其中所述BMC中设置有远程与本地数据转换单元以及本地数据处理单元。
此时BMC的功能用于通过其内设置的远程与本地数据转换单元实现IPMI协议从本地线路与远程线路间的数据转换;以及用于通过其内设置的本地数据处理单元进行IPMI协议处理,获得控制命令和固件加载所需的数据;以及通过控制命令控制BMC,以及各加载接口的数据转换。其中的本地线路可以是I2C、IPMB、PCI、PCI-E、PCI-X、SMBus、RS-232和本地IO总线等常用本地线路传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。所述的远程线路可以是以太网、令牌网、光纤、×DSL或无线网络等适合远距离传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。其中的加载接口可以是固件特有的加载接口,也可以是常用的加载接口,如JTAG接口,或者是BMC的本地IO总线,等等。
所述固件,可以是FLASH、CPLD、FPGA、EEPROM、NvRAM、EPROM、CF卡或硬盘等。
该***的各个器件间的信息传递关系如下:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过BMC中设置的远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过其内设置的本地数据处理单元进行从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载。
本发明提供的第六实施例是第六种实现远程加载单板固件的***,其与第四实施例的区别在于:所述固件加载单元中仅仅包括一个BMC。其结构如图5所示,包括远端管理***和固件加载单元。其中所述固件加载单元仅仅包括BMC。其中所述BMC中设置有远程与本地数据转换单元以及本地数据处理单元。
此时所述BMC用于通过所述远程与本地数据转换单元实现IPMI协议从本地线路与远程线路间的数据转换;以及用于通过所述本地数据处理单元IPMI协议处理,获得控制命令和固件加载所需的数据;以及通过控制命令控制BMC对其自身进行加载。其中的本地线路可以是I2C、IPMB、PCI、PCI-E、PCI-X、SMBus、RS-232和本地IO总线等常用本地线路传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。所述的远程线路可以是以太网、令牌网、光纤、×DSL或无线网络等适合远距离传输的物理介质和传输协议组成的数据链路,其上传输的数据封装了IPMI消息。其中的加载接口可以是固件特有的加载接口,也可以是常用的加载接口,如JTAG接口,或者是BMC的本地IO总线,等等。
该***的各个器件间的信息传递关系如下:
所述远端管理***将远端线路数据翻译成利用远距离传输协议承载的IPMI数据报文,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
所述固件加载单元通过BMC中设置的远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载数据对设置在其内的底层固件进行加载。
上述第四、第五和第六实施例只能对一块单板上的固件进行加载。而第一、第二和第三实施例可以对多块单板上的固件进行加载。
本发明提供的第七实施例是第一种实现远程加载单板固件的方法,其流程如图6所示,包括如下步骤:
步骤1,将利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给***管理模块。
步骤2,所述***管理模块判断出所述IPMI数据报文对应的目的单板,并将接收到的所述IPMI数据报文转换为所述目的单板本地协议承载的IPMI数据报文。然后将转换为目的单板本地协议承载的IPMI数据报文发送给对应的目的单板的BMC。
步骤3,当目的单板接收到所述报文后,根据所述转换后的数据报文对本地的单板固件进行加载。
在步骤3中,如果所述单板中需要加载的固件连接与处理器模块,则所述步骤3的处理过程如下:
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据;并将所获得的命令和数据传送给处理器模块;所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述加载固件进行加载。
如果所述单板中需要加载的固件直接与BMC连接,则所述步骤3的处理过程如下:
所述BMC从本地协议承载的IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述加载固件进行加载。
如果所述单板中需要加载的固件内置于BMC,则所述步骤3的处理过程如下:
所述BMC从本地协议承载的IPMI数据报文中获得控制命令和其加载所需的数据,并根据所述控制命令,利用所述加载数据对设置在其内的底层固件进行加载。
本发明提供的第八实施例是第二种实现远程加载单板固件的方法,其与第七实施例的区别在于:该方法仅仅能够实现对一个单板上的固件进行加载。该方法的具体实施过程如下:
步骤1,将利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给目的单板的基板管理控制器BMC。
步骤2,所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,并根据所述转换后的数据报文对本地的单板固件进行加载。
在步骤2中,如果所述单板中需要加载的固件连接与处理器模块,则所述步骤2的处理过程如下:
所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据;并将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述加载固件进行加载。
如果所述单板中需要加载的固件直接与BMC连接,则所述步骤2的处理过程如下:
所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,从本地协议承载的IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述加载固件进行加载。
如果所述单板中需要加载的固件内置于BMC,则所述步骤2的处理过程如下:
所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,从本地协议承载的IPMI数据报文中获得控制命令和其加载所需的数据,并根据所述控制命令,利用所述加载数据对设置在其内的底层固件进行加载。
由上述本发明的具体实施方式可以看出,本发明通过IPMI技术实现单板固件的远程加载,能够规范硬件平台接口,方便维护和升级,并且可靠性、可扩展性和可移植性较好;并且能够缩短开发周期,降低开发成本。再者,本发明基于IPMI技术能够使IPMI子***,如BMC的供电电源可以独立与CPU***而存在,当CPU***故障时,BMC仍可操作。
另外,本发明通过***管理模块将远端传送给的IPMI报文转换为各个单板能够识别的IPMI报文,从而能够提供统一的IPMI接口实现对多个单板上的固件进行加载。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (6)

1、一种实现远程加载单板固件的方法,其特征在于,包括:
A、将远端发送的利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给基板管理控制器BMC,所述BMC将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文;
或者,
将远端发送的利用适合远距离传输的协议承载的IPMI数据报文通过远端管理***发送给***管理模块,所述***管理模块判断出所述IPMI数据报文对应的目的单板,将接收到的所述IPMI数据报文转换为所述目的单板本地协议承载的IPMI数据报文,并将转换后的IPMI数据报文发送给所述目的单板的BMC;
B、根据所述转换后的数据报文对本地的单板固件进行加载。
2、根据权利要求1所述的方法,其特征在于,所述步骤B具体包括:
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据;并将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC从本地协议承载的所述IPMI数据报文中获得控制命令和固件加载所需的数据,并根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
3、一种实现远程加载单板固件的***,其特征在于,包括固件加载单元,且所述固件加载单元包括:
远程与本地数据转换单元,以及本地数据处理单元;
所述远程与本地数据转换单元,用于根据远端发送给的IPMI数据报文判断出其对应的本地数据处理单元,并将接收到的利用适合远距离传输的协议承载的所述IPMI数据报文转换为目的单板本地协议承载的IPMI数据报文,并将其发送给所述本地数据处理单元;
所述本地数据处理单元,用于根据所述转换后的IPMI数据报文对本地相应的单板固件进行加载;
所述远程与本地数据转换单元设置在***管理模块中,所述本地数据处理单元设置在至少一个单板的基板管理控制器BMC中;
或,
所述远程与本地数据转换单元以及所述本地数据处理单元设置在一个单板的基板管理控制器BMC中。
4、根据权利要求3所述的***,其特征在于,还包括:
远端管理***,用于实现远端线路数据的翻译和IPMI协议的通信,并将利用远距离传输协议承载的IPMI数据报文传送给固件加载单元。
5、根据权利要求4所述的***,其特征在于,当所述远程与本地数据转换单元设置在***管理模块中,所述本地数据处理单元设置在至少一个单板的基板管理控制器BMC中时,所述单板包括:
BMC、处理器模块和与所述处理器模块连接的至少一个固件;
所述BMC通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
BMC和与所述BMC连接的至少一个固件;
所述BMC用于通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC,用于通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
6、根据权利要求3所述的***,其特征在于,当所述远程与本地数据转换单元以及所述本地数据处理单元设置在一个单板的基板管理控制器BMC中时,所述单板包括:
BMC、处理器模块和与所述处理器模块连接的至少一个固件;
所述BMC通过所述远程与本地数据转换单元将接收到的所述IPMI数据报文转换为单板本地协议承载的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后将所获得的命令和数据传送给处理器模块;
所述处理器模块根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
BMC和与所述BMC连接的至少一个固件;
所述BMC,用于通过所述远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令判断出需要加载的固件,并将所述固件需要的加载数据转换成所述固件的加载接口所需的格式,然后通过所述加载接口传送给所述固件进行加载;
或者,
所述BMC,用于通过所述远程与本地数据转换单元将远端管理***发送给的IPMI数据报文转换为单板本地能够识别的IPMI数据报文,并通过所述本地数据处理单元从所述IPMI数据报文中获得控制命令和固件加载所需的数据,然后根据所述控制命令,利用所述加载所需的数据对设置在其内的底层固件进行加载。
CNB200610083906XA 2006-06-06 2006-06-06 实现远程加载单板固件的方法和*** Active CN100550771C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200610083906XA CN100550771C (zh) 2006-06-06 2006-06-06 实现远程加载单板固件的方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200610083906XA CN100550771C (zh) 2006-06-06 2006-06-06 实现远程加载单板固件的方法和***

Publications (2)

Publication Number Publication Date
CN1983977A CN1983977A (zh) 2007-06-20
CN100550771C true CN100550771C (zh) 2009-10-14

Family

ID=38166233

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200610083906XA Active CN100550771C (zh) 2006-06-06 2006-06-06 实现远程加载单板固件的方法和***

Country Status (1)

Country Link
CN (1) CN100550771C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793180A (zh) * 2012-10-30 2014-05-14 英业达科技有限公司 磁盘配置方法及服务器机架***

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101420319B (zh) * 2007-10-26 2011-04-06 华为技术有限公司 一种加载单板固件的方法、***及装置
US7966441B2 (en) * 2008-03-04 2011-06-21 Aten International Co., Ltd. Interfacing apparatus and method using a single predetermined communication protocol for accessing remote peripheral devices that use different communication protocols
CN102130951B (zh) * 2011-03-14 2014-12-17 浪潮(北京)电子信息产业有限公司 一种服务器及其可编程逻辑器件的远程升级方法
CN109086086B (zh) * 2018-08-06 2021-06-08 深圳忆联信息***有限公司 一种非空间共享的多核cpu的启动方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793180A (zh) * 2012-10-30 2014-05-14 英业达科技有限公司 磁盘配置方法及服务器机架***

Also Published As

Publication number Publication date
CN1983977A (zh) 2007-06-20

Similar Documents

Publication Publication Date Title
US10417167B2 (en) Implementing sideband control structure for PCIE cable cards and IO expansion enclosures
TWI618380B (zh) 管理方法、服務控制器裝置以及非暫態電腦可讀取媒體
JP4558519B2 (ja) 情報処理装置およびシステムバス制御方法
CN109558371B (zh) 用于与微控制器通信的方法、以及计算***
CN100550771C (zh) 实现远程加载单板固件的方法和***
AU2011264940A1 (en) Systems and methods for intelligent and flexible management and monitoring of computer systems
CN102081568A (zh) 多主机板服务器***
KR101712172B1 (ko) 컴퓨터 장애 증상의 사전 진단 및 분석 복구 시스템 및 방법
US20110191573A1 (en) Multi-motherboard server system
CN109388526B (zh) 一种控制电路及复位操作的方法
CN110658758A (zh) 控制方法和控制***
CN105739656A (zh) 具有自动重置功能的机柜及其自动重置方法
CN111158731A (zh) 一种基于cpld的网卡固件升级装置及方法
US6973598B2 (en) Computer system with improved data capture system
CN102255766B (zh) 服务器***
US20060182229A1 (en) SATA device having self-test function for OOB-signaling
CN104571098B (zh) 基于Atom平台的远程自诊断方法
CN106649002A (zh) 服务器及自动检修基板管理控制器的方法
CN102480497A (zh) 远程主板控制器及其远程控制主板的方法
CN102088366B (zh) 一种单板信息监控装置及分布式单板信息监控***
CN102193850A (zh) 一种多主机板服务器的时间更新***
TWM598968U (zh) 頻外的外接控制設備與系統
JP5682007B2 (ja) 電子機器装置
US20070050666A1 (en) Computer Network System and Related Method for Monitoring a Server
CN221446528U (zh) 带外管理模块和服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant