一种固件升级备份方法及装置与流程

文档序号:14915071发布日期:2018-07-11 00:30阅读:2538来源:国知局

本申请涉及电子技术领域,尤其涉及一种固件升级备份方法及装置。



背景技术:

当前家庭终端设备,如家庭网关、机顶盒等,一般采用软硬件一体化的嵌入式系统。嵌入式系统硬件一般采用专用系统级芯片(System on Chip,SOC)处理芯片,并配置资源有限的随机存取存储器(Random Access Memory,RAM)和闪存(Flash Memory),大小根据需求严格定制,对成本十分敏感。嵌入式系统软件在出厂时一般通过专有工具分区烧写在Flash存储器上,基本可分为引导装载程序(Bootloader)分区、系统软件分区、系统软件备份分区、用户应用及数据分区,如图1所示。其中,Bootloader分区是终端设备加电后执行的第一段代码,在它完成中央处理器(Central Processing Unit,CPU)和相关硬件的初始化之后,再将操作系统镜像装载到内存(即RAM)中并启动操作系统运行,Bootloader支持从Flash读取,也可通过引导程序协议(Bootstrap Protocol,BOOTP)或简单文件传输协议(Trivial File Transfer Protocol,TFTP)下载启动操作系统镜像。系统软件主分区中存有操作系统镜像和预置的应用及数据。系统软件备份分区是对系统软件分区的备份。

嵌入式设备固件更新,一般是为了解决现有固件缺陷或为了升级新功能,主要是对Flash上的系统软件区进行擦除替换,更新操作系统,更新预置的应用及数据。在固件升级过程中,一旦发生故障,如断电、坏块等,将导致系统软件Flash分区烧写失败,设备将无法正常启动,需要运维人员上门回收更换,成本极高。因此,目前固件升级一般采用主备分区的方法。通过对系统软件设置主备两个分区,从而保障了在固件升级发生故障时,可恢复回滚到原可正常运行的固件版本运行。

目前,人们对家庭网关和机顶盒有着广泛的共同需求。家庭装修网络布线时,越来越多家庭用户在电视墙上预留网络信息面板,使得两个终端设备的部署位置重叠的可能性越来越大。家庭网关和机顶盒的融合终端设备,简称融合型家庭网关,融合型家庭网关能够减少家庭终端数目,降低运营商或用户在设备上的投资成本,同时可减少网络传输故障点,提高运维效率,简化运维工作。

现有融合型家庭网关包含网络单元和机顶盒单元两个主要单元,其中,网络单元主要负提供外部网络接入和家庭组网服务,机顶盒单元主要负责音视频直播和点播功能,众多其它业务也以应用的形式承载在该单元内。

由于当前尚没有网络单元和机顶盒单元一体化的单一芯片存在,故融合型家庭网关的网络当前和机顶盒单元独立运行,分别拥有各自独立的完整系统,即拥有各自独立的CPU、RAM、Flash等硬件,Bootloader、系统软件、及用户应用及数据。网络单元和机顶盒单元之间通过内部网口连接。现有的融合型家庭网关系统框图如图2所示。

由于融合型家庭网关中网络单元和机顶盒单元均为独立系统,如果采用现有固件升级故障恢复方法,即采用系统软件主备分区的方法,则需要网络单元和机顶盒单元分别同时具备固件备份分区,从而增加了对Flash容量的要求,也即增加了融合型家庭网关的设计成本。



技术实现要素:

本申请实施例提供一种固件升级备份方法及装置,用以解决现有技术中对融合型家庭网关进行固件升级备份的设计成本较高的问题。

本申请实施例提供一种固件升级备份方法,该方法应用于包括网络单元和机顶盒单元的融合型家庭网关中,所述机顶盒单元中设置有网络单元系统软件备份分区,该方法包括:

所述网络单元在确定需要执行固件升级后,向所述机顶盒单元发送固件升级通知,其中携带所述网络单元的系统软件主分区中的固件的备份固件;

所述机顶盒单元将接收到的备份固件存储在所述机顶盒单元中的网络单元系统软件备份分区中,并开启为所述网络单元提供固件下载服务的功能。

本申请实施例还提供一种固件升级备份方法,该方法应用于包括网络单元和机顶盒单元的融合型家庭网关中,该方法包括:

所述机顶盒单元在确定需要执行固件升级后,向所述网络单元发送固件升级通知;

