检测缺省网关状态的方法及系统的制作方法

文档序号:7556178阅读:230来源:国知局
专利名称:检测缺省网关状态的方法及系统的制作方法
技术领域
本发明涉及网络设备工作状态的检测,特别涉及一种检测网关状态的方法及系统。
背景技术
Internet网络一般划分为若干个IP子网,交换机和路由器则是连接多个IP子网的网络设备,路由器能将不同的IP子网之间的数据包进行“地址翻译”和选路,然后由交换机再对数据包进行交换,以使多个IP子网之间能够相互“读”懂对方的数据包信息进行兼容传输,从而实现对整个网络系统中的数据包进行无阻碍传输。
网络系统中的交换机和路由器在对数据包进行转发时,都会使用路由表进行选路,而为了减小存储路由表所占用的内存空间,在交换机和路由器中通常会设置缺省路由,再由缺省路由指定一个缺省网关进行数据包的转发。
同时,为了防止设置的缺省网关在出现故障时,路由器还能及时转发数据包,就需要对缺省网关进行冗余配置,即指定另外一个优先级不同的网关作为备份缺省网关,以备当缺省网关出现故障时,能够及时切换到备份缺省网关继续进行数据包的转发。
对于交换机和路由器来说,如果缺省网关所在网络由于各种原因造成缺省网关被关机或出现其它故障时,可能将导致缺省网关不可用;在这种情况下,如果交换机和路由器无法及时得知缺省网关出现故障的情况,就不能及时切换到备份缺省网关,而是继续向出现故障的缺省网关发送数据包,这样将会造成数据包的丢失。
目前,通常采用检测设置有缺省网关的路由器或交换机等设备的端口是否工作正常,来判断缺省网关的工作状态是否正常。但是采用这种检测方法,具有很大的局限性,因为必须保证使缺省网关与路由器或交换机等设备直接相连,而且采用这种检测方法检测速度较慢,反应也不够灵敏,所以经常导致在缺省网关出现故障后,路由器或交换机不能及时切换到备份缺省网关,从而可能造成在这段未能及时切换到备份缺省网关的时间内,丢失一些需要转发的数据包,以致会降低网络系统的传输性能。

发明内容
本发明的目的在于提出一种能够及时快速检测缺省网关工作状态的方法,使缺省网关出现故障时,能够及时切换到备份缺省网关,避免数据包的丢失。
为实现上述目的,本发明提出了一种检测缺省网关状态的方法,包括下列步骤(1)有规律地向缺省网关发送请求报文;(2)判断是否能够接收到所述缺省网关返回的应答报文,如果是,则缺省网关状态正常;如果否,则缺省网关状态异常。
其中在所述步骤(2)中判断结果为否的情况下,所述步骤(2)之后还包括(21)继续有规律地向缺省网关发送请求报文;(22)判断是否能够接收到所述缺省网关返回的应答报文,如果是,则缺省网关状态恢复正常;如果否,则缺省网关状态依然异常。
相应的,本发明还提出了一种检测缺省网关状态的系统,包括定时器,用于以周期规律进行定时操作;收发模块,分别与所述定时器和缺省网关连接,用于根据所述定时器的定时操作,以周期规律向缺省网关发送请求报文,并接收缺省网关反馈回的应答报文;结果生成模块,与所述收发模块连接,用于根据收发模块是否接收到缺省网关反馈回的应答报文,来生成相应的缺省网关状态结果。
本发明的有益效果本发明提出的检测缺省网关状态的方法及系统,通过定时向缺省网关发送网间控制报文的回波请求报文,以判断是否会及时接收到相应的回波应答报文,来实现对缺省网关的工作状态进行检测。从而能够方便且及时快速的检测到缺省网关的故障情况,以便及时切换到备份缺省网关,继续进行数据包的转发,所以减少了数据包丢失现象的发生。


