一种嵌入式设备远程批量升级的方法和装置的制作方法

文档序号:87356阅读:261来源:国知局
专利名称:一种嵌入式设备远程批量升级的方法和装置的制作方法
技术领域
本发明涉及网络通信技术领域
,尤其是涉及一种嵌入式设备远程批量升级的方法和装置。
背景技术
目前对远程嵌入式设备的升级主要是工程师到设备现场,通过计算机串口发送控制命令,并通过以太网口传输升级数据,逐一对设备进行升级。随着嵌入式设备应用的日益广泛,嵌入式设备的数量不断增加,分布的场所越来越复杂,因此设备的升级难度也越来越大,该升级方式已经很难满足需求。
为解决上述问题,现在采用远程登陆的方法来升级嵌入式设备,实现了嵌入式设备的远程升级,无需工程师到设备现场进行升级。该方法首先通过telnet或串口服务器远程登陆到待升级设备上,然后通过单播方式将升级数据发送到该设备,该设备收到升级数据后,用升级数据覆盖原有数据,完成对该设备的远程升级。如果有多个待升级设备,则重复上述操作,实现对所有待升级设备的升级。
例如,一种嵌入式设备远程升级的系统如图1所示,包括升级数据发送装置11、网络12、嵌入式设备13、嵌入式设备14、嵌入式设备15和嵌入式设备16,其中网络12分别与升级数据发送装置11、嵌入式设备13、嵌入式设备14、嵌入式设备15和嵌入式设备16连接。当嵌入式设备13、嵌入式设备14、嵌入式设备15和嵌入式设备16需要进行升级时,其升级过程包括以下步骤步骤A1,通过telnet远程登陆到嵌入式设备13上;步骤A2,升级数据发送装置11采用单播方式,通过网络12将升级数据发送到嵌入式设备13;
步骤A3,嵌入式设备13收到升级数据后,用升级数据覆盖原有数据,完成嵌入式设备13的远程升级;步骤A4,对嵌入式设备14、嵌入式设备15和嵌入式设备16重复步骤A1至A3,完成各设备的远程升级。
但是,因为该方法采用单播方式传输数据,需要与各个设备分别建立连接并发送升级数据,网络资源利用率低。又因为该方法是逐一升级各个设备,所以当有大量设备需要升级时,升级周期长。
而且,该方法采用直接用升级数据覆盖原有数据的方法对设备进行升级,当发生网络故障或设备端异常时可能造成升级失败,并且不可恢复,需要工程师到现场通过串口重新升级或者恢复系统。

