CN1310437C - 一种实现路由系统热备份的方法 - Google Patents

一种实现路由系统热备份的方法 Download PDF

Info

Publication number
CN1310437C
CN1310437C CNB021546908A CN02154690A CN1310437C CN 1310437 C CN1310437 C CN 1310437C CN B021546908 A CNB021546908 A CN B021546908A CN 02154690 A CN02154690 A CN 02154690A CN 1310437 C CN1310437 C CN 1310437C
Authority
CN
China
Prior art keywords
cell
backup
route system
realizes
hot spare
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB021546908A
Other languages
English (en)
Other versions
CN1505274A (zh
Inventor
徐小飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB021546908A priority Critical patent/CN1310437C/zh
Publication of CN1505274A publication Critical patent/CN1505274A/zh
Application granted granted Critical
Publication of CN1310437C publication Critical patent/CN1310437C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明属于数据通信技术领域,涉及一种实现路由系统热备份的方法,该方法为:在活跃控制板上收集待备份的信元数据,打包封装成备份报文并发往备份控制板,所述的信元数据采用可扩展二维数组结构来存储,所述的可扩展二维数组结构由横向和纵向两维结构组成,所述的横向结构是一块块连续内存区,所述的纵向结构是可扩展的指针数组;在备份控制板上将备份报文解包,将备份的信元恢复到备份控制板的可扩展二维数组结构中。本发明的这种方法产生的主备切换过程对邻接路由器透明,不需要外界支持,有良好的自我包含性的优点。

Description

一种实现路由系统热备份的方法
技术领域
本发明属于数据通信技术领域,特别涉及路由系统热备份的方法和结构设计。
背景技术
路由器在数据通信领域中扮演非常重要的角色,尤其是核心路由器,在骨干网中瞬间转发大量的数据报文。然而无论是硬件还是软件,都存在失效的可能性。核心路由器往往配有冗余的硬件、软件资源,在失效后能够切换到备份资源上。然而,目前大多数的路由器在切换后,需要重新启动备份资源上的路由控制进程,例如边界网关协议(BGP-Border Gateway Protocol,在网络中自治系统之间传递路由的路由协议)、最短路径优先(OSPF-Open Short Path First,在网络中一个自治系统内部计算路由的路由协议)、协议无关的组播路由协议(PIM-Protocol Independent Multicast,网络中发现、传递多播路由的路由协议)等路由协议,重新与邻居建立连接,进行路由计算。这将导致大量报文在切换过程中被丢弃,网络拓扑变化以及路由震荡。
不间断路由(NSR-Non-Stop Routing用来在网络中单点失效后保持路由交换不间断的技术)与不间断转发(NSF-Non-StopForwarding用来在网络中单点失效后保持数据转发不间断的技术)是试图解决这一问题的技术,其目的是在网络中路由器单点失效后,使备份资源能够平滑切换,保持与周边邻接路由器的连接与路由交换,并在切换过程中保持数据转发,将单点失效对网络的负面影响降低到最小程度。
实现NSR/NSF有几种可选方案,包括协议慢重启扩展(协议Graceful Restart扩展,是对路由协议的功能扩展)、硬件镜像、协议镜像,以及路由系统热备份等。
协议Graceful Restart扩展的方法;
协议Graceful Restart扩展是对路由协议功能的扩充,路由协议可以用它来通知邻接路由器:当本路由器的路由控制进程失效后,本路由器依旧能够转发数据报文,并且在失效后不久,路由控制进程会在短时间内重启。邻接路由器在判断出该路由器失效后,将默认它会迅速恢复,并且持续向它转发数据报文,也不进行路由重定向。在失效点重启后,邻接路由器向它重新发送所有路由或者链路状态数据。这种方法将网络的单点失效造成的影响限制在一个相对小的范围内,避免网络振荡和数据丢失。这种方法称为路由协议Graceful Restart扩展。
协议Graceful Restart扩展的局限性在于:
1.路由协议互操作性:该方案最直接的问题是互操作性问题。网络中的设备需要实现相同的标准,采用相同的方式通信。在没有最终标准的情况下,这种互操作性需求更加明显。
2.无法区分“软启动”与“硬启动”:在某个路由器失效后,邻接路由器其实无法判断出它是否真正能够保持转发并能够在短时间内恢复,即使它曾经宣称自己支持协议Graceful Restart扩展。如果路由器是因为某些不可恢复的灾难性故障而失效,那么它只能“硬启动”,既不能保持转发,也不能在短时间内“回来”。与此同时,它的邻接路由器还在不断地向它转发数据报文并期待它很快恢复,直到预定义的等待时间超时。这样做带来的后果可能要比邻接路由器直接重定向路由带来的危害更大。
3.路由恢复的时间长:协议Graceful Restart扩展要求在失效路由器重启后,邻接路由器向它重新发送所有路由信息。在核心网骨干路由器上,路由的数目可能非常巨大。由此导致的问题是路由恢复时间会持续很长时间,从而使重启后的路由器在很长一段时间内一直使用最早从邻接路由器收到的、原本应该超时的路由进行数据转发,并可能因此引发路由环路、黑洞和网络的不稳定。
4.两台或两台以上的路由器同时失效:协议Graceful Restart扩展的原理是一台路由器失效并重启后,需要从邻接路由器那里获得路由信息。如果相邻的路由器同时失效,这个假设便不成立,从而导致相互求索路由的问题,以及一些额外的不确定因素。
5.协议重启后不能避免再次失效:在失效路由器重启后,它会从邻接路由器那里重新获得全部路由信息。如果上次失效是因为一个错误的路由报文,导致本机软件走到了一个导致死机的异常分支,那么重新获得路由报文后,相同的问题依旧可能重新发生。
硬件镜像的方法:
硬件镜像是通过硬件手段保持备份控制板与主控制板的严格一致,包括协议进程状态、路由信息和内存状态。当主控制板因为硬件故障失效后,备份控制板可以立刻启用。
硬件镜像不需要邻接路由器的配合,因此不存在互操作性问题。另外,也不需要在重启后重新获得路由,因此具有很快的恢复速度。
硬件镜像局限性在于:
1、对带宽的要求高:因为要求主、备严格一致,因此路由器设备在硬件设计上需要充分考虑,最主要的一点是需要提供足够大的带宽以保证主控制板的数据能够实时、可靠地传送到备份板。
2、不保护软件失效:在硬件镜像模式下,备份控制板在主板失效后,从相同的控制点继续执行操作。但是如果主控制板是因为软件问题失效,那么备份板在启动后会因为同样的原因再次失效,因为二者的代码和待处理信息完全一致。所以硬件镜像不保护因为软件问题导致的失效。
3、不支持软件升级:NSR/NSF的一个用处就是在对网络冲击尽可能小的情况下对软件进行升级。但是硬件镜像方案在硬件上限制了主、备控制板必须严格一致,因此无法对软件升级提供支持。
协议镜像的方法:
协议镜像的原理是运行两个相对独立的(例如在两个处理板上)协议控制进程。这两个进程同时接收外界发来的路由更新报文,进行路由计算。在主进程失效后,备份进程接替工作。
它与硬件镜像一样,没有互操作问题,并且失效后备份协议进程恢复速度很快。
协议镜像的局限性在于:
1、不能避免备份协议进程再次失效:如果主协议进程是因为处理路由信息而导致的软件失效,那么备份进程也可能因为处理相同的路由信息而失效。
2、要求主、备协议进程保持同步:保持主、备进程同步的办法是让主、被同时启动,时刻处于同样的状态。这要求软件在时序上严格一致,实现上有相当的困难。
发明内容
本发明的目的是为克服已有技术的不足之处,提出一种实现路由系统热备份的方法,包括以下步骤:
1)在活跃控制板上收集待备份的信元数据,打包封装成备份报文并发往备份控制板,所述的信元数据采用可扩展二维数组结构来存储,所述的可扩展二维数组结构由横向和纵向两维结构组成,所述的横向结构是一块块连续内存区,所述的纵向结构是可扩展的指针数组;
2)在备份控制板上将备份报文解包,将备份的信元恢复到备份控制板的可扩展二维数组结构中。
所述的每个内存区是由多个大小固定的信元组成的信元簇,每个信元分为信元头和信元数据区两个部分。
所述的信元头的内容包括:该信元与地址无关的索引;描述该信元所处状态的标志;用于将处于相同状态的信元链接起来的前、后信元索引;所述的信元数据区的内容是需要存储和备份的数据。
所述的状态包括:空闲状态、使用状态、添加状态、修改状态、删除状态及等待同步状态。
所述的信元本身的索引以及前、后索引采用与地址无关的数组下标。
所述的每个指针数组的数组元素是信元簇头,每个信元簇头包含指向所对应的信元簇的首地址以及其中的空闲信元的个数的信息。
第1)步中还包括在成功发送以后更新信元的标志。
所述的更新信元的标志,是指将处于“添加”、“修改”状态的信元标志更新为“使用中”状态标志;将处于“删除”状态的信元标志更新为“空闲”状态标志。
所述的第1)步中还包括如果备份报文发送失败,则进行错误处理。
所述的第2)步中还包括对于刚刚备份的信元打上“等待同步”的标志。
所述的第2)步中还包括恢复每个信元对应的查询结构。
如果DB中需要备份的数据很多,不能在一个备份报文中全部备份,则重复上述步骤,直到所有数据都被备份。
本发明的工作原理:
在分布式路由器中,有主控板和接口板之分。主控板运行路由等主要控制进程,接口板装有转发表,主要负责数据转发。在冗余配置情况下,往往有两块主控板互为备份。任意时刻,只有一块主控板与外界通信,进行路由计算,并把这些数据备份到备份板。在当前活跃主控板因软、硬件故障失效后,备份板在较短时间内启动,恢复与外界的通信。
本发明把当前处于活跃状态、与外界通信的主控板称为活跃主控板,该板是具有双主控板的分布式路由器中当前与外界通信的控制板。另外一块处于备份状态的则称为备份主控板,是具有双主控板的分布式路由器中当前处于备份状态的控制板。
一个数据在备份到备份控制板以后,其地址不保证与活跃控制板相同。因此,相互关联的模块之间需要用与地址无关的方式进行联系,这样可以降低数据之间的耦合度,方便进行热备份。
本发明就是利用了DB特点,同时做到对内存的灵活扩充与收缩,对数组元素统一索引,并且因为数组本身的特点,根据索引找到相应的元素是直接地址访问,不存在效率问题。
本发明的实现路由系统热备份方法具有以下特点:
1.将数据的存储与查询分离,两者相互独立,可以各自选择最佳方案;
2.用统一方式存储数据,对数据结构的长度、细节不限制;
3.数据的检索与地址无关,方便备份后重建模块间关联关系;
4.降低模块间数据结构的耦合度。
附图说明
图1为本发明的DB的结构示意图。
图2为本发明利用DB在活跃控制板上进行热备份处理实施例的流程框图。
图3为本发明利用DB在备份控制板上进行热备份处理实施例的流程框图。
具体实施方式
本发明提出的一种实现路由系统的热备份的方法结合实施例及其附图详细说明如下:
本发明的DB结构实施例如图1所示:
DB实际上是一个可以动态伸缩的二维数组。横向结构是一块块连续内存区,纵向结构是可扩展的指针数组。每个指针数组的数组元素是信元簇头,每个信元簇头包含指向所对应的信元簇的首地址以及其中的空闲信元的个数的信息,如图左侧所示。
图中右侧为内存区,也称为信元簇。一个信元簇中包含一簇小单位内存块,称为信元。一个信元由两部分组成:信元头和信元数据。信元头中包含信元与地址无关的索引;描述该信元所处状态的标志;用于将处于相同状态的信元链接起来的前、后信元索引;信元本身的索引以及前、后索引采用与地址无关的数组下标。DB定义了如表1所示的几个信元标志:包括:空闲状态、使用状态、添加状态、修改状态、删除状态及等待同步状态。
                     表1
  信元标志域   解释
  空闲   空闲,可以使用。
  使用中   正在使用中。
  添加   新近添加的信元,且还未备份到备份控制板。
  修改   新近被修改的信元,且还未备份到备份控制板。
  删除   新近被删除的信元,且还未备份到备份控制板。
  等待同步   当一个信元被备份到SMB以后,它将处于等待同步状态,等待DB的使用者读出并恢复对应的查询结构。