所述网络单元开启为所述机顶盒单元提供固件代理下载服务的功能。

本申请实施例提供一种融合型家庭网关,包括网络单元和机顶盒单元,所述机顶盒单元中设置有网络单元系统软件备份分区;其中:

所述网络单元,用于在确定需要执行固件升级后,向所述机顶盒单元发送固件升级通知,其中携带所述网络单元的系统软件主分区中的固件的备份固件;以及,在接收到所述机顶盒单元发送的固件升级通知后,开启为所述机顶盒单元提供固件代理下载服务的功能;

所述机顶盒单元,用于在确定需要执行固件升级后,向所述网络单元发送固件升级通知;以及,在接收到所述网络单元发送的固件升级通知后,将该固件升级通知中的所述网络单元的备份固件存储在所述机顶盒单元中的网络单元系统软件备份分区中,并开启为所述网络单元提供固件下载服务的功能。

本申请实施例还提供一种融合型家庭网关,包括网络单元和机顶盒单元,所述机顶盒单元中设置有网络单元系统软件备份分区;其中:

所述网络单元,用于在确定需要执行固件升级后,向所述机顶盒单元发送固件升级通知,其中携带所述网络单元的系统软件主分区中的固件的备份固件;

所述机顶盒单元,用于在接收到所述网络单元发送的固件升级通知后,将该固件升级通知中的所述网络单元的备份固件存储在所述机顶盒单元中的网络单元系统软件备份分区中,并开启为所述网络单元提供固件下载服务的功能。

本申请实施例还提供一种融合型家庭网关,包括网络单元和机顶盒单元,其中:

所述机顶盒单元,用于在确定需要执行固件升级后,向所述网络单元发送固件升级通知;

所述网络单元,用于在接收到所述机顶盒单元发送的固件升级通知后,开启为所述机顶盒单元提供固件代理下载服务的功能。

本申请实施例在该融合型家庭网关中,去除了网络单元上的系统软件备份分区,在机顶盒单元上设置网络单元系统软件备份分区,用于存储网络单元备份的原版本固件。在机顶盒单元的系统软件中增加了固件下载服务;当网络单元进行固件升级故障恢复时,整个设备不具备外网连接能力,此时可以通过向机顶盒单元请求获取备份的原版本固件。

本申请实施例在该融合型家庭网关中,去除了机顶盒单元上的系统软件备份分区,在网络单元的系统软件中增加了基于固件代理下载服务;当机顶盒单元进行固件升级故障恢复时,通过向网络单元请求下载原版本固件。网络单元始终具有外网连接能力,网络单元从外网获取机顶盒单元的原版本固件后,再在内部转发给机顶盒单元。

显然,上述方案节省了网络单元上的系统软件备份分区,和机顶盒单元上的系统软件备份分区,从而降低了了对融合型家庭网关中Flash容量的要求,也即降低了融合型家庭网关的设计成本。

附图说明

图1为嵌入式系统软件分区示意图;

图2为现有的融合型家庭网关系统框图;

图3为本申请实施例的融合型家庭网关系统框图;

图4为本申请实施例一提供的固件升级备份方法流程图;

图5为本申请实施例二提供的固件升级备份方法流程图;

图6为本申请实施例提供的融合型家庭网关60结构示意图之一;

图7为本申请实施例提供的融合型家庭网关70结构示意图之二;

图8为本申请实施例提供的融合型家庭网关80结构示意图之三。

具体实施方式

本申请实施例应用于包括网络单元和机顶盒单元的融合型家庭网关中。如图3所示,在该融合型家庭网关中,去除了网络单元的Flash(网络单元的Flash容量小、单位成本高)上的系统软件备份分区,在机顶盒单元的Flash(机顶盒单元的Flash容量大、单位成本低)上设置网络单元系统软件备份分区,用于存储网络单元备份的原版本固件。在机顶盒单元的系统软件中增加了基于简单文件传输协议(Trivial File Transfer Protocol,TFTP)的固件下载服务;当网络单元进行固件升级故障恢复时,整个设备不具备外网连接能力,此时可以通过Bootloader上的TFTP客户端向机顶盒单元请求获取备份的原版本固件。另外,去除了机顶盒单元上的系统软件备份分区,在网络单元的系统软件中增加了基于TFTP的固件下载(代理下载)服务;当机顶盒单元进行固件升级故障恢复时,通过Bootloader上的TFTP客户端向网络单元请求下载原版本固件。网络单元始终具有外网连接能力,网络单元通过文本传输协议(HyperText Transfer Protocol,HTTP)/文本传输协议(File Transfer Protocol,FTP)等协议从外网获取机顶盒单元的原版本固件后,再在内部基于TFTP转发给机顶盒单元。

