数据网络设备及其管理控制方法

文档序号:7620583阅读:166来源:国知局
专利名称:数据网络设备及其管理控制方法
技术领域
本发明涉及数据网络设备,特别涉及用于在数据网络设备上实现高可用性(HA,High Availability)的管理控制方法和控制装置、以及具有这样的控制装置的数据网络设备。
背景技术
高可用性实际意义随着因特网(Internet)的飞速发展,使得网络已经涌入到社会生活的各个角落中,人们的生活越来越离不开网络,Internet的关键应用也越来越多,因此,对网络的稳定与可靠性的要求也越来越高。数据网络设备的每1分钟的停(down)机,都会给运营商和企业带来很大的损失。根据Sterling Research公司的报告,一小时的down机会给纽约市一家股票交易所带来六百五十万美元的损失,而一个自动提款机也会因此损失一万五千美元。因此,高可用性已经成为了电信级设备的基本需求。
另一方面,从运营商的角度,他们对高可用性的关注也是日益增加。在BTexact Technologies最近所做的一个调查中,网络运营商将可靠性和稳定性列为对网络设备中最关注的方面。而Yankee Group的一份报告中也表明了相似的结果,在评分过程(1到10分),运营商将路由器的可靠性列为8.5分,而能够实现在线升级的能力列为8.75分。由此可见,是否具有高可用性已成为运营商选择设备的重要依据。
可用性的基本概念可用性并不是一个模糊的概念,实际上它能用数学方法来精确地表示。通常,可用性被定义为实际的服务时间和要求的服务时间的比值,常用百分比表示。简单地讲,一个高可用性系统就是一个用户能随时使用的系统,例如当用户需要在早上8点到下午5点启用该系统时,该系统就应该在这段时间内保证良好的可用状态,其余的时间可以用来进行定期维修保养。许多电信级系统需要一天24小时、一年365天连续不间断运转(有时也称为7×24或365×24)。一个可用性为99.9%的365×24系统一年的平均故障时间为8.76小时(525分钟),而要想让系统的中断时间在一年中只有3分钟的话,系统必须有99.999%的可用性,即在电信设备中通常所要求的5个9(Five Nine)的高可用性。可用性指标可以利用所有系统软硬件元件的统计模型计算出来,最简单的元件模型是二元的,即元件要么处于工作状态,要么处于非工作状态。可用性可以用失效率来计算,结果为平均无故障工作时间MTBF,也可以用故障修复时间来计算,结果为平均故障修复时间MTTR。将MTTR时间平均分摊到MTBF周期内可以计算出任意软硬元件对平均故障的贡献。例如,有一个对系统运作至关重要的元件,它的MTBF时间为250,000小时,MTTR为1小时,则系统在一年中的不可用性时间为2.1分钟(等于60(分钟)×8760(小时/年)÷250,000(小时))。
高可用性的设计内容高可用性的系统设计包括硬件支撑系统、硬件运行系统和应用软件系统的高可用性,具体说明如下硬件外围系统的高可用性这个层次包括机框、风扇、电源和UPS等设备的高可用性。主要的措施是采用冗余电源和智能UPS系统等措施保证网络设备硬件支撑系统的可靠工作。目前通常采用的是N∶1的电源模块和风扇单元。
硬件平台系统的高可用性目前保证硬件运行系统高可用性的主要措施也是采用冗余设计,通常包括1+1的主控处理器和交换单元,而在网络接口卡上通常采用N∶1的备份方式。这样,这样在系统硬件出现故障时,备用(Backup)模块可以接替原主用(Active)模块继续工作。
软件系统的高可用性软件系统的高可用性包括控制卡和线路卡上软件的备份设计、主备倒换(Hot-swap)、故障检测(Fault Detection)、系统容错(FaultTolerance)、在线升级(On-line Upgrade)和无中断的业务转发(Non-stopForwarding)等。
现有技术分析由以上分析可知,要提高系统的高可用性,必须使平均无故障工作时间(MTBF)尽量长,而平均故障修复时间(MTTR)尽量短。由于MTBF根据系统软硬件的复杂度不同而不同,因此要使系统的可用性更高,必须要使MTTR尽量的小,即尽量使得系统从发现故障的发生到从故障中恢复的时间尽量的短。而本发明所要解决的也是如何尽量减少平均故障修复时间(MTTR)。
而平均故障修复时间(MTTR)是指从故障发生(出现软硬件故障),到故障恢复(数据网络设备开始正常运行业务),它主要由以下部分组成●故障检测时间●异常处理的时间●加载以及启动备用板的时间●备用板恢复配置的时间●路由学习、聚合的时间从以上分析可以看出,提高系统的高可用性,关键在于两方面,首先是必须要做到故障监测(Fault Detection)时间要尽量的快,能够达到秒级甚至毫秒级,其次是备用卡接替主用卡从启动、工作到网络路由的收敛时间要尽量小。而前者取决于系统采用的故障检测方式,而后者取决于系统采用的主备保护和恢复(Protection and Restoration)方式。而本发明正是从这两方面实现设备的高可用性。而下文将分别从故障检测以及保护和恢复方式两方面对现有技术进行分析故障检测(Fault Detection)方法目前的技术方案中对故障检测均采用了Heartbeat(心跳)或类似的机制。
具体实现如下首先,主用和备用之间通过定时器维护一定的Keepalive(保持存活)数据包(或其它功能相似的数据包),如图1所示。
如果某一端在一段时间内没有收到对方发过来的Keepalive包,则会Hold Timer定时器超时,这样该节点就会认为对端节点出现了故障。如图2所示。
最后,当前节点改变自己目前的状态,并做相关的故障恢复处理。如果是主卡则通告备用卡失效,如果是备用卡则将自己切换为主用卡的工作方式。如图3所示。
优缺点分析这种方法实现故障检测,较为简单可靠,但是存在着实时性较差的问题。由于采用了基于软件的检测方式,发现故障的时间往往较长,多为秒级,实时性较差而目前很多应用需要对故障检测的实时性较强,尤其网络的核心节点对秒级的故障检测时间是不允许的。
主备恢复和保护方式完全状态同步(Full State Sync)所谓完全状态复制的方法,是指在主用和备用之间维护完全的状态同步。这种方式包括所有的上层协议状态在主备之间完全的同步。如图4,当任何协议所需要同步的数据或状态发生改变时,就会有更新消息从主用卡发送到备用卡。理论上说,如果采用完全的状态同步,一旦主用卡软硬件出现故障,备用卡可以接替并且不会对邻居节点和网络导致任何影响。
优势在出错时,这种方式对网络导致的影响最小,并且所需的时间也最少。
可能存在的问题这种方式可能存在的最大问题是对路由协议等应用带来的性能上影响。为了实现主备之间完全同步,所有的同步必须是原子级的,这就意味着主用卡必须知道每一个信息被每一个备用卡正确接收并只处理一次。如果数据包被丢失,则会导致失步和不可预料性。
另一个问题是需要同步的数据量可能过于巨大,例如,对一个Internet的核心路由器来说,它需要维护数十万条路由甚至上百万条路由,如果在主备卡之间进行完全同步,将可能导致系统资源的紧张(如对总线和背板)。因此,对于系统设计者来说,这种方式某种程度上来说缺少扩展性。
实际应用目前Alcatel公司和Avici公司采用了完全同步的方式,并应用于其最高端的核心路由器中。
数据复制(Data Duplication)采用这种方式时,主用卡和备用卡会从同一时刻开始运行相同的程序,两个程序将处在完全相同的初始状态。而系统的底层负责将数据网络设备所接收到的每一个数据包,发给主备卡同样的一份拷贝(见图5)。但是在发送方向,备用卡的OS(操作系统)或协议栈则是简单的将包丢弃,而主用卡可以将数据包发出。这种方法是基于以下考虑主用和备用从同样的状态启动,接收相同的输入,按照相同的次序处理相同的事件和包,则可以在任何时刻维护相同的状态。如果主用卡出现故障或备用卡检测到一个内部错误,备用卡会迅速接管系统并开始正常工作,因为它和主卡出错前处在相同的状态。
优势这种方法不需要对路由协议和其它应用做任何改动。
可能存在的问题由于这种方式要求主用和备用以相同的初始状态启动并接收相同的输入,因此它仅适合于主备同时启动的方式,并且中间不允许出现代码更新、在线升级和卡的热插拔。此外,由于主备控制卡采用同样的镜像、同样的初始状态和同样的输入,因此,如果主用卡出现故障,也将很有可能会导致备用卡出现相同的故障。
实际应用由于这种方式存在明显的缺陷,因此目前在HA Linux环境中有所应用,并主要用于基于Linux的网络应用中(如Linux服务器群集),而在商用的数据网络设备中使用较少。
协议扩展(Protocol Extension)方式由于数据复制法无法解决主用和备用不同步时引起的问题,而状态完全同步法尽管可以实现主用和备用之间的无缝切换,但是可能会导致主用和备用之间的通信量过大,因此,部分厂商采用了对现有的应用协议进行扩展的方式,即采用Graceful Restart(平滑的重启动),并在IETF(因特网工程任务组)中对其进行了标准化。这种方法的关键在于,当网络设备正常工作时,其对等节点和其主用控制单元建立起连接关系,并进行数据转发,如图6所示。
发生主备倒换时,其对等节点将清除原有和主用之间连接,并和备用控制单元重新建立起会话关系,帮助系统的控制平面重新获得失去的路由信息(图7)。
但和普通的重启动不同,进行Graceful Restart时,对等节点并不认为该节点失效,并保留和该节点相关的路由消息,这样,网络上的其他节点并不认为该节点失效,可以继续向其转发流量(见图8)。
但需要注意的是,网络设备必须采用控制平面和数据转发平面分离的数据结构,这样在Graceful Restart的过程中,才能保证转发平面还能继续转发流量。
以下将以路由器上的BGP(边界网关协议)协议为例,来详细介绍这种方法。
当BGP和它的对等体建立起连接时,将会开始Graceful Restart能力协商,它们通过在交换BGP的Open消息中来通告给对端具有Graceful Restart的能力。此时,它将通告给它的对等体它能够维护转发信息的协议列表,如Ipv4、Ipv6或MPLS(多协议标记交换)转发。
当路由器进行主备倒换时,对等体和路由器的TCP连接将会被清除。通常,这会导致对端路由器清除和正在倒换路由器的相关所有路由,并通告给网络上其它节点该节点失效,这样就会导致网络流量的中断或者路由的重新学习收敛。而具有Graceful Restart能力的路由器,此时将所有和该路由器相关的路由置为“Stale(失效)”,但是继续使用这些路由进行数据转发。
当路由器完成主备倒换后,备用卡(新主用卡)将和它的对等体重新建立Peer(对等)关系,此时,它的所有对等体将会把BGP相关的路由信息库RIB发给它,当完成所有的路由更新后,它的对等体将会发送End of RIB(EOR)标识来通告它,路由重新学习完毕。当路由器从所有的Peer中都收到EOR包后,它就知道网络路由收敛已经完成,然后开始重新进行正常的最佳路由选择。
优势这种方法开销较小,且具有较高的可扩展性。
可能存在的问题这种协议扩展方式必须在数据网络设备以及它的对等节点上同时使用,若对端节点不支持Graceful,则无法采用。因此,仅仅采用协议扩展方式是无法实现在各种复杂网络环境中的高可用性的。
实际应用由于该方式具有较强的可扩展性,因此目前Cisco Networks公司和Juniper Networks公司的高端产品均采用这种方式。

