数据备份方法以及装置的制造方法

文档序号:10577284阅读:913来源:国知局
数据备份方法以及装置的制造方法
【专利摘要】本发明提供一种数据备份方法以及装置,应用于网络设备,该网络设备具有主存储器以及备存储器,其中该方法包括:检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据;若是,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;若检查当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。本发明中当任一存储器存储的数据损坏时,可以通过另一存储器上备份的数据启动网络设备,便于对网络设备的维护。
【专利说明】
数据备份方法以及装置
技术领域
[0001]本发明涉及通信技术领域,尤其涉及一种数据备份方法以及装置。
【背景技术】
[0002]目前,一些交换机(特别是工业交换机)等网络设备所应用的环境一般都比较恶劣、位置偏远,一旦部署完毕就不便于技术人员进行现场维护,这样就对网络设备的性能提出了更高的要求。
[0003]为了满足网络设备长时间的稳定启动,要求网络设备能够在出现异常的情况下能够具备一定的自我修复能力,例如,从由于远程升级中断、意外断电等造成的数据意外损坏过程中恢复到意外发生之前的某个稳定状态。
[0004]现有技术方案中,虽然会对程序或者配置文件等数据进行备份,但是通常只存储在一个存储器(例如,Flash芯片)中,如图1所示,为现有技术中数据在Flash上的布局示意图。这样一来,当Flash芯片损坏或全部数据损坏,只能通过拆机焊片的方式进行修复,对网络设备的维护带来了极大的不便。

【发明内容】

