一种M2M终端远程升级的系统和方法 |
|||||||
申请号 | CN201010200757.7 | 申请日 | 2010-06-11 | 公开(公告)号 | CN101854623A | 公开(公告)日 | 2010-10-06 |
申请人 | 中兴通讯股份有限公司; | 发明人 | 李瑞锋; | ||||
摘要 | 本 发明 公开了一种M2M终端远程升级的系统,包括:升级 服务器 、M2M平台和M2M通信模组。本发明还同时公开了一种M2M通信模组远程升级的方法,包括:M2M平台获知升级服务器有新的升级包时,创建升级信息发送到M2M通信模组;M2M通信模组校验升级信息,确定升级信息正确时,从升级服务器下载升级包;之后M2M通信模组执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。运用该系统和方法可达到对M2M终端进行远程升级的目的,实现方法简便。 | ||||||
权利要求 | 1.一种M2M终端远程升级的系统,其特征在于,该系统包括:升级服务器、M2M平台和M2M通信模组;其中, |
||||||
说明书全文 | 一种M2M终端远程升级的系统和方法技术领域[0001] 本发明涉及移动通信技术和M2M领域,尤其涉及一种M2M终端远程升级的系统和方法。 背景技术[0002] M2M的英文全称为Machine to Machine,是指机器与机器之间的通信。随着移动通信技术的快速发展,通过移动通信技术来实现机器设备之间的联网已成为可能。M2M技术具有广阔的发展空间,可涉及日常生活和工业生产等多个领域,如:环境监测、工业监控、信息发布和远程医疗等。 [0003] 目前,中国M2M技术的发展还处于起步阶段,各大运营商都在积极制定M2M的相关规范,如:中国移动制定的移动无线机器通信协议(WMMP)。M2M应用网络一般由两部分组成,包括:M2M系统和M2M终端;其中,所述M2M系统可由M2M平台和企业网关等组成;所述M2M终端由M2M通信模组和行业应用模块组成,所述M2M通信模组负责M2M业务的无线承载。 [0004] 所述M2M终端与传统的无线终端一样,需要对M2M终端内部的软件进行升级,传统无线终端的升级方法一般都是无线终端与个人计算机(PC)配合完成的,同时需要操作人员在PC上执行升级管理操作,整个升级过程是在有线的环境中完成的,而对无线远程的升级需求并不是很强烈。 [0005] 而M2M终端在实际应用过程中通常都处于无人值守的状态,有的甚至处于环境恶劣的偏远地区,如果M2M终端的软件升级仍采用类似传统无线终端的升级手段的话,则只能要求操作人员到M2M终端所在地进行升级、成本很高、难度大,所以可行性较低。 [0006] 可见,传统无线终端的升级方法不适用于新兴的M2M业务应用场景,现有的M2M技术中,有待提出一种适用于M2M终端升级的方法。 发明内容[0007] 有鉴于此,本发明的主要目的在于提供一种M2M终端远程升级的系统和方法,可达到对M2M终端进行远程升级的目的,实现方法简便。 [0008] 为达到上述目的,本发明的技术方案是这样实现的: [0009] 本发明提供了一种M2M终端远程升级的系统,该系统包括:升级服务器、M2M平台和M2M通信模组;其中, [0010] 所述升级服务器,用于发现自身存有新升级包时通知M2M平台,并执行与M2M通信模组间的升级包下载操作; [0011] 所述M2M平台,用于在收到升级服务器的通知后,创建升级信息发送到M2M通信模组,并接收M2M通信模组上报的升级成功消息; [0012] 所述M2M通信模组,用于接收并校验M2M平台所发的升级信息,确定升级信息正确时,从升级服务器下载升级包;根据下载的升级包执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。 [0013] 其中,所述M2M通信模组执行的升级操作,具体为: [0014] 设置升级标志后重启,根据设置的升级标志执行升级操作,之后清除升级标志并设置升级完成标志,再次重启;通过升级完成标志确定成功升级,之后清除升级完成标志。 [0015] 其中,所述M2M通信模组进一步包括:升级控制模块、升级执行模块、业务运行模块和闪存Flash;其中, [0016] 所述升级控制模块,用于接收业务运行模块转发的升级信息,并对升级信息进行校验,确定升级信息正确时,经业务运行模块向升级服务器发出升级包请求信息,收到升级服务器经业务运行模块转发的回复后,通知业务运行模块下载升级包; [0017] 所述升级控制模块还用于设置升级标志并存储于Flash中,并重启M2M通信模组;根据Flash中的升级标志触发升级执行模块执行升级操作,并在收到升级执行模块的通知后,清除升级标志,并设置升级完成标志存于Flash中,再次重启M2M通信模组;通过升级完成标志确定M2M通信模组升级已成功后,将Flash中的升级完成标志清除,并经业务运行模块将升级成功消息上报给M2M平台; [0018] 所述升级执行模块,用于被升级控制模块触发后执行升级操作,升级完成后通知升级控制模块; [0019] 所述业务运行模块,用于将M2M平台发送的升级信息发送到升级控制模块,将升级控制模块所发的升级包请求信息转发给升级服务器,并将升级服务器的回复响应给升级控制模块;在收到升级控制模块的通知后,从升级服务器下载升级包,存储于Flash中,并将升级控制模块所发的升级成功消息上报给M2M平台; [0020] 所述Flash,用于存储业务运行模块下载的升级包,存储升级控制模块设置的升级标志和升级完成标志; [0021] 相应的,所述升级服务器,进一步用于接收升级控制模块经业务运行模块转发的升级包请求信息,并执行与业务运行模块间的升级包下载操作; [0022] 所述M2M平台,进一步用于将升级信息经业务运行模块发送到升级控制模块,并接收升级控制模块经业务运行模块上报的升级成功消息。 [0023] 上述方案中,所述升级信息包括:升级服务器的统一资源定位符URL、升级包的版本和升级包的大小。 [0024] 本发明还提供了一种M2M终端远程升级的方法,该方法包括: [0025] M2M平台获知升级服务器有新的升级包时,创建升级信息发送到M2M终端中的M2M通信模组;M2M通信模组校验升级信息,确定升级信息正确时,从升级服务器下载升级包;之后M2M通信模组执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。 [0026] 其中,所述M2M通信模组收到M2M平台所发的升级信息后,执行升级包的下载操作,具体为: [0027] M2M平台所发的升级信息经M2M通信模组中的业务运行模块发送到升级控制模块,升级控制模块对升级信息进行校验,确定升级信息正确时,经业务运行模块向升级服务器发出升级包请求信息,收到升级服务器的回复后,通知业务运行模块从服务器下载升级包,业务运行模块将下载的升级包存储于Flash中。 [0028] 其中,所述M2M平台向M2M通信模组发送的升级信息,通过运营商的M2M规范协议进行承载。 [0029] 上述方案中,所述升级信息包括:升级服务器的URL、升级包的版本和升级包的大小。 [0030] 所述M2M通信模组执行自身的升级操作为:M2M通信模组设置升级标志后重启,根据已设置的升级标志执行升级操作,之后清除升级标志并设置升级完成标志,M2M通信模组再重启;通过升级完成标志确定自身已成功升级,之后清除升级完成标志,并向M2M平台上报升级成功消息。 [0031] 其中,所述M2M通信模组所执行的自身的升级操作过程,具体为: [0032] M2M通信模组中的升级控制模块设置升级标志并存储于Flash中,之后重启M2M通信模组,升级控制模块根据Flash中已设置的升级标志确定当前需进入升级状态,则触发升级执行模块执行升级操作;升级执行模块升级完成后通知升级控制模块,升级控制模块清除Flash中的升级标志,并设置升级完成标志存储于Flash中,M2M通信模组再次重启; [0033] 升级控制模块通过Flash中的升级完成标志确定M2M通信模组升级已成功,则将Flash中的升级完成标志清除,之后升级控制模块经业务运行模块将升级成功消息上报给M2M平台。 [0034] 本发明提供的M2M终端远程升级的系统和方法,M2M平台获知升级服务器有新的升级包时,创建升级信息发送到M2M通信模组;M2M通信模组校验升级信息,确定升级信息正确时,从升级服务器下载升级包;之后M2M通信模组执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。本发明可实现M2M终端利用无线通信方式的远程升级,避免传统无线终端需在有线环境中进行升级的缺点。 [0035] 并且,本发明由M2M终端、M2M系统、以及升级服务器三者配合完成远程升级,M2M终端下载升级包后将自动执行升级操作,不需操作人员到M2M终端所在位置处进行手动升级,因此,本发明实现方法简便、可行性高、升级过程所需的成本较低。附图说明 [0036] 图1为本发明M2M终端远程升级的系统结构示意图; [0037] 图2为本发明M2M终端升级包的远程下载流程示意图; [0038] 图3为本发明M2M终端的本地升级流程示意图。 具体实施方式[0039] 本发明的基本思想是:M2M平台获知升级服务器有新的升级包时,创建升级信息发送到M2M通信模组;M2M通信模组校验升级信息,确定升级信息正确时,从升级服务器下载升级包;之后M2M通信模组执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。 [0040] 其中,所述M2M通信模组所执行的自身的升级操作为:M2M通信模组设置升级标志后重启,根据已设置的升级标志执行升级操作,之后清除升级标志并设置升级完成标志,M2M通信模组再重启;通过升级完成标志确定自身已成功升级,之后清除升级完成标志,并向M2M平台上报升级成功消息。 [0041] 下面结合附图及具体实施例对本发明作进一步详细说明。 [0042] 图1为本发明M2M终端远程升级的系统结构示意图,如图1所示,该系统包括:升级服务器、M2M平台和M2M通信模组;其中, [0043] 所述升级服务器,用于发现自身存有新升级包时通知M2M平台,即:在升级包文件的维护过程中,发现自身存储的升级包中有新增加的升级包时通知M2M平台,并执行与M2M通信模组间的升级包下载操作; [0044] 所述M2M平台,用于在收到升级服务器的通知后,创建升级信息发送到M2M通信模组,并接收M2M通信模组上报的升级成功消息;所述创建为:将升级服务器的统一资源定位符(URL)、升级包的版本和升级包的大小等信息添加在升级信息中。 [0045] 所述M2M通信模组,用于接收并校验M2M平台所发的升级信息,确定升级信息正确时,从升级服务器下载升级包;根据下载的升级包执行自身的升级操作,并在升级完成后向M2M平台上报升级成功消息。 [0046] 本发明中,由于升级服务器仅用于升级包的维护和存储等操作,且M2M平台又为M2M终端的管理中心,并对M2M终端的升级信息进行管理,因此,M2M通信模组在执行完自身的升级操作后,要将升级成功消息上报给M2M平台,而非上报给升级服务器。 [0047] 所述M2M通信模组执行的升级操作,具体为:设置升级标志后重启,根据设置的升级标志执行升级操作,之后清除升级标志并设置升级完成标志,再次重启;通过升级完成标志确定成功升级,之后清除升级完成标志。 [0048] 这里,所述清除升级完成标志的目的是,防止该标志影响M2M终端下次的升级操作,比如:在下次升级包下载完成,M2M通信模组重启后发现有升级完成标志,可能会导致M2M通信模组直接结束升级过程,而不会对新下载的升级包执行升级步操作。 [0049] 所述M2M通信模组进一步包括:升级控制模块、升级执行模块、业务运行模块和闪存(Flash);其中, [0050] 所述升级控制模块,用于接收业务运行模块转发的升级信息,并对升级信息进行校验,如:判断升级服务器的URL是否有效等,确定升级信息正确时,经业务运行模块向升级服务器发出升级包请求信息,收到升级服务器经业务运行模块转发的回复后,通知业务运行模块下载升级包; [0051] 所述升级控制模块,还用于设置升级标志并存储于Flash中,并重启M2M通信模组;根据Flash中的升级标志触发升级执行模块执行升级操作,并在收到升级执行模块的通知后,清除升级标志,并设置升级完成标志存于Flash中,再次重启M2M通信模组;通过升级完成标志确定M2M通信模组升级已成功后,将Flash中的升级完成标志清除,并经业务运行模块将升级成功消息上报给M2M平台; [0052] 所述升级执行模块,用于被升级控制模块触发后执行升级操作,升级完成后通知升级控制模块; [0053] 具体的,将Flash中存储的已下载的升级包覆盖Flash中M2M终端正常运行时对应的区域,之后通知升级控制模块。 [0054] 这里,由于Flash有多个不同的区域,分别用于存储M2M终端运行代码、下载的升级包或升级标志和升级完成标志,因此,升级执行模块在覆盖Flash时,不会覆盖升级包、升级标志或升级完成标志等对应的存储区域,是将升级包从Flash中的对应存储区域中调出后,覆盖M2M终端运行代码存储区域,也就是说,升级执行模块只覆盖M2M终端正常运行时对应的Flash区域。 [0055] 所述业务运行模块,用于将M2M平台发送的升级信息发送到升级控制模块,将升级控制模块所发的升级包请求信息转发给升级服务器,并将升级服务器的回复响应给升级控制模块;在收到升级控制模块的通知后,从升级服务器下载升级包,存储于Flash中,并将升级控制模块所发的升级成功消息上报给M2M平台; [0056] 所述Flash,用于存储业务运行模块下载的升级包,存储升级控制模块设置的升级标志和升级完成标志; [0057] 相应的,所述升级服务器,进一步用于接收升级控制模块经业务运行模块转发的升级包请求信息,并执行与业务运行模块间的升级包下载操作; [0058] 所述M2M平台,进一步用于将升级信息经业务运行模块发送到升级控制模块,并接收升级控制模块经业务运行模块上报的升级成功消息。 [0059] 本发明M2M通信模组远程升级的方法包括两部分,分别为:M2M通信模组升级包的远程下载过程和M2M通信模组的本地升级过程,下面结合附图分别对此两部分进行详细描述。 [0060] 图2为本发明M2M终端升级包的远程下载流程示意图,如图2所示,该流程的实现步骤如下: [0061] 步骤201:升级服务器发现有新的升级包后通知M2M平台; [0062] 具体为:升级服务器在升级包文件的维护过程中,发现自身存储的升级包中有新增加的升级包后向M2M平台发出通知,通知M2M平台有新的升级包需要M2M通信模组升级,并将升级包的必要信息,如版本号和大小等信息通知M2M平台。 [0063] 步骤202:M2M平台创建升级信息,并发送到M2M通信模组; [0064] 具体为:M2M平台收到通知后创建升级信息,所述创建的升级信息可包括升级服务器的URL、升级包的版本和升级包的大小等信息,以通知M2M通信模组有新的升级包。这里,所述升级信息经M2M通信模组中的业务运行模块发送到升级控制模块。 [0065] 其中,所述升级信息通过运营商的M2M规范相关协议进行承载,如:中国WMMP协议。 [0066] 步骤203:M2M通信模组校验升级信息,如果升级信息正确,则执行步骤204;如果升级信息错误,则执行步骤205; [0067] 具体为:M2M通信模组中的升级控制模块收到升级信息后,校验升级信息是否正确,如:判断升级服务器的URL是否有效等,如果升级信息正确,则执行步骤204;如果升级信息错误,则执行步骤205。 [0068] 步骤204:M2M通信模组从升级服务器下载升级包; [0069] 具体为:M2M通信模组可在空闲时,即不影响正常业务运行时,由升级控制模块经业务运行模块向升级服务器发出升级包请求信息,收到升级服务器回复响应后,通知业务运行模块通过现有的文件传输协议(FTP)或者超文本传输协议(HTTP)等将升级包从升级服务器下载到本地,即:下载到M2M通信模组中的Flash中,并执行步骤205。 [0070] 步骤205:升级包的下载过程结束。 [0071] 图3为本发明M2M终端的本地升级流程示意图,如图3所示,该流程的实现步骤如下: [0072] 步骤301:升级包下载完成后,M2M通信模组设置升级标志,并重启; [0073] 具体为:升级包下载完成后,M2M通信模组中的升级控制模块设置升级标志并存储于Flash中,之后重启M2M通信模组。 [0074] 其中,所述升级标志作为M2M通信模组重启后,升级控制模块确定M2M通信模组从正常业务运行状态向升级状态转换的标志。 [0075] 这里,所述升级流程可在M2M通信模组空闲时进行,也就是说,升级包下载完成后,无需立即执行升级操作。 [0076] 步骤302:根据设置的升级标志执行升级操作,之后清除升级标志并设置升级完成标志; [0077] 具体为:M2M通信模组重启后,升级控制模块根据Flash中已设置的升级标志确定当前需进入升级状态,则触发升级执行模块执行升级操作,即升级执行模块将Flash中存储的已下载的升级包覆盖Flash中M2M终端正常运行时对应的区域,之后通知升级控制模块,升级控制模块将Flash中的升级标志清除,并设置升级完成标志存储于Flash中。 [0078] 这里,由于Flash有多个不同的区域,分别用于存储M2M终端运行代码、下载的升级包或升级标志和升级完成标志,因此,升级执行模块在覆盖Flash时,不会覆盖升级包、升级标志或升级完成标志等对应的存储区域,是将升级包从Flash中的对应存储区域中调出后,覆盖M2M终端运行代码存储区域,也就是说,升级执行模块只覆盖M2M终端正常运行时对应的Flash区域。 [0079] 步骤303:M2M通信模组重启,确定成功升级后清除升级完成标志; [0080] 具体为:升级控制模块再次重启M2M通信模组,M2M通信模组启动后,升级控制模块通过Flash中的升级完成标志确定M2M通信模组升级已成功,则将Flash中的升级完成标志清除。 [0081] 步骤304:M2M通信模组向M2M平台上报升级成功消息,升级过程结束; [0082] 具体为:M2M通信模组中的升级控制模块经业务运行模块,将升级成功消息上报给M2M平台,之后整个升级过程结束。 |