发明内容
由于现有的技术方案存在种种缺陷,因此本文提出一种全新的技术方案。首先在故障检测上,它采用了软硬件结合的方式对故障进行检测和定位,而在主备保护和恢复上采用了一种全新的自适应的技术方案。
具体说来,就是在故障检测的过程中,既保留了传统的心跳(heartbeat)机制,通过软件方式进行检测对方是否工作正常,同时,由一个系统硬件管理(Hardware Manager)进程通过背板上的硬件管理信号对热插拔或硬件故障等做出实时响应。和传统方案相比,本发明大大提高了故障检测的速度和精度。
而在主备保护和恢复的方案中,本发明所提出的自适应方案可以根据设备上的具体工作模式不同,采用不同的技术方案,即如果设备工作在非路由信令模式(不运行路由和信令协议,但可以运行静态路由和二层协议)下,采用一种轻量级(Light-weight Level)的部分同步(Part Sync)方式,即实现主备用节点的配置消息(包括运行的配置文件和存储在存储器上的初始配置文件)和路由转发消息的同步,这样,在不引入额外的信令和增加系统负担的情况下,实现了系统的高可用性。如果网络设备的方式为路由信令模式(需要运行路由协议或MPLS信令)时,则在设备在和对等体建立连接时,首先判断对方是否具备路由信令的协议扩展能力,如果具备则采用了协议扩展方式进行保护,如果没有则采用完全状态同步的方式进行保护。
这种方式灵活地根据网络设备的不同工作模式采用不同的保护恢复方式。尤其是当网络设备工作在非路由信令模式时,由于采用了一种轻量级的部分同步的备份方式,避免了系统的内部资源的耗费和负担,也不需要引入新的协议,大大减轻了系统设计者的负担,并提高了数据网络设备的工作效率。而当工作在路由信令模式下时,同样也不是简单地采用协议扩展或者是完全状态同步的方式,而是首先根据设备的对端节点是否具有协议扩展能力来决定采用何种工作方式,这样就使得本发明方案更加灵活和具有扩展性。
根据本发明的一个方面,提供了一种数据网络设备管理控制方法,所述数据网络设备具有主用装置和备用装置,该方法包括检测该数据网络设备是在非路由信令模式下运行还是在路由信令模式下运行;如果该数据网络设备在非路由信令模式下运行,则采用部分同步方式进行在主用装置和备用装置之间的保护和恢复;如果该数据网络设备在路由信令模式下运行,则检测与该数据网络设备进行数据传输的其它数据网络设备是否都具备协议扩展功能,如果与该数据网络设备进行数据传输的节点都具备协议扩展功能,则采用协议扩展方式进行在主用装置和备用装置之间的保护和恢复;否则,采用状态完全同步方式进行在主用装置和备用装置之间的保护和恢复。
根据本发明的另一个方面,提供了一种与其它节点进行数据传输的数据网络设备,包括至少一个主用装置和至少一个备用装置,所述数据网络设备包括工作模式获取装置,用于获取该数据网络设备的工作模式;协议扩展功能判断装置,用于判断与该数据网络设备进行数据传输的其它节点是否都具有协议扩展功能;保护方式确定装置,根据所述工作模式获取装置所获取的工作模式和所述协议扩展功能判断装置的判断结果,确定以何种方式进行在主用装置和备用装置之间的保护和恢复;部分同步保护装置,以部分同步方式执行所述保护和恢复;协议扩展保护装置,以协议扩展方式执行所述保护和恢复;状态完全同步保护装置,以状态完全同步方式执行所述保护和恢复,其中,如果所述工作模式为非路由信令模式,则所述保护方式确定装置确定由部分同步保护装置执行所述保护和恢复,如果所述工作模式为路由信令模式,则保护方式确定装置指示所述协议扩展功能判断装置执行所述判断,如果判定所述其它节点都具备协议扩展功能,则所述保护方式确定装置确定由协议扩展保护装置执行所述保护和恢复,如果判定所述其它节点并不都具有协议扩展功能,则所述保护方式确定装置确定由状态完全同步保护装置执行所述保护和恢复。
因此,本发明实现了一种在数据网络设备上实现高可用性(HighAvailability)的方法,它在故障检测上不同于传统的数据网络设备中所采用基于软件的故障检测方式,而是采用了软件和硬件相结合的方式,提高了故障检测的速度和精度;而在主备保护和恢复的方式上,也不同于以往设备所采用的单一的协议扩展(Protocol Extension)或是完全状态同步(Full State Sync)的方式,而是采用了一种自适应(Self-Adaptive)的主备保护和恢复方式,即根据数据网络设备的实际运行状态来采用不同的备份方式。具体说来,当设备运行在非路由信令模式时,采用一种轻量级(Light-weight Level)的部分同步(Part Sync)的方式,而运行在路由信令模式时,它将首先判断邻接节点是否都具备协议扩展功能,如果具备则采用协议扩展方式进行主备保护,否则才采用状态完全同步方式。由于采用了自适应的方式进行保护,本发明可以灵活地根据不同的应用环境采用最合适的方式,和现有的方式相比,使得系统开销更小、适用的环境更广,且灵活性更高,并具有更快的故障检测速度,因此大大提高了设备的高可用性。本发明适用于目前和未来的宽带Ipv4和Ipv6网络中的接入层、汇聚层和骨干层等二三层路由交换设备,也适用于无线分组网中的数据网络设备。