下面结合说明书附图对本申请实施例作进一步详细描述。

实施例一

本申请实施例应用于包括网络单元和机顶盒单元的融合型家庭网关中。如图3所示,在该融合型家庭网关中,去除了网络单元的Flash(网络单元的Flash容量小、单位成本高)上的系统软件备份分区,在机顶盒单元的Flash(机顶盒单元的Flash容量大、单位成本低)上开辟网络单元系统软件备份分区,用于存储网络单元备份的原版本固件。在机顶盒单元的系统软件中增加了基于简单文件传输协议(Trivial File Transfer Protocol,TFTP)的固件下载服务;当网络单元进行固件升级故障恢复时,整个设备不具备外网连接能力,此时可以从机顶盒单元内部下载备份的原版本固件。

如图4所示,为本申请实施例一提供的固件升级备份方法流程图,包括以下步骤:

S401(可选地):在融合型家庭网关启动后,网络单元和机顶盒单元之间基于预先配置的两者的静态互联网协议(Internet Protocol,IP)地址,建立专用网络通道。

这里,为了便于网络单元和机顶盒单元之间的通信,为网络单元和机顶盒单元预先配置静态(固定)的IP地址。具体地,在内部网口上为两个单元之间的内部通信建立虚拟网络(Virtual Local Area Network,VLAN),并为两个单元分配固定的内网IP地址。网络单元和机顶盒单元之间基于为它们预先配置的IP地址相互寻址,建立内部专用网络通道。

需要说明的是,建立内部内部专用网络通道只是实现网络单元和机顶盒单元之间通信的一种优选方式。也可以不用建立内部专用网络通道,网络单元和机顶盒单元动态获取IP地址,基于预知的VLAN标识相互寻址,建立通信连接。

S402:网络单元在确定需要执行固件升级后,向机顶盒单元发送固件升级通知,其中携带网络单元的系统软件主分区中的固件的备份固件。

这里,网络单元通过建立的专用网络通道,向所述机顶盒单元发送固件升级通知。

在具体实施中,网络单元可以在检测到终端管理平台处存在该网络单元的新版本固件后,或者接收到终端管理平台发送的固件升级指令后,确定需要执行固件升级。网络单元通知机顶盒单元其准备升级固件,并将当前网络单元系统软件主分区中正常运行的固件备份到机顶盒单元中的网络单元系统软件备份分区中。

S403:机顶盒单元将接收到的备份固件存储在机顶盒单元中的网络单元系统软件备份分区中,并开启为网络单元提供固件下载服务的功能。

这里,机顶盒单元打开为所述网络单元提供固件下载服务的内部接口,以便为所述网络单元提供基于TFTP的固件下载服务。机顶盒单元只有在网络单元有需要时,才会开启固件下载服务的功能,在网络单元不需要的情况下,可以关闭该功能,以便节省因监控机顶盒单元的TFTP请求而带来的系统开销。

S404:网络单元从终端管理平台下载新版本固件。

S405:网络单元将该新版本固件写入该网络单元中的系统软件主分区中,并启动该新版本固件。

这里,网络单元将新版本固件写入该网络单元中的系统软件主分区中,并重新启动。

S406:若启动成功、且新版本固件运行正常,则向机顶盒单元发送固件升级成功通知,进入S407。

这里,网络单元重启后,与机顶盒单元之间重新建立内部专用网络通道,并通过该专用网络通道向机顶盒单元发送固件升级成功通知,还可以向终端管理平台发送固件升级成功通知。

S407:机顶盒单元关闭为网络单元提供固件下载服务的功能。

S408:若启动失败或者新版本固件运行不正常,则向机顶盒单元请求下载该新版本固件对应的原版本固件。这里的原版本固件即为所述网络单元发送给机顶盒单元的备份固件。

这里,网络单元与机顶盒单元建立内部专用网络通道,通过Bootloader上的TFTP客户端向机顶盒单元请求获取备份的原版本固件。

另外,固件版本回滚可以是网络单元主动触发的,也可以是终端管理平台或用户触发的。

