CN103607306A - 多机热备用系统的切换方法和装置 - Google Patents
多机热备用系统的切换方法和装置 Download PDFInfo
- Publication number
- CN103607306A CN103607306A CN201310612948.8A CN201310612948A CN103607306A CN 103607306 A CN103607306 A CN 103607306A CN 201310612948 A CN201310612948 A CN 201310612948A CN 103607306 A CN103607306 A CN 103607306A
- Authority
- CN
- China
- Prior art keywords
- gateway
- process status
- gateways
- default
- monitoring
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种多机热备用系统的切换方法和装置。该多机热备用系统的切换方法包括:监测预设网关组内多个网关的进程状态;通过多个网关之间的状态同步线路对多个网关进行进程状态同步;通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关;以及如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关。通过本发明,解决了多机热备用系统的协商选举机制比较复杂的问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种多机热备用系统的切换方法和装置。
背景技术
在相关技术中提供了方案1,在方案1中,同一网段内的所有主机往往都设置有一条相同的、以唯一网关为下一跳的缺省路由。主机发往其他网段的报文通过缺省路由进行转发,进而实现了主机与外部网络的通信。当网关发生故障时,本网段内所有以上述唯一网关为缺省路由的主机将无法与外部网络进行通信,如图1所示。
以唯一网关为下一跳的缺省路由为用户的配置提供了方便,但是对上述缺省路由设备提出了很高的稳定性要求。在相关技术中还提供了方案2,方案2通过增加缺省路由中网关的数目来提高缺省路由设备的可靠性,而如何在多个网关之间进行选路成为该方案需要解决的问题。目前,市场上主要的双机热备系统进行选路时所采用的软件协议主要有虚拟路由器冗余协议(Virtual Router Redundancy Protocol,简称VRRP)、热备份路由器协议(Hot Standby Router Protocol,简称HSRP)和网关负载均衡协议(Gateway Load Balancing Protocol,简称GLBP)三种协议。以上三种协议都将可以承担网关功能的一组路由器加入到备份组中,形成一台虚拟路由器,由协议的选举机制决定哪台路由器承担转发任务,局域网内的主机只需将虚拟路由器配置为缺省网关,当承担转发任务的路由器出现故障时,备份路由器可以快速承担转发任务。
例如,网关1和网关2组成一个虚拟网关,该虚拟网关对应一个IP地址。同一网段内的主机将虚拟网关设置为缺省网关。网关1和网关2中优先级高的路由器为主网关Master,承担网关的功能,优先级低的路由器为备用网关Backup。这样,当Master出现故障时,Backup快速接替Master执行相应的转发任务,如图2所示。
在方案2中,多个网关之间进行选路是通过组播报文的协商选举实现的。具体地,缺省路由中所有网关的所有业务接口必须不停的发送组播报文,因而这种协商选举机制比较复杂,并且给网络制造了很多垃圾数据,从而占用了很多网络带宽,进而造成了网络资源的浪费。
例如,如图3所示,网关1和网关2分别在2、3、4、5四条(实际环境可能更多)业务线路上定期发送组播报文来进行主网关的选举,而1线路只进行配置和状态的同步。
针对相关技术中多机热备用系统的协商选举机制比较复杂的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种多机热备用系统的切换方法和装置,以解决多机热备用系统的协商选举机制比较复杂的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种多机热备用系统的切换方法。该多机热备用系统的切换方法包括:监测预设网关组内多个网关的进程状态;通过多个网关之间的状态同步线路对多个网关进行进程状态同步;通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关;以及如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关。
进一步地,在监测预设网关组内各网关的进程状态之后,该切换方法还包括:获取预设网关组内多个网关的预设进程状态;判断预设网关组内多个网关中是否存在监测得到的进程状态与预设进程状态存在偏差的网关;以及如果确定预设网关组内多个网关中存在监测得到的进程状态与预设进程状态存在偏差的网关,则将存在偏差的网关从所述预设网关组内删除。
进一步地,预设网关组内包含有第一网关和第二网关,监测预设网关组内多个网关的进程状态包括:第一网关监测预设网关组内第一网关的进程状态,通过多个网关之间的状态同步线路对多个网关进行进程状态同步包括:第二网关通过第一网关和第二网关之间的状态同步线路与第一网关保持进程状态同步,通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关包括:第二网关通过监测得到的第一网关的进程状态判断第一网关的进程状态是否为工作状态并且工作状态为故障状态,如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关包括:如果判断出第一网关的进程状态为工作状态并且工作状态为故障状态,则将第一网关切换为第二网关。
进一步地,第二网关通过第一网关和第二网关之间的状态同步线路与第一网关保持进程状态同步包括:第一网关获取第二网关的IP地址;第一网关根据第二网关的IP地址并通过状态同步线路将监测得到的第一网关的进程状态发送至第二网关;以及第二网关通过接收第一网关的进程状态与第一网关保持进程状态同步。
进一步地,第二网关包括多个子网关,在第一网关获取第二网关的IP地址之前,该切换方法还包括:第一网关构造第一网关的进程状态的结构体,其中,结构体用于存储进程状态信息;第一网关获取多个子网关的优先级;以及第一网关根据所述结构体和优先级构造UDP数据包。
进一步地,第一网关获取所述第二网关的IP地址包括:第一网关根据优先级获取多个子网关中优先级最高的子网关的IP地址,第一网关根据第二网关的IP地址并通过状态同步线路将监测得到的第一网关的进程状态发送至第二网关包括:第一网关根据多个子网关中优先级最高的子网关的IP地址将UDP数据包发送至优先级最高的子网关,第二网关通过接收第一网关的进程状态与第一网关保持进程状态同步包括:优先级最高的子网关接收UDP数据包;优先级最高的子网关根据接收到的UDP数据包确定优先级最高的子网关的进程状态为第一网关的进程状态。
进一步地,第二网关通过监测得到的第一网关的进程状态判断第一网关的进程状态是否为工作状态并且工作状态为故障状态包括:优先级最高的子网关判断UDP数据包是否为进程状态同步报文;如果判断出UDP数据包为进程状态同步报文,则优先级最高的子网关解析UDP数据包;优先级最高的子网关通过解析UDP数据包判断所述第一网关是否为主网关;如果判断出第一网关为主网关,则优先级最高的子网关判断优先级最高的子网关是否正常,其中,优先级最高的子网关为备用网关;以及如果判断出优先级最高的子网关正常,则优先级最高的子网关判断第一网关是否正常。
为了实现上述目的,根据本发明的另一方面,提供了一种多机热备用系统的切换装置。该多机热备用系统的切换装置包括:监测单元,用于监测预设网关组内多个网关的进程状态;同步单元,用于通过多个网关之间的状态同步线路对多个网关进行进程状态同步;第一判断单元,用于通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关;以及切换单元,用于如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关。
进一步地,该多机热备用系统的切换装置还包括:第一获取单元,用于在监测预设网关组内各网关的进程状态之后,获取预设网关组内多个网关的预设进程状态;第二判断单元,用于判断预设网关组内多个网关中是否存在监测得到的进程状态与预设进程状态存在偏差的网关;以及删除单元,用于如果确定预设网关组内多个网关中存在监测得到的进程状态与预设进程状态存在偏差的网关,则将存在偏差的网关从预设网关组内删除。
进一步地,预设网关组内包含有第一网关和第二网关,监测单元还用于通过第一网关监测预设网关组内第一网关的进程状态,同步单元还用于通过第二网关通过第一网关和第二网关之间的状态同步线路与第一网关保持进程状态同步,第一判断单元还用于通过第二网关通过监测得到的第一网关的进程状态判断第一网关的进程状态是否为工作状态并且工作状态为故障状态,切换单元还用于如果判断出第一网关的进程状态为工作状态并且工作状态为故障状态,则将第一网关切换为所述第二网关。
通过本发明,采用监测预设网关组内多个网关的进程状态;通过多个网关之间的状态同步线路对多个网关进行进程状态同步;通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关;以及如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关,解决了多机热备用系统的协商选举机制比较复杂的问题,进而达到了简化多机热备用系统的协商选举机制的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的单个网关的局域网组网示意图;
图2是根据相关技术的两个网关的局域网组网示意图;
图3是根据相关技术的两个网关之间进行协商选举的示意图;
图4是根据本发明第一实施例的多机热备用系统的切换方法的流程图;
图5是根据本发明第二实施例的多机热备用系统的切换方法的流程图;
图6是根据本发明第三实施例的多机热备用系统的切换方法的流程图;
图7是根据本发明第一实施例的多机热备用系统的切换装置的示意图;以及
图8是根据本发明第二实施例的多机热备用系统的切换装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本领域的技术人员更好的理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,在本领域普通技术人员没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
根据本发明的实施例,提供了一种多机热备用系统的切换方法,该多机热备用系统的切换方法用于根据多个网关的进程状态对多个网关进行协商选举以实现多个网关之间的相互切换。该多机热备用系统的切换方法可以运行在计算机处理设备上。
需要说明的是,本发明的网关可以为交换机、防火墙和路由器等。
图4是根据本发明第一实施例的多机热备用系统的切换方法的流程图。
如图4所示,该方法包括如下的步骤S401至步骤S404:
步骤S401,监测预设网关组内多个网关的进程状态。
在本发明实施例中,监测预设网关组内多个网关的进程状态可以为每个网关监测自身的进程状态,例如,网关A为预设网关组内的网关,则网关A可以监测网关A的进程状态。其中,预设网关组为虚拟网关,并且预设网关组对应的网络协议(InternetProtocol,简称IP)地址,在本发明实施例中,预设网关组内包括两个或者两个以上的网关,预设网关组内正在执行网关功能的网关为主网关,其他网关为备用网关,主网关使用预设网关组对应的IP地址。网关的进程状态包括网关的工作状态和切换状态,其中,网关的工作状态又包括正常工作状态和故障状态。在本发明实施例中,由于网关的进程状态通过网关的配置模块进行配置,并且每个进程状态对应网关的一个功能,因此监测预设网关组内多个网关的进程状态,优选地,可以仅仅监测已经开启的功能对应的进程状态,这样,大大减少了网关的负担,提高了监测效率。
需要说明的是,监测预设网关组内多个网关的进程状态可以是定期监测预设网关组内多个网关的进程状态,也可以是实时监测预设网关组内多个网关的进程状态。
步骤S402,通过多个网关之间的状态同步线路对多个网关进行进程状态同步。
例如,假设预设网关组内包括网关A和网关B,网关A和网关B之间设置有状态同步线路,网关A可以通过状态同步线路将网关A监测到的网关A的进程状态同步给网关B,网关B可以通过状态同步线路将网关B监测到的网关B的进程状态同步给网关A。这样,当进行主备网关的切换时可以保证备用网关能够代替主网关执行主网关正在执行的任务。
步骤S403,通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关。
在本发明实施例中,进程状态为工作状态的网关可以为主网关,通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关既可以为通过监测得到的预设网关组内主网关的进程状态判断主网关的进程状态是否为故障状态。当确定主网关的进程状态为故障状态时,则执行步骤S404,否则不进行任何处理。
步骤S404,将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关。
例如,假设预设网关组内包括网关A、网关B和网关C,并且经过判断得出作为主网关的网关A的进程状态为故障状态,则可以将网关A切换为网关B,或者可以将网关A切换为网关C,可以将网关A切换为网关B和网关C。
通过本发明,预设网关组内的多个网关采用状态同步线路进行进程状态的传输实现了预设网关组内的多个网关的进程状态的同步,并且在主网关故障时,通过该状态同步线路实现了预设网关组内主网关和备用网关的协商选举,进而达到了主网关和备用网关进行切换的目的。另外,只通过一个单独的状态同步线路进行网关设备的进程状态同步,而不再通过所有的业务线路进行大量组播报文的转发以协商选举网关,这样不仅提高了网关设备的稳定性,减少了上下游设备的负载,减轻了对上下游设备的依赖,而且实现了协商选举机制简单、灵活化,解决了多机热备用系统的协商选举机制比较复杂的问题,进而达到了简化多机热备用系统的协商选举机制的效果。
图5是根据本发明第二实施例的多机热备用系统的切换方法的流程图。
如图5所示,该多机热备用系统的切换方法包括如下的步骤S501至步骤S507,该实施例可以作为图4所示实施例的优选实施方式。
步骤S501,同图4所示实施例的步骤S401,在此不再赘述。
步骤S502,获取预设网关组内多个网关的预设进程状态。
在本发明实施例中,由于预设网关组内多个网关的预设进程状态通过配置模块进行配置,因此可以分别从预设网关组内多个网关的配置模块获取各个网关的进程状态,并且获取到的各个网关的进程状态可以存储在进程状态列表中。需要说明的是,每个网关的进程状态可以包括一个或者多个。
步骤S503,判断预设网关组内多个网关中是否存在监测得到的进程状态与预设进程状态存在偏差的网关。
在本发明实施例中,具体地,可以将监测得到的预设网关组内每个网关的多个进程状态逐条与获取的该网关的每条对应的预设进程状态相比较并进行判断。其中,监测得到的进程状态为实际进程状态,当实际进程状态与对应的预设进程状态相同时,则不作处理,否则,当实际进程状态与对应的预设进程状态存在偏差时,则执行步骤S504。
步骤S504,如果确定预设网关组内多个网关中存在监测得到的进程状态与预设进程状态存在偏差的网关,则将存在偏差的网关从预设网关组内删除。
步骤S505至步骤S507,分别同图4所示实施例的步骤S402至步骤S404,在此不再赘述。
这样,通过将实际进程状态与预设进程状态存在偏差的网关提前从预设网关组内删除,避免了网关切换之后系统依旧处在故障状态而需要进行二次切换的情况,减少了主备用网关之间的切换次数,提高了网关设备的稳定性。
图6是根据本发明第三实施例的多机热备用系统的切换方法的流程图。
如图6所示,该多机热备用系统的切换方法包括如下的步骤S601至步骤S604,该实施例可以作为图4所示实施例的优选实施方式。
需要说明的是,在本发明实施例中,预设网关组内可以包含有第一网关和第二网关。该预设网关组为虚拟网关,并且该预设网关组对应的IP地址。
步骤S601,第一网关监测预设网关组内第一网关的进程状态。
在本发明实施例中,第一网关为主网关,第二网关为备用网关。需要说明的是,在步骤S601中,也可以是第一网关和第二网关分别监测预设网关组内第一网关的进程状态和第二网关的进程状态。需要说明的是,第一网关可以按照预定时间监测预设网关组内第一网关的进程状态,也可以实时监测预设网关组内第一网关的进程状态。
优选地,在本发明实施例中,第二网关可以包括多个子网关,这样,在监测到第一网关的进程状态之后,在执行下一步骤之前,该切换方法还可以包括:
步骤11,第一网关构造第一网关的进程状态的结构体,其中,结构体用于存储进程状态信息。需要说明的是,第一网关可以根据监测到的第一网关的进程状态构造结构体。
步骤12,第一网关获取多个子网关的优先级。其中,第二网关中的多个子网关预先通过标号进行优先级标记,这样,当第一网关切换为第二网关时可以是切换为优先级最高的子网关或者切换为优先级比较高的多个子网关,避免了网关在协商选举时产生竞争,提高了网关设备的稳定性。
步骤13,第一网关根据结构体和优先级构造用户数据包协议(User DatagramProtocol,简称UDP)。
步骤S602,第二网关通过第一网关和第二网关之间的状态同步线路与第一网关保持进程状态同步。
具体地,首先第一网关将监测得到的预设网关组内第一网关的进程状态通过状态同步线路发送给第二网关,然后第二网关接收第一网关发送的进程状态并将第二网关的进程状态更新为接收到的第一网关的进程状态,最终第一网关和第二网关实现了进程状态的同步。优选地,在本发明实施例中,可以通过以下方式保持第一网关和第二网关进程状态的同步:
步骤21,第一网关获取第二网关的IP地址。进一步优选地,可以在步骤13之后执行步骤21。优选地,第一网关可以根据第二网关中多个子网关的优先级获取多个子网关中优先级最高的子网关的IP地址,或者第一网关还可以根据第二网关中多个子网关的优先级获取多个子网关中优先级比较高的多个子网关的IP地址。
步骤22,第一网关根据获取的第二网关的IP地址并通过状态同步线路将监测得到的第一网关的进程状态发送至第二网关。优选地,第一网关可以根据多个子网关中优先级最高的子网关的IP地址或者多个子网关中优先级比较高的多个子网关的IP地址将UDP数据包发送至优先级最高的子网关或者优先级比较高的多个子网关。
步骤23,第二网关通过接收第一网关的进程状态与第一网关保持进程状态同步。优选地,首先优先级最高的子网关或者优先级比较高的多个子网关接收UDP数据包,然后优先级最高的子网关或者优先级比较高的多个子网关可以根据接收到的UDP数据包确定自身的进程状态为第一网关的进程状态。
步骤S603,第二网关通过监测得到的第一网关的进程状态判断第一网关的进程状态是否为工作状态并且工作状态为故障状态。
第一网关的进程状态包括一个或者多个,当第一网关的一个或者多个进程状态中有一个或者多个出现故障时,该第一网关的工作状态即为故障状态。其中,当第一网关的进程状态与预设进程状态相同时,则第一网关的进程状态为正常工作状态,否则,当第一网关的进程状态与预设进程状态不相同时,则第一网关的进程状态为故障状态。
具体地,可以通过以下方式判断第一网关的进程状态是否为故障状态:优先级最高的子网关判断UDP数据包是否为进程状态同步报文。如果判断出UDP数据包为业务报文,则直接走业务转发流程,否则如果判断出UDP数据包为进程状态同步报文,则优先级最高的子网关或者优先级比较高的多个子网关解析UDP数据包。优先级最高的子网关或者优先级比较高的多个子网关通过解析UDP数据包判断第一网关是否为主网关。如果判断出第一网关为主网关,则优先级最高的子网关或者优先级比较高的多个子网关判断优先级最高的子网关或者优先级比较高的多个子网关是否正常,其中,优先级最高的子网关或者优先级比较高的多个子网关为备用网关。如果判断出优先级最高的子网关或者优先级比较高的多个子网关正常,则优先级最高的子网关判断或者优先级比较高的多个子网关第一网关是否正常。当第一网关正常时,则直接退出,否则当第一网关不正常时,则执行步骤S604。当第一网关正常时,则发送错误报警信息。
需要说明的是,由于第一网关和第二网关可以相互发送自身的进程状态给对方,因此当接收到UDP数据包的一方为主网关设备时,则主网关设备先判断自己当前运行是否正常,如果正常则直接退出,如果不正常则将接收到的UDP数据包进行解析并判断对方的状态是否正常,如果判断出对方状态正常,则执行步骤S604,如果对方状态也不正常,则发送错误报警信息。
步骤S604,如果判断出第一网关的进程状态为工作状态并且工作状态为故障状态,则将第一网关切换为第二网关。
通过本发明实施例,第一网关和第二网关采用状态同步线路进行进程状态的同步,并且在第一网关故障时,通过该状态同步线路实现了对第二网关协商选举,进而达到了第一网关和第二网关之间进行切换的目的。另外,只通过一个单独的状态同步线路进行网关设备的进程状态同步,而不再通过所有的业务线路进行大量组播报文的转发以协商选举网关,这样不仅提高了网关设备的稳定性,减少了上下游设备的负载,减轻了对上下游设备的依赖,而且实现了协商选举机制简单、灵活化,解决了多机热备用系统的协商选举机制比较复杂的问题,进而达到了简化多机热备用系统的协商选举机制的效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本发明的实施例,提供了一种多机热备用系统的切换装置,该多机热备用系统的切换装置用于根据多个网关的进程状态对多个网关进行协商选举以实现多个网关之间的相互切换。需要说明的是,本发明实施例所提供的多机热备用系统的切换装置可以用于执行本发明实施例的多机热备用系统的切换方法,本发明实施例的多机热备用系统的切换方法也可以通过本发明实施例的多机热备用系统的切换装置来执行。
图7是根据本发明第一实施例的多机热备用系统的切换装置的示意图。
如图7所示,该装置包括:监测单元10、同步单元20、第一判断单元30和切换单元40。
监测单元10用于监测预设网关组内多个网关的进程状态。
在本发明实施例中,监测预设网关组内多个网关的进程状态可以为每个网关监测自身的进程状态,例如,网关A为预设网关组内的网关,则网关A可以监测网关A的进程状态。其中,预设网关组为虚拟网关,并且预设网关组对应的网络协议(InternetProtocol,简称IP)地址,在本发明实施例中,预设网关组内包括两个或者两个以上的网关,预设网关组内正在执行网关功能的网关为主网关,其他网关为备用网关,主网关使用预设网关组对应的IP地址。网关的进程状态包括网关的工作状态和切换状态,其中,网关的工作状态又包括正常工作状态和故障状态。在本发明实施例中,由于网关的进程状态通过网关的配置模块进行配置,并且每个进程状态对应网关的一个功能,因此监测预设网关组内多个网关的进程状态,优选地,监测单元10可以仅仅监测已经开启的功能对应的进程状态,这样,大大减少了网关的负担,提高了监测效率。
需要说明的是,监测单元10监测预设网关组内多个网关的进程状态可以是定期监测预设网关组内多个网关的进程状态,也可以是实时监测预设网关组内多个网关的进程状态。
同步单元20用于通过多个网关之间的状态同步线路对多个网关进行进程状态同步。
例如,假设预设网关组内包括网关A和网关B,网关A和网关B之间设置有状态同步线路,网关A可以通过状态同步线路将网关A监测到的网关A的进程状态同步给网关B,网关B可以通过状态同步线路将网关B监测到的网关B的进程状态同步给网关A。这样,当进行主备网关的切换时可以保证备用网关能够代替主网关执行主网关正在执行的任务。
第一判断单元30用于通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关。
在本发明实施例中,进程状态为工作状态的网关可以为主网关,第一判断单元30通过监测得到的预设网关组内多个网关的进程状态判断多个网关中是否存在进程状态为工作状态并且工作状态为故障状态的网关既可以为通过监测得到的预设网关组内主网关的进程状态判断主网关的进程状态是否为故障状态。
切换单元40用于如果多个网关中存在进程状态为工作状态并且工作状态为故障状态的网关,则将故障状态的网关切换为多个网关中除故障状态的网关之外的其他网关。
例如,假设预设网关组内包括网关A、网关B和网关C,并且经过第一判断单元30判断得出作为主网关的网关A的进程状态为故障状态,则切换单元40可以将网关A切换为网关B,或者切换单元40可以将网关A切换为网关C,或者切换单元40可以将网关A切换为网关B和网关C。
通过本发明,预设网关组内的多个网关采用状态同步线路进行进程状态的传输实现了预设网关组内的多个网关的进程状态的同步,并且在主网关故障时,通过该状态同步线路实现了预设网关组内主网关和备用网关的协商选举,进而达到了主网关和备用网关进行切换的目的。另外,只通过一个单独的状态同步线路进行网关设备的进程状态同步,而不再通过所有的业务线路进行大量组播报文的转发以协商选举网关,这样不仅提高了网关设备的稳定性,减少了上下游设备的负载,减轻了对上下游设备的依赖,而且实现了协商选举机制简单、灵活化,解决了多机热备用系统的协商选举机制比较复杂的问题,进而达到了简化多机热备用系统的协商选举机制的效果。
需要说明的是,在本发明实施例中,预设网关组内可以包含有第一网关和第二网关。该预设网关组为虚拟网关,并且该预设网关组对应的IP地址。
监测单元10还用于通过第一网关监测预设网关组内第一网关的进程状态。
在本发明实施例中,第一网关为主网关,第二网关为备用网关。需要说明的是,监测单元10还用于通过第一网关和第二网关分别监测预设网关组内第一网关的进程状态和第二网关的进程状态。需要说明的是,第一网关可以按照预定时间监测预设网关组内第一网关的进程状态,也可以实时监测预设网关组内第一网关的进程状态。
优选地,在本发明实施例中,第二网关可以包括多个子网关,该装置还可以包括第一构造单元、第二获取单元和第二构造单元。
第一构造单元用于在监测到第一网关的进程状态之后,通过第一网关构造第一网关的进程状态的结构体,其中,结构体用于存储进程状态信息。需要说明的是,第一网关可以根据监测到的第一网关的进程状态构造结构体。
第二获取单元用于通过第一网关获取多个子网关的优先级。其中,第二网关中的多个子网关预先通过标号进行优先级标记,这样,当第一网关切换为第二网关时可以是切换为优先级最高的子网关或者切换为优先级比较高的多个子网关,避免了网关在协商选举时产生竞争,提高了网关设备的稳定性。
第二构造单元用于通过第一网关根据结构体和优先级构造用户数据包协议(UserDatagram Protocol,简称UDP)。
同步单元20还用于第二网关通过第一网关和第二网关之间的状态同步线路与第一网关保持进程状态同步。
具体地,首先第一网关将监测得到的预设网关组内第一网关的进程状态通过状态同步线路发送给第二网关,然后第二网关接收第一网关发送的进程状态并将第二网关的进程状态更新为接收到的第一网关的进程状态,最终第一网关和第二网关实现了进程状态的同步。优选地,在本发明实施例中,同步单元20可以通过以下方式保持第一网关和第二网关进程状态的同步:第一网关获取第二网关的IP地址。优选地,第一网关可以根据第二网关中多个子网关的优先级获取多个子网关中优先级最高的子网关的IP地址,或者第一网关还可以根据第二网关中多个子网关的优先级获取多个子网关中优先级比较高的多个子网关的IP地址。第一网关根据获取的第二网关的IP地址并通过状态同步线路将监测得到的第一网关的进程状态发送至第二网关。优选地,第一网关可以根据多个子网关中优先级最高的子网关的IP地址或者多个子网关中优先级比较高的多个子网关的IP地址将UDP数据包发送至优先级最高的子网关或者优先级比较高的多个子网关。第二网关通过接收第一网关的进程状态与第一网关保持进程状态同步。优选地,首先优先级最高的子网关或者优先级比较高的多个子网关接收UDP数据包,然后优先级最高的子网关或者优先级比较高的多个子网关可以根据接收到的UDP数据包确定自身的进程状态为第一网关的进程状态。
第一判断单元30还用于由第二网关通过监测得到的第一网关的进程状态判断第一网关的进程状态是否为工作状态并且工作状态为故障状态。
第一网关的进程状态包括一个或者多个,当第一网关的一个或者多个进程状态中有一个或者多个出现故障时,该第一网关的工作状态即为故障状态。其中,当第一网关的进程状态与预设进程状态相同时,则第一网关的进程状态为正常工作状态,否则,当第一网关的进程状态与预设进程状态不相同时,则第一网关的进程状态为故障状态。
具体地,第一判断单元30可以通过以下方式判断第一网关的进程状态是否为故障状态:优先级最高的子网关判断UDP数据包是否为进程状态同步报文。如果判断出UDP数据包为业务报文,则直接走业务转发流程,否则如果判断出UDP数据包为进程状态同步报文,则优先级最高的子网关或者优先级比较高的多个子网关解析UDP数据包。优先级最高的子网关或者优先级比较高的多个子网关通过解析UDP数据包判断第一网关是否为主网关。如果判断出第一网关为主网关,则优先级最高的子网关或者优先级比较高的多个子网关判断优先级最高的子网关或者优先级比较高的多个子网关是否正常,其中,优先级最高的子网关或者优先级比较高的多个子网关为备用网关。如果判断出优先级最高的子网关或者优先级比较高的多个子网关正常,则优先级最高的子网关判断或者优先级比较高的多个子网关第一网关是否正常。当第一网关正常时,则直接退出,否则当第一网关不正常时,则将第一网关切换为优先级最高的子网关或者优先级比较高的多个子网关。当第一网关正常时,则发送错误报警信息。
需要说明的是,由于第一网关和第二网关可以相互发送自身的进程状态给对方,因此当接收到UDP数据包的一方为主网关设备时,则主网关设备先判断自己当前运行是否正常,如果正常则直接退出,如果不正常则将接收到的UDP数据包进行解析并判断对方的状态是否正常,如果判断出对方状态正常,则将第一网关切换为第二网关,如果对方状态也不正常,则发送错误报警信息。
切换单元40还用于如果判断出第一网关的进程状态为工作状态并且工作状态为故障状态,则将第一网关切换为第二网关。
通过本发明实施例,第一网关和第二网关采用状态同步线路进行进程状态的同步,并且在第一网关故障时,通过该状态同步线路实现了对第二网关协商选举,进而达到了第一网关和第二网关之间进行切换的目的。另外,只通过一个单独的状态同步线路进行网关设备的进程状态同步,而不再通过所有的业务线路进行大量组播报文的转发以协商选举网关,这样不仅提高了网关设备的稳定性,减少了上下游设备的负载,减轻了对上下游设备的依赖,而且实现了协商选举机制简单、灵活化,解决了多机热备用系统的协商选举机制比较复杂的问题,进而达到了简化多机热备用系统的协商选举机制的效果。
图8是根据本发明第二实施例的多机热备用系统的切换装置的示意图。
如图8所示,该实施例可以作为图7所示实施例的优选实施方式,该实施例的多机热备用系统的切换装置除了包括监测单元10、同步单元20、第一判断单元30和切换单元40之外,还包括第一获取单元50、第二判断单元60和删除单元70。
监测单元10、同步单元20、第一判断单元30和切换单元40的作用与第一实施例中的相同,在此不再赘述。
第一获取单元50用于在监测预设网关组内各网关的进程状态之后,获取预设网关组内多个网关的预设进程状态。
在本发明实施例中,由于预设网关组内多个网关的预设进程状态通过配置模块进行配置,因此第一获取单元50可以分别从预设网关组内多个网关的配置模块获取各个网关的进程状态,并且第一获取单元50获取到的各个网关的进程状态可以存储在进程状态列表中。需要说明的是,每个网关的进程状态可以包括一个或者多个。
第二判断单元60用于判断预设网关组内多个网关中是否存在监测得到的进程状态与预设进程状态存在偏差的网关。
在本发明实施例中,具体地,第二判断单元60可以将监测得到的预设网关组内每个网关的多个进程状态逐条与获取的该网关的每条对应的预设进程状态相比较并进行判断。其中,监测得到的进程状态为实际进程状态,当实际进程状态与对应的预设进程状态相同时,则不作处理。
删除单元70用于如果确定预设网关组内多个网关中存在监测得到的进程状态与预设进程状态存在偏差的网关,则将存在偏差的网关从预设网关组内删除。
这样,通过将实际进程状态与预设进程状态存在偏差的网关提前从预设网关组内删除,避免了网关切换之后系统依旧处在故障状态而需要进行二次切换的情况,减少了主备用网关之间的切换次数,提高了网关设备的稳定性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种多机热备用系统的切换方法,其特征在于,包括:
监测预设网关组内多个网关的进程状态;
通过所述多个网关之间的状态同步线路对所述多个网关进行进程状态同步;
通过监测得到的所述预设网关组内多个网关的进程状态判断所述多个网关中是否存在进程状态为工作状态并且所述工作状态为故障状态的网关;以及
如果所述多个网关中存在进程状态为工作状态并且所述工作状态为故障状态的网关,则将所述故障状态的网关切换为所述多个网关中除所述故障状态的网关之外的其他网关。
2.根据权利要求1所述的多机热备用系统的切换方法,其特征在于,在监测预设网关组内各网关的进程状态之后,所述切换方法还包括:
获取所述预设网关组内多个网关的预设进程状态;
判断所述预设网关组内多个网关中是否存在监测得到的进程状态与所述预设进程状态存在偏差的网关;以及
如果确定所述预设网关组内多个网关中存在监测得到的进程状态与所述预设进程状态存在偏差的网关,则将所述存在偏差的网关从所述预设网关组内删除。
3.根据权利要求1所述的多机热备用系统的切换方法,其特征在于,所述预设网关组内包含有第一网关和第二网关,
监测预设网关组内多个网关的进程状态包括:所述第一网关监测所述预设网关组内所述第一网关的进程状态,
通过所述多个网关之间的状态同步线路对所述多个网关进行进程状态同步包括:所述第二网关通过所述第一网关和所述第二网关之间的所述状态同步线路与所述第一网关保持进程状态同步,
通过监测得到的所述预设网关组内多个网关的进程状态判断所述多个网关中是否存在进程状态为工作状态并且所述工作状态为故障状态的网关包括:所述第二网关通过监测得到的所述第一网关的进程状态判断所述第一网关的进程状态是否为工作状态并且所述工作状态为故障状态,
如果所述多个网关中存在进程状态为工作状态并且所述工作状态为故障状态的网关,则将所述故障状态的网关切换为所述多个网关中除所述故障状态的网关之外的其他网关包括:如果判断出所述第一网关的进程状态为工作状态并且所述工作状态为故障状态,则将所述第一网关切换为所述第二网关。
4.根据权利要求3所述的多机热备用系统的切换方法,其特征在于,所述第二网关通过所述第一网关和所述第二网关之间的所述状态同步线路与所述第一网关保持进程状态同步包括:
所述第一网关获取所述第二网关的IP地址;
所述第一网关根据所述第二网关的IP地址并通过所述状态同步线路将监测得到的所述第一网关的进程状态发送至所述第二网关;以及
所述第二网关通过接收所述第一网关的进程状态与所述第一网关保持进程状态同步。
5.根据权利要求4所述的多机热备用系统的切换方法,其特征在于,所述第二网关包括多个子网关,在所述第一网关获取所述第二网关的IP地址之前,所述切换方法还包括:
所述第一网关构造所述第一网关的进程状态的结构体,其中,所述结构体用于存储进程状态信息;
所述第一网关获取所述多个子网关的优先级;以及
所述第一网关根据所述结构体和所述优先级构造UDP数据包。
6.根据权利要求5所述的多机热备用系统的切换方法,其特征在于,
所述第一网关获取所述第二网关的IP地址包括:所述第一网关根据所述优先级获取所述多个子网关中优先级最高的子网关的IP地址,
所述第一网关根据所述第二网关的IP地址并通过所述状态同步线路将监测得到的所述第一网关的进程状态发送至所述第二网关包括:所述第一网关根据所述多个子网关中优先级最高的子网关的IP地址将所述UDP数据包发送至所述优先级最高的子网关,
所述第二网关通过接收所述第一网关的进程状态与所述第一网关保持进程状态同步包括:所述优先级最高的子网关接收所述UDP数据包;所述优先级最高的子网关根据接收到的所述UDP数据包确定所述优先级最高的子网关的进程状态为所述第一网关的进程状态。
7.根据权利要求6所述的多机热备用系统的切换方法,其特征在于,所述第二网关通过监测得到的所述第一网关的进程状态判断所述第一网关的进程状态是否为工作状态并且所述工作状态为故障状态包括:
所述优先级最高的子网关判断所述UDP数据包是否为进程状态同步报文;
如果判断出所述UDP数据包为进程状态同步报文,则所述优先级最高的子网关解析所述UDP数据包;
所述优先级最高的子网关通过解析所述UDP数据包判断所述第一网关是否为主网关;
如果判断出所述第一网关为主网关,则所述优先级最高的子网关判断所述优先级最高的子网关是否正常,其中,所述优先级最高的子网关为备用网关;以及
如果判断出所述优先级最高的子网关正常,则所述优先级最高的子网关判断所述第一网关是否正常。
8.一种多机热备用系统的切换装置,其特征在于,包括:
监测单元,用于监测预设网关组内多个网关的进程状态;
同步单元,用于通过所述多个网关之间的状态同步线路对所述多个网关进行进程状态同步;
第一判断单元,用于通过监测得到的所述预设网关组内多个网关的进程状态判断所述多个网关中是否存在进程状态为工作状态并且所述工作状态为故障状态的网关;以及
切换单元,用于如果所述多个网关中存在进程状态为工作状态并且所述工作状态为故障状态的网关,则将所述故障状态的网关切换为所述多个网关中除所述故障状态的网关之外的其他网关。
9.根据权利要求8所述的多机热备用系统的切换装置,其特征在于,还包括:
第一获取单元,用于在监测预设网关组内各网关的进程状态之后,获取所述预设网关组内多个网关的预设进程状态;
第二判断单元,用于判断所述预设网关组内多个网关中是否存在监测得到的进程状态与所述预设进程状态存在偏差的网关;以及
删除单元,用于如果确定所述预设网关组内多个网关中存在监测得到的进程状态与所述预设进程状态存在偏差的网关,则将所述存在偏差的网关从所述预设网关组内删除。
10.根据权利要求8所述的多机热备用系统的切换装置,其特征在于,所述预设网关组内包含有第一网关和第二网关,
所述监测单元还用于通过所述第一网关监测所述预设网关组内所述第一网关的进程状态,
所述同步单元还用于通过所述第二网关通过所述第一网关和所述第二网关之间的所述状态同步线路与所述第一网关保持进程状态同步,
所述第一判断单元还用于通过所述第二网关通过监测得到的所述第一网关的进程状态判断所述第一网关的进程状态是否为工作状态并且所述工作状态为故障状态,
所述切换单元还用于如果判断出所述第一网关的进程状态为工作状态并且所述工作状态为故障状态,则将所述第一网关切换为所述第二网关。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310612948.8A CN103607306B (zh) | 2013-11-26 | 2013-11-26 | 多机热备用系统的切换方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310612948.8A CN103607306B (zh) | 2013-11-26 | 2013-11-26 | 多机热备用系统的切换方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103607306A true CN103607306A (zh) | 2014-02-26 |
CN103607306B CN103607306B (zh) | 2019-03-01 |
Family
ID=50125507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310612948.8A Active CN103607306B (zh) | 2013-11-26 | 2013-11-26 | 多机热备用系统的切换方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103607306B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019033475A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市盛路物联通讯技术有限公司 | 自动中继切换方法及相关产品 |
CN111314136A (zh) * | 2020-02-18 | 2020-06-19 | 安科讯(福建)科技有限公司 | 一种触发LTE Femto网关切换的方法及终端 |
CN113965506A (zh) * | 2021-11-01 | 2022-01-21 | 南京熊猫汉达科技有限公司 | 一种网关备份方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1885839A (zh) * | 2005-06-23 | 2006-12-27 | 华为技术有限公司 | 网络中主备网关设备的实现方法 |
CN101115033A (zh) * | 2007-09-04 | 2008-01-30 | 武汉市中光通信公司 | 会话初始协议网关主备倒换系统及其方法 |
CN101192960A (zh) * | 2006-11-28 | 2008-06-04 | 中兴通讯股份有限公司 | 分布式体系中主备倒换检测和控制装置和方法 |
US20110258433A1 (en) * | 2010-04-16 | 2011-10-20 | Honeywell International Inc. | Gateway supporting transparent redundancy in process control systems and other systems and related method |
US20110300826A1 (en) * | 2010-06-04 | 2011-12-08 | Verizon Patent And Licensing Inc. | Real-time usage monitoring for communication devices |
-
2013
- 2013-11-26 CN CN201310612948.8A patent/CN103607306B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1885839A (zh) * | 2005-06-23 | 2006-12-27 | 华为技术有限公司 | 网络中主备网关设备的实现方法 |
CN101192960A (zh) * | 2006-11-28 | 2008-06-04 | 中兴通讯股份有限公司 | 分布式体系中主备倒换检测和控制装置和方法 |
CN101115033A (zh) * | 2007-09-04 | 2008-01-30 | 武汉市中光通信公司 | 会话初始协议网关主备倒换系统及其方法 |
US20110258433A1 (en) * | 2010-04-16 | 2011-10-20 | Honeywell International Inc. | Gateway supporting transparent redundancy in process control systems and other systems and related method |
US20110300826A1 (en) * | 2010-06-04 | 2011-12-08 | Verizon Patent And Licensing Inc. | Real-time usage monitoring for communication devices |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019033475A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市盛路物联通讯技术有限公司 | 自动中继切换方法及相关产品 |
CN111314136A (zh) * | 2020-02-18 | 2020-06-19 | 安科讯(福建)科技有限公司 | 一种触发LTE Femto网关切换的方法及终端 |
CN111314136B (zh) * | 2020-02-18 | 2022-12-27 | 安科讯(福建)科技有限公司 | 一种触发LTE Femto网关切换的方法及终端 |
CN113965506A (zh) * | 2021-11-01 | 2022-01-21 | 南京熊猫汉达科技有限公司 | 一种网关备份方法和系统 |
CN113965506B (zh) * | 2021-11-01 | 2023-02-28 | 南京熊猫汉达科技有限公司 | 一种网关备份方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103607306B (zh) | 2019-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3398068B1 (en) | Network redundancy and failure detection | |
CN107846342B (zh) | 一种vxlan报文的转发方法、设备及系统 | |
US20190196921A1 (en) | High availability and failovers | |
JP5152642B2 (ja) | パケットリングネットワークシステム、パケット転送方法、およびノード | |
CN111865779B (zh) | 一种路由同步方法及跨设备链路聚合组 | |
CN100512292C (zh) | 一种实时恢复业务的装置及方法 | |
CN102148677B (zh) | 一种更新地址解析协议表项的方法及核心交换机 | |
CN105915400A (zh) | 一种数据流切换方法及系统 | |
US20150365320A1 (en) | Method and device for dynamically switching gateway of distributed resilient network interconnect | |
CN108206759B (zh) | 一种转发报文的方法、设备及系统 | |
US20110164494A1 (en) | Method for operating a virtual router redundancy protocol router and communication system therefor | |
CN1980230A (zh) | 对vrrp组进行管理的方法 | |
JP2015198416A (ja) | 中継システムおよびスイッチ装置 | |
EP3029883B1 (en) | Network protection method and apparatus, next-ring node, and system | |
KR101691759B1 (ko) | 가상 섀시 시스템 제어 프로토콜 | |
CN108243114B (zh) | 一种转发报文的方法、设备及系统 | |
CN109861867B (zh) | 一种mec业务处理方法及装置 | |
JP6389956B2 (ja) | ネットワークトラフィックを管理する方法およびシステム | |
WO2021227863A1 (zh) | 混合云专线接入网络的灾备方法及装置 | |
CN105340230A (zh) | 虚拟机架拓扑管理 | |
CN109698767A (zh) | 一种主备切换方法及装置 | |
CN108833272A (zh) | 一种路由管理方法和装置 | |
CN103607306A (zh) | 多机热备用系统的切换方法和装置 | |
US7869351B2 (en) | Communication techniques and generic layer 3 automatic switching protection | |
CN106533771B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 2nd Floor, Building 1, Yard 26, Xizhimenwai South Road, Xicheng District, Beijing, 100032 Patentee after: Qianxin Wangshen information technology (Beijing) Co.,Ltd. Patentee after: Legendsec Technology (Beijing) Co.,Ltd. Address before: 100085 1st floor, Section II, No.7 Kaifa Road, Shangdi Information Industry base, Haidian District, Beijing Patentee before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc. Patentee before: Legendsec Technology (Beijing) Co.,Ltd. |