图1是示出心跳机制下主用处理器和备用处理器交换Keepalive(保持存活)消息的示意图;
图2是示出心跳机制下Hold Timer定时器超时表明对端节点出现故障的示意图;图3是示出心跳机制下的状态跳转的示意图;图4是示出完全状态同步方式的示意图;图5是示出数据复制方式的示意图;图6是示出协议扩展方式下的正常操作的示意图;图7是示出协议扩展方式下的平滑重启动的示意图;图8是示出协议扩展方式下平滑重启动时不停止转发的示意图;图9是示出根据本发明的数据网络设备中有关管理控制的主要组件的方框图;图10是示出根据本发明的数据网络设备管理控制方法的流程图;图11是说明路由协议将生成的路由转发消息存放入路由消息库(RoutingInformation Base)并同步到转发单元上的示意图;图12是示出采用本发明的数据网络设备的示例的框图;图13是示出采用本发明的数据网络设备的示例中与本发明相关的主要模块的方框图;图14是示出协议相关单元的功能的示意图;图15是示出部分同步方式的示意图;图16是采用本发明的数据网络设备上的示例数据流图;图17是采用本发明的数据网络设备的示例逻辑方框图;以及图18是示出线路转发卡的结构的逻辑方框图。
具体实施例方式
下面参考附图描述根据本发明的数据网络设备及其管理控制方法。
图9示出了根据本发明的与其它节点进行数据传输的数据网络设备中与管理控制相关的主要组件。本发明的数据网络设备包括至少一个主用装置和至少一个备用装置(未示出)。如图9所示,根据本发明的数据网络设备包括工作模式获取装置10,用于获取该数据网络设备的工作模式;协议扩展功能判断装置30,用于判断与该数据网络设备进行数据传输的其它节点是否都具有协议扩展功能;保护方式确定装置20,根据工作模式获取装置10所获取的工作模式和协议扩展功能判断装置30的判断结果,确定以何种方式进行在主用装置和备用装置之间的保护和恢复;部分同步保护装置40,以部分同步方式执行保护和恢复;状态完全同步保护装置50,以状态完全同步方式执行保护和恢复;以及协议扩展保护装置60,以协议扩展方式执行保护和恢复。
下面参考图10描述根据本发明的数据网络设备管理控制方法。
在数据网络设备运行过程中,在步骤S1,由工作模式获取装置10获取该数据网络设备的工作模式。如果工作模式为非路由信令模式,则进入步骤S2,保护方式确定装置20确定由部分同步保护装置40以部分同步方式执行在主用装置和备用装置之间的保护和恢复。如果工作模式为路由信令模式,则进入步骤S3,保护方式确定装置20指示协议扩展功能判断装置30判断与该数据网络设备进行数据传输的其它邻接节点是否都具备协议扩展功能。如果判定其它邻接节点都具有协议扩展功能,则进入步骤S4,保护方式确定装置20确定由协议扩展保护装置60以协议扩展方式执行保护和恢复。如果判定其它邻接节点并不都具有协议扩展功能,则进入步骤S5,保护方式确定装置20确定由状态完全同步保护装置50执行保护和恢复。
根据本发明的数据网络设备还可以包括故障检测模块(图9中未示出),用于检测数据网络设备中的故障。本发明的故障检测模块通过软件和硬件相结合的方式进行故障检测,因此该故障检测模块包括心跳机制模块(图9中未示出),用于在主用装置和备用装置之间周期性地交换保持存活消息,当主用装置和备用装置之一在预定时间内没有收到来自主用装置和备用装置中另一个装置的保持存活消息时,确定所述另一个装置发生故障;硬件管理器(图9中未示出),通过实时中断方式或定时轮询方式对硬件信号进行监视,以确定主用装置和备用装置是否在位、是否出现故障。
根据本发明的数据网络设备还包括故障处理装置(图9中未示出),其接收故障检测模块所通告的故障,并进行相应的故障处理,其中,当检测到主用装置发生故障时,故障处理装置将备用装置切换为新主用装置,并接替原主用装置的工作;当检测到备用装置发生故障时,故障处理装置进行相应的故障恢复操作,并停止对备用装置的同步和更新。
根据本发明的数据网络设备还可以包括动态更新装置和批量更新装置(图9中均未示出)。在正常工作时,由动态更新装置对备用装置进行动态更新。而在主用装置发现备用装置刚启动时,由批量更新装置执行批量更新。
上述主用装置和备用装置可以分别是数据网络设备(如路由器)中运行协议的主用部件和备用部件。
本发明对系统硬件体系结构有以下要求1.采用转发和控制分离的体系结构。因为如果要在实现热倒换的过程中,用户的业务不会有任何丢失,必须将系统控制功能和高速转发功能分离。
2.系统控制单元上统一维护路由转发消息,而接口卡上保存转发消息库。
3.至少有两块系统控制卡,即要实现高可用性,必须在控制功能上实现硬件的冗余。
4.系统控制总线上提供硬件的系统管理功能,能够对硬件的插拔和故障进行监视,并能通过中断或轮询方式进行管理。
5.关键的部分,如交换单元、控制卡、电源和风扇等采用1+1、1∶1或1∶N的备份。
图11中说明了路由协议将生成的路由转发消息存放入路由消息库(Routing Information Base),并同步到转发单元上去。
图12示出了典型的采用本发明方案的高可用性数据网络设备,它采用了一主一备的控制卡,并且将转发和控制功能分离,每一个线卡维护系统的转发消息库。
下面说明本发明的功能模块。
图13为本发明的功能模块结构图,它包括以下模块1.故障检测模块(Fault Detection Module,FDM)其中故障检测模块又分为两部分即HBM(heart-beat module,心跳机制模块)和HM(Hard-ware Manager,硬件管理器),分别用来用软件和硬件的方式来检测产生的错误。
2.容错模块(Fault Tolerance Module,FTM)本发明的核心部分,实现自适应地选择保护和恢复方式,完成和其他模块的接口,并根据其他模块的输入确定系统的工作模式,并决定系统的同步和更新方式。
3.协议相关单元(Protocol Specific Element,PSE)提供和协议(路由和信令协议)相关的状态同步部分,每一个应用协议对应不同的协议相关单元。
4.介质相关的通信模块(Media-dependent Communication Module,MCM)提供主备控制卡之间的通信通道,提供库函数为上层协议提供调用。它的底层通信介质可以是任何系统内部通信总线,如Ethernet、PCI、大容量的交换结构Switch Fabric或者用户自定义的私有总线等。
5.系统管理单元(System Manager)系统中的协议管理模块,提供SNMP(简单网络管理协议)、CLI(命令行接口)和基于Web的多种管理方式,并能控制系统当前的工作模式。
其中,图9所示的工作模式获取装置10可以由图13中的系统管理单元SM实现,保护方式确定装置20、部分同步保护装置40、状态完全同步保护装置50可以由容错模块FTM实现,协议扩展功能判断装置30可以由容错模块FTM结合系统管理单元SM实现,而协议扩展保护装置60可以由协议相关单元PSE结合容错模块FTM实现。
由于MCM模块和SM模块和具体平台相关,因此本发明只需对其基本功能和接口进行要求。而下文将对前三个模块的具体组成和功能进行具体说明。
一.Heartbeat模块Heartbeat模块实现的功能和实现如下1.主用和备用之间周期性交换消息Keepalive(保持存活)消息,并启动Hold timer定时器。备用节点上的Heartbeat模块周期性发送Keepalive消息给主卡上的Heartbeat模块。主用卡同时响应一个Keepalive消息。
2.如果主用卡上的Heartbeat模块的Hold Timer定时器超时,即说明在一个可配置的周期内没有收到备用Heartbeat模块的Keepalive包,它会通告FTM模块,进行故障恢复操作(将不在进行主备之间的动态更新)。
3.如果备用卡的Heartbeat模块的Hold Timer定时器超时,即说明在一个可配置周期内没有收到主用Heartbeat模块的HB-Reply包,它就会通告FTM模块进行故障处理,并将自己从备用切换至主用状态。
二.硬件管理器(Hardware Manager)HM所实现的功能和实现如下1.系统的背板通过Present#信号来反映系统中的各个电路板是否在位。
2.系统的背板通过Alarm#和Health#信号来反映各个电路板是否出现硬件故障。
3.HM通过实时中断方式或定时轮询方式对Present#、Alarm#和Health#进行监视。
4.HM通过以上机制一旦发现系统中出现热插拔或硬件平台出现故障,立即通告给容错模块(FTM),进行相应的故障恢复和处理。
三.协议相关单元(PSE,Protocol Specific Function)PSF是由每一个具有高可用性功能的协议所提供的。每一个协议有不同的PSF。当协议单元和PSF模块一起使用时,该协议就具备了在HA的功能,见图14所示。
PSE的具体功能和实现如下1.PSE仅和每个具体协议相关,它维护每个协议中需要倒换的状态消息,既要保证足以实现主用和备用之间的同步,同时又要做到以不牺牲系统性能为代价。
2.当协议层内部状态发生变化时,主用卡上的PSE单元,产生并通过FTM发送更新(Update)消息到备用的相对应的协议单元。
3.备用卡上的PSE单元从FTM接受到Update消息,并改变内部协议的数据结构,实现和主用卡上的PSF单元的同步。
4.每一更新消息的操作必须保证是原子操作,并且必须获得确认。
四.容错FTM模块FTM是本发明的核心部分,它通过和其他模块的接口,实现自适应地选择保护和恢复方式,提供多种消息同步和更新方式,并根据其他模块的输入确定系统的工作模式。
具体功能和实现如下(一)、和SM模块接口,获取系统目前的工作模式,以确定系统目前所采用的保护和恢复方式。具体选择的算法如下如果从SM接口中知道设备工作在非路由信令模式(不运行路由和信令协议,但可以运行静态路由和二层协议)时,则采用一种轻量级(Light-weightLevel)的部分同步(Part Sync)方式,即实现主备用节点的配置消息(包括运行的配置文件和存储在存储器上的初始配置文件)和路由转发消息的同步。否则,若网络设备的工作模式为路由信令模式,需要运行路由协议或MPLS信令时,则在设备和对等体建立连接时,首先根据SM中的消息判断对方是否具备路由信令的协议扩展能力,如果具备则采用了协议扩展方式进行保护,否则没有,则采用完全状态同步的方式进行保护。
(二)、接收FDM所通告的软硬件故障,并针对不同类型的故障进行处理。如果是主用模块发生故障,备用模块切换为主用并接替主用的工作;如果是备用模块发生故障,则主用模块进行相应的故障恢复(如复位备用卡),并停止主备之间的更新。此外,针对软硬件方式通告的故障,可以灵活地选择不同的优先处理方式,即可以优先处理软件通告故障,也可以优先处理硬件通告的故障。
(三)、和MCM单元提供接口完成同步信息的发送,并提供多种消息同步和更新方式。具体说明如下其中,FTM提供两种同步方式部分同步(Part Sync)和完全状态同步(FullState Sync),它由系统的工作模式决定。当工作在完全状态同步时,协议状态发生任何变化时,均需要进行同步,具体内容由每一个PSE模块提供(参见图4和图14)。而采用部分同步时,如图15,主用和备用之间不需要同步所有的状态消息,而只需在主用上配置和管理消息发生改变,或者路由消息发生改变时,才需要同步配置消息和路由消息库(RIB)。由于保证了配置消息和路由转发消息的同步,备用卡在主备切换时,仍能正常的进行数据转发,并且和完全状态同步相比,不增加过多的系统负担,也不需要引入额外的信令,是一种轻量级(Light-weight Level)的解决方案。
另外,在协议扩展方式下,不需要专用的同步模块;其同步的信息由PSE和FTM结合使用。
而FTM的更新方式也分为两种,动态更新(Dynamic Update)和批量更新(Bulk Update),分别运用于系统运行的不同状态。
动态更新是指在正常工作时备用卡和主用卡在工作正常时保持同步。具体步骤如下1.当主用卡检测到内部明显的状态变化时,它将构造Update消息,并通过MCM模块发送到备用卡。此时,它将保持现有状态,直到它收到备用的确认后。
2.如果备用卡从MCM模块收到Update消息,则修改自己内部相应的协议和管理状态,并向主用卡进行确认。
3.主用卡如果收到备用卡对于Update消息的确认,则进行新的操作,否则主用的FTM将会给出一个错误的信号,而对这个错误的处理将是和具体的PSE相关。
4.这样的话,主用和备用之间将会在每一个复制操作完成后,保持同步,并且保证了每一个同步为原子操作。
批量更新的原理和上述过程类似,但它是发生在主用卡发现备用板启动之后。由于此时主用板和备用板之间的状态差异可以非常大,FTM将在这期间集中进行主用和备用之间的数据同步,以达到主备之间数据迅速一致的目的。完成备用更新后,系统将重新进行动态更新的过程。
动态更新和批量更新的内容将由系统采用的保护和恢复方式决定,如果采用完全同步则需要同步所有的协议状态,否则只需要同步路由转发消息和配置管理消息。
(四)、FTM还决定主备之间所采用的备份方式。通常有两种备份方式热备份和冷备份。冷备份时,主用与备用之间并不进行运行状态和与运行数据的同步,并且协议也不进行完全地初始化,这样发生主备倒换时,备用需要重新启动协议,并重新学习状态;而热备份时,则要求主用和备用维护相同的协议状态,并运行同样的进程。显然,冷备份无法实现99.999%的高可用性,故在本发明中FTM采用热备份的方式。
下面参考图16描述本发明的典型数据流图。
如图16所示,示出了一个典型的数据流图,具体说明如下1.主用卡初始化成功,FTM判断系统中有无其他控制卡,若无则将自己置为主用模式,若有则通过HBM模块和另外的控制卡进行主备协商,确定主备,并开始Heartbeat通信,而协议相关单元完成在FTM模块的通信库函数注册。
2.主用卡上的FTM通过和管理单元(SM)接口,判断目前协议栈的运行情况,如果工作在非路由信令模式,则FTM工作在部分同步(Part-SyncMode)模式;如果工作在路由信令模式,则首先判断邻居节点是否支持协议扩展(Protocol Extension Mode)功能,如果是,则FTM工作在协议扩展模式;如果否,则工作在完全同步方式(Full-Sync Mode);3.备用卡初始化成功后,判断系统中是否有其他控制卡,如果没有则将自己置为主用模式;否则,则同步HBM模块和主用卡通信,并请求批量更新(Bulk-Update Request)。
4.主用卡收到批量同步请求后,开始进行批量更新操作,将通过批量更新消息,将所需同步的消息(具体同步内容由FTM的工作模式决定)发送到备用卡,而备用卡收到每一个消息,将进行确认,直至结束。如果是部分同步模式下,只需同步配置管理消息和路由转发表目;而在完全同步时,需要同步和每个协议相关的状态消息。
5.完成批量更新后,主用备用之间开始动态更新过程。动态更新的内容包括4中所涉及的内容。需要注意的是,如果工作在完全同步模式时,必须在前一个更新消息得到确认后,主用才能处理状态同步过程。
6.FDM通过软硬件两种方式来监视系统硬件的状态,如果出现Hold Timer超时,或者系统的硬件管理总线产生硬件故障中断或告警,FDM将通告FTM,并开始故障恢复过程。
7.如果是备用发生故障,主用停止和备用的Heartbeat过程,同时产生网管系统告警。而如果主用发生故障,则备用进行故障恢复过程。如果FTM工作在部分同步和完全同步模式,则备用只需要接替系统的管理权即可;而如果FTM工作在协议扩展模式下,备用则需要首先接替系统管理权,然后和邻居重新建立起邻接关系,并完成协议状态同步。换句话说,在协议扩展方式下,当主用设备出现故障时,备用设备使用原有的路由信息进行数据转发;而当备用设备重新和对端节点建立起邻接关系后,才使用新学习的的路由信息的转发。
下面描述本发明的上述数据网络设备的应用实例,即在武汉烽火网络公司的MAISP-8000上的具体应用。
武汉烽火网络公司研制的MAISP-8000是定位于城域网汇聚层和主干层的路由交换设备,它支持多种接口种类和具有灵活的业务生成能力。当MAISP-8000定位于城域网汇聚层的网络设备时,它主要完成对城域网中接入层上联链路的汇接(Metro Aggregation),在用户侧能够接入Fast Ethernet、Gigabit Ethernet(千兆以太网)和低速ATM(异步传输模式)等信号,并提供智能业务生成(Service Creation)功能,为运营商提供各种增值功能,而在网络层通过GE(千兆以太网)或POS(SDH上的分组)和城域网主干层设备相连。此外,MAISP-8000也可以通过POS接口和SDH(同步数字系列)本地环连接,或者通过GE组成环形或星形网络,组成城域网的主干,并通过OC-48 POS和主干网设备相连。
从组网的需求来看,MAISP-8000上需要实现RIP(路由信息协议)和OSPF(开放最短路径优先)等域内协议和BGP-4等域间协议,在链路层支持PPP(点对点协议)、Ethernet(以太网)、LAPS(链路存取协议-SDH)和HDLC(高级数据链路控制)等协议。从应用的角度来说,MAISP-8000能够提供实现单播、组播和MPLS转发,并提供NAT(网络地址转换)、Firewall(防火墙)、VPN(虚拟个人网络)、Virtual Router(虚拟路由器)和移动IP等应用。此外,考虑到目前国内接入层的组网方式,MAISP-8000上该能够提供二层应用(VLAN(虚拟局域网))的支持。作为提供给运营商的增值功能,MAISP-8000目前可以提供基于端口和PPPoE Session(以太网点对点会话)的带宽限制和QoS(服务质量)保证。从对用户的管理角度来说,MAISP-8000目前可以提供基于PPPoE(以太网点对点会话),的认证方式,并能通过Radius(远程验证接入用户服务)来实现对用户流量的计费。此外,还支持VLAN+IP+MAC(媒体接入控制)的三级绑定和Web认证。
MAISP-8000的机架采用工业标准的19英寸机箱,盘位间距为25.4mm,总共16个槽位,其中主控CPU和交换盘占用7号和8号槽位,为1+1的备份,而剩余14个槽位提供给线卡使用,线卡为9U。
图17显示出本发明的应用的逻辑视图。图中,实线箭头代表高速数据总线,虚线箭头代表高速控制总线。其中,高速的数据总线提供大容量的数据通道,而控制总线中提供了管理消息的通道,并提供了监控硬件状态的Health#、Present#和Alarm#等信号。整个系统采用3∶1的风扇备份和1∶1的电源备份,提供了硬件的高可用性冗余支持。
此外,MAISP-8000采用了控制和转发分离的体系结构,其中控制和管理功能运行在主控CPU上,它上面运行了故障检测模块(FDM)、容错模块(FTM)以及和每个协议相关的协议相关单元(PSE),实现主用和备用之间的故障检测和恢复。而线卡采用了基于网络处理器转发的体系架构,如图18,在每个线卡的核心为一个高性能的网络处理器,它在SRAM和SDRAM中维护有全局的转发消息库(FIB),因此在主备切换过程中,只要有流量进入,仍能进行正常的转发。
综上所述,由于MAISP-8000是定位于运营商的电信级设备,它采用了冗余的硬件体系结构和转发和控制分离的实现方案,并实现了本发明的软硬接合的故障检测方式和自适应的保护和恢复方式,实现了以下功能 1+1主备倒换机制——采用软硬结合的方式对故障进行检测。通过Heartbeat协议和背板上的硬件管理信号,针对控制CPU卡实现主、备卡间的发现和协商;主、备线卡间的信息同步和热备份;对于主、备线卡故障(软件失效、硬件失效)的发现、通告和处理(如倒换和数据平滑等);通过网管控制主、备间的强制热倒换和数据平滑; N+1主备倒换机制——针对线卡实现主、备线卡间的发现和协商;主、备线卡间的信息同步和热备份;对于主、备线卡故障(软件失效、硬件失效、热插拔)的发现、通告和处理;通过网管控制主、备间的强制热倒换和数据平滑; 热插拔机制——实现线卡热插拔过程中通告、发现、类型识别和信息学习,针对不同类型的线卡都需要有不同的处理,以保证业务的不间断 在线升级机制——针对主控卡和线卡保证在升级软件的过程中,不会发生业务中断,保证设备的高可靠性 控制和转发分离——采用了基于网络处理器转发的体系结构,实现了控制和转发的分离,保证了在主用和备用切换的过程中,保证数据流的转发。
自适应的恢复和保护方式——如果即当设备工作在非路由信令模式(不运行路由和信令协议,但可以运行静态路由和二层协议)时,采用一种轻量级(Light-weight Level)的部分同步(Part Sync)方式,即实现主备用节点的配置消息(包括运行的配置文件和存储在存储器上的初始配置文件)和路由转发消息的同步。如果网络设备的方式为路由信令模式(需要运行路由协议或MPLS信令)时,则在设备在和对等体建立连接时,首先判断对方是否具备路由信令的协议扩展能力,如果具备则采用了协议扩展方式进行保护,如果没有则采用完全状态同步的方式进行保护。
尽管参考本发明的优选实施例具体展示和描述了本发明,但是本领域一般技术人员应该明白,在不脱离所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种修改。
权利要求
1.一种数据网络设备管理控制方法,所述数据网络设备具有主用装置和备用装置,该方法包括检测该数据网络设备是在非路由信令模式下运行还是在路由信令模式下运行;如果该数据网络设备在非路由信令模式下运行,则采用部分同步方式进行在主用装置和备用装置之间的保护和恢复;如果该数据网络设备在路由信令模式下运行,则检测与该数据网络设备进行数据传输的其它数据网络设备是否都具备协议扩展功能,如果与该数据网络设备进行数据传输的节点都具备协议扩展功能,则采用协议扩展方式进行在主用装置和备用装置之间的保护和恢复;否则,采用状态完全同步方式进行在主用装置和备用装置之间的保护和恢复。
2.如权利要求1所述的数据网络设备管理控制方法,还包括主用装置和备用装置通过心跳机制以软件方式互相检测对方是否正常工作;同时,通过背板上的硬件管理信号以硬件方式检测硬件改变或故障。
3.如权利要求2所述的数据网络设备管理控制方法,还包括当主用装置发生故障时,备用装置切换为新主用装置,并接替原主用装置的工作;当备用装置发生故障时,主用装置进行相应的故障恢复操作,并停止对备用装置的同步更新。
4.如权利要求3所述的数据网络设备管理控制方法,当在协议扩展方式下主用装置发生故障时,该方法还包括新主用装置与所述数据网络设备的对等数据网络设备重新建立对等关系,并从所述对等数据网络设备接收与相应协议相关的路由信息库。
5.如权利要求3所述的数据网络设备管理控制方法,还包括选择优先处理以软件方式检测到的故障还是优先处理以硬件方式检测到的故障。
6.如权利要求2所述的数据网络设备管理控制方法,其中,在所述心跳机制下,主用装置和备用装置周期性地交换保持存活消息,当主用装置和备用装置之一在预定时间内没有收到来自主用装置和备用装置中的另一个装置的保持存活消息时,确定所述另一个装置发生故障;而在所述硬件方式下,通过实时中断方式或定时轮询方式对硬件信号进行监视,以确定主用装置和备用装置是否在位、是否出现故障。
7.如权利要求1所述的数据网络设备管理控制方法,其中,在部分同步方式下,只在主用装置上管理配置消息或路由转发消息发生改变时,才在主用装置和备用装置之间执行管理配置消息和路由转发消息的同步。
8.如权利要求1所述的数据网络设备管理控制方法,其中,在状态完全同步方式下,协议状态发生任何变化时,都执行主用装置和备用装置之间管理配置消息和路由转发消息的同步。
9.如权利要求1所述的数据网络设备管理控制方法,其中,在协议扩展方式下,当协议层内部状态发生变化时,主用装置向备用装置发送更新消息,备用装置响应于该更新消息而改变内部协议的数据结构,以实现与主用装置的同步。
10.如权利要求1所述的数据网络设备管理控制方法,其中,当正常工作时,由主用装置对备用装置进行动态更新;而当主用装置发现备用装置刚启动时,执行批量更新。
11.如权利要求1所述的数据网络设备管理控制方法,其中,主用装置和备用装置之间执行热备份。
12.如权利要求1所述的数据网络设备管理控制方法,其中,在所述数据网络设备的控制装置上统一维护路由转发消息,而在所述数据网络设备的各个线路接口卡上保存转发消息库。
13.如权利要求1所述的数据网络设备管理控制方法,其中,所述数据网络设备的转发平面和控制平面相分离,并且所述主用装置和备用装置分别是所述数据网络设备中运行协议的主用部件和备用部件。
14.一种与其它节点进行数据传输的数据网络设备,包括至少一个主用装置和至少一个备用装置,所述数据网络设备包括工作模式获取装置,用于获取该数据网络设备的工作模式;协议扩展功能判断装置,用于判断与该数据网络设备进行数据传输的其它节点是否都具有协议扩展功能;保护方式确定装置,根据所述工作模式获取装置所获取的工作模式和所述协议扩展功能判断装置的判断结果,确定以何种方式进行在主用装置和备用装置之间的保护和恢复;部分同步保护装置,以部分同步方式执行所述保护和恢复;协议扩展保护装置,以协议扩展方式执行所述保护和恢复;状态完全同步保护装置,以状态完全同步方式执行所述保护和恢复,其中,如果所述工作模式为非路由信令模式,则所述保护方式确定装置确定由部分同步保护装置执行所述保护和恢复,如果所述工作模式为路由信令模式,则保护方式确定装置指示所述协议扩展功能判断装置执行所述判断,如果判定所述其它节点都具备协议扩展功能,则所述保护方式确定装置确定由协议扩展保护装置执行所述保护和恢复,如果判定所述其它节点并不都具有协议扩展功能,则所述保护方式确定装置确定由状态完全同步保护装置执行所述保护和恢复。
15.如权利要求14所述的数据网络设备,还包括故障检测模块,所述故障检测模块包括心跳机制模块,用于在主用装置和备用装置之间周期性地交换保持存活消息,当主用装置和备用装置之一在预定时间内没有收到来自主用装置和备用装置中另一个装置的保持存活消息时,确定所述另一个装置发生故障;硬件管理器,通过实时中断方式或定时轮询方式对硬件信号进行监视,以确定主用装置和备用装置是否在位、是否出现故障。
16.如权利要求15所述的数据网络设备,还包括故障处理装置,用于接收故障检测模块所通告的故障,并进行相应的故障处理,其中,当检测到主用装置发生故障时,故障处理装置将备用装置切换为新主用装置,并接替原主用装置的工作;当检测到备用装置发生故障时,故障处理装置进行相应的故障恢复操作,并停止对备用装置的同步和更新。
17.如权利要求14所述的数据网络设备管理控制方法,其中,在部分同步方式下,部分同步保护装置只在主用装置上管理配置消息或路由转发消息发生改变时,才在主用装置和备用装置之间执行管理配置消息和路由转发消息的同步。
18.如权利要求14所述的数据网络设备管理控制方法,其中,在状态完全同步方式下,状态完全同步保护装置在协议状态发生任何变化时,都执行主用装置和备用装置之间管理配置消息和路由转发消息的同步。
19.如权利要求14所述的数据网络设备管理控制方法,其中,在协议扩展方式下,协议扩展保护装置在协议层内部状态发生变化时,使主用装置向备用装置发送更新消息,并使备用装置响应于该更新消息而改变内部协议的数据结构,以实现与主用装置的同步。
20.如权利要求14所述的数据网络设备,还包括动态更新装置,用于在正常工作时,对备用装置进行动态更新;以及批量更新装置,用于在主用装置发现备用装置刚启动时,执行批量更新。
21.如权利要求14所述的数据网络设备,其中,所述数据网络设备的转发平面和控制平面相分离,并且所述主用装置和备用装置分别是所述数据网络设备中运行协议的主用部件和备用部件。
全文摘要
本发明提供了一种数据网络设备及其管理控制方法。在故障检测上采用了软件和硬件相结合的方式,提高了故障检测的速度和精度。而在主备保护和恢复的方式上,采用了自适应的主备保护和恢复方式。具体说来,当设备运行在非路由信令模式时,采用一种轻量级的部分同步方式,而运行在路由信令模式时,首先判断邻接节点是否都具备协议扩展功能,如果具备则采用协议扩展方式进行主备保护,否则才采用状态完全同步方式。和现有方式相比,本发明系统开销更小、适用环境更广、灵活性更高,因此大大提高了设备的高可用性。本发明适用于目前和未来的宽带Ipv4和Ipv6网络中的接入层、汇聚层和骨干层等二三层路由交换设备,也适用于无线分组网中的数据网络设备。
文档编号H04L12/24GK1897538SQ20051008361
公开日2007年1月17日 申请日期2005年7月13日 优先权日2005年7月13日
发明者吉萌, 余少华 申请人:武汉烽火网络有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1