S409:网络单元将下载的原版本固件存入该网络单元中的系统软件主分区中,并启动该原版本固件,在启动成功后,向机顶盒单元发送回滚成功通知,返回S407。

这里,网络单元将原版本固件存入该网络单元中的系统软件主分区中,重启,恢复到原固件版本运行。网络单元重启后,与机顶盒单元之间重新建立内部专用网络通道,并通过该专用网络通道向机顶盒单元发送固件回滚成功通知,机顶盒单元关闭为网络单元提供固件下载服务的功能。

实施例二

本申请实施例应用于包括网络单元和机顶盒单元的融合型家庭网关中。在该融合型家庭网关中,去除了机顶盒单元上的系统软件备份分区,在网络单元的系统软件中增加了基于TFTP的固件代理下载服务;当机顶盒单元进行固件升级故障恢复时,网络单元始终具有外网连接能力,网络单元通过文本传输协议(HyperText Transfer Protocol,HTTP)/文本传输协议(File Transfer Protocol,FTP)等协议从外网获取机顶盒单元的原版本固件后,再在内部基于TFTP转发给机顶盒单元。

如图5所示,为本申请实施例二提供的固件升级备份方法流程图,包括以下步骤:

S501:在融合型家庭网关启动后,网络单元和机顶盒单元之间基于预先配置的两者的静态IP地址,建立专用网络通道。

S502:机顶盒单元在确定需要执行固件升级后,向网络单元发送固件升级通知。

在具体实施中,机顶盒单元可以在检测到终端管理平台处存在该机顶盒单元的新版本固件后,或者接收到终端管理平台发送的固件升级指令后,确定需要执行固件升级。

这里,机顶盒单元在确定需要执行固件升级后,通过建立的专用网络通道,向网络单元发送固件升级通知。

S503:网络单元开启为机顶盒单元提供固件代理下载服务的功能。

这里,网络单元打开为机顶盒单元提供固件代理下载服务的内部接口,以便为网络单元提供基于TFTP的固件代理下载服务。网络单元只有在机顶盒单元有需要时,才会开启固件代理下载服务的功能,在网络单元不需要的情况下,可以关闭该功能,以便节省因监控机顶盒单元的TFTP请求而带来的系统开销。

S504:机顶盒单元从终端管理平台下载新版本固件。

S505:机顶盒单元将该新版本固件写入该机顶盒单元中的系统软件主分区中,并启动该新版本固件。

这里,机顶盒单元将新版本固件写入系统软件主分区中,并重新启动。

S506:若启动成功、且新版本固件运行正常,则向网络单元发送固件升级成功通知,并进入S507。

这里,机顶盒单元重启后,与网络单元之间重新建立内部专用网络通道,并通过该专用网络通道向网络单元发送固件升级成功通知,还可以向终端管理平台发送固件升级成功通知。

S507:网络单元关闭为机顶盒单元提供固件代理下载服务的功能;

S508:若启动失败或者新版本固件运行不正常,则向网络单元请求下载该新版本固件对应的原版本固件。

这里,机顶盒单元与网络单元建立内部专用网络通道,通过其Bootloader上的TFTP客户端向网络单元请求下载原版本固件。

另外,固件版本回滚可以是机顶盒单元主动触发的,也可以是终端管理平台或用户触发的。

S509:网络单元从终端管理平台获取所述原版本固件,并发送给机顶盒单元。

这里,网络单元通过HTTP/FTP等协议从外网获取机顶盒单元的原版本固件后,再在内部基于TFTP转发给机顶盒单元。

S510:机顶盒单元将所述原版本固件存入该机顶盒单元中的系统软件主分区中,并启动该原版本固件,在启动成功后,向网络单元发送回滚成功通知,进入S507。

这里,机顶盒单元将原版本固件存入该机顶盒单元中的系统软件主分区中,重启,恢复到原固件版本运行。机顶盒单元重启后,与网络单元之间重新建立内部专用网络通道,并通过该专用网络通道向网络单元发送固件回滚成功通知,网络单元关闭为机顶盒单元提供固件代理下载服务的功能。

基于同一发明构思,本申请实施例中还提供了一种与固件升级备份方法对应的固件升级备份装置,由于该装置解决问题的原理与本申请实施例的固件升级备份方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

