一种通用可信的基板管理方法和系统转让专利

申请号 : CN202311369584.5

文献号 : CN117112474B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘魁叶惠周永健谢启友

申请人 : 湖南博匠信息科技有限公司

摘要 :

本发明公开了一种通用可信的基板管理方法和系统,本系统包括多个BMC模块,且不同的BMC模块用于与不同的计算设备通信连接;当需要对不同计算设备进行管理时,上位机管理模块生成待下发数据,下发数据包包括目的地址字段,且目的地址字段对应需要进行管理的计算设备,然后通过交换机将下发数据包发送至对应的BMC模块的基板管理控制器的下位机管理程序,即将下发数据包发送至想要进行管理的计算设备所通信连接的BMC模块,因交换机直接与多个BMC模块通信连接,然后直接将下发数据包发送至需要进行管理的计算设备所对应的BMC模块,从而达到直接对需要管理的计算设备进行管理的目的,提升了管理效率。

权利要求 :

1.一种通用可信的基板管理方法,其特征在于,应用于通用可信的基板管理系统;所述系统包括上位机管理模块、交换机和多个BMC模块;上位机管理模块和交换机之间通过第一数据通路通信连接,BMC模块和交换机之间通过第二数据通路通信连接;BMC模块包括基板管理控制器;基板管理控制器运行有下位机管理程序;不同的BMC模块用于与不同的计算设备通信连接;所述方法,包括:上位机管理模块生成待下发数据,并对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包;

上位机管理模块将下发数据包通过第一数据通路发送至交换机,其中,下发数据包包括目的地址字段,且不同的目的地址字段对应不同的计算设备;

交换机根据下发数据包的目的地址字段识别下发数据包对应的BMC模块,并将下发数据包通过第二数据通路发送至对应的BMC模块的基板管理控制器的下位机管理程序;

下位机管理程序执行下发数据包对应的管理任务;

下发数据包还包括待下发可信数据;所述上位机管理模块生成待下发数据,并对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包,包括:上位机管理模块将待下发数据通过第一密码算法进行处理以得到待下发密文,并对待下发密文进行第一摘要算法处理以得到第一密文摘要;

上位机管理模块将待下发密文和第一密文摘要进行第一协议组包以形成符合第一数据通路的传输协议的待下发可信数据;

基板管理控制器包括RTL逻辑电路、高速片内数据总线和低速片内数据总线;所述下位机管理程序执行下发数据包对应的管理任务,包括:下位机管理程序对下发数据包依次进行第一协议解析和第一可信校验后得到下发载荷数据,其中,第一协议解析的过程为:基于第一协议组包所使用的通信协议,将下发数据包进行解析,以得到待下发可信数据;第一可信校验的过程为:通过与第一摘要算法对应的第一摘要校验算法对待下发可信数据进行校验,以判断待下发可信数据是否被篡改,若未被篡改,通过与第一密码算法对应的第一解密算法对待下发可信数据进行解密以得到下发载荷数据;

下位机管理程序对下发载荷数据进行第一数据解析,以得到第一高速数据流和第一低速数据流;

下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路。

2.根据权利要求1所述的一种通用可信的基板管理方法,其特征在于,BMC模块还包括与基板管理控制器通信连接的通信接口、GPIO接口、JTAG接口、JTAG接口协议转换模块、Flash接口协议转换模块、GPIO接口协议转换模块、高速通信接口协议转换模块和第一数据缓存模块;通信接口包括高速通信接口;所述下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路,之后还包括:下位机管理程序将第一高速数据流写入第一数据缓存模块,并对第一高速数据流进行第二数据解析和第一数据分流,以区分为JTAG输出数据、写Flash数据、GPIO输出数据和高速通信数据;

下位机管理程序将JTAG输出数据发送至JTAG接口协议转换模块进行转换,将写Flash数据发送至Flash接口协议转换模块进行转换,将GPIO输出数据发送至GPIO接口协议转换模块进行转换,将高速通信数据发送至高速通信接口协议转换模块进行转换;

下位机管理程序通过JTAG接口输出JTAG输出数据;

下位机管理程序通过GPIO接口输出GPIO输出数据;

下位机管理程序通过高速通信接口输出高速通信数据。