图1是本发明检测缺省网关状态的方法第一实施例流程图;图2是本发明检测缺省网关状态的方法第二实施例流程图;图3是本发明检测缺省网关状态的系统第一实施例组成框图;图4是本发明检测缺省网关状态的系统第二实施例组成框图。
具体实施例方式
本发明检测缺省网关状态的方法采用的主要原理是首先有规律地向缺省网关发送请求报文;接着判断是否能够接收到所述缺省网关返回的应答报文,如果判断结果为是,则缺省网关状态正常;如果判断结果为否,则缺省网关状态异常。
其中有规律地向缺省网关发送请求报文,可以采用周期规律向缺省网关发送请求报文,但不局限于周期规律,还可以采用其他如时间递增规律、或时间递减规律向缺省网关发送请求报文。
其中发送给缺省网关的请求报文可以是网间控制报文协议(ICMP,Internet Control Message Protocal)的回波请求报文;现有技术中,ICMP主要是用来进行错误信息和控制信息的传递,为设备和目的设备之间提供一种差错控制机制,使当它们在遇到差错时能把错误报告及时返回给报文源发方。因此利用上述ICMP报文的工作原理,可以设置用标准ICMP的回波请求报文和回波应答报文来检测网络设备中缺省网关的工作状态情况。但本发明检测缺省网关状态的方法也不局限于使用ICMP的回波请求报文和回波应答报文,也可以使用其他具有请求和应答功能的报文格式。
下面以周期规律向缺省网关发送ICMP的回波请求报文为例,详细说明本发明检测缺省网关状态的方法。参照图1,是本发明检测缺省网关状态的方法第一实施例流程图;该第一实施例的具体实现过程如下
步骤10,有规律地向缺省网关发送ICMP的回波请求报文,这里以采用周期规律为例进行说明,当然视具体情况,也可以相应采用其他的规律。其中采用周期规律的时间周期可以由人为预先设定,并且该时间周期是可调的,如可以从1秒到60分钟,调整步长可以为1秒,假如将采用的时间周期设置为10秒钟,则以每10秒钟向缺省网关发送一次ICMP的回波请求报文。
步骤12,判断是否能够接收到该缺省网关返回的ICMP的回波应答报文,其中判断标准这里采用判断对连续发送的多个ICMP的回波请求报文,是否能够接收到该缺省网关返回的ICMP的回波应答报文。如判断该缺省网关是否能够对连续发送的3个ICMP的回波请求报文,都没有返回一条ICMP的回波应答报文,如果不是,则缺省网关对发送的每个ICMP的回波请求报文都能够及时返回相应的ICMP的回波应答报文,或者对连续发送的3个ICMP的回波请求报文只给出1个或2个ICMP的回波应答报文,这些情况下,都转到步骤22中;如果步骤12中缺省网关对连续发送的3个ICMP的回波请求报文都没有给以返回相应的ICMP的回波应答报文,则转到步骤14中。
步骤14,在向缺省网关连续发送3个ICMP的回波请求报文后,都没有收到相应的ICMP的回波应答报文,则这时认为缺省网关的工作状态异常,即出现某些故障或者该缺省网关出现断电等情况。这种情况下,系统将切换到备份缺省网关工作,继续进行数据包的转发,并及时采取相应措施修复出现故障的该缺省网关。
步骤16,在该缺省网关出现故障期间,还可以继续以周期规律向该缺省网关发送ICMP的回波请求报文,以检测该缺省网关是否恢复正常状态的情况,上述周期的长短可以根据具体情况确定。
步骤18,判断是否能够收到该缺省网关返回的连续3个ICMP的回波应答报文,如果能够收到,则转到步骤20;如果不能,则继续转到步骤14中,继续执行步骤14至步骤18。其中连续返回的3个ICMP的回波应答报文相应于连续发送的3个ICMP回波请求报文,相应这3个连续的ICMP的回波应答报文的返回时间和发送ICMP的回波请求报文的周期有关。
步骤20,此时可以认为该缺省网关工作状态已经恢复正常。
步骤22,此时可以认为该缺省网关工作状态是正常的。
上述检测缺省网关状态的方法中,步骤12中的连续3个ICMP的回波请求报文和步骤18中的连续3个ICMP的回波应答报文,其中连续的报文个数可以事先人为设置,连续的报文个数是可变的,如可以从1个到连续100个之间进行选择连续报文的个数。一般情况下,以周期规律向缺省网关发送ICMP的回波请求报文,其采用的周期越长,所选取的连续报文的个数越少,以保证检测的准确性。
本发明检测缺省网关状态的方法中,其判断过程除采用上述判断对连续发送的多个ICMP的回波请求报文,看是否能够接收到该缺省网关返回的ICMP的回波应答报文之外,还可以进一步采用判断在规定时间内,看是否能够接收到所述缺省网关返回的ICMP的回波应答报文为判断标准,来检测缺省网关的工作状态。参照图2,该图是本发明检测缺省网关状态的方法第二实施例流程图;该第二实施例的具体实现过程如下步骤11,有规律地向缺省网关发送ICMP的回波请求报文,这里仍然以采用周期规律为例进行说明。
步骤13中,每发送一个ICMP的回波请求报文后,判断是否在规定时间内收到了相应的ICMP的回波应答报文,如果是,则转到步骤23;如果否,则转到步骤15。
步骤15,在向缺省网关发送一个ICMP的回波请求报文后,如果在规定时间内没有收到相应的ICMP的回波应答报文,则这时认为缺省网关的工作状态异常,即出现某些故障或者该缺省网关出现断电等情况。这种情况下,系统将切换到备份缺省网关工作,继续进行数据包的转发,并及时采取相应措施修复出现故障的该缺省网关。
步骤17,在缺省网关工作状态异常期间,可以继续向缺省网关发送ICMP的回波请求报文,以检测该缺省网关恢复正常状态的情况。
步骤19,判断每发送一个ICMP的回波请求报文后,是否能在规定时间内收到相应的ICMP的回波应答报文,如果是,则转到步骤21;如果否,则转回步骤15,继续执行步骤15至步骤19。
步骤21,此时可以认为该缺省网关工作状态由异常恢复正常。
步骤23,此时可以认为该缺省网关工作状态是正常的。
上述检测缺省网关状态的方法第二实施例中,步骤13中和步骤19中所述的规定时间也可以人为事先设置,如规定时间可以在1秒至120秒之间进行选择。一般情况下,以周期规律向缺省网关发送ICMP的回波请求报文,其采用的周期越短,所选取的规定时间也就越短,以保证检测的准确性。
上述检测缺省网关状态的方法中,两个实施例所述ICMP的回波请求报文是ICMP协议中的类型为8,代码为0,顺序号从1开始递增,填充的数据长度是32字节或更长,数据内容可以全为0,或全为1或者是有特定意义的英文字母的编码;所述ICMP的回波应答报文是ICMP协议中的类型为0,代码为0,顺序号也对应ICMP的回波请求报文从1开始递增,填充的数据长度相应是32字节或更长,数据内容也可以相应全为0,或全为1或者是有特定意义的英文字母的编码。
相应的,本发明还同时提出了一种相应的检测缺省网关状态的系统,参照图3,该图是本发明检测缺省网关状态的系统第一实施例组成框图。该检测系统的第一实施例是用于判断接收到的缺省网关反馈回的应答报文的个数,来检测缺省网关工作状态的,其组成框图中包括定时器100、收发模块110、计数器130、第一比较器140、第一存储器150和结果生成模块160,此外还包括检测对象缺省网关120。其中各个组成部分的工作过程及其相互之间的工作联系如下定时器100,因为本发明检测缺省网关的方法是采用有规律地向缺省网关发送请求报文的,而进一步可以采用周期规律发送。所以这里定时器100用于预先设置定时功能,每到一个周期时间时,都会向收发模块110发送一指示信号,以指示收发模块110向缺省网关120发送请求报文;如这里可以采用周期为10秒钟向缺省网关120发送请求报文,则定时器每计时到10ms的时候,都会向收发模块110发送一指示信号,以指示收发模块110向缺省网关120发送请求报文(请求报文如上所述,可以采用最常用的ICMP的回波请求报文)。
收发模块110,分别与定时器100和缺省网关120连接,用于每次接收到定时器100发来的指示信号后,响应每个指示信号,并向缺省网关120发送请求报文;同时收发模块110还用于接收缺省网关120及时反馈回的每个应答报文(应答报文如上所述,可以相应采用最常用的ICMP的回波应答报文)。
计数器130,分别与定时器100和收发模块110连接,用于根据定时器100的定时操作,每经过一个周期时间,进行加一操作;同时收发模块110每次接收到缺省网关反馈回应答报文时,都触发计数器130进行清零操作。如定时器100每到一个周期时间,都会发送给计数器130一个信号,计数器130每接到定时器100发来的信号,都进行加1操作,再没有接收到收发模块110发来的清零命令前,该计数器130会以上述规律一直进行累加操作;只有当收发模块110接收到缺省网关120反馈回的应答报文后,收发模块110才会发送给计数器130清零命令,该计数器130会响应收发模块110发来的清零命令,进行清零操作。
第一存储器150,用于预先存储一正数值;其中这个正数值相应于本发明检测缺省网关方法中连续报文的个数,如这个正数值可以是自然数3;第一比较器140,分别与计数器130和第一存储器150连接,用于实时将计数器130的计数值和预先存储在第一存储器150的正数值进行比较,并实时将比较结果发送到结果生成模块160,以使结果生成模块160能够根据比较结果来生成相应的缺省网关状态结果。如第一比较器140接收到计数器130的计数值为4时,而如上述第一存储器150存储的正数值为3,则第一比较器140将得到计数值≥存储值的比较结果;而如果第一比较器140接收到计数器130的计数值为0时,则第一比较器140将得到计数值<存储值的比较结果;然后第一比较器140实时将比较结果发送到下述的结果生成模块160中。
结果生成模块160,与第一比较器140连接,用于根据第一比较器140的比较结果,来生成相应的缺省网关状态结果。如结果生成模块160接收到第一比较器140发来的比较结果为计数值≥存储值,则可以生成缺省网关120工作状态异常的结果;而如果结果生成模块160接收到第一比较器140发来的比较结果为计数值<存储值,则可以生成缺省网关120工作状态正常的结果。
上述本发明检测缺省网关状态的系统第一实施例中,其工作原理是利用计数器130对每经过一个周期进行计数加1操作,再利用计数结果值和预先存储的正整数值进行比较,根据比较结果来得到缺省网关的工作状态情况。因为收发模块110每次接收到缺省网关反馈回的应答报文后,都会控制计数器130进行清零操作,以使计数值小于存储数值,结果生成模块160会根据这个比较结果生成缺省网关工作状态正常的结果;而如果收发模块110在连续发送了几个请求报文后,都没有收到缺省网关反馈回的对应的应答报文后,则不会控制计数器130进行清零操作,计数器130在没有进行清零操作期间,一直进行加1操作,一直到计数值等于超过预先存储的正整数值时,则可以认为缺省网关在连续发送的多个请求报文后都没有回应应答报文,则可以生成缺省网关工作状态异常的结果。
参照图4,该图是本发明检测缺省网关状态的系统第二实施例组成框图。该检测系统的第二实施例是用于判断是否能够在规定时间内接收到的缺省网关反馈回的应答报文,来检测缺省网关工作状态的。其组成框图中包括定时器100、收发模块110、计时器200、第二比较器210、第二存储器220和结果生成模块160,此外还包括检测对象缺省网关120。其中各个组成部分的工作过程及其相互之间的工作联系如下其中定时器100、收发模块110的功能及其连接关系同上述本发明检测缺省网关状态的系统第一实施例中叙述,这里不再赘述。
计时器200,分别与定时器100和收发模块110连接,用于当定时器100到达一个周期时间点时,开始计时操作,也就是从收发模块110向缺省网关发送每个请求报文时,开始计时,以得到收到缺省网关反馈回的相应的应答报文的时间长度。
第二存储器220,用于预先存储一时间值;其中这个时间值相应于本发明检测缺省网关方法中的规定时间,如这个时间值可以是10ms。
第二比较器210,分别与计时器200和第二存储器220连接,用于实时将计时器200的计时值和预先存储在第二存储器220的时间值进行比较,并实时将比较结果发送到结果生成模块160,以使结果生成模块160能够根据比较结果来生成相应的缺省网关状态结果。如第二比较器210接收到计时器200的计时值为12ms时,而如上述第二存储器220存储的时间值为10ms,则第二比较器210将得到计时值≥存储时间值的比较结果;而如果第二比较器210接收到计时器200的计时值为5ms时,则第二比较器210将得到计时值<存储时间值的比较结果;然后第二比较器210实时将比较结果发送到下述的结果生成模块160中。
结果生成模块160,与第二比较器210连接,用于根据第二比较器210的比较结果,来生成相应的缺省网关状态结果。如结果生成模块160接收到第二比较器210发来的比较结果为计时值≥存储时间值,则可以生成缺省网关120工作状态异常的结果;而如果结果生成模块160接收到第二比较器210发来的比较结果为计时值<存储时间值,则可以生成缺省网关120工作状态正常的结果。
上述本发明检测缺省网关状态的系统第二实施例中,其工作原理是利用计时器200对收发模块110发送每一个请求报文给缺省网关120,到接收到缺省网关120反馈回相应的应答报文的时间长度,再将该时间长度和预先存储的时间值进行比较,根据比较结果来得到缺省网关的工作状态情况。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种检测缺省网关状态的方法,其特征在于,包括下列步骤(1)有规律地向缺省网关发送请求报文;(2)判断是否能够接收到所述缺省网关返回的应答报文,如果是,则缺省网关状态正常;如果否,则缺省网关状态异常。
2.根据权利要求1所述的检测缺省网关状态的方法,其特征在于,步骤(1)中所述请求报文为网间控制报文协议的回波请求报文;步骤(2)中所述应答报文为网间控制报文协议的回波应答报文。
3.根据权利要求1所述的检测缺省网关状态的方法,其特征在于,所述步骤(2)中的判断包括判断在规定时间内是否能够接收到所述缺省网关返回的应答报文;或判断对连续发送的多个请求报文,是否能够接收到所述缺省网关返回的应答报文。
4.根据权利要求1所述的检测缺省网关状态的方法,其特征在于,在所述步骤(2)中判断结果为否的情况下,所述步骤(2)之后还包括(21)继续有规律地向缺省网关发送请求报文;(22)判断是否能够接收到所述缺省网关返回的应答报文,如果是,则缺省网关状态恢复正常;如果否,则缺省网关状态依然异常。
5.根据权利要求4所述的检测缺省网关状态的方法,其特征在于,所述步骤(22)中的判断包括判断是否能够在规定时间内接收到所述缺省网关返回的应答报文;或判断是否能够接收到所述缺省网关返回的连续多个应答报文。
6.根据权利要求4所述的检测缺省网关状态的方法,其特征在于,步骤(1)和步骤(21)中所述规律为周期规律。
7.一种检测缺省网关状态的系统,其特征在于,包括定时器,用于以周期规律进行定时操作;收发模块,分别与所述定时器和缺省网关连接,用于根据所述定时器的定时操作,以周期规律向缺省网关发送请求报文,并接收缺省网关反馈回的应答报文;结果生成模块,与所述收发模块连接,用于根据收发模块是否接收到缺省网关反馈回的应答报文,来生成相应的缺省网关状态结果。
8.根据权利要求7所述的检测缺省网关状态的系统,其特征在于,所述系统还包括计数器,分别与所述定时器和收发模块连接,用于根据定时器的定时操作,每经过一个周期时间,进行加一操作;同时收发模块每次接收到缺省网关反馈回应答报文时,都触发计数器进行清零操作;第一存储器,用于预先存储一正数值;第一比较器,分别与所述计数器、第一存储器和结果生成模块连接,用于实时将计数器的计数值和预先存储的正数值进行比较,以使结果生成模块能够根据计数值小于预先存储的正数值的比较结果来生成缺省网关状态正常的结果,并根据计数值大于等于预先存储的正数值的比较结果来生成缺省网关状态异常的结果。
9.根据权利要求7所述的检测缺省网关状态的系统,其特征在于,所述系统还包括计时器,分别与所述定时器和收发模块连接,用于对收发模块每发送的请求报文和相应接收到的应答报文的时间间隔进行计时,并根据定时器的定时操作,每到达一个周期时间,进行一次清零操作;第二存储器,用于预先存储一时间值;第二比较器,分别与所述计时器、第二存储器和结果生成模块连接,用于实时将计时器的计时数值和预先存储的时间值进行比较,以使结果生成模块能够根据计时数值小于预先存储的时间值的比较结果来生成缺省网关状态正常的结果,并根据计时数值大于等于预先存储的时间值的比较结果来生成缺省网关状态异常的结果。
全文摘要
本发明公开了一种检测缺省网关状态的方法及其系统,所述方法通过有规律地向缺省网关发送请求报文;并判断是否能够接收到所述缺省网关返回的应答报文,如果是,则缺省网关状态正常;如果否,则缺省网关状态异常来完成对缺省网关状态的检测。所述系统包括定时器,用于以周期规律进行定时操作;收发模块,用于以周期规律向缺省网关发送请求报文,并接收缺省网关反馈回的应答报文;结果生成模块,用于根据收发模块是否接收到缺省网关反馈回的应答报文,来生成相应的缺省网关状态结果。本发明检测缺省网关状态的方法及其系统能够及时快速检测到缺省网关的工作状态。
文档编号H04L12/66GK1627701SQ20031011723
公开日2005年6月15日 申请日期2003年12月8日 优先权日2003年12月8日
发明者兰保青 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1