如图6所示,为本申请实施例提供的融合型家庭网关60结构示意图之一,包括网络单元61和机顶盒单元62,所述机顶盒单元62中设置有网络单元系统软件备份分区;其中:

网络单元61,用于在确定需要执行固件升级后,向所述机顶盒单元62发送固件升级通知,其中携带网络单元61的系统软件主分区中的固件的备份固件;以及,在接收到机顶盒单元62发送的固件升级通知后,开启为机顶盒单元62提供固件代理下载服务的功能;

机顶盒单元62,用于在确定需要执行固件升级后,向网络单元61发送固件升级通知;以及,在接收到网络单元61发送的固件升级通知后,将该固件升级通知中的网络单元61的备份固件存储在机顶盒单元62中的网络单元系统软件备份分区中,并开启为网络单元61提供固件下载服务的功能。

可选地,在融合型家庭网关启动后,网络单元61和机顶盒单元62之间基于预先配置的两者的静态互联网协议IP地址,建立专用网络通道。

可选地,网络单元61,具体用于在检测到终端管理平台处存在该网络单元的新版本固件后,或者接收到终端管理平台发送的固件升级指令后,确定需要执行固件升级;和/或,

机顶盒单元62,具体用于在检测到终端管理平台处存在该机顶盒单元的新版本固件后,或者接收到终端管理平台发送的固件升级指令后,确定需要执行固件升级。

可选地,机顶盒单元62,具体用于通过打开为所述网络单元提供固件下载服务的内部接口,为所述网络单元提供基于简单文件传输协议TFTP的固件下载服务;和/或,

网络单元61,具体用于通过打开为所述机顶盒单元提供固件代理下载服务的内部接口,为所述网络单元提供基于简单文件传输协议TFTP的固件代理下载服务。

可选地,网络单元61,具体用于从终端管理平台下载新版本固件,将该新版本固件写入该网络单元中的系统软件主分区中,并启动该新版本固件;若启动成功、且新版本固件运行正常,则向机顶盒单元62发送固件升级成功通知;若启动失败或者新版本固件运行不正常,则向所述机顶盒单元请求下载该新版本固件对应的原版本固件;将下载的所述原版本固件存入该网络单元中的系统软件主分区中,并启动该原版本固件,在启动成功后,向机顶盒单元发送回滚成功通知;

机顶盒单元62,具体用于在接收到网络单元61发送的固件升级成功通知或回滚成功通知后,关闭为所述网络单元提供固件下载服务的功能;以及在接收到所述网络单元下载原版本固件的请求后,向所述网络单元发送所述网络单元的原版本固件。

可选地,机顶盒单元62,具体用于从终端管理平台下载新版本固件,将该新版本固件写入该机顶盒单元中的系统软件主分区中,并启动该新版本固件;若启动成功、且新版本固件运行正常,则向所述网络单元发送固件升级成功通知;若启动失败或者新版本固件运行不正常,则向所述网络单元请求下载该新版本固件对应的原版本固件,将所述原版本固件存入该机顶盒单元中的系统软件主分区中,并启动该原版本固件,在启动成功后,向网络单元发送回滚成功通知;

网络单元61,具体用于在接收到所述机顶盒单元发送的固件升级成功通知或回滚成功通知后,关闭为所述机顶盒单元提供固件代理下载服务的功能;以及,在接收到所述机顶盒单元下载原版本固件的请求后,从终端管理平台获取所述原版本固件,并发送给机顶盒单元。

如图7所示,为本申请实施例提供的融合型家庭网关70结构示意图之二,包括网络单元71和机顶盒单元72,机顶盒单元72中设置有网络单元系统软件备份分区;其中:

网络单元71,用于在确定需要执行固件升级后,向所述机顶盒单元发送固件升级通知,其中携带所述网络单元的系统软件主分区中的固件的备份固件;

机顶盒单元72,用于在接收到网络单元71发送的固件升级通知后,将该固件升级通知中的网络单元71的备份固件存储在机顶盒单元72中的网络单元系统软件备份分区中,并开启为所述网络单元提供固件下载服务的功能。

如图8所示,为本申请实施例提供的融合型家庭网关80结构示意图之三,包括机顶盒单元81和网络单元82,其中:

机顶盒单元81,用于在确定需要执行固件升级后,向网络单元82发送固件升级通知;

网络单元82,用于在接收到机顶盒单元81发送的固件升级通知后,开启为所述机顶盒单元提供固件代理下载服务的功能。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1