一种实现用户侧设备的固件升级方法和系统的制作方法

文档序号:6432908阅读:204来源:国知局
专利名称:一种实现用户侧设备的固件升级方法和系统的制作方法
技术领域
本发明涉及移动通信中的网络管理技术领域,尤其涉及一种实现用户侧设备的固件升级方法和系统。
背景技术
随着移动通信的迅速发展和终端设备的普及,大量终端设备的配置和维护变得越来越困难,大大提高了网络产品运营商的成本,传统的基于SNMP (SimpleNetwork Management Protocol,网络管理协议)的网管系统面对众多的终端设备时显得力不从心, 不能适应终端设备和宽带接入市场的发展速度和规模。因此,功能强大的远程管理协议诞生了,目前应用广泛的远程管理协议是TR069和OMA(Open Mobile Alliance,开放移动联盟)协议。CWMP(CPE WAN Management Protocol,CPE 广域网管理协议)是由 DSL(Digital Subscriber Line,数字用户线路)论坛发起的技术规范之一,编号为TR-069,所以又被称为TR069协议。TR069协议定义了一套全新的网管体系结构,包括通用架构、消息规范、管理模型、管理方法、管理参数、交互接口、数据模型,TR069是DSL论坛关于家庭网络一系列设备远程管理的基础,包括一些家庭网络设备的规范,比如TR069—CPE(Customer Premises Equipment,用户侧设备)广域网管理协议、TR098-家庭网关数据模型等。TR069协议基于TCP(Transfer Control Protocol,传输控制协议)层,主要用于管理IPdnternet Protocol,互联网协议)设备,TR069协议的关注重点是实际应用;在DSL 接入网络中,由于用户数量繁多、部署分散,不易于进行CPE的管理和维护,TR069提出了通过ACS (Auto-Configuration Server,自动配置服务器)对CPE进行远程集中管理。OMA联盟成立于2002年6月12日,致力于提高移动通信业务的质量,同时解决不同网络之间的数据同步问题,进而实现互联互通。OMA联盟提出的OMA协议是一种全球通用且又安全可靠,便于操作的端到端移动通信的统一标准和规范。与TR069协议不同,由于 OMA协议的设计初衷是支持不同设备在不同网络间的数据同步,OMA协议的数据传输不仅仅构筑于hternet会话层使用HTTP (Hyper Text Transfer Protocol,超文本传输协议) 传输,同时支持无线网络WAP (Wireless Application Protocol,无线应用通讯协议)使用 WSP(WirelessSession Protocol,无线会话协议)进行数据传输等等。OMA-DM(Device Manage,设备管理)协议是OMA协议定义的一套专门用于移动与无线网络的管理协议,是OMA协议的一种应用,与TR069协议仅用于hternet的HTTP协议不同,OMA-DM协议明确独立于承载网络,因此,OMA-DM协议应用建立在各种网络之上,既可以利用各种网络协议传输OMA-DM命令。TR069协议和OMA-DM协议都可以用于远程进行管理用户侧设备,获取设备的运行状态,修改设备的参数,对设备的固件进且行升级等功能。但是目前不论是升级用户侧设备固件中的全部模块还是升级部分模块,服务器都采用统一的方式进行,如果由于个别独立的模块引起升级失败,则需要重新执行升级包的下载过程,降低了对用户侧设备固件升级的效率和易用性。