3.根据权利要求2所述的一种通用可信的基板管理方法,其特征在于,BMC模块还包括与基板管理控制器通信连接的接口切换模块、Flash加载通路和Flash读写通路;基板管理控制器分别通过Flash加载通路和Flash读写通路通信连接外部Flash;所述下位机管理程序将第一高速数据流写入第一数据缓存模块,并对第一高速数据流进行第二数据解析和第一数据分流,以区分为JTAG输出数据、写Flash数据、GPIO输出数据和高速通信数据,之后还包括:下位机管理程序对写Flash数据进行第二可信处理,并通过接口切换模块将经过第二可信处理后的写Flash数据写入外部Flash,其中,经过第二可信处理后的写Flash数据包括Flash数据密文和Flash密文摘要,第二可信处理的过程为:对写Flash数据通过第二密码算法进行处理以得到Flash数据密文,并对Flash数据密文进行第二摘要算法处理以得到Flash密文摘要。

4.根据权利要求3所述的一种通用可信的基板管理方法,其特征在于,BMC模块还包括与基板管理控制器通信连接的第二数据缓存模块、低速通信接口协议转换模块和PWM输出通路;通信接口还包括低速通信接口;所述下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路,之后还包括:下位机管理程序将第一低速数据流写入第二数据缓存模块,然后对第一低速数据流进行第三数据解析和第二数据分流,以区分为PWM配置或操作信息、IO操作信息和低速通信数据;

下位机管理程序将低速通信数据发送至低速通信接口协议转换模块进行转换,并通过低速通信接口将低速通信数据输出;

下位机管理程序基于PWM配置或操作信息通过RTL逻辑电路生成PWM上电时序,并通过PWM输出通路输出PWM上电时序。

5.根据权利要求4所述的一种通用可信的基板管理方法,其特征在于,BMC模块还包括与基板管理控制器通信连接的第三数据缓存模块;所述方法,还包括:基板管理控制器获取JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据;

基板管理控制器将JTAG接口输入数据通过JTAG接口协议转换模块进行转换,将读Flash数据通过Flash接口协议转换模块进行转换,将GPIO输入数据通过GPIO接口协议转换模块进行转换,将高速通信接口输入数据通过高速通信接口协议转换模块进行转换;

基板管理控制器对转换后的JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据依次进行第一数据组帧和第一数据合流,然后写入第三数据缓存模块,以转变为第二高速数据流;

基板管理控制器通过片内高速数据总线将第二高速数据流发送至BMC模块的下位机管理程序。

6.根据权利要求5所述的一种通用可信的基板管理方法,其特征在于,BMC模块还包括与基板管理控制器通信连接的第四数据缓存模块和看门狗模块;所述方法,还包括:基板管理控制器获取PWM状态信息、IO状态信息和低速通信接口输入数据;

基板管理控制器对PWM状态信息、IO状态信息和低速通信接口输入数据进行第二数据组帧和第二数据合流,然后写入第四数据缓存模块,以转变为第二低速数据流;

基板管理控制器通过片内低速数据总线将第二低速数据流发送至BMC模块的下位机管理程序。

7.根据权利要求6所述的一种通用可信的基板管理方法,其特征在于,还包括:

下位机管理程序将第二高速数据流和第二低速数据流标记为待上传数据;

下位机管理程序将待上传数据经过第三可信处理和第二协议组包后转变为待上传数据包,其中,第三可信处理的过程为:将待上传数据经过第三密码算法处理后得到待上传密文;将待上传密文经过第三摘要算法处理后得到第二密文摘要;第二协议组包的过程为:将待上传密文和第二密文摘要进行第二协议组包以形成符合第一数据通路的传输协议的待上传数据包;

下位机管理程序将待上传数据包经过第二协议解析和第二可信校验后得到上传载荷信息,其中,第二可信校验的过程为:通过与第三摘要算法对应的第二摘要校验算法对待上传数据包进行校验,以判断待上传数据包是否被篡改,若未被篡改,通过与第三密码算法对应的第二解密算法对待上传数据包进行解密以得到上传载荷数据。

8.一种通用可信的基板管理系统,其特征在于,应用于如权利要求1‑7中任一项所述的通用可信的基板管理方法。

说明书 :

一种通用可信的基板管理方法和系统

技术领域

[0001] 本发明涉及计算机技术领域,具体涉及一种通用可信的基板管理方法和系统。

背景技术

[0002] 随着互联网时代的来临,各类服务器、存储设备和交换机等各类计算设备均开始大规模商业应用,使得计算设备的批量部署、升级,以及批量管理迎来了挑战。BMC(Baseboard Management Controller,即基板管理控制器)是目前应用比较广泛的计算设备的管理工具。
[0003] BMC是一个相对独立的系统,它的运行不依赖于计算设备上的其它硬件(比如CPU、内存等),能够对计算设备进行管理和监控(例如记录计算设备的信息、对计算设备的各个元件的温度、电压等健康状态进行检测,以及对计算设备进行远程启动、更新等)。
[0004] 现有的方案中,均是通过上位机与BMC模块建立通信连接,然后再通过BMC模块来对计算设备进行管理,而实际应用中的计算设备(例如服务器)的数量较多,故需要管理人员将上位机依次与不同的计算设备对应的BMC模块建立通信连接之后,再通过BMC模块对各计算设备进行管理,操作较为繁琐。