表2为DB支持的与热备份有关的操作。
                          表2
  操作类型   解释
  打包   将需要备份的数据按照既定格式打包成备份报文,用于发往备份控制板。
  拆包   在备份控制板上将备份报文拆包,读出其中的信元数据并恢复在DB中的存储。
  读取未同步数据   从DB中读取处于“等待同步”状态的信元,之后由DB的所有者恢复其查询结构。
  刷新信元标志   将主控制板上已经被打包发往备份控制板的信元的标志复位,下次备份时将不再打包这些数据。
利用上述DB在活跃控制板上进行路由系统热备份的方法实施例包括在活跃控制板上的处理流程和在备份控制板上的处理流程,如图2、3所示,二者合起来构成完整的热备份的方法。
首先待热备份的路由系统的活跃控制板和备份控制板上均采用DB结构来存储数据。
本实施例在活跃控制板上进行热备份处理流程如图2所示,包括以下步骤:
第(1)步:收集DB中需要备份的信元数据并按照一定格式封装打包成备份报文;此处“一定格式”是指活跃控制板和备份控制板都遵守的、对报文内容的解释规则。包括报文头和报文内容两部分。报文头中包括备份数据的类型、长度等信息;
第(2)步:将备份报文通过板间通信发送到备份控制板。板间通信的具体方法可采用常规技术,在此不再重述;
第(3)步:判断备份报文发送是否成功。判断的方法与具体的板间通信方法有关,可采用常规技术,在此不再重述;
第(4)步:若发送成功,更新DB中信元的状态标志,保证已经被备份的信元不会再次备份。更新状态标志,是指将处于“添加”、“修改”状态标志的信元更新为“使用中”状态标志;将处于“删除”状态标志的信元更新为“空闲”状态标志;
第(5)步:如果备份失败,进行错误处理;错误处理可以是重新传输,也可以是放弃并退出热备份流程。
本实施例在备份控制板上进行热备份的处理流程如图3如示,包括以下步骤:
第(1)步:接收从活跃控制板发来的备份报文;
第(2)步:将备份报文按照预定义格式拆包,恢复其中的信元在DB中的存储,并将这些刚刚恢复的信元的标志更新为“等待同步”状态标志;
第(3)步:从DB中读取处于“等待同步”状态标志的信元,恢复其对应的查询结构。处于“等待同步”状态的信元一旦在备份板上被读出,它的状态标志将被更新,不再处于“等待同步”状态。至此,路由系统的一次备份结束。
上述的信元的查询结构是指用来根据关键字对信元进行检索的数据机构,例如二叉树。DB是用于对数据的存储结构进行热备份,对数据的查询结构不做任何限制。此处描述“恢复数据查询结构”完全是为了方法的完整性。
如果待备份的数据量大,则重复上述步骤,直到所有数据备份完毕。