发明内容
本发明要解决的技术问题是,提供一种实现用户侧设备的固件升级方法和系统, 根据需要对用户侧设备固件的软件版本进行升级,提高固件升级过程的效率和易用性。本发明采用的技术方案是,所述实现用户侧设备的固件升级方法,包括服务器将用户侧设备固件中的模块信息添加到管理配置文件中,服务器基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级。进一步的,所述服务器将用户侧设备固件中的模块信息添加到管理配置文件中, 具体包括所述管理配置文件为参数树文件;每一个模块对应参数树文件中的一个节点,每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、是否存在升级时的依赖模块、模块版本信息、校验码、模块完整性校验方法;所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。进一步的,所述服务器基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级,具体包括服务器与用户侧设备开启会话后,服务器向用户侧设备发送所述需要升级的模块 fn息;用户侧设备根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。进一步的,所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小;所述用户侧设备根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级,具体包括用户侧设备接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;根据所述模块对应的校验方法对下载的所述模块进行校验,若校验结果为真,则开始升级所述模块,否则向服务器上报错误信息。进一步的,在服务器基于OMA-DM协议对用户侧设备固件进行升级的情况下,当需要升级新的模块时,服务器向用户侧设备获取所述新的模块信息添加到管理配置文件中。基于上述方法,本发明还提供一种实现用户侧设备的固件升级系统,包括服务器,用于将用户侧设备固件中的模块信息添加到管理配置文件中,基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级;用户侧设备,用于配合服务器对本端需要升级的模块进行升级。进一步的,所述管理配置文件为参数树文件;每一个模块对应参数树文件中的一个节点,每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、是否存在升级时的依赖模块、模块版本信息、校验码、模块完整性校验方法;
所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。进一步的,所述服务器进一步用于,与用户侧设备开启会话后,向用户侧设备发送所述需要升级的模块信息;所述用户侧设备进一步用于,根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。进一步的,所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小;所述用户侧设备,具体包括判断下载模块,用于接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;校验升级模块,用于根据所述模块对应的校验方法对下载的所述模块进行校验, 若校验结果为真,则开始升级所述模块,否则向服务器上报错误信息。进一步的,在服务器基于OMA-DM协议对用户侧设备固件进行升级的情况下,服务器,还用于当需要升级新的模块时,向用户侧设备获取所述新的模块信息添加到管理配置文件中。采用上述技术方案,本发明至少具有下列优点本发明所述实现用户侧设备的固件升级方法和系统,将用户侧设备固件的可升级模块进行分解,将模块的详细信息添加到配置管理文件中,通过配置管理文件实现对固件可升级模块的升级管理,可以方便的选择相应模块升级,当一个模块在下载过程中校验失败时,其他模块不需要进行重新下载的过程,克服了现有技术对所有模块升级时使用统一的接口,在下载过程中校验失败时需要重新下载全部模块升级包的缺点,提高了升级的效率和易用性。