发明内容

[0005] 本发明的主要目的是提供一种通用可信的基板管理方法和系统,旨在解决通过BMC模块对多个计算设备进行管理时较为繁琐的问题。
[0006] 本发明提出的技术方案为:
[0007] 一种通用可信的基板管理方法,应用于通用可信的基板管理系统;所述系统包括上位机管理模块、交换机和多个BMC模块;上位机管理模块和交换机之间通过第一数据通路通信连接,BMC模块和交换机之间通过第二数据通路通信连接;BMC模块包括基板管理控制器;基板管理控制器运行有下位机管理程序;不同的BMC模块用于与不同的计算设备通信连接;所述方法,包括:
[0008] 上位机管理模块生成待下发数据,并对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包;
[0009] 上位机管理模块将下发数据包通过第一数据通路发送至交换机,其中,下发数据包包括目的地址字段,且不同的目的地址字段对应不同的计算设备;
[0010] 交换机根据下发数据包的目的地址字段识别下发数据包对应的BMC模块,并将下发数据包通过第二数据通路发送至对应的BMC模块的基板管理控制器的下位机管理程序;
[0011] 下位机管理程序执行下发数据包对应的管理任务。
[0012] 优选的,下发数据包还包括待下发可信数据;所述上位机管理模块生成待下发数据,并对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包,包括:
[0013] 上位机管理模块将待下发数据通过第一密码算法进行处理以得到待下发密文,并对待下发密文进行第一摘要算法处理以得到第一密文摘要;
[0014] 上位机管理模块将待下发密文和第一密文摘要进行第一协议组包以形成符合第一数据通路的传输协议的待下发可信数据。
[0015] 优选的,基板管理控制器包括RTL逻辑电路、高速片内数据总线和低速片内数据总线;所述下位机管理程序执行下发数据包对应的管理任务,包括:
[0016] 下位机管理程序对下发数据包依次进行第一协议解析和第一可信校验后得到下发载荷数据,其中,第一协议解析的过程为:基于第一协议组包所使用的通信协议,将下发数据包进行解析,以得到待下发可信数据;第一可信校验的过程为:通过与第一摘要算法对应的第一摘要校验算法对待下发可信数据进行校验,以判断待下发可信数据是否被篡改,若未被篡改,通过与第一密码算法对应的第一解密算法对待下发可信数据进行解密以得到下发载荷数据;
[0017] 下位机管理程序对下发载荷数据进行第一数据解析,以得到第一高速数据流和第一低速数据流;
[0018] 下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路。
[0019] 优选的,BMC模块还包括与基板管理控制器通信连接的通信接口、GPIO接口、JTAG接口、JTAG接口协议转换模块、Flash接口协议转换模块、GPIO接口协议转换模块、高速通信接口协议转换模块和第一数据缓存模块;通信接口包括高速通信接口;所述下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路,之后还包括:
[0020] 下位机管理程序将第一高速数据流写入第一数据缓存模块,并对第一高速数据流进行第二数据解析和第一数据分流,以区分为JTAG输出数据、写Flash数据、GPIO输出数据和高速通信数据;
[0021] 下位机管理程序将JTAG输出数据发送至JTAG接口协议转换模块进行转换,将写Flash数据发送至Flash接口协议转换模块进行转换,将GPIO输出数据发送至GPIO接口协议转换模块进行转换,将高速通信数据发送至高速通信接口协议转换模块进行转换;
[0022] 下位机管理程序通过JTAG接口输出JTAG输出数据;
[0023] 下位机管理程序通过GPIO接口输出GPIO输出数据;
[0024] 下位机管理程序通过高速通信接口输出高速通信数据。
[0025] 优选的,BMC模块还包括与基板管理控制器通信连接的接口切换模块、Flash加载通路和Flash读写通路;基板管理控制器分别通过Flash加载通路和Flash读写通路通信连接外部Flash;所述下位机管理程序将第一高速数据流写入第一数据缓存模块,并对第一高速数据流进行第二数据解析和第一数据分流,以区分为JTAG输出数据、写Flash数据、GPIO输出数据和高速通信数据,之后还包括:
[0026] 下位机管理程序对写Flash数据进行第二可信处理,并通过接口切换模块将经过第二可信处理后的写Flash数据写入外部Flash,其中,经过第二可信处理后的写Flash数据包括Flash数据密文和Flash密文摘要,第二可信处理的过程为:对写Flash数据通过第二密码算法进行处理以得到Flash数据密文,并对Flash数据密文进行第二摘要算法处理以得到Flash密文摘要。
[0027] 优选的,BMC模块还包括与基板管理控制器通信连接的第二数据缓存模块、低速通信接口协议转换模块和PWM输出通路;通信接口还包括低速通信接口;所述下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路,之后还包括:
[0028] 下位机管理程序将第一低速数据流写入第二数据缓存模块,然后对第一低速数据流进行第三数据解析和第二数据分流,以区分为PWM配置或操作信息、IO操作信息和低速通信数据;
[0029] 下位机管理程序将低速通信数据发送至低速通信接口协议转换模块进行转换,并通过低速通信接口将低速通信数据输出;
[0030] 下位机管理程序基于PWM配置或操作信息通过RTL逻辑电路生成PWM上电时序,并通过PWM输出通路输出PWM上电时序。
[0031] 优选的,BMC模块还包括与基板管理控制器通信连接的第三数据缓存模块;所述方法,还包括:
[0032] 基板管理控制器获取JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据;
[0033] 基板管理控制器将JTAG接口输入数据通过JTAG接口协议转换模块进行转换,将读Flash数据通过Flash接口协议转换模块进行转换,将GPIO输入数据通过GPIO接口协议转换模块进行转换,将高速通信接口输入数据通过高速通信接口协议转换模块进行转换;
[0034] 基板管理控制器对转换后的JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据依次进行第一数据组帧和第一数据合流,然后写入第三数据缓存模块,以转变为第二高速数据流;
[0035] 基板管理控制器通过片内高速数据总线将第二高速数据流发送至BMC模块的下位机管理程序。
[0036] 优选的,BMC模块还包括与基板管理控制器通信连接的第四数据缓存模块和看门狗模块;所述方法,还包括:
[0037] 基板管理控制器获取PWM状态信息、IO状态信息和低速通信接口输入数据;
[0038] 基板管理控制器对PWM状态信息、IO状态信息和低速通信接口输入数据进行第二数据组帧和第二数据合流,然后写入第四数据缓存模块,以转变为第二低速数据流;
[0039] 基板管理控制器通过片内低速数据总线将第二低速数据流发送至BMC模块的下位机管理程序。
[0040] 优选的,还包括:
[0041] 下位机管理程序将第二高速数据流和第二低速数据流标记为待上传数据;
[0042] 下位机管理程序将待上传数据经过第三可信处理和第二协议组包后转变为待上传数据包,其中,第三可信处理的过程为:将待上传数据经过第三密码算法处理后得到待上传密文;将待上传密文经过第三摘要算法处理后得到第二密文摘要;第二协议组包的过程为:将待上传密文和第二密文摘要进行第二协议组包以形成符合第一数据通路的传输协议的待上传数据包;
[0043] 下位机管理程序将待上传数据包经过第二协议解析和第二可信校验后得到上传载荷信息,其中,第二可信校验的过程为:通过与第三摘要算法对应的第二摘要校验算法对待上传数据包进行校验,以判断待上传数据包是否被篡改,若未被篡改,通过与第三密码算法对应的第二解密算法对待上传数据包进行解密以得到上传载荷数据。
[0044] 本发明还提出一种通用可信的基板管理系统,应用于通用可信的基板管理方法;所述系统包括上位机管理模块、交换机和多个BMC模块;上位机管理模块和交换机之间通过第一数据通路通信连接,BMC模块和交换机之间通过第二数据通路通信连接;BMC模块包括基板管理控制器;基板管理控制器运行有下位机管理程序;不同的BMC模块用于与不同的计算设备通信连接。
[0045] 通过上述技术方案,能实现以下有益效果:
[0046] 本发明提出的通用可信的基板管理方法应用于通用可信的基板管理系统,本系统包括多个BMC模块,且不同的BMC模块用于与不同的计算设备通信连接;当需要对不同计算设备进行管理时,上位机管理模块生成与需要管理的计算设备对应的待下发数据,然后对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包,且下发数据包包括目的地址字段,且目的地址字段对应需要进行管理的计算设备,然后通过交换机将下发数据包发送至对应的BMC模块的基板管理控制器的下位机管理程序,即将下发数据包发送至想要进行管理的计算设备所通信连接的BMC模块,然后下位机管理程序执行下发数据包对应的管理任务,因交换机直接与多个BMC模块通信连接,然后直接将下发数据包发送至需要进行管理的计算设备所对应的BMC模块,从而达到直接对需要管理的计算设备进行管理的目的,且无需将上位机依次与需要进行管理计算设备对应的BMC模块建立通信连接,大大降低了操作繁琐性,提升了管理效率。