Claims (12)

1、一种实现路由系统热备份的方法,其特征在于,包括以下步骤:
1)在活跃控制板上收集待备份的信元数据,打包封装成备份报文并发往备份控制板,所述的信元数据采用可扩展二维数组结构来存储,所述的可扩展二维数组结构由横向和纵向两维结构组成,所述的横向结构是一块块连续内存区,所述的纵向结构是可扩展的指针数组;
2)在备份控制板上将备份报文解包,将备份的信元恢复到备份控制板的可扩展二维数组结构中。
2、如权利要求1所述的一种实现路由系统热备份的方法,其特征在于,所述的每个内存区是由多个大小固定的信元组成的信元簇,每个信元分为信元头和信元数据区两个部分。
3、如权利要求2所述的一种实现路由系统热备份的方法,其特征在于,所述的信元头的内容包括:该信元与地址无关的索引;描述该信元所处状态的标志;用于将处于相同状态的信元链接起来的前、后信元索引;所述的信元数据区的内容是需要存储和备份的数据。
4、如权利要求3所述的一种实现路由系统热备份的方法,其特征在于,所述的状态包括:空闲状态、使用状态、添加状态、修改状态、删除状态及等待同步状态。
5、如权利要求3所述的一种实现路由系统热备份的方法,其特征在于,所述的信元本身的索引以及前、后索引采用与地址无关的数组下标。
6、如权利要求2所述的一种实现路由系统热备份的方法,其特征在于,所述的每个指针数组的数组元素是信元簇头,每个信元簇头包含指向所对应的信元簇的首地址以及其中的空闲信元的个数的信息。
7、如权利要求1所述的一种实现路由系统热备份的方法,其特征在于,第1)步中还包括在成功发送以后更新信元的标志。
8、如权利要求7所述的一种实现路由系统热备份的方法,其特征在于,所述的更新信元的标志,是指将处于“添加”、“修改”状态的信元标志更新为“使用中”状态标志;将处于“删除”状态的信元标志更新为“空闲”状态标志。
9、如权利要求1所述的一种实现路由系统热备份的方法,其特征在于,所述的第1)步中还包括如果备份报文发送失败,则进行错误处理。
10、如权利要求1所述的一种实现路由系统热备份的方法,其特征在于,所说的第2)步中还包括对于刚刚备份的信元打上“等待同步”的标志。
11、如权利要求1所述的一种实现路由系统热备份的方法,其特征在于,所说的第2)步中还包括恢复每个信元对应的查询结构。
12、如权利要求1至11中任一所述的一种实现路由系统热备份的方法,其特征在于,如果需要备份的数据很多,不能在一个备份报文中全部备份,则重复上述步骤,直到所有数据都被备份。
CNB021546908A 2002-12-04 2002-12-04 一种实现路由系统热备份的方法 Expired - Fee Related CN1310437C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB021546908A CN1310437C (zh) 2002-12-04 2002-12-04 一种实现路由系统热备份的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB021546908A CN1310437C (zh) 2002-12-04 2002-12-04 一种实现路由系统热备份的方法