图1为本发明第一实施例中所述实现用户侧设备的固件升级方法流程图;图2为本发明第二实施例中所述实现用户侧设备的固件升级方法流程图;图3为本发明第三实施例中所述实现用户侧设备的固件升级系统结构示意图;图4为本发明应用实例的网络通信连接情况示意图;图5为本发明应用于TR069协议的实例中固件升级过程示意图;图6为本发明应用于OMA-DM协议的实例中固件升级过程示意图。
具体实施例方式为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。本发明第一实施例,以服务器基于TR069协议对用户侧设备固件进行升级为例, 介绍一种实现用户侧设备的固件升级方法,如图1所示,包括以下具体步骤步骤S101,服务器将用户侧设备固件中的模块信息添加到管理配置文件中。
具体的,所述管理配置文件为基于家庭网关数据模型TR098文档的参数树文件; 每一个模块对应参数树文件中的一个节点,可以看成是该模块在管理配置文件中对应的升级接口。每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、是否存在升级时的依赖模块、模块版本信息、校验码以及模块完整性校验方法;所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。在本发明中叶节点即为节点的属性。步骤S102,服务器基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级。步骤S102具体包括如下步骤Al,服务器与用户侧设备开启会话。A2,服务器向用户侧设备发送所述需要升级的模块信息。所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小。A3,用户侧设备根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。具体的,用户侧设备接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;根据所述模块对应的校验方法对下载的所述模块进行校验,若校验结果为真,则开始升级所述模块,否则向服务器上报错误信息。本发明第二实施例,以服务器基于OMA-DM协议对用户侧设备固件进行升级为例, 介绍一种实现用户侧设备的固件升级方法,如图2所示,本实施例所述方法步骤201、步骤 202与第一实施例步骤101、步骤102大致相同,区别在于,管理配置文件为基于OMA-DM协议的参数树文件。且本实施例还包括步骤S203,当需要升级新的模块时,服务器向用户侧设备获取所述新的模块信息添加到管理配置文件中。步骤S203具体包括Bi,服务器向用户侧设备主动发起会话获取需要升级的新的模块信息;B2,用户侧设备向服务器发送所述新的模块信息;B3,服务器基于所述新的模块信息初始化管理配置文件中所述新的模块对应的升级接口。后续服务器可以通过该升级接口对相应模块进行升级。也就是说,基于OMA-DM协议对用户侧设备固件进行升级时,只用通过修改管理配置文件即可满足新增升级模块的需求。本发明第三实施例,以服务器基于TR069协议对用户侧设备固件进行升级为例, 介绍一种实现用户侧设备的固件升级系统,如图3所示,具体包括以下组成部分服务器10,用于将用户侧设备20固件中的模块信息添加到管理配置文件中,基于所述管理配置文件对用户侧设备20固件中需要升级的模块进行升级。具体的,所述管理配置文件为基于家庭网关数据模型TR098文档的参数树文件; 每一个模块对应参数树文件中的一个节点,可以看成是该模块在管理配置文件中对应的升级接口。每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、是否存在升级时的依赖模块、模块版本信息、校验码以及模块完整性校验方法;
所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。进一步的,服务器10用于与用户侧设备20开启会话,然后向用户侧设备20发送所述需要升级的模块信息。所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小。用户侧设备20,用于配合服务器10对本端需要升级的模块进行升级。进一步的,用户侧设备20用于根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。用户侧设备20,具体包括判断下载模块21,用于接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;校验升级模块22,用于根据所述模块对应的校验方法对下载的所述模块进行校验,若校验结果为真,则开始升级所述模块,否则向服务器10上报错误信息。本发明第四实施例,以服务器基于OMA-DM协议对用户侧设备固件进行升级为例, 介绍一种实现用户侧设备的固件升级系统,本实施例所述系统与第三实施例大致相同,区别在于,在本实施例中管理配置文件为基于OMA-DM协议的参数树文件。服务器10,还用于当需要升级新的模块时,向用户侧设备20获取所述新的模块信息添加到管理配置文件中。具体的,服务器10向用户侧设备20主动发起会话获取需要升级的新的模块信息, 并基于所述新的模块信息初始化管理配置文件中所述新的模块对应的升级接口。后续服务器10可以通过该升级接口对用户侧设备20的相应模块进行升级。也就是说,基于OMA-DM协议对用户侧设备固件进行升级时,只用通过修改服务器 10侧的管理配置文件即可满足新增升级模块的需求。下面结合图4 6介绍两个应用本发明技术方案的应用实例。附图4是本发明应用实例的网络通信连接情况示意图,CPE侧安装有基于TR069协议或者OMA-DM协议的客户端软件,服务器侧安装有基于TR069协议或者OMA-DM协议的服务器软件。CPE通过TR069协议客户端(简称TR069客户端)连接到网络另一侧的TR069协议服务器(TR069服务器)进行通信,TR069协议服务器通过网络对TR069协议客户端进行远程控制,对CPE进行远程配置管理。或者,CPE通过OMA-DM协议客户端(简称OMA-DM客户端)连接到网络另一侧的OMA-DM协议服务器(简称OMA-DM服务器)进行通信,OMA-DM 协议服务器通过网络对OMA-DM协议客户端进行远程控制,对CPE进行远程配置管理。第一应用实例下面结合附图5对本发明应用于TR069协议的实例进行说明,设定CPE固件可升级的模块有AO、Al、A2、A3、A4,共五个模块,TR069服务器为ACS (Auto-Configuration Server,自动配置服务器),TR069客户端为CPE (CustomerPremises Equipment,用户侧设备),参数树文件为标准参数模型TR98文档tree, xml ;步骤1 将CPE固件中的可升级模块的详细信息添加到参数树tree, xml文件中。在基于家庭网关数据模型TR098文档的参数树文件tree, xml的节点 InternetGatewayDevice 下添力口子节点 DeviceModuleFirmware,该子 节点DeviceModuleFirmware为多实例节点,在参数树模型中对应的路径为 InternetGatewayDevice. DeviceModuleFirmware. {i}.,该子节点 DeviceModuleFirmware 的叶节点或属性包括子节点DeviceModuleFirmware的“名称”属性在参数树中的名字为name,类型为 String_64(字符串类型,长度最大为64个字节);子节点DeviceModuleFirmware的“是否存在依赖模块”属性在参数树中的名称为 IsDepend,类型为BOOLEAN(布尔型,值为TRUE或者FALSE);子节点DeviceModuleFirmware的“模块的版本信息”属性在参数树中的名称为 version,类型为String_64 (字符串类型,长度最大为64个字节);子节点DeviceModuleFirmware的“校验码”属性在参数树中的名称为CheckCode, 类型为stringJOM (字符串类型,长度最大为IOM个字节);子节点DeviceModuleFirmware的“模块完整性校验方法”属性在参数树中的名称为CheckMethod,类型为string_64 (字符串类型,长度最大为为64个字节);“依赖模块”为子节点DeviceModuleFirmware的子节点,其名称为D印endModule, ^ 0 M M Φ M M ^ 足各 @ 为 InternetGatewayDevice. DeviceModuleFirmware. {i}. DependModule. {i}.,D印endModule节点的属性名称为name,其类型为为string_64(字符串类型,长度最大为64个字节);模块A0、A1、A2、A3、A4对应用参数树中的节点路径为InternetGatewayDevice. DeviceModuleFirmware. 0.InternetGatewayDevice. DeviceModuleFirmware. 1.InternetGatewayDevice. DeviceModuleFirmware. 2.InternetGatewayDevice. DeviceModuleFirmware. 3.InternetGatewayDevice. DeviceModuleFirmware. 4.
步骤2 升级CPE固件中的可升级模块A2 ; 从模块A2在参数树中对应子节点DeviceModuleFirmware的模块依赖节点 DependModule可知,升级CPE固件中的模块A2须依赖于模块AO和Al,所以当升级A2模块时,会同时升级AO和Al模块。步骤2具体包括步骤2. 1 =ACS 向 CPE 发起 TCP (Transmission Control Protocol,传输控制协议) 连接;步骤2. 2 =CPE收到ACS发起的TCP连接请求后,向ACS发送inform报文开启一个新的会话;步骤2. 3 =ACS收到CPE发来的inform报文后,发送informRespose报文,同时一个新的会话已经成功建立,然后ACS向CPE发送待升级的固件模块A2的download报文。 download报文中包含模块AO、Al和A2的大小、校验码、校验方法和版本信息等。步骤3 =CPE下载模块并升级。步骤3具体包括步骤3. 1 =CPE收到ACS的download报文后,从中提取关于模块升级的信息,包括下载模块的URL、模块的版本信息、模块的校验方法和模块的校验码;步骤3. 2 =CPE检测当前可升级的模块A2、Al、AO信息是否和download报文中的信息是否一致;其中检测的信息包括模块的版本信息,模块的校验方法,模块的校验码, 模块的大小,如果模块A2的信息完全一致则执行步骤3. 3,否则执行步骤3. 4 ;步骤3. 3 =CPE在当前会话向ACS发送该模块A2和download报文中的信息一致, 模块A2不需要升级,然后执行步骤3. 4 ;步骤3. 4 结束当前会话,然后执行步骤3. 6 ;步骤3. 5 如果可升级模块Al或者AO的信息和download报文中的信息的一致, 则CPE在当前会话向ACS发送模块Al或者AO不需要升级的报文,然后执行步骤3. 4 ;步骤3. 6 判断是否有需要升级的模块,若是,则执行步骤3. 7,否则升级流程结束;步骤3. 7 =CPE根据从download报文中提取的下载模块的URL,下载相应的模块, 如果无法从URL下载相应的模块,执行步骤3. 10 ;如果可以从URL下载相应的模块,则执行步骤3. 8 ;步骤3. 8,根据download报文提供的校验方法对下载的模块进行校验,并且保留校验结果,如果所有的模块的校验结果均为TRUE的时候开始升级相应的模块,然后执行步骤 3. 9 ;步骤3. 9 =CPE修改模块的校验方法、检验码、版本号、模块大小,CPE在下一个会话中将升级的结果通过inform报文发送给ACS,升级流程结束;步骤3. 10 =CPE主动发起一个会话,并将错误信息通过inform报文发送给ACS。具体的,CPE在会话报文中加入无法从URL下载模块的错误信息。第二应用实例下面结合附图6对本发明应用于OMA-DM协议的应用实例进行说明,设CPE固件可升级的模块有AO、Al、A2、A3、A4,共五个模块。步骤Sl 将CPE可升级模块的详细信息添加到参数树tree, xml文件中;在OMA-DM协议的参数树文件tree, xml中节点./FUMO下添加子节点 DeviceModuleFirmware,对该子节点 DeviceModuleFirmware 可执行的操作为 <get/Xadd/Xdelete/>,该子节点 DeviceModuleFirmware 的叶节点或属性包括子节点DeviceModuleFirmware的叶节点“名称”在参数树中的名字为name, 类型为chr_64(字符串类型,长度最大为64个字节),对该叶节点可执行的操作为 <get/Xreplace/> ;子节点DeviceModuleFirmware的叶节点“是否存在依赖模块”在参数树中的名称为IsD印end,类型为bool (布尔型,值为TRUE或者FALSE),对该叶节点可执行的操作为 <get/Xreplace/> ;子节点DeviceModuleFirmware的叶节点“模块的版本信息”在参数树中的名称为 version,类型为chr_64 (字符串类型,长度最大为64个字节),对该叶节点可执行的操作为 <get/Xreplace/> ;子节点DeviceModuleFirmware的叶节点“校验码”在参数树中的名称为 CheckCode,类型为chr_10M (字符串类型,长度最大为IOM个字节),对该叶节点可执行的操作为 <get/Xreplace/> ;子节点DeviceModuleFirmware的叶节点“模块完整性校验方法”在参数树中的名称为CheckMethod,类型为chr_64 (字符串类型,长度最大为64个字节),对该叶节点可执行的操作为<get/Xr印lace/> ;“依赖模块”为子节点DeviceModuleFirmware的子节点或称模块依赖节点, 其名称为D印endModule,在参数树中对应的路径· /FUMO/DeviceModuleFirmware/ {i} / DependModule,对该节点 D印endModule 可执行的操作为 <get/><add/Xdelete/> ;节点 DependModule的叶节点名称为name,其类型为为chr_64 (字符串类型,长度最大为64个字节),对该叶节点可执行的操作为<get/Xr印lace/> ;模块AO、Al、A2、A3、A4对应用参数树中的节点路径为/FUMO/DeviceModuleFirmware/O/. /FUMO/DeviceModuleFirmware/1/. /FUM0/DeviceModuleFirmware/2/. /FUM0/DeviceModuleFirmware/3/. /FUMO/DeviceModuleFirmware/4/当需要升级除AO A4之外的新的模块时,在OMA-DM服务器侧增加参数树文件的节点./FUM0,即可升级模块的升级接口,OMA-DM主动发起会话获取CPE可升级模块的信息, 然后根据CPE可升级模块的信息初始化可升级模块的升级接口,OMA-DM服务器通过该升级接口进行相应模块的升级。步骤S2 升级CPE固件中的可升级模块A2 ;从模块A2在参数树中对应子节点DeviceModuleFirmware的模块依赖节点 DependModule可知,升级CPE固件中的模块A2,其中模块A2依赖于模块AO和Al,当升级 A2模块时,会同时升级模块AO和Al ;步骤S2具体包括步骤S2. 1 =OMA-DM服务器向CPE发送一个会话发起的通知信息;步骤S2. 2 =CPE收到OMA-DM服务器发送的会话发起通知信息后,向OMA-DM发送设备认证信息;步骤S2. 3 =OMA-DM服务器向CPE发送升级固件模块A2的download报文。步骤S3 =CPE下载模块并升级。步骤S3具体包括步骤S3. 1 =CPE收到OMA-DM服务器的download报文后,从中提取关于模块升级的信息,包括下载模块的URL、模块的版本信息、模块的校验方法和模块的校验码;步骤S3. 2 =CPE检测当前可升级的模块A2、A1、A0信息是否和download报文中的信息是否一致;其中检测的信息包括模块的版本信息,模块的校验方法,模块的校验码, 模块的大小,如果模块A2的信息完全一致则执行步骤S3. 3,否则执行步骤S3. 4 ;步骤S3. 3 :CPE在当前会话向ACS发送该模块A2和download报文中的信息一致, 模块A2不需要升级,然后执行步骤S3. 4 ;步骤S3. 4 ;结束当前会话,执行步骤S3. 6 ;步骤S3. 5 如果可升级模块Al或者AO的信息和download信息中的一致,则CPE 在当前会话向OMA-DM服务器发送模块Al或者AO不需要升级的报文,执行步骤S3. 4 ;步骤S3. 6 判断是否有需要升级的模块,若是,则执行步骤S3. 7,否则升级流程结束;步骤S3. 7 =CPE根据从download报文中提取的下载模块的URL,下载相应的模块;如果无法从URL下载相应的模块,执行步骤S3. 10 ;如果可以从URL下载相应的模块,则执行步骤S3. 8 ;步骤S3. 8 根据download报文提供的校验方法对下载的模块进行校验,并且保留校验结果,如果所有的模块的校验结果均为TRUE的时候开始升级相应的模块,然后执行步骤 S3. 9 ;步骤S3. 9 =CPE修改模块的校验方法、检验码、版本号、模块大小,并且在下一个会话中将升级的结果通过报文发送给OMA-DM服务器,升级流程结束;步骤S3. 10 =CPE主动发起一个会话,并将错误信息通过报文发送给OMA-DM服务器。具体的,CPE向OMA-DM服务器发起一个新的会话,并且在会话报文中加入无法从URL下载模块的错误信息。本发明提出的所述基于TR069/0MA-DM协议的用户侧设备固件升级方法和系统, 其特殊之处在将用户侧设备固件的可升级模块的信息添加到参数树中,通过参数树实现对于设备固件可升级模块的升级管理,每个可升级模块对应于一个升级接口(参数树中的节点)和用于校验模块完整性的校验码,当同时进行多个模块的升级时,如果任何一个或者几个模块的完整性校验失败,只是需要重新进行校验失败的模块的下载过程,其他的模块则不要进行下载的过程,提高了固件升级过程的效率;由于将固件可升级模块的详细信息添加到了参数树中,因此,可以方便的选择所需要的模块进行升级。通过具体实施方式
的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。
权利要求
1.一种实现用户侧设备的固件升级方法,其特征在于,包括服务器将用户侧设备固件中的模块信息添加到管理配置文件中,服务器基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级。
2.根据权利要求1所述的实现用户侧设备的固件升级方法,其特征在于,所述服务器将用户侧设备固件中的模块信息添加到管理配置文件中,具体包括所述管理配置文件为参数树文件;每一个模块对应参数树文件中的一个节点,每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、 是否存在升级时的依赖模块、模块版本信息、校验码以及模块完整性校验方法;所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。
3.根据权利要求1所述的实现用户侧设备的固件升级方法,其特征在于,所述服务器基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级,具体包括服务器与用户侧设备开启会话后,服务器向用户侧设备发送所述需要升级的模块信息;用户侧设备根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。
4.根据权利要求3所述的实现用户侧设备的固件升级方法,其特征在于,所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小;所述用户侧设备根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级,具体包括用户侧设备接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;根据所述模块对应的校验方法对下载的所述模块进行校验,若校验结果为真,则开始升级所述模块,否则向服务器上报错误信息。
5.根据权利要求1或2或3或4所述的实现用户侧设备的固件升级方法,其特征在于, 在服务器基于开放移动联盟-设备管理OMA-DM协议对用户侧设备固件进行升级的情况下, 当需要升级新的模块时,服务器向用户侧设备获取所述新的模块信息添加到管理配置文件中。
6.一种实现用户侧设备的固件升级系统,其特征在于,包括服务器,用于将用户侧设备固件中的模块信息添加到管理配置文件中,基于所述管理配置文件对用户侧设备固件中需要升级的模块进行升级;用户侧设备,用于配合服务器对本端需要升级的模块进行升级。
7.根据权利要求6所述的实现用户侧设备的固件升级系统,其特征在于,所述管理配置文件为参数树文件;每一个模块对应参数树文件中的一个节点,每个节点下添加一个子节点,所述子节点的叶节点中存放所述模块的各项属性,包括模块名称、是否存在升级时的依赖模块、模块版本信息、校验码以及模块完整性校验方法;所述子节点下添加一个模块依赖节点,所述模块依赖节点中存放所述模块升级时的依赖模块信息。
8.根据权利要求6所述的实现用户侧设备的固件升级系统,其特征在于,所述服务器进一步用于,与用户侧设备开启会话后,向用户侧设备发送所述需要升级的模块信息;所述用户侧设备进一步用于,根据所述需要升级的模块信息判断出真正需要升级的模块,下载所述真正需要升级的模块并升级。
9.根据权利要求8所述的实现用户侧设备的固件升级系统,其特征在于,所述需要升级的模块信息包括模块的下载地址、模块的版本信息、模块的校验方法、模块的校验码和模块的大小;所述用户侧设备,具体包括判断下载模块,用于接收到所述需要升级的模块信息后,判断其与本地保存的相应模块信息是否全部一致,若全部一致,则不需要升级;若存在信息不一致的模块,则根据所述模块的下载地址下载所述模块;校验升级模块,用于根据所述模块对应的校验方法对下载的所述模块进行校验,若校验结果为真,则开始升级所述模块,否则向服务器上报错误信息。
10.根据权利要求6或7或8或9所述的实现用户侧设备的固件升级系统,其特征在于, 在服务器基于OMA-DM协议对用户侧设备固件进行升级的情况下,服务器,还用于当需要升级新的模块时,向用户侧设备获取所述新的模块信息添加到管理配置文件中。
全文摘要
本发明公开了一种实现用户侧设备的固件升级方法和系统,将用户侧设备固件的可升级模块进行分解,将模块的详细信息添加到配置管理文件中,通过配置管理文件实现对固件可升级模块的升级管理,可以方便的选择相应模块升级,当一个模块在下载过程中校验失败时,其他模块不需要进行重新下载的过程,克服了现有技术对所有模块升级时使用统一的接口,在下载过程中校验失败时需要重新下载全部模块升级包的缺点,提高了升级的效率和易用性。
文档编号G06F9/445GK102316439SQ20111026707
公开日2012年1月11日 申请日期2011年9月9日 优先权日2011年9月9日
发明者周伟, 姜全胜 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1