发明内容本发明要解决的问题是提供一种嵌入式设备远程批量升级的方法和装置,采用组播方式传输升级数据,同时也可以实现升级后的数据恢复,提高网络资源利用率和升级的可靠性。
为达到上述目的,本发明提供一种嵌入式设备远程批量升级的方法,包括以下步骤通过组播方式将升级数据发送至待升级设备;所述待升级设备保留升级前的数据,并利用所接收到的升级数据进行升级。
按照本发明的一个方面,在发送升级数据之前,还包括根据嵌入式设备的版本信息选取待升级设备;选取待升级设备后,将所述待升级设备进行分组,并分别将其加入对应的组播组。
按照本发明的另一个方面,在升级数据发送至待升级设备后,还包括检验所述升级数据的正确性。
按照本发明的再一个方面,所述待升级设备保留升级前的数据,并利用升级数据进行升级具体为将升级数据存储入空闲存储区域;设置升级标识,标记所述空闲存储区域为当前存储区域、原当前存储区域为空闲存储区域。
按照本发明的再一个方面,在所述待升级设备升级完成后,还包括判断所述设备是否运行正常,如果出现异常,则将所述设备恢复到利用升级前的数据运行的状态。
按照本发明的再一个方面,将所述设备恢复到利用升级前的数据运行的状态具体为设置升级标识,标记空闲存储区域为当前存储区域、原当前存储区域为空闲存储区域。
按照本发明的再一个方面,所述待升级设备升级完成后,还包括所述待升级设备向升级数据发送端反馈升级后的版本信息;根据所述反馈的版本信息,所述升级数据发送端更新所述待升级设备的原版本信息。
本发明提供一种嵌入式设备升级数据发送装置,包括组播组管理单元,生成组播组并向所述组播组发送升级数据;升级管理单元,向待升级设备发送对应组播组的组播地址,将所述设备加入所述组播组。
按照本发明的再一个方面,所述升级管理单元还用于选取待升级设备、将所述待升级设备进行分组,并为每组待升级设备分配组播组。
按照本发明的再一个方面,还包括版本信息存储单元;所述升级管理单元接收到设备升级后反馈的版本信息后,将所述版本信息存储入所述版本信息存储单元。
本发明提供一种嵌入式设备,包括升级管理单元、第一存储单元和第二存储单元;所述升级管理单元,发送加入组播组请求报文,从所述组播组接收升级数据,并控制所述嵌入式设备进行升级;所述第一存储单元和第二存储单元,分别存储所接收到的升级数据和升级前的数据。
按照本发明的再一个方面,所述升级管理单元进一步包括升级标识设置子单元,设置用于标记所述第一存储单元和第二存储单元为当前存储区域或空闲存储区域的升级标识。
按照本发明的再一个方面,所述升级管理单元还包括数据检验子单元,检验接收到的升级数据的正确性。
按照本发明的再一个方面,还包括版本信息反馈单元,在所述升级管理单元的控制下,生成升级后的版本信息,并向升级数据发送端反馈所述版本信息。
与现有技术相比,本发明具有以下优点
本发明可以同时对多个设备进行升级,升级周期短;而且,本发明采用组播方式传输升级数据,可以节约网络带宽、降低网络负载;另外,本发明采用冗余升级方式,可以实现升级后的数据恢复,提高升级的可靠性;进一步,本发明通过版本信息存储单元对所有设备的版本信息进行统一管理。
图1是一种嵌入式设备远程升级的系统图;图2是本发明的一种升级数据发送装置的结构图;图3是本发明的一种嵌入式设备的结构图;图4是本发明的一种嵌入式设备远程批量升级的流程图。
具体实施方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述本发明的一种升级数据发送装置如图2所示,包括组播组管理单元21、升级管理单元22和版本信息存储单元23;其中升级管理单元22分别与组播组管理单元21和版本信息存储单元23连接。
组播组管理单元21用于生成组播组并向所述组播组发送升级数据。升级管理单元22用于选取待升级设备,将该待升级设备进行分组,为每组待升级设备分配组播组;并向该待升级设备发送对应组播组的组播地址,将该待升级设备加入组播组;并且,当设备升级后反馈版本信息时,升级管理单元22还用于接收该版本信息,并将该版本信息存储入版本信息存储单元23。版本信息存储单元23用于存储嵌入式设备的版本信息,该版本信息包括当前版本、历史版本、升级时间、升级人员和升级原因中的一项或多项。
本发明的一种嵌入式设备的结构如图3所示,包括升级管理单元31、存储单元32、存储单元33和版本信息反馈单元34;其中升级管理单元31分别与存储单元32、存储单元33和版本信息反馈单元34连接。
升级管理单元31用于向组播组发送加入组播组请求报文;在加入组播组后,从所述组播组接收升级数据,并控制嵌入式设备进行升级。升级管理单元31还包括升级标识设置子单元311和数据检验子单元312;当从所述组播组接收到升级数据后,数据检验子单元312检验所述升级数据的正确性;升级标识设置子单元311设置升级标识,所述升级标识用于标记存储单元32和存储单元33为当前存储区域或空闲存储区域;例如,当所述升级标识设置为1时,存储单元32为当前存储区域,存储单元33为空闲存储区域;当所述升级标识设置为0时,存储单元32为空闲存储区域,存储单元33为当前存储区域。
存储单元32和存储单元33可以分别设置为当前存储区域或空闲存储区域,用于存储所接收到的升级数据和升级前的数据。例如,存储单元32目前为当前存储区域,存储单元33为空闲存储区域,在接收到升级数据后,所述升级数据被存储入存储单元33,存储单元32保存着升级前的数据。
版本信息反馈单元34在升级管理单元31的控制下,生成升级后的版本信息,并向升级数据发送端反馈所述版本信息。
当图1所示的嵌入式设备远程升级的系统中采用图2所示升级数据发送装置和图3所示嵌入式设备时,本发明的一种嵌入式设备远程批量升级的流程如图4所示。本发明首先通过组播方式将升级数据发送至待升级设备;然后所述待升级设备保留升级前的数据,并利用所接收到的升级数据进行升级。参照图4,本发明包括以下步骤步骤s401,升级管理单元22根据版本信息存储单元23存储的嵌入式设备的版本信息,选取待升级设备;该版本信息包括当前版本、历史版本、升级时间、升级人员和升级原因中的一项或多项。本实施例中待升级设备为嵌入式设备13、嵌入式设备14、嵌入式设备15和嵌入式设备16。
步骤s402,组播组管理单元21生成组播组。本实施例中生成组播组1和组播组2。其生成组播组1的过程为组播组管理单元21向一个空闲组播地址发送IGMP(Internet Group Management Protocol,互联网组管理协议)报文,通知路由器组播组管理单元21加入组播地址为该空闲组播地址的组播组,并确定该组播组为发送升级文件的组播组1。组播组2的生成过程与组播组1相同。
步骤s403,升级管理单元22将嵌入式设备13和嵌入式设备14分为一组,并将该组分配到组播组1;将嵌入式设备15和嵌入式设备16分为一组,并将该组分配到组播组2。
步骤s404,升级管理单元22将嵌入式设备13和嵌入式设备14加入组播组1,将嵌入式设备15和嵌入式设备16加入组播组2。其加入过程具体为首先升级管理单元22将组播组1的组播地址发送到嵌入式设备13和嵌入式设备14,将组播组2的组播地址发送到嵌入式设备15和嵌入式设备16;然后嵌入式设备13和嵌入式设备14的升级管理单元31,向组播组1发送加入组播组请求报文,加入组播组1,该加入组播组请求报文为IGMP报文;嵌入式设备15和嵌入式设备16的升级管理单元31,向组播组2发送加入组播组请求报文,加入组播组2,该加入组播组请求报文为IGMP报文。
步骤s405,组播组管理单元21向组播组1和组播组2中发送升级数据。
步骤s406,嵌入式设备13和嵌入式设备14的升级管理单元31从组播组1中接收升级数据;嵌入式设备15和嵌入式设备16的升级管理单元31从组播组2中接收升级数据。
步骤s407,数据检验子单元312检验升级数据的正确性。如果正确,则转步骤s408,否则结束。
步骤s408,判断升级类型为系统升级还是文件升级,如果为系统升级,则转步骤s409,否则转步骤s414。
步骤s409,升级管理单元31根据升级标识,选择空闲存储区域为升级数据存储的存储单元。本实施例中当所述升级标识设置为1时,存储单元32为当前存储区域,存储单元33为空闲存储区域;当所述升级标识设置为0时,存储单元32为空闲存储区域,存储单元33为当前存储区域。当前升级标识设置为1,所以选择存储单元33存储升级数据。
步骤s410,将升级数据存储入存储单元33。
步骤s411,利用升级数据进行升级。即升级管理单元31设置升级标识为0,将存储单元33标记为当前存储区域,将存储单元32标记为空闲存储区域,并重新启动设备。因为存储单元33为当前存储区域,所以所述设备从存储单元33存储的系统启动,实现了所述设备的升级。
步骤s412,判断所述设备是否运行正常,如果出现异常,则转步骤s413,否则转步骤s415。
步骤s413,将设备恢复到升级前的运行状态并结束。即升级管理单元31设置升级标识为1,将存储单元32标记为当前存储区域,将存储单元33标记为空闲存储区域,重新启动设备。因为存储单元32为当前存储区域,所以所述设备从存储单元32存储的系统启动,使设备恢复到升级前的运行状态。
步骤s414,将升级数据存储入当前存储区域,覆盖原有数据。本实施例中当前升级标识设置为1,所以存储单元32为当前存储区域,升级数据被存储入存储单元32,覆盖其中的原有数据。
步骤s415,升级管理单元31控制版本信息反馈单元34生成升级后的版本信息,并发送该版本信息到升级数据发送装置。该版本信息包括当前版本、历史版本、升级时间、升级人员和升级原因中的一项或多项。
步骤s416,升级数据发送装置判断是否有设备升级后反馈的版本信息,如果有,则转步骤s417,否则结束。
步骤s417,升级管理单元22接收设备升级后反馈的版本信息,并将该版本信息存储入版本信息存储单元23,更新原嵌入式设备的版本信息并结束。
其中,从步骤s406到步骤s415的升级操作,嵌入式设备13、嵌入式设备14、嵌入式设备15和嵌入式设备16是同时进行的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种嵌入式设备远程批量升级的方法,其特征在于,包括以下步骤通过组播方式将升级数据发送至待升级设备;所述待升级设备保留升级前的数据,并利用所接收到的升级数据进行升级。
2.如权利要求
1所述嵌入式设备远程批量升级的方法,其特征在于,在发送升级数据之前,还包括根据嵌入式设备的版本信息选取待升级设备;选取待升级设备后,将所述待升级设备进行分组,并分别将其加入对应的组播组。
3.如权利要求
1所述嵌入式设备远程批量升级的方法,其特征在于,在升级数据发送至待升级设备后,还包括检验所述升级数据的正确性。
4.如权利要求
1所述嵌入式设备远程批量升级的方法,其特征在于,所述待升级设备保留升级前的数据,并利用升级数据进行升级具体为将升级数据存储入空闲存储区域;设置升级标识,标记所述空闲存储区域为当前存储区域、原当前存储区域为空闲存储区域。
5.如权利要求
1所述嵌入式设备远程批量升级的方法,其特征在于,在所述待升级设备升级完成后,还包括判断所述设备是否运行正常,如果出现异常,则将所述设备恢复到利用升级前的数据运行的状态。
6.如权利要求
5所述嵌入式设备远程批量升级的方法,其特征在于,将所述设备恢复到利用升级前的数据运行的状态具体为设置升级标识,标记空闲存储区域为当前存储区域、原当前存储区域为空闲存储区域。
7.如权利要求
1所述嵌入式设备远程批量升级的方法,其特征在于,所述待升级设备升级完成后,还包括所述待升级设备向升级数据发送端反馈升级后的版本信息;根据所述反馈的版本信息,所述升级数据发送端更新所述待升级设备的原版本信息。
8.一种嵌入式设备升级数据发送装置,其特征在于,包括组播组管理单元,生成组播组并向所述组播组发送升级数据;升级管理单元,向待升级设备发送对应组播组的组播地址,将所述设备加入所述组播组。
9.如权利要求
8所述嵌入式设备升级数据发送装置,其特征在于,所述升级管理单元还用于选取待升级设备、将所述待升级设备进行分组,并为每组待升级设备分配组播组。
10.如权利要求
8所述嵌入式设备升级数据发送装置,其特征在于,还包括版本信息存储单元;所述升级管理单元接收到设备升级后反馈的版本信息后,将所述版本信息存储入所述版本信息存储单元。
11.一种嵌入式设备,其特征在于,包括升级管理单元、第一存储单元和第二存储单元;所述升级管理单元,发送加入组播组请求报文,从所述组播组接收升级数据,并控制所述嵌入式设备进行升级;所述第一存储单元和第二存储单元,分别存储所接收到的升级数据和升级前的数据。
12.如权利要求
11所述嵌入式设备,其特征在于,所述升级管理单元进一步包括升级标识设置子单元,设置用于标记所述第一存储单元和第二存储单元为当前存储区域或空闲存储区域的升级标识。
13.如权利要求
11所述嵌入式设备,其特征在于,所述升级管理单元还包括数据检验子单元,检验接收到的升级数据的正确性。
14.如权利要求
11所述嵌入式设备,其特征在于,还包括版本信息反馈单元,在所述升级管理单元的控制下,生成升级后的版本信息,并向升级数据发送端反馈所述版本信息。
专利摘要
本发明公开了一种嵌入式设备远程批量升级的方法,包括通过组播方式将升级数据发送至待升级设备;所述待升级设备保留升级前的数据,并利用所述升级数据进行升级。本发明还公开了一种嵌入式设备升级数据发送装置和一种嵌入式设备。本发明可以同时对多个设备进行升级,升级周期短;而且,本发明采用组播方式传输升级数据,可以节约网络带宽;另外,本发明采用冗余升级方式,可以实现升级后的数据恢复,提高升级的可靠性。
文档编号H04L12/24GK1996894SQ200610170217
公开日2007年7月11日 申请日期2006年12月25日
发明者陈磊 申请人:杭州华为三康技术有限公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1