[0005]针对现有技术的缺陷,本发明提供了一种数据备份方法以及装置。
[0006]本发明提供一种数据备份方法,应用于网络设备,所述网络设备具有主存储器以及备存储器,所述主存储器以及备存储器互为备份存储器,其中该方法包括:
[0007]检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据;
[0008]若是,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;
[0009]若检查当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。
[0010]本发明还提供一种数据备份装置,应用于网络设备,所述网络设备具有主存储器以及备存储器,其中,所述主存储器以及备存储器互为备份存储器,所述装置包括:
[0011]检查单元,用于检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据;
[0012]备份单元,用于在当前启动所使用的数据是所述主存储器上存储的数据时,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;若当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。
[0013]本发明提供的数据备份方法以及装置,通过事先设置互为备份存储器的主存储器以及备存储器,并在检查网络设备当前启动所使用的数据是主存储器上存储的数据时,对备存储器上备份的数据进行校验,若校验未通过,将主存储器上存储的数据备份至备存储器;在当前启动所使用的数据是备存储器上存储的数据时,将备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。由此可见,当任一存储器存储的数据损坏时,可以通过另一存储器上备份的数据启动网络设备,便于对网络设备的维护。
【附图说明】
[0014]图1是本发明实施例现有技术中数据备份布局示意图;
[0015]图2是本发明实施例中一种数据备份方法流程示意图;
[0016]图3是本发明实施例中一种数据备份布局不意图;
[0017]图4是本发明实施例中一种数据备份装置的逻辑结构示意图;
[0018]图5是本发明实施例中数据备份装置所在网络设备的硬件架构示意图。
【具体实施方式】
[0019]为使本申请的目的,技术方案及优点更加清楚明白,以下参照附图对本申请方案做进一步的详细说明。
[0020]为了解决现有技术中存在的问题,本发明提供了一种数据备份方法以及装置。
[0021]请参考图2,为本发明提供的数据备份方法的处理流程示意图,该数据备份方法可应用于网络设备,所述网络设备具有主存储器以及备存储器,该存储器可以是Flash(闪存)芯片等存储介质。其中,所述主存储器以及备存储器互为备份存储器。该数据备份方法包括以下步骤:
[0022]步骤201,检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据;
[0023]如图3所示,可以事先为网络设备设置两个存储器,两个存储器上规划了相同的数据分区,且分区的地址相对存储器也是相同的。数据分区中保存的数据可以包括Boot (引导)程序、APP(Applicat1n,应用程序)以及配置文件等数据,在具体的对某一分区的数据进行访问可以通过切换片选信号CS来实现。以下以网络设备根据Boot程序启动为例进行说明。
[0024]本发明还可以从两个存储器中选取出默认存储器作为主存储器,将另一存储器作为备存储器,例如,将FlashO作为主存储器,Flashl作为备存储器。
[0025]本发明实施例中的网络设备还具有CPLD,CPLD中预先设置有第一寄存器以及第二寄存器,第一寄存器为可读可写的寄存器,具有CS切换控制位以及启动检测位,CS切换控制位保存有用于表征在当前启动设备所使用的数据为哪个存储器地址的标识,例如,“O”为第一标识,表示当前设备启动所使用的是FlashO (主存储器)的数据,“ I ”为第二标识,表示当前设备启动所使用的是Flashl (备存储器)的数据。第一寄存器的启动检测位保存有用于表征当前设备是否启动成功的标识,例如,“O”表示当前设备Boot程序启动失败,“I”表示当前设备Boot程序启动成功。
[0026]具体地,在启动所述网络设备时,可以首先将CPU发出的CS (片选)信号切换至与所述主存储器对应的第一片选信号;读取所述主存储器保存的数据,根据所述主存储器保存的数据启动所述网络设备,并在所述第一寄存器的CS切换控制位中添加第一标识,以表征所述网络设备根据所述主存储器保存的数据启动;所述启动检测位中记录有用于标识网络设备是否启动成功的标识,若根据所述启动检测位记录的标识确定所述网络设备启动失败,将所述CS信号切换至与所述备存储器对应的第二片选信号,并在所述第一寄存器中添加第二标识,以表征所述网络设备根据所述备存储器保存的数据启动。
[0027]例如,在网络设备上电后,可以将发出的CS信号切换至与FlashO对应的CSO (第一片选信号),并根据FlashO上存储的Boot程序启动网络设备,同时将第一寄存器的CS切换控制位中置一标记位“0”,表示根据FlashO上存储的Boot程序启动网络设备。
[0028]为了给网络设备预留一定的启动时间,本发明实施例中还设置有定时器,在到达预设的定时时长时,例如16s,检查第二寄存器的启动检测位是置位为“O”还是置位为“I”。
[0029]若是“0”,可以确定网络设备启动失败,则将CS信号切换为CS1,并重置计时器,将第一寄存器的启动检测位置位为“1”,表示根据Flashl上存储的Boot程序启动网络设备。同时,向CPU发送一个复位信号,由CPU将CS信号引导至Flashl。在到达预设的定时时长16s后,继续检查第一寄存器的启动检测位是置位为“O”还是置位为“ I ”。
[0030]若第一寄存器中的启动检测位置为“1”,可以确定网络设备启动成功。若第一寄存器中的正常启动检测位仍置为“0”,可以确定网络设备启动失败,则显示告警提示,以通知管理人员无法根据FlashO以及Flashl的Boot程序启动设备。其中,该告警提示可以是多种方式,例如可以点亮网络设备的告警灯,并以8Hz的频率快速闪烁;或者以常亮告警灯的方式等,本发明对此无限定。
[0031 ] 本发明实施例中的第二寄存器仅为可读的寄存器,具有启动状态位,启动状态位保存有以供查看当前根据哪个Flash的Boot程序启动网络设备的标识,该标识与第一寄存器中CS切换控制为的标识一致,可以将“O”作为第一标识,表示当前设备启动所使用的是FlashO (主存储器)的数据,“I”作为第二标识,表示当前设备启动所使用的是Flashl (备存储器)的数据。
[0032]若确定网络设备启动成功,即可以根据第二寄存器中的标识来检查所述网络设备当前启动所使用的Boot程序是否是主存储器FlashO上存储的数据,S卩:当第二寄存器的启动状态位置位为“O”时,确定当前设备启动所使用的是FlashO上存储的Boot程序;当第二寄存器的启动状态位置为“I”时,确定当前设备启动所使用的是Flashl上存储的Boot程序。
[0033]若确定当前启动所使用的数据是主存储器FlashO上存储的Boot程序,执行步骤202,否则执行步骤203。
[0034]步骤202,若确定当前启动所使用的数据是主存储器FlashO上存储的数据,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;
[0035]在当前启动所使用的数据是主存储器FlashO上存储的Boot程序时,可以说明主存储器FlashO上存储的Boot程序为完整的Boot程序,可以首先检查Flashl上是否存储Boot程序。
[0036]若在Flashl上未存储Boot程序,则需要将FlashO上存储的Boot程序进行拷贝,并将拷贝的Boot程序保存至Flashl的对应分区内,以完成Boot程序的备份。
[0037]若Flashl上存储了 Boot程序,可以进一步通过对Flashl上存储的Boot程序进行校验,以确定Flashl上存储的Boot程序是否是完整的Boot程序。
[0038]本发明实施例中可以通过CRC算法对Flashl上存储的Boot程序进行校验,具体地校验方法可以参考现有技术的校验过程,本发明在此不再赘述。
[0039]若根据校验结果确定存储的Boot程序通过校验,可以确定Flashl上存储的Boot程序为完整的Boot程序。若根据校验结果确定存储的Boot程序未通过校验,可以确定Flashl上存储的Boot程序被损坏。
[0040]当确定Flashl上存储的Boot程序被损坏时,将FlashO上存储的Boot程序进行拷贝,并将拷贝的Boot程序保存至Flashl的对应分区内,以完成Boot程序的备份。
[0041]步骤203,若检查当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。
[0042]在根据寄存器中保存的标记位确定当前启动所使用的数据是备存储器上存储的Boot程序时,可以进一步检查所述主存储器是否发生物理性故障,若是,输出告警信号,并在与所述主存储器对应的标签中添加标记,以抑制所述网络设备根据所述主存储器的数据启动,否则,执行所述将所述备存储器上的数据备份至主存储器。
[0043]具体地,在确定当前启动所使用的数据是Flashl上存储的Boot程序时,可以说明主存储器FlashO上存储的Boot程序为不完整的Boot程序,例如FlashO上存储的Boot程序被损坏等。此时,可以进一步对该主存储器FlashO进行物理性检查,以判断该主存储器FlashO是否是物理性损坏。
[0044]若确认FlashO为物理性损坏,则发出告警信号,以提醒管理人员及时更换FlashO,并在与FlashO对应的标签中添加标记,以避免网络设备后续再次将CS信号引导至主存储器FlashO。并且,在对该物理性损坏的FlashO进行修复之前,不再向物理性损坏的FlashO备份Boot数据。
[0045]若确认FlashO非物理性损坏,可以将Flashl上存储的Boot程序进行拷贝,并将拷贝的Boot程序保存至Flashl的对应分区内,以完成Boot程序的备份。
[0046]在根据Boot程序成功启动网络设备后,还可以参考对Boot程序进行备份的处理流程依次对存储器中保存的APP以及配置文件进行备份,本发明实施例提供的数据备份方法对于Boot程序、APP以及配置文件进行备份的处理流程基本一致,在此不再一一列举。
[0047]在所述网络设备成功启动后,若确定所述网络设备主存储器或备存储器保存的任意数据(Boot程序、APP以及配置文件的任一数据)进行过更新,均需要根据进行数据更新的存储器上的所有数据更新主存储器以及备存储器上保存的数据,以保证主存储器以及备存储器数据的同步。
[0048]综上所述,本发明提供的数据备份方法,通过事先设置互为备份存储器的主存储器以及备存储器,延长了网络设备的使用寿命,并在检查网络设备当前启动所使用的数据是主存储器上存储的数据时,对备存储器上备份的数据进行校验,若校验未通过,将主存储器上存储的数据备份至备存储器;在当前启动所使用的数据是备存储器上存储的数据时,将备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。由此可见,当任一存储器存储的数据损坏时,可以通过另一存储器上备份的数据启动网络设备,便于对网络设备的维护。
[0049]本发明还提供一种数据备份装置,图4为该数据备份装置的结构示意图,该装置可以应用于网络设备,所述网络设备具有主存储器以及备存储器,其中,所述主存储器以及备存储器互为备份存储器,该数据备份装置可以包括检查单元以及401备份单元402,其中:
[0050]检查单元401,用于检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据;
[0051]备份单元402,用于在当前启动所使用的数据是所述主存储器上存储的数据时,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;若当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。
[0052]进一步地,所述网络设备还包括第一寄存器,所述装置还可以包括切换单元403,用于在启动所述网络设备时,将发出的片选CS信号切换至与所述主存储器对应的第一片选信号;读取所述主存储器保存的数据,根据所述主存储器保存的数据启动所述网络设备,并在所述第一寄存器中添加第一标识,以表征所述网络设备根据所述主存储器保存的数据启动;所述第一寄存器还记录有用于标识网络设备是否启动成功的启动检测标记位,若根据所述启动检测标记位确定所述网络设备启动失败,将所述CS信号切换至与所述备存储器对应的第二片选信号,并在所述第一寄存器中添加第二标识,以表征所述网络设备根据所述备存储器保存的数据启动;所述网络设备还包括第二寄存器,所述第二寄存器中包括用于表征所述网络设备当前根据所述主存储器或备存储器保存的数据启动的标识,所述检查单元401具体还可以用于根据所述第二寄存器中的标识确定所述网络设备当前启动的数据是否是所述主存储器上存储的数据。
[0053]进一步地,所述检查单元401还可以用于在检查当前启动所使用的数据是所述备存储器上存储的数据之后,检查所述主存储器是否发生物理性故障,若是,输出告警信号,并在与所述主存储器对应的标签中添加标记,以抑制所述网络设备根据所述主存储器的数据启动,否则,执行所述将所述备存储器上的数据备份至主存储器。
[0054]进一步地,所述装置还可以包括更新单元404,用于在所述网络设备成功启动后,若确定所述网络设备主存储器或备存储器保存的数据进行过更新,根据进行数据更新的存储器上的所有数据更新主存储器以及备存储器上保存的数据。
[0055]进一步地,所述备份单元402具体还可以用于通过CRC算法对所述备存储器上备份的数据进行校验。
[0056]本发明应用于网络设备的数据备份装置在具体的处理流程中可以与上述数据备份方法的处理流程一致,在此不再赘述。
[0057]上述装置可以通过软件实现,也可以通过硬件实现,本发明数据备份装置所在网络设备的硬件架构示意图均可参考图5所示,其基本硬件环境包括中央处理器CPU、转发芯片、存储器以及其他硬件,其中存储器件中包括机器可读指令,CPU读取并执行机器可读指令执行图4中各单元的功能。
[0058]从以上各种方法和装置的实施方式中可以看出,本发明实施例提供的数据备份方法以及装置,当任一存储器存储的数据损坏时,可以通过另一存储器上备份的数据实现全局所有程序的备份以及数据的恢复,具有较强的设备自我修复能力,便于对网络设备的维护,更减小了维护成本。
[0059]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1.一种数据备份方法,应用于网络设备,其特征在于,所述网络设备具有主存储器以及备存储器,其中,所述主存储器以及备存储器互为备份存储器,所述方法包括: 检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据; 若是,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器; 若检查当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。2.如权利要求1所述的方法,其特征在于,所述网络设备还包括第一寄存器,在检查所述网络设备当前启动的数据是否是所述主存储器上存储的数据之前,所述方法还包括: 在启动所述网络设备时,将发出的片选CS信号切换至与所述主存储器对应的第一片选信号; 读取所述主存储器保存的数据,根据所述主存储器保存的数据启动所述网络设备,并在所述第一寄存器中添加第一标识,以表征所述网络设备根据所述主存储器保存的数据启动; 所述第一寄存器还记录有用于标识网络设备是否启动成功的启动检测标记位,若根据所述启动检测标记位确定所述网络设备启动失败,将所述CS信号切换至与所述备存储器对应的第二片选信号,并在所述第一寄存器中添加第二标识,以表征所述网络设备根据所述备存储器保存的数据启动; 所述网络设备还包括第二寄存器,所述第二寄存器中包括用于表征所述网络设备当前根据所述主存储器或备存储器保存的数据启动的标识,所述检查所述网络设备当前启动的数据是否是所述主存储器上存储的数据具体包括: 根据所述第二寄存器中的标识确定所述网络设备当前启动的数据是否是所述主存储器上存储的数据。3.如权利要求1所述的方法,其特征在于,在检查当前启动所使用的数据是所述备存储器上存储的数据之后,所述方法还包括: 检查所述主存储器是否发生物理性故障,若是,输出告警信号,并在与所述主存储器对应的标签中添加标记,以抑制所述网络设备根据所述主存储器的数据启动,否则,执行所述将所述备存储器上的数据备份至主存储器。4.如权利要求1所述的方法,其特征在于,所述方法还包括: 在所述网络设备成功启动后,若确定所述网络设备主存储器或备存储器保存的数据进行过更新,根据进行数据更新的存储器上的所有数据更新主存储器以及备存储器上保存的数据。5.如权利要求1所述的方法,其特征在于,所述对所述备存储器上备份的数据进行校验具体包括: 通过CRC算法对所述备存储器上备份的数据进行校验。6.一种数据备份装置,应用于网络设备,其特征在于,所述网络设备具有主存储器以及备存储器,其中,所述主存储器以及备存储器互为备份存储器,所述装置包括: 检查单元,用于检查所述网络设备当前启动所使用的数据是否是所述主存储器上存储的数据; 备份单元,用于在当前启动所使用的数据是所述主存储器上存储的数据时,对所述备存储器上备份的数据进行校验,若校验未通过,将所述主存储器上存储的数据备份至所述备存储器;若当前启动所使用的数据是所述备存储器上存储的数据,将所述备存储器上的数据备份至主存储器,并使用主存储器的数据启动所述网络设备。7.如权利要求6所述的装置,其特征在于,所述网络设备还包括第一寄存器,所述装置还包括切换单元,用于: 在启动所述网络设备时,将发出的片选CS信号切换至与所述主存储器对应的第一片选信号; 读取所述主存储器保存的数据,根据所述主存储器保存的数据启动所述网络设备,并在所述第一寄存器中添加第一标识,以表征所述网络设备根据所述主存储器保存的数据启动; 所述第一寄存器还记录有用于标识网络设备是否启动成功的启动检测标记位,若根据所述启动检测标记位确定所述网络设备启动失败,将所述CS信号切换至与所述备存储器对应的第二片选信号,并在所述第一寄存器中添加第二标识,以表征所述网络设备根据所述备存储器保存的数据启动; 所述网络设备还包括第二寄存器,所述第二寄存器中包括用于表征所述网络设备当前根据所述主存储器或备存储器保存的数据启动的标识,所述检查单元具体用于: 根据所述第二寄存器中的标识确定所述网络设备当前启动的数据是否是所述主存储器上存储的数据。8.如权利要求6所述的装置,其特征在于,所述检测单元还用于: 在检查当前启动所使用的数据是所述备存储器上存储的数据之后,检查所述主存储器是否发生物理性故障,若是,输出告警信号,并在与所述主存储器对应的标签中添加标记,以抑制所述网络设备根据所述主存储器的数据启动,否则,执行所述将所述备存储器上的数据备份至主存储器。9.如权利要求6所述的装置,其特征在于,所述装置还包括: 更新单元,用于在所述网络设备成功启动后,若确定所述网络设备主存储器或备存储器保存的数据进行过更新,根据进行数据更新的存储器上的所有数据更新主存储器以及备存储器上保存的数据。10.如权利要求6所述的装置,其特征在于,所述备份单元具体用于: 通过CRC算法对所述备存储器上备份的数据进行校验。
【文档编号】G06F11/14GK105938445SQ201510466620
【公开日】2016年9月14日
【申请日】2015年7月31日
【发明人】卢阳
【申请人】杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1