Publications (2)

Publication Number Publication Date
CN1505274A CN1505274A (zh) 2004-06-16
CN1310437C true CN1310437C (zh) 2007-04-11

Family

ID=34235553

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021546908A Expired - Fee Related CN1310437C (zh) 2002-12-04 2002-12-04 一种实现路由系统热备份的方法

Country Status (1)

Country Link
CN (1) CN1310437C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100391164C (zh) * 2005-12-31 2008-05-28 华为技术有限公司 一种实现转发不间断的内存告警处理方法及路由器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321004A (zh) * 2000-04-25 2001-11-07 华为技术有限公司 交换机的主备倒换方法及其实现装置
CN1346220A (zh) * 2000-10-01 2002-04-24 深圳市中兴通讯股份有限公司上海第二研究所 基站控制维护模块备份系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1321004A (zh) * 2000-04-25 2001-11-07 华为技术有限公司 交换机的主备倒换方法及其实现装置
CN1346220A (zh) * 2000-10-01 2002-04-24 深圳市中兴通讯股份有限公司上海第二研究所 基站控制维护模块备份系统

Also Published As

Publication number Publication date
CN1505274A (zh) 2004-06-16

Similar Documents

Publication Publication Date Title
CN103268318B (zh) 一种强一致性的分布式键值数据库系统及其读写方法
Liskov et al. Viewstamped replication revisited
CN1213376C (zh) 用于被复制的服务器的协议
CN101145946B (zh) 一种基于消息日志的容错集群系统和方法
CN103138912B (zh) 数据同步方法及系统
KR20060117505A (ko) 비공유 공간 데이터베이스 클러스터에서 확장성 해싱을이용한 클러스터 로그 기반의 회복 방법
CN101048740A (zh) 用于在失效转移之后或在软件升级期间透明恢复路由状态的路由系统和方法
CN1900914A (zh) 使用远程镜像创建数据的应用一致远程拷贝的系统与方法
EP2218006A1 (en) Local flash memory and remote server hybrid continuous data protection
JPH0789337B2 (ja) 分散ファイル回復方法
WO2014059804A1 (zh) 数据同步方法及系统
CN1892606A (zh) 集群代码管理的方法和系统
CN1725186A (zh) 一种多数据库数据同步方法
CN103220183A (zh) 一种基于双主机热备份的Hadoop高可用性系统实现方法
CN102081540A (zh) 一种分布式双主控网络设备软件升级方法和装置
CN1852455A (zh) 一种数据容灾系统及其容灾方法
CN104410655A (zh) 基于命名机制的分布式网络的存储系统及方法
CN1529459A (zh) 面向高端交换机的主备倒换实现方法
CN1607772A (zh) 一种通过地址解析协议报文实现数据转发备份的方法
WO2009074031A1 (fr) Procédé de sauvegarde de données et système de traitement d'application
CN102385624B (zh) 一种面向分布式文件系统的日志数据组织的方法
CN103544270A (zh) 面向数据中心的通用化网络编码容错存储平台及工作方法
CN1310437C (zh) 一种实现路由系统热备份的方法
CN1275476C (zh) 移动通讯系统中使用共享内存的群集系统及其实现方法
CN101056195A (zh) 通信系统中主板与备板的数据同步方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070411

Termination date: 20151204

EXPY Termination of patent right or utility model