附图说明

[0047] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
[0048] 图1为本发明提出的一种通用可信的基板管理方法第一实施例的流程图;
[0049] 图2为本发明提出的一种通用可信的基板管理系统的结构图;
[0050] 图3为本发明提出的一种通用可信的基板管理系统的BMC模块的结构图。

具体实施方式

[0051] 应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0052] 本发明提出一种通用可信的基板管理方法和系统。
[0053] 如附图1‑附图3所示,在本发明提出的一种通用可信的基板管理方法的第一实施例中,本方法应用于通用可信的基板管理系统;所述系统包括上位机管理模块(例如PC)、交换机和多个BMC模块;上位机管理模块和交换机之间通过第一数据通路通信连接,BMC模块和交换机之间通过第二数据通路通信连接;BMC模块包括基板管理控制器;基板管理控制器运行有下位机管理程序;不同的BMC模块用于与不同的计算设备通信连接(这里的计算设备即是本系统需要进行管理和监控的对象,例如服务器);本实施例包括如下步骤:
[0054] 步骤S110:上位机管理模块生成待下发数据,并对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包。
[0055] 具体的,这里的待下发数据即是上位机需要对计算设备进行管理的操作指令(例如获取计算设备的实时电压值的指令)。
[0056] 这里的第一协议组包为第一数据通路所使用的通信协议所对应的组包操作,第一数据通路所使用的通信协议包括且不限于网络通信协议、光纤通信协议。
[0057] 步骤S120:上位机管理模块将下发数据包通过第一数据通路发送至交换机,其中,下发数据包包括目的地址字段,且不同的目的地址字段对应不同硬件类型的计算设备。
[0058] 具体的,这里的第一数据通路包括且不限于网络通信通路、光纤通信通路。
[0059] 步骤S130:交换机根据下发数据包的目的地址字段识别下发数据包对应的BMC模块,并将下发数据包通过第二数据通路发送至对应的BMC模块的基板管理控制器的下位机管理程序。
[0060] 步骤S140:下位机管理程序执行下发数据包对应的管理任务。
[0061] 本发明提出的通用可信的基板管理方法应用于通用可信的基板管理系统,本系统包括多个BMC模块,且不同的BMC模块用于与不同的计算设备通信连接;当需要对不同计算设备进行管理时,上位机管理模块生成与需要管理的计算设备对应的待下发数据,然后对待下发数据进行第一可信处理和第一协议组包处理后生成下发数据包,且下发数据包包括目的地址字段,且目的地址字段对应需要进行管理的计算设备,然后通过交换机将下发数据包发送至对应的BMC模块的基板管理控制器的下位机管理程序,即将下发数据包发送至想要进行管理的计算设备所通信连接的BMC模块,然后下位机管理程序执行下发数据包对应的管理任务,因交换机直接与多个BMC模块通信连接,然后直接将下发数据包发送至需要进行管理的计算设备所对应的BMC模块,从而达到直接对需要管理的计算设备进行管理的目的,且无需将上位机依次与需要进行管理计算设备对应的BMC模块建立通信连接,大大降低了操作繁琐性,提升了管理效率。
[0062] 在本发明提出的一种通用可信的基板管理方法的第二实施例中,基于第一实施例,BMC模块还包括与基板管理控制器通信连接的复位信号输出通路(复位信号输出通路用于连接服务器的主板以用于重启服务器,复位信号输出通路的数量为b路,b为正整数)和ADC信号输入通路(ADC信号输入通路用于连接温度传感器,ADC信号输入通路的数量为c路,c为正整数);下发数据包还包括待下发可信数据;步骤S110,包括如下步骤:
[0063] 步骤S210:上位机管理模块将待下发数据通过第一密码算法进行处理以得到待下发密文,并对待下发密文进行第一摘要算法处理以得到第一密文摘要。
[0064] 具体的,这里的第一密码算法为非对称密码算法,包括且不限于RSA算法、ECC算法、SM2算法等,采用公钥、私钥加解密的方式实现数据在第一数据通路、第二数据通路的板外传输(即与外部设备进行网络通信传输)过程中的安全性;这里的第一摘要算法为保证数据完整可靠性的算法,包括且不限于MD5算法、SHA1算法、SHA256算法等。
[0065] 步骤S220:上位机管理模块将待下发密文和第一密文摘要进行第一协议组包以形成符合第一数据通路的传输协议的待下发可信数据。
[0066] 具体的,待下发数据经过第一可信处理后,得到由待下发密文和第一密文摘要组合连接而成的待下发可信数据。
[0067] 在本发明提出的一种通用可信的基板管理方法的第三实施例中,基于第二实施例,基板管理控制器包括RTL逻辑电路(中文名为:电阻晶体管耦合逻辑电路,是一种或非门电路)、高速片内数据总线和低速片内数据总线;步骤S140,包括如下步骤:
[0068] 步骤S310:下位机管理程序对下发数据包依次进行第一协议解析和第一可信校验后得到下发载荷数据,其中,第一协议解析的过程为:基于第一协议组包所使用的通信协议,将下发数据包进行解析,以得到待下发可信数据,第一可信校验的过程为:通过与第一摘要算法对应的第一摘要校验算法对待下发可信数据进行校验,以判断待下发可信数据是否被篡改,若未被篡改,通过与第一密码算法对应的第一解密算法对待下发可信数据进行解密以得到下发载荷数据。
[0069] 步骤S320:下位机管理程序对下发载荷数据进行第一数据解析,以得到第一高速数据流和第一低速数据流。
[0070] 步骤S330:下位机管理程序通过高速片内数据总线将第一高速数据流发送至RTL逻辑电路,并通过低速片内数据总线将第一低速数据流发送至RTL逻辑电路。
[0071] 在本发明提出的一种通用可信的基板管理方法的第四实施例中,基于第三实施例,BMC模块还包括与基板管理控制器通信连接的通信接口(通信接口的数量为d路,d为正整数)、GPIO接口(GPIO接口用于通信连接服务器的主板,以控制服务器的上下电时序)、JTAG接口(用于服务器运行调试,JTAG接口的数量为b路,b为正整数)、JTAG接口协议转换模块、Flash接口协议转换模块、GPIO接口协议转换模块、高速通信接口协议转换模块和第一数据缓存模块;通信接口包括高速通信接口(用于连接服务器的存储设备,以读取或写入用户数据)步骤S330,之后还包括如下步骤:
[0072] 步骤S410:下位机管理程序将第一高速数据流写入第一数据缓存模块,并对第一高速数据流进行第二数据解析和第一数据分流,以区分为JTAG输出数据、写Flash数据、GPIO输出数据和高速通信数据。
[0073] 具体的,这里的第一数据缓存模块可为SRAM(tatic Random‑Access Memory,即静态随机存取存储器)、DRAM(Dynamic Random Access Memory,即动态随机存取存储器)等可临时存储数据的RTL电路或设备。
[0074] 步骤S420:下位机管理程序将JTAG输出数据发送至JTAG接口协议转换模块进行转换,将写Flash数据发送至Flash接口协议转换模块进行转换,将GPIO输出数据发送至GPIO接口协议转换模块进行转换,将高速通信数据发送至高速通信接口协议转换模块进行转换。
[0075] 步骤S430:下位机管理程序通过JTAG接口输出JTAG输出数据。
[0076] 步骤S440:下位机管理程序通过GPIO接口输出GPIO输出数据。
[0077] 步骤S450:下位机管理程序通过高速通信接口输出高速通信数据。
[0078] 具体的,本实施例中的高速通信接口为1路,或多路的1种或多种速度级别在MB/s的高速通信接口组成,包括且不限于SPI接口(串行外设接口)、USB接口(通用串行总线接口)、SDIO接口(安全数字输入输出接口)。
[0079] 在本发明提出的一种通用可信的基板管理方法的第五实施例中,基于第四实施例,BMC模块还包括与基板管理控制器通信连接的接口切换模块、Flash加载通路(Flash加载通路的数量为b路,b为正整数)和Flash读写通路(Flash读写通路的数量为2×b路);基板管理控制器分别通过Flash加载通路和Flash读写通路通信连接外部Flash;步骤S410,之后还包括如下步骤:
[0080] 步骤S510:下位机管理程序对写Flash数据进行第二可信处理,并通过接口切换模块将经过第二可信处理后的写Flash数据写入外部Flash,其中,经过第二可信处理后的写Flash数据包括Flash数据密文和Flash密文摘要,第二可信处理的过程为:对写Flash数据通过第二密码算法进行处理以得到Flash数据密文,并对Flash数据密文进行第二摘要算法处理以得到Flash密文摘要。
[0081] 具体的,这里的第二密码算法为更适合硬件实现且计算速度快的对称分组密码算法,包括且不限于AES算法、DES算法、SM4算法等,且第二密码算法所需的密钥、特征值和分组模式由IO操作信息提供,第二密码算法的完成状态通过IO状态信息反馈。
[0082] 这里的第二摘要算法为保证数据完整可靠性的算法,包括且不限于MD5算法、SHA1算法、SHA256算法等。
[0083] 在本发明提出的一种通用可信的基板管理方法的第六实施例中,基于第五实施例,BMC模块还包括与基板管理控制器通信连接的第二数据缓存模块、低速通信接口协议转换模块和PWM输出通路(用于通信连接服务器的风扇转速传感器,以控制风扇转速,PWM输出通路的数量为a路,a为正整数),通信接口还包括低速通信接口;步骤S330,之后还包括如下步骤:
[0084] 步骤S610:下位机管理程序将第一低速数据流写入第二数据缓存模块,然后对第一低速数据流进行第三数据解析和第二数据分流,以区分为PWM配置或操作信息、IO操作信息和低速通信数据,其中,IO操作信息用于:对第二可信处理和第三可信校验的密钥、特征值和加密模式进行存储及管理,并对接口切换模块的Flash接口切换进行控制管理。
[0085] 步骤S620:下位机管理程序将低速通信数据发送至低速通信接口协议转换模块进行转换,并通过低速通信接口将低速通信数据输出。
[0086] 步骤S630:下位机管理程序基于PWM配置或操作信息通过RTL逻辑电路生成PWM上电时序,并通过PWM输出通路输出PWM上电时序。
[0087] 具体的,本实施例中的低速通信接口为1路,或多路的1种或多种传输速度级别在KB/s的低速通信接口组成,包括且不限于UART接口(异步串行通信接口)、I2C接口(集成电路总线接口)和CAN接口(控制器局域网络接口);且第二数据缓存模块为SRAM、DRAM等可临时存储数据的RTL电路或设备。
[0088] 在本发明提出的一种通用可信的基板管理方法的第七实施例中,基于第六实施例,BMC模块还包括与基板管理控制器通信连接的第三数据缓存模块;本实施例还包括如下步骤:
[0089] 步骤S710:基板管理控制器获取JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据。
[0090] 步骤S720:基板管理控制器将JTAG接口输入数据通过JTAG接口协议转换模块进行转换,将读Flash数据通过Flash接口协议转换模块进行转换,将GPIO输入数据通过GPIO接口协议转换模块进行转换,将高速通信接口输入数据通过高速通信接口协议转换模块进行转换。
[0091] 步骤S730:基板管理控制器对转换后的JTAG接口输入数据、读Flash数据、GPIO输入数据和高速通信接口输入数据依次进行第一数据组帧和第一数据合流,然后写入第三数据缓存模块,以转变为第二高速数据流。
[0092] 步骤S740:基板管理控制器通过片内高速数据总线将第二高速数据流发送至BMC模块的下位机管理程序。
[0093] 具体的,本实施例中的第三数据缓存模块为SRAM、DRAM等可临时存储数据的RTL电路或设备。
[0094] 在本发明提出的一种通用可信的基板管理方法的第八实施例中,基于第七实施例,BMC模块还包括与基板管理控制器通信连接的第四数据缓存模块和看门狗模块(用于监控服务器的运行状况,且看门狗模块的数量为b路,b为正整数);本实施例还包括如下步骤:
[0095] 步骤S810:基板管理控制器获取PWM状态信息、IO状态信息和低速通信接口输入数据。
[0096] 步骤S820:基板管理控制器对PWM状态信息、IO状态信息和低速通信接口输入数据进行第二数据组帧和第二数据合流,然后写入第四数据缓存模块,以转变为第二低速数据流。
[0097] 步骤S830:基板管理控制器通过片内低速数据总线将第二低速数据流发送至BMC模块的下位机管理程序。
[0098] 具体的,PWM状态信息包括PWM数据加载信息、PWM时序启动信息、PWM时序完成信息等涉及PWM上电时序实现过程中的信息;IO状态信息包括第二可信处理、接口切换模块、看门狗模块的必要运行信息。
[0099] 在本发明提出的一种通用可信的基板管理方法的第九实施例中,基于第八实施例,本实施例还包括如下步骤:
[0100] 步骤S910:下位机管理程序将第二高速数据流和第二低速数据流标记为待上传数据。
[0101] 步骤S920:下位机管理程序将待上传数据经过第三可信处理和第二协议组包后转变为待上传数据包,其中,第三可信处理的过程为:将待上传数据经过第三密码算法处理后得到待上传密文;将待上传密文经过第三摘要算法处理后得到第二密文摘要;第二协议组包的过程为:将待上传密文和第二密文摘要进行第二协议组包以形成符合第一数据通路的传输协议的待上传数据包。
[0102] 具体的,这的第三密码算法为非对称密码算法,包括且不限于RSA算法、ECC算法、SM2算法等;这里的第三摘要算法为保证数据包完整可靠性的算法,包括且不限于MD5算法、SHA1算法、SHA256算法等。
[0103] 步骤S930:下位机管理程序将待上传数据包经过第二协议解析和第二可信校验后得到上传载荷信息,其中,第二可信校验的过程为:通过与第三摘要算法对应的第二摘要校验算法对待上传数据包进行校验,以判断待上传数据包是否被篡改,若未被篡改,通过与第三密码算法对应的第二解密算法对待上传数据包进行解密以得到上传载荷数据。
[0104] 具体的,本发明提出的方法通过多层次通信、多节点可信管理、软硬件结合和多路可扩展的方式,能够实现对多个服务器的安全进行可靠管理,具体可实现功能包括:多路PWM上电时序灵活管理、Flash双备份和可信切换及加载、Flash远程可信更新、服务器主板物理状态监测、服务器主板电源与散热系统检测和管理、服务器的CPU状态监测、服务器的CPU远程在线调试,以及与服务器的CPU通信。
[0105] 下面以正常上电启动服务器的流程为例:
[0106] 步骤S11:基板管理系统上电启动。
[0107] 步骤S12:上位机管理模块向BMC模块发送命令,以读取BMC模块通信连接的服务器的物理状态信息,包括服务器电源电压、服务器主板温度、服务器的散热系统启动状态。
[0108] 步骤S13:上位机管理模块接收到服务器电源电压正常、服务器主板温度正常、服务器散热系统启动正常的反馈后,向BMC模块下发PWM上电配置数据和Flash切换配置数据。
[0109] 步骤S14:上位机管理模块发送命令,以读取PWM上电配置状态信息、Flash切换配置信息。
[0110] 步骤S15:上位机管理模块确定接收到的PWM上电配置状态信息和Flash切换配置信息正确后,向BMC模块发送启动命令。
[0111] 步骤S16:上位机管理模块等待BMC模块反馈的启动完成信号,若收到启动完成信号,则启动成功;若超时未收到启动完成信号,则向BMC模块发送复位命令,然后返回到步骤S11重复操作流程,并记录异常信息;若重复流程3次仍未成功启动,则上报启动失败,并停止操作。
[0112] 正常状态重新启动服务器的流程:
[0113] 步骤S21:上位机管理模块向BMC模块发送复位命令;
[0114] 步骤S22:执行上述步骤S11至步骤S16。
[0115] 异常状态下重新启动服务器的流程:
[0116] 步骤S31:上位机管理模块检测到看门狗模块异常后,向BMC模块发送复位命令。
[0117] 步骤S32:执行上述步骤S11至步骤S16。
[0118] 更新Flash后切换Flash并重启服务器的流程:
[0119] 步骤S31:上位机管理模块向BMC模块发送Flash烧写命令和数据。
[0120] 步骤S32:BMC模块向上位机管理模块反馈Flash烧写完成状态。
[0121] 步骤S33:上位机管理模块检测到Flash烧写完成后,发送复位命令。
[0122] 步骤S34:上位机管理模块发送命令,以读取PWM上电配置状态信息、Flash切换配置信息。
[0123] 步骤S35:上位机管理模块确定接收到的PWM上电配置状态信息和Flash切换配置信息正确后,向BMC模块发送启动命令。
[0124] 步骤S36:上位机管理模块等待BMC模块反馈的启动完成信号,若收到启动完成信号,则更新并启动成功;若超时未收到启动完成信号,则向BMC模块发送复位命令,然后返回到步骤S31重复操作流程,并记录异常信息;若重复流程3次仍未成功启动,则上报更新启动失败,并停止操作。
[0125] 在线调试服务器的流程为:
[0126] 步骤S41:上位机管理模块发送命令和数据,通过BMC模块的JTAG接口与服务器的CPU或其他主控芯片进行命令和数据交互,以实现在线调试。
[0127] 本发明还提出一种通用可信的基板管理系统,应用于通用可信的基板管理方法;所述系统包括上位机管理模块、交换机和多个BMC模块;上位机管理模块和交换机之间通过第一数据通路通信连接,BMC模块和交换机之间通过第二数据通路通信连接;BMC模块包括基板管理控制器;基板管理控制器运行有下位机管理程序;不同的BMC模块用于与不同的计算设备通信连接。
[0128] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0129] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0130] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。