一种互为备份装置的主从切换方法及主从切换系统的制作方法

文档序号:6562383阅读:171来源:国知局
专利名称:一种互为备份装置的主从切换方法及主从切换系统的制作方法
技术领域
本发明涉及数据通信领域,尤其涉及一种互为备份装置的主从切换方法。
背景技术
当今网络世界,对网络设备的要求不再仅仅是传统的路由器和交换机提供的数据转发能力,更要求网络设备支持各种各样的应用。比如,要求设备既能做数据转发,又能接入语音;既能完成负载分担,又能够进行内容安全过滤。由于任何一家独立的技术厂商很难同时提供客户所要求的所有服务,用户需要购买多个厂商的设备,自己进行这些设备的组网和功能配合。这样往往因设备间的配合问题导致工作效率低下,不能灵活地使用每种设备所提供的各项功能。同时,很多设备堆放在机房中,给管理和维护造成了不小的负担。
为了解决上述问题,本申请人提出了一种OAA架构,将不同厂商的设备集成为一个松耦合的系统,如图1所示。一个符合OAA架构的系统包括通过接口连接部件ILC连接的网络转发部件NFC和独立业务部件IAC,其中NFC是OAA系统的主体,负责进行报文转发,有着完整的路由器和交换机的功能,也是用户管理控制的核心;IAC是用来提供各种应用的附加功能的业务服务主体,一般在OAA系统中表现为一块单板或扣卡;ILC通常作为接口分别集成在NFC和IAC之上,为NFC和IAC提供报文转发和控制信息传递的路径。
针对不同的应用,本申请人定义了主机、镜像、重定向以及穿透4种工作模式,可以通过这4种模式之一或其中几种的组合来完成NFC与IAC之间的通信。其中主机(Host)模式目前应用最为广泛的一种模式。
这种模式下,IAC就像网络上的一台主机,拥有自己的IP地址,作为网络末梢存在。IP报文都是通ILC的以太网口转发的,在逻辑上称其为转发通道(Forwar ding-Channel)。这种方式,NFC和IAC之间的耦合是最松的,NFC仅仅完成单纯的报文转发,IAC则作为数据报文的发起者和接收者,收发各种报文,NFC就是IAC的网关。在主机模式下,重要的IAC需要进行主、从备份,而如何进行IAC的主从切换则是需要解决的关键问题。

发明内容
本发明要解决的问题是提供一种开放应用架构OAA系统中互为备份IAC的主从切换方法以及主从切换系统,使得工作于主机模式下的IAC能够进行顺利进行主从切换,而不影响NFC为其提供的报文转发。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的一种互为备份装置的主从切换方法,所述装置为工作于主机模式的开放应用架构OAA中的独立业务部件IAC,所述互为备份的至少两个IAC具有相同的虚拟IP地址,从IAC拒绝响应对上述虚拟IP地址的ARP请求;从IAC新当选为主IAC时,发布其自身MAC地址与所述虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录。
优选的,所述互为备份的至少两个IAC还具有相同的虚拟MAC地址,从IAC新当选为主IAC时,发布其自身虚拟MAC地址与虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新虚拟MAC地址与接口的对应关系。
优选的,所述互为备份的至少两个IAC具有不同的真实MAC地址,从IAC新当选为主IAC时,发布其自身真实MAC地址与虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新虚拟IP地址与真实MAC地址的对应关系。
优选的,所述方法还包括当主IAC发生故障时,另外一个与之互为备份的从IAC新当选为主IAC。
优选的,所述方法还包括新主IAC接收来自NFC的新到达所述虚拟IP地址的业务流量。
优选的,所述方法还包括互为备份的IAC根据交互的基本信息报文进行主从角色选举。
一种主从切换系统,包括OAA中工作于主机模式的互为备份的至少两个独立业务部件IAC,所述互为备份IAC具有相同的虚拟IP地址,每个IAC包括ARP请求处理单元,用以在所述IAC由从IAC新当选为主IAC时发布其自身MAC地址与所述虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录;当所述IAC作为从IAC时,其ARP请求处理单元拒绝响应对上述虚拟IP地址的ARP请求。
优选的,所述互为备份IAC还具有相同的虚拟MAC地址,上述ARP请求处理单元在其所属IAC由从IAC新当选为主IAC时发布的免费ARP报文包括自身虚拟MAC地址与虚拟IP地址的对应关系,所述免费ARP报文用于触发NEC刷新虚拟MAC地址与接口的对应关系。
优选的,所述互为备份IAC具有不同的真实MAC地址,上述ARP请求处理单元在其所属IAC由从IAC新当选为主IAC时发布的免费ARP报文包括自身真实MAC地址与虚拟IP地址的对应关系,所述免费ARP报文用于触发NFC刷新虚拟IP地址与真实MAC地址的对应关系。
优选的,每个IAC还包括主从控制单元,用以根据交互的基本信息报文进行主从角色选举。
一种互为备份装置的主从切换方法,所述装置为工作于主机模式的开放应用架构OAA中的独立业务部件IAC,所述互为备份的至少两个IAC具有相同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的至少两个业务虚拟IP地址,所述互为备份IAC基于不同的业务组进行负载分担,每个IAC对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应;一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录。
优选的,所述互为备份的至少两个IAC还具有相同的业务虚拟MAC地址组,所述业务虚拟MAC地址组包括关联于不同业务组的至少两个业务虚拟MAC地址,一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址和业务虚拟MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟MAC地址与接口的对应关系。
优选的,述互为备份的至少两个IAC具有不同的真实MAC地址,一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身真实MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟IP地址与真实MAC地址的对应关系。
优选的,所述方法还包括当一个IAC发生故障时,接替工作的IAC将其对应业务组的控制权由从控切换为主控。
优选的,所述方法还包括新掌握业务组主控权的IAC接收来自NFC的到达所述业务组关联的业务虚拟IP地址的流量。
一种主从切换系统,包括OAA中工作于主机模式的互为备份的至少两个独立业务部件IAC,所述互为备份IAC具有相同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的至少两个业务虚拟IP地址,互为备份IAC基于不同的业务组进行负载分担;每个IAC包括ARP请求处理单元,用以在所述IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录;所述IAC的ARP请求处理单元拒绝响应对该IAC从控业务组相关的业务虚拟IP地址的ARP请求。
优选的,所述互为备份IAC还具有相同的业务虚拟MAC地址组,所述业务虚拟MAC地址组包括关联于不同业务组的至少两个业务虚拟MAC地址,所述IAC在将其业务组的控制权由从控切换为主控时,其ARP请求处理单元发布的免费ARP报文包括所述业务组关联的业务虚拟IP地址和业务虚拟MAC地址的对应关系,所述免费ARP报文用于触发NFC刷新业务虚拟MAC地址与接口的对应关系。
优选的,所述互为备份IAC具有不同的真实MAC地址,所述IAC在将其业务组的控制权由从控切换为主控时,其ARP请求处理单元发布的免费ARP报文包括所述业务组关联的业务虚拟IP地址与其自身真实MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟IP地址与真实MAC地址的对应关系。
优选的,每个IAC还包括主从控制单元,用以根据交互的基本信息报文进行各业务组的主从控制权切换。
以上技术方案可以看出,在本发明的一种技术方案中,通过为互为备份的至少两个IAC设置相同的虚拟IP地址,使得多个IAC均可处理相同业务具备了可能性。另外,从IAC拒绝响应NFC对虚拟IP地址的ARP请求,只由主IAC响应,保证了同一时间只有一个主IAC工作。当从IAC新当选为主IAC时,发布其自身MAC地址与虚拟IP地址对应关系的免费ARP报文,触发NFC刷新已有的ARP记录。进而,NFC根据刷新后的ARP记录,就可以将新到达所述虚拟IP地址的业务流量发送给所述新主IAC,即完成了IAC的主从切换,使新主IAC得以顺利接替原主IAC的工作。由此可见,本发明提供的这种互为备份IAC的主从切换方法,保证了IAC工作于主机模式时的顺利切换。本发明的另外一种技术方案,使得互为备份IAC在具有负载分担功能的情况下仍然能够顺利进行主、从切换。


图1为本申请人提供的OAA架构示意图;图2为OAA架构中互为备份IAC的主从切换方法第一实施例流程图;图3为本发明具体实施例对应的OAA具体架构示意图;图4为OAA架构中互为备份IAC的主从切换方法第二实施例流程图;图5为OAA架构中互为备份IAC的主从切换方法第三实施例流程图;图6为OAA架构中互为备份IAC的主从切换方法第四实施例流程图;图7为本发明主从切换系统实施例的结构示意图。
具体实施例方式
请参阅图2,其为本发明公开的一种开放应用架构OAA中互为备份的独立业务部件IAC的主从切换方法第一实施例流程图。为了使得叙述更为具体,以两个IAC相互备份为例进行说明,请结合图3,其为本发明具体实施例对应的OAA具体架构示意图。在图3所示的示例性OAA架构图中,包含第一IAC21、第二IAC22、NFC23以及第一IAC21与NFC23之间的ILC24、第二IAC22与NFC23之间的ILC25。
ILC的本质是IAC和NFC两部分的接口连接体,通过这个部件将不同厂商的设备连接在一起。ILC一般不表现为外部可见的部件,而是作为接口分别集成在NFC和IAC上。由于本发明主要涉及集成在NFC的接口,因此特别指出,ILC24集成在NFC上的接口是第一接口241,ILC25集成在NFC23上的接口是第二接口251。
步骤210为互为备份的第一IAC21和第二IAC22设置一个共同的虚拟IP地址10.1.1.3,即使得第一IAC21和第二IAC22具有相同的虚拟IP地址。并且,所有涉及第一IAC21和第二IAC22的业务相关配置都使用10.1.1.3这个业务虚拟IP地址。此外,第一IAC21的真实MAC地址为00.00.00.00.00.01,第二IAC22的真实MAC地址为00.00.00.00.00.02。
步骤220从IAC拒绝响应NFC23对虚拟IP地址(10.1.1.3)的ARP(地址解析协议)请求,只由主IAC进行响应。从IAC不处理和这个虚拟IP地址相关的任何报文。本领域技术人员知道,任何一种备份方案中,在同一时间只有一个设备处于主用状态,其余与之备份的设备处于从状态。本发明也例外,第一IAC21和第二IAC22中只有一个是主IAC,另外一个是从IAC,假设第一IAC21当前是主IAC,第二IAC22当前是从IAC。
如果NFC23是首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,于是广播一个IP地址为10.1.1.3的ARP请求。第一IAC21和第二IAC22都会收到这个ARP请求,而且两者的虚拟IP地址都是10.1.1.3,但是由于第一IAC21是当前的主IAC,因此只有第一IAC21向NFC23回复ARP响应,在该ARP响应报文中告知NFC23自己的真实MAC地址00.00.00.00.00.01。通常第二IAC22直接将该ARP请求报文丢弃。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与真实MAC地址00.00.00.00.00.01之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.01和第一接口241的对应关系。NFC23在获得上述路由信息后,通常会通过表项予以记录,如ARP表项和MAC表项。进而,NFC23就可以将目的IP为10.1.1.3的报文通过第一接口241转发给真实MAC地址为00.00.00.00.00.01的第一IAC21。
此后,如果第一IAC21和第二IAC22之间不发生主从切换,NFC23一直会按照记录的路由信息将到达虚拟IP地址10.1.1.3的业务流量发送到作为主IAC的第一IAC21上。
步骤230当第一IAC21发生故障或者其他原因导致主从切换,第二IAC22新当选为主IAC,第一IAC21新当选为从IAC。
一般而言,只有主IAC发生故障时才会发生主从切换。就本实施例而言,第一IAC21在正常工作时会周期性发布基本信息报文,所述基本信息报文用以向从IAC(第二IAC22)表明自己是否存活。如果第二IAC22周期性收到来自第一IAC21的基本信息报文,就知道第一IAC21正常工作,保持自己的从状态。如果第二IAC22在预置时间内没有收到来自第一IAC21的基本信息报文,则判断第一IAC21可能发生故障,立刻新当选为主IAC。
在第一IAC21和第二IAC22都刚启动时,可以由用户直接设置哪个是主哪个是从,也可以根据各IAC的优先级等信息进行主从竞争。例如,启动时第一IAC21和第二IAC22都视自己为从IAC,监听当前是否有工作在主状态的IAC(视其是否收到来自主IAC的基本信息报文而定)。如果从IAC在一段时间内没有收到来自主IAC的基本信息报文,就新当选为主IAC,并发布包含自己优先级的基本信息报文。凡是收到来自对方基本信息报文的从IAC,将对方优先级和自己的优先级进行比较,如果自己优先级高于对方,则自己新当选为主IAC,对方新当选为从IAC;如果自己优先级低于对方,则保持自己的从状态。如果优先级相同,则IP地址小的为主。由此就可以在互为备份IAC中选出主IAC和从IAC了。上述根据基本信息报文中的优先级信息进行主从选举过程,不仅可以发生在刚启动阶段,也可以发生在正常工作过程中,此种情况下,即使当前主IAC不发生故障,而主、从IAC优先级等状态信息发生变化,也有可能发生主从切换。
另外,需要说明,以上多个互为备份IAC进行主从选举的过程有多种方式,例如各IAC也可以作为主IAC启动,选举依据也不局限于优先级以及IP地址等信息,这些都可以由用户自己根据实际情况予以设置。
步骤240当第二IAC22新当选为主IAC时,主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为其自身的真实MAC地址00.00.00.00.00.02。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系。
前述提过,当第一IAC21是主IAC时,在NFC23学习到的ARP表项中,IP地址10.1.1.3对应的MAC地址是第一IAC21的真实MAC地址00.00.00.00.00.01。此后,如果NFC23收到第二IAC22主动发布的免费ARP报文,就会根据该报文刷新原有的路由信息。具体而言,第二IAC21发布的免费ARP报文公布的与IP地址10.1.1.3对应的MAC地址是第二IAC21的真实MAC地址00.00.00.00.00.02,而NFC23原有ARP表项中记录与IP地址10.1.1.3对应的MAC地址是00.00.00.00.00.01,于是NFC23据此进行刷新。将记录的ARP表项中IP地址10.1.1.3对应的MAC地址刷新为00.00.00.00.00.02(即第二IAC22的真实MAC地址)。
此外,由于第二IAC 22发送的免费ARP报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系,一般通过MAC地址表项予以记录。此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给真实MAC地址为00.00.00.00.00.02的第二IAC22。
由此可见,新当选为主IAC的第二IAC 22通过发布免费ARP报文,使得NFC能够将新的到达10.1.1.3这个IP地址的流量发送给新主IAC(第二IAC22),而不是原主IAC(第一IAC21),成功实现了主从IAC的切换。
请参阅图4,其为本发明公开的一种开放应用架构OAA中互为备份的独立业务部件IAC的主从切换方法第二实施例流程图。仍然结合图3所示的OAA具体架构示意图进行具体举例说明。本实施例与第一实施例的区别之处在于,互为备份的多个IAC设置有相同的虚拟MAC地址,进而导致新主IAC发布的免费ARP报文以及NFC刷新的ARP记录都有所不同。对于本实施例和第一实施例相同的步骤或概念,就不再赘述,详细内容请参看第一实施例所述。
步骤410为互为备份的第一IAC21和第二IAC22设置一个共同的虚拟IP地址10.1.1.3,以及一个共同的虚拟MAC地址00.00.00.00.00.03。
步骤420从IAC拒绝响应NFC23对虚拟IP地址(10.1.1.3)的ARP请求,只由主IAC予以响应。从IAC不处理和这个虚拟IP地址相关的任何报文。
如果NFC23是首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,因此广播IP地址为10.1.1.3的ARP请求报文。第一IAC21和第二IAC22都会收到这个ARP请求,而且两者的虚拟IP地址都是10.1.1.3,但是由于第一IAC21是当前的主IAC,因此只有第一IAC21向NFC23回复ARP响应,在该ARP响应报文中告知NFC23自己的虚拟MAC地址00.00.00.00.00.03。通常第二IAC22直接将该ARP请求报文丢弃。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与虚拟MAC地址00.00.00.00.00.03之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得虚拟MAC地址00.00.00.00.00.03和第一接口241的对应关系。NFC23在获得上述路由信息后,通常会通过表项予以记录,如ARP表项和MAC表项。进而,NFC23就可以将目的IP为10.1.1.3的报文通过第一接口241转发给虚拟MAC地址为00.00.00.00.00.03的IAC,由于第一接口241连接的只是第一IAC 21,因此到达IP地址10.1.1.3的流量都会发送给第一IAC 21。
此后,如果第一IAC21和第二IAC22之间不发生主从切换,NFC23一直会按照记录的路由信息将到达虚拟IP地址10.1.1.3的业务流量发送到作为主IAC的第一IAC21上。
步骤430当第一IAC21发生故障或者其他原因导致主从切换,第二IAC22新当选为主IAC,第一IAC21新当选为从IAC。
步骤440当第二IAC22新当选为主IAC时,主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为虚拟MAC地址00.00.00.00.00.03。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟MAC 00.00.00.00.00.03地址与接口的对应关系。
在步骤420中前述提过,当第一IAC21是主IAC时,在NFC23学习到的ARP表项中,IP地址10.1.1.3对应的MAC地址是第一IAC21和第二IAC22共有的虚拟MAC地址00.00.00.00.00.03。此后,如果NFC23收到第二IAC22主动发布的免费ARP报文,就会根据该报文刷新原有的路由信息。具体而言,第二IAC21发布的免费ARP报文公布的与IP地址10.1.1.3对应的MAC地址是仍然是所述虚拟MAC地址00.00.00.00.00.03,因此NFC记录的IP地址10.1.1.3与MAC地址00.00.00.00.00.03之间的对应关系并没有变化,无需刷新。但是,由于第二IAC 22发送的免费ARP报文是通过第二接口251进入NFC23的,所以NFC23此次获得虚拟MAC地址00.00.00.00.00.03对应的接口为第二接口251;而此前NFC记录的虚拟MAC地址00.00.00.00.00.03对应的接口为第一接口241。于是,NFC就需要根据新接收到的免费ARP报文对已记录的MAC地址和接口对应关系进行刷新,将MAC地址00.00.00.00.00.03对应的接口由第一接口241改为第二接口251。
此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给虚拟MAC地址为00.00.00.00.00.02的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.3的流量都会发送给第二IAC 22。
由此可见,新当选为主IAC的第二IAC 22通过发布免费ARP报文,使得NFC能够将新的到达10.1.1.3这个IP地址的流量发送给新主IAC(第二IAC22),而不是原主IAC(第一IAC21),成功实现了主从IAC的切换。
通过上述工作过程可以看出,在第二实施例中,由于新主IAC发布的免费ARP报文自身内容较原主IAC发送给NFC的ARP响应报文内容没有变化,即都是共有的虚拟IP地址和共有的虚拟MAC地址之间的对应关系,因此,即使NFC之外的其他网络设备学习到这个免费ARP也不会受到任何影响。
本领域技术人员应该意识到,以上第一实施例和第二实施例虽然都是以两个互为备份IAC进行的具体说明,但是在实际应用中,也可以根据具体情况设置两个以上的互为备份IAC。如果多于两个IAC进行相互备份,那么如果主IAC故障,其余多个从IAC既可以由用户指定一个作为新主IAC,也可以根据自己优先级等信息进行竞争,在当前多个从IAC中选出一个主IAC,进而该新当选的主IAC后续操作和前述实施例相同。
请参阅图5,其为本发明公开的一种开放应用架构OAA中互为备份的独立业务部件IAC的主从切换方法第三实施例流程图。仍然结合图3所示的示例性OAA架构示意图进行具体举例说明。本实施例与第一实施例的区别之处在于,本实施例中的多个IAC之间的不但具有备份功能,还具有基于不同业务组的负载分担功能。对于本实施例和第一实施例相同的步骤或概念,不再赘述,详细内容请参看第一实施例所述。
步骤510为互为备份的第一IAC21和第二IAC22设置共同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的两个业务虚拟IP地址关联于第一业务组的业务虚拟IP地址10.1.1.3和关联于第二业务组的业务虚拟IP地址10.1.1.4。应当意识到,业务虚拟IP地址组中包含的业务虚拟IP地址数目和划分的不同业务组相关,因此并不局限于两个,本实施例只是给出一个示例。
之所以称为第一IAC21和第二IAC22共有的业务虚拟IP地址组,是指对于同一个业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址。就第一业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址10.1.1.3;就第二业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址10.1.1.4。此外,涉及同一业务组的业务相关配置都使用该业务组关联的业务虚拟IP地址。具体而言,所有有关第一业务组的业务相关配置都使用业务虚拟IP地址10.1.1.3;所有有关第二业务组的业务相关配置都使用业务虚拟IP地址10.1.1.4。
此外,第一IAC21的真实MAC地址为00.00.00.00.00.01,第二IAC22的真实MAC地址为00.00.00.00.00.02。
步骤520第一IAC21和第二IAC22基于不同的业务组进行负载分担,每个IAC对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应。
所谓主控是指IAC对业务组中的业务进行处理,如接收来自NFC的有关该业务组的流量等;所谓从控是指IAC对业务组中的业务不进行处理,如不接收来自NFC的有关该业务组的流量等,但是对于从控的业务组可以在一定条件下改为进行主控。一个IAC对哪些业务组从控,哪些业务组主控,最初可以由用户自行配置,也可以让多个互为备份的IAC根据各自每个业务组的控制权优先级进行竞争。总之,最终可以达到多个互为备份IAC基于不同业务组进行负载分担,较为合理的利用了备份资源。
假设第一IAC21对于第一业务组的控制权是主控,对于第二业务组的控制权是从控;第二IAC22对于第一业务组的控制权是从控,对于第二业务组的控制权是主控。当第一IAC21和第二IAC22都可以正常工作的情况下,每个IAC对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应。具体而言,第一IAC21只对第一业务组关联的业务虚拟IP地址10.1.1.3的ARP请求予以响应,不对第二业务组关联的业务虚拟IP地址10.1.1.4的ARP请求进行响应;第二IAC22只对第二业务组关联的业务虚拟IP地址10.1.1.4的ARP请求予以响应,不对第一业务组关联的业务虚拟IP地址10.1.1.3的ARP请求进行响应。
如果NFC23首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,于是广播IP地址为10.1.1.3的ARP请求。第一IAC21和第二IAC22都会收到这个ARP请求,而且两者的虚拟IP地址都有10.1.1.3。第一IAC21发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,目前自己对第一业务组的控制权是主控,因而响应该ARP请求,告知NFC23自己的IP地址是10.1.1.3、MAC地址是00.00.00.00.00.01。第二IAC22发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,而目前自己对第一业务组的控制权是从控,因此丢弃该报文不予以响应。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与真实MAC地址00.00.00.00.00.01之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.01和第一接口241的对应关系。NFC23在获得上述路由信息后,通常会通过表项予以记录,如ARP表项和MAC表项。进而,NFC23就可以将目的IP为10.1.1.3的报文通过第一接口241转发给真实MAC地址为00.00.00.00.00.01的第一IAC21。
同理,如果NFC23首次接收到目的IP地址为10.1.1.4的报文,当其发送该IP地址的ARP请求时,只有第二IAC22予以响应。进而,NFC23根据第二IAC21回复的ARP响应,获得虚拟IP地址10.1.1.4与真实MAC地址00.00.00.00.00.02之间的对应关系。与此同时,由于第二IAC21回复的ARP响应报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系。此后,NFC23就会将目的IP为10.1.1.4的报文通过第二接口251转发给真实MAC地址为00.00.00.00.00.02的第二IAC22。
如果第一IAC21和第二IAC22之间不就相关业务组的控制权发生主、从切换,则NFC23会一直按照记录的路由信息将到达虚拟IP地址10.1.1.3的业务流量发送到第一IAC21,将到达虚拟IP地址10.1.1.4的业务流量发送到第二IAC22。
530第一IAC21发生故障或者其他原因,导致第二IAC22对第一业务组的控制权由从控切换到主控。最常见的例子是第一IAC21发生故障,那么其就无法完成对第一业务组的主控工作,必须由第二IAC22予以接替,进而第二IAC22对第二业务组的控制权由从控切换为主控。此外,和第一实施例中所述内容类似,还可能基于优先级竞争导致一个IAC对相关业务组的控制权发生变化。
例如,正常工作的互为备份IAC周期性发布基本信息报文,所述基本信息报文包括各自支持的业务组以及对每个业务组的控制权优先级(优先级相同情况下还可以判断IP地址),进而各IAC根据接收到的基本信息报文内容对各业务组的控制权进行竞争,最后每个IAC都有主控的业务组以及从控的业务组,达到了负载分担目的。此后,如果某IAC对某些业务组的控制权优先级发生了变化,就可能某个IAC对一些业务组的控制权进行切换,由从控切换到主控或由主控切换到从控。
540第二IAC22对第一业务组的控制权由从控切换到主控时,主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为其自身的真实MAC地址00.00.00.00.00.02。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系。
前述提过,当第一IAC21对第一业务组是主控时,在NFC23学习到的ARP表项中,IP地址10.1.1.3对应的MAC地址是第一IAC21的真实MAC地址00.00.00.00.00.01。此后,由于NFC23收到第二IAC22主动发布的免费ARP报文,就会根据该报文刷新原有的路由信息。具体而言,第二IAC21发布的免费ARP报文公布的与IP地址10.1.1.3对应的MAC地址是第二IAC21的真实MAC地址00.00.00.00.00.02,而NFC23原有ARP表项中记录与IP地址10.1.1.3对应的MAC地址是00.00.00.00.00.01,于是NFC23据此进行刷新。将记录的ARP表项中IP地址10.1.1.3对应的MAC地址由原来的00.00.00.00.00.01(即第一IAC22的真实MAC地址)刷新为00.00.00.00.00.02(即第二IAC22的真实MAC地址)。
此外,由于第二IAC 22发送的免费ARP报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系。此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给真实MAC地址为00.00.00.00.00.02的第二IAC22。
由此可见,新掌握第一业务组主控权的第二IAC22通过发布免费ARP报文,使得NFC能够将新的到达10.1.1.3这个IP地址的流量发送给新掌握主控权的IAC第二IAC 22,而不是原掌握主控权的第一IAC21,成功实现了主从IAC的切换。
如果是由于第一IAC发生故障进行的切换,则第一IAC根本无法继续工作;如果是优先级变化导致第一IAC21和第二IAC22对第一业务组的主控权发生变化,那么在第二IAC22将对第一业务组的主控权由从控切换到主控的同时,第一IAC21也会将对第一业务组的主控权由主控切换到从控,并按照步骤520所述的从控业务相关动作处理。至于第一IAC21故障恢复后是否要回第一业务组的主控权则可以视情况而定,假设第一IAC21故障恢复后要回了第一业务组的主控权,则也会按照前述第二IAC22新掌握第一业务组主控权时的方法主动发送自己的免费ARP报文,重新从NFC获得新的10.1.1.3这个IP地址的流量,具体过程不再赘述。
请参阅图6,其为本发明公开的一种开放应用架构OAA中互为备份的独立业务部件IAC的主从切换方法第四实施例流程图。仍然结合图3所示的示例性OAA架构示意图进行具体举例说明。本实施例与第三实施例的区别之处在于,互为备份的多个IAC设置有相同的虚拟MAC地址组,所述业务虚拟MAC地址组包括关联于不同业务组的至少两个业务虚拟MAC地址,于是导致新掌握相关业务组主控权的IAC发布的免费ARP报文以及NFC刷新的ARP记录都有所不同。对于本实施例和第三实施例相同的步骤或概念,就不再赘述,详细内容请参看第三实施例所述。
步骤610为互为备份的第一IAC21和第二IAC22设置共同的业务虚拟IP地址组和共同的虚拟MAC地址组。所述业务虚拟IP地址组包括关联于不同业务组的两个业务虚拟IP地址关联于第一业务组的业务虚拟IP地址10.1.1.3和关联于第二业务组的业务虚拟IP地址10.1.1.4。所述虚拟MAC地址组包括关联于不同业务组的两个业务虚拟IP地址关联于第一业务组的业务虚拟MAC地址00.00.00.00.00.05和关联于第二业务组的业务虚拟MAC地址00.00.00.00.00.06。具体而言,对于第一业务组,第一IAC21和第二IAC22具有相同的业务虚拟MAC地址00.00.00.00.00.05;对于第二业务组,第一IAC21和第二IAC22具有相同的业务虚拟MAC地址00.00.00.00.00.06。
步骤620第一IAC21和第二IAC22基于不同的业务组进行负载分担,每个IAC对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应。
如果NFC23首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,于是广播IP地址为10.1.1.3的ARP请求。第一IAC21和第二IAC22都会收到这个ARP请求,而且两者的虚拟IP地址都有10.1.1.3。第一IAC21发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,目前自己对第一业务组的控制权是主控,因而响应该ARP请求,告知NFC23自己的IP地址是10.1.1.3、MAC地址是00.00.00.00.00.05(关联于第一业务组的虚拟MAC地址)。第二IAC22发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,而目前自己对第一业务组的控制权是从控,因此丢弃该报文不予以响应。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与业务虚拟MAC地址00.00.00.00.00.05之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得业务虚拟MAC地址00.00.00.00.00.05和第一接口241的对应关系。NFC23在获得上述路由信息后,通常会通过表项予以记录,如ARP表项和MAC表项。进而,NFC23就会将目的IP为10.1.1.3的报文通过第一接口241转发给业务虚拟MAC地址为00.00.00.00.00.05的IAC,由于第一接口241连接的只是第一IAC 21,因此到达IP地址10.1.1.3(即关联于第一业务组)的流量都会发送给第一IAC 21。
同理,NFC23会将目的IP为10.1.1.4的报文(即关联于第二业务组)通过第二接口251转发给业务虚拟MAC地址为00.00.00.00.00.06的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.4的流量都会发送给第二IAC 22。
步骤630第一IAC21发生故障或者其他原因,导致第二IAC22对第一业务组的控制权由从控切换到主控。最常见的例子是第一IAC21发生故障,那么其就无法完成对第一业务组的主控工作,必须由第二IAC22予以接替,进而第二IAC22对第二业务组的控制权由从控切换为主控。优先级竞争导致控制权发生变化的实例请参看步骤530所述相关内容,此处不再赘述。
步骤640第二IAC22对第一业务组的控制权由从控切换到主控时,主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为虚拟MAC地址00.00.00.00.00.05。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系。
在步骤620中提过,当第一IAC21是主IAC时,NFC23学习到的ARP表项中IP地址10.1.1.3对应的MAC地址是第一IAC21和第二IAC22共有的虚拟MAC地址00.00.00.00.00.05(即关联于第一业务组的业务虚拟MAC地址)。此后,由于NFC23收到第二IAC22主动发布的免费ARP报文,就会根据该报文刷新原有的路由信息。具体而言,第二IAC21发布的免费ARP报文公布的与IP地址10.1.1.3对应的MAC地址是仍然是与第一业务组关联的业务虚拟MAC地址00.00.00.00.00.05,因此NFC记录的IP地址10.1.1.3与MAC地址00.00.00.00.00.05之间的对应关系并没有变化,无需刷新。但是,由于第二IAC 22发送的免费ARP报文是通过第二接口251进入NFC23的,所以NFC23此次获得虚拟MAC地址00.00.00.00.00.05对应的接口为第二接口251;而此前(详见步骤620)NFC记录的虚拟MAC地址00.00.00.00.00.05对应的接口为第一接口241。于是,NFC就需要根据新接收到的免费ARP报文对已记录的MAC地址和接口对应关系进行刷新,将MAC地址00.00.00.00.00.05对应的接口由第一接口241改为第二接口251。
此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给虚拟MAC地址为00.00.00.00.00.05的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.3的流量都会发送给第二IAC 22。
由此可见,新掌握第一业务组主控权的第二IAC22通过发布免费ARP报文,使得NFC能够将新的到达10.1.1.3这个IP地址的流量(第一业务组中的相关业务)发送给新掌握主控权的第二IAC 22,而不是原掌握主控权的第一IAC21,实现了IAC对相关业务组主控权的顺利切换。
本发明还公开了一种主从切换系统,请参阅图7,其为本发明主从切换系统的实施例结构示意图。为了避免重复描述,对于前文已经介绍过的相同概念不再赘述。而且需要说明,虽然本实施例所示的主从切换系统只包括两个IAC,但本领域技术人员应该意识到,根据同样原理,本发明所述主从切换系统包括的IAC不局限于两个,可以多余两个。
所述主从切换系统包括工作于主机模式的第一独立业务部件IAC21和第二独立业务部件IAC22,其中,第一独立业务部件IAC21具体包括第一主从控制单元71和第一ARP请求处理单元72,第二独立业务部件IAC22具体包括第二主从控制单元73和第二ARP请求处理单元74。为了更清楚的说明本实施例所示的主从切换系统,在图7中还示出了与第一独立业务部件IAC21和第二独立业务部件IAC22具有连接关系的网络转发部件NFC23,其中,第一独立业务部件IAC21与NFC23通过第一接口241进行数据交互,第二独立业务部件IAC22与NFC23通过第二接口251进行数据交互。下面结合所示主从切换系统的具体工作原理进行说明。
第一IAC21和第二IAC22具有相同的虚拟IP地址10.1.1.3,并且,所有涉及第一IAC21和第二IAC22的业务相关配置都使用10.1.1.3这个业务虚拟IP地址。此外,第一IAC21的真实MAC地址为00.00.00.00.00.01,第二IAC22的真实MAC地址为00.00.00.00.00.02。
第一IAC21和第二IAC22之中的一个是主IAC,一个是从IAC。从IAC中的ARP请求处理单元拒绝响应NFC23对虚拟IP地址(10.1.1.3)的ARP(地址解析协议)请求,只由主IAC的ARP请求处理单元进行响应。从IAC不处理和这个虚拟IP地址相关的任何报文。
假设第一IAC21当前是主IAC,第二IAC22当前是从IAC。如果NFC23是首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,于是广播一个IP地址为10.1.1.3的ARP请求。第一IAC21和第二IAC22都会收到这个ARP请求,而且两者的虚拟IP地址都是10.1.1.3,但是由于第一IAC21是当前的主IAC,因此只有第一IAC21的ARP请求处理单元72向NFC23回复ARP响应,在该ARP响应报文中告知NFC23自己的真实MAC地址00.00.00.00.00.01。通常第二IAC22的ARP请求处理单元74直接将该ARP请求报文丢弃。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与真实MAC地址00.00.00.00.00.01之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.01和第一接口241的对应关系。NFC23在获得上述路由信息后,通常会通过表项予以记录,如ARP表项和MAC表项。进而,NFC23就可以将目的IP为10.1.1.3的报文通过第一接口241转发给真实MAC地址为00.00.00.00.00.01的第一IAC21。
此后,如果第一IAC21和第二IAC22之间不发生主从切换,NFC23一直会按照记录的路由信息将到达虚拟IP地址10.1.1.3的业务流量发送到作为主IAC的第一IAC21上。
在工作过程中,作为主IAC的第一IAC21还通过第一基本信息报文收发子单元711向第二IAC22周期性发布基本信息报文,所述基本信息报文可以只用于表明自己是否存活。如果第二IAC22周期性收到来自第一IAC21的基本信息报文,就知道第一IAC21正常工作,保持自己的从状态;如果第二IAC22在预置时间内没有收到来自第一IAC21的基本信息报文,则判断第一IAC21可能发生故障,立刻新当选为主IAC。
优选的,第一IAC21发布的基本信息报文包含自己的优先级。进而,第二IAC22通过第二选举子单元732将对方(第一IAC21)的优先级和自己的优先级进行比较,如果自己优先级高于对方,则自己新当选为主IAC,对方新当选为从IAC;如果自己优先级低于对方,则保持自己的从状态。当然,进一步如果两者的优先级相同,还可以比较IP地址进行主从选举。总而言之,互为备份的IAC通过主从控制单元进行基本信息报文的交互,并根据交互的基本信息报文进行主从角色选举。
假设由于第一IAC21发生故障或优先级发生变化,导致第二IAC22由从IAC新当选为主IAC,则第二IAC22的第二ARP请求处理单元74主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为其自身的真实MAC地址00.00.00.00.00.02。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系,即NFC23将记录的ARP表项中IP地址10.1.1.3对应的MAC地址刷新为00.00.00.00.00.02(即第二IAC22的真实MAC地址)。
此外,由于第二请求处理单元74发送的免费ARP报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系,一般通过MAC地址表项予以记录。此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给真实MAC地址为00.00.00.00.00.02的第二IAC22。
由此可见,新当选为主IAC的第二IAC 22通过发布免费ARP报文,使得NFC能够将新的到达10.1.1.3这个IP地址的流量发送给新主IAC(第二IAC22),而不是原主IAC(第一IAC21),成功实现了主从IAC的切换。
与上述优选第一实施例相对应的第二实施例是,第一IAC21和第二IAC22除了具有相同的虚拟IP地址10.1.1.3外,还可以具有相同的虚拟MAC地址00.00.00.00.00.03。为避免重复叙述,此处仅说明本实施方式与上一个实施例的区别之处。仍然以第一IAC21为当前主IAC为例。
第一IAC21通过第一ARP请求处理单元72向NFC23回复ARP响应,在该ARP响应报文中告知NFC23自己IP地址是10.1.1.3,对应的虚拟MAC地址00.00.00.00.00.03。通常第二IAC22的第二ARP请求处理单元74直接将该ARP请求报文丢弃。
进而,NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与虚拟MAC地址00.00.00.00.00.03之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得虚拟MAC地址00.00.00.00.00.03和第一接口241的对应关系。此后,NFC23就可以将目的IP为10.1.1.3的报文通过第一接口241转发给虚拟MAC地址为00.00.00.00.00.03的IAC,由于第一接口241连接的只是第一IAC 21,因此到达IP地址10.1.1.3的流量都会发送给第一IAC 21。
当第一IAC21发生故障或者其他原因导致主从切换,第二IAC22新当选为主IAC时,第二ARP请求处理单元74主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为虚拟MAC地址00.00.00.00.00.03。由于第二IAC22发送的免费ARP报文是通过第二接口251进入NFC23的,所以NFC23此次获得虚拟MAC地址00.00.00.00.00.03对应的接口为第二接口251;而此前NFC记录的虚拟MAC地址00.00.00.00.00.03对应的接口为第一接口241。于是,NFC就需要根据新接收到的免费ARP报文对已记录的MAC地址和接口对应关系进行刷新,将MAC地址00.00.00.00.00.03对应的接口由第一接口241改为第二接口251。
此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给虚拟MAC地址为00.00.00.00.00.02的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.3的流量都会发送给第二IAC22。
通过上述工作过程可以看出,在第二实施例中,由于新主IAC发布的免费ARP报文自身内容较原主IAC发送给NFC的ARP响应报文内容没有变化,即都是共有的虚拟IP地址和共有的虚拟MAC地址之间的对应关系,因此,即使NFC之外的其他网络设备学习到这个免费ARP也不会受到任何影响。
本发明还公开了一种支持负载分担的主从切换系统,仍然参考图7所示的结构示意图进行说明。由于这种主从切换系统与前文所述各实施例属于同一发明构思,基本原理大致相同,因此着重介绍不同部分,相同概念请参考前文所述。
互为备份的第一IAC21和第二IAC22具有共同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的两个业务虚拟IP地址关联于第一业务组的业务虚拟IP地址10.1.1.3和关联于第二业务组的业务虚拟IP地址10.1.1.4。之所以称为第一IAC21和第二IAC22共有的业务虚拟IP地址组,是指对于同一个业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址。就第一业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址10.1.1.3;就第二业务组而言,第一IAC21和第二IAC22具有相同的虚拟IP地址10.1.1.4。此外,第一IAC21的真实MAC地址为00.00.00.00.00.01,第二IAC22的真实MAC地址为00.00.00.00.00.02。
第一IAC21和第二IAC22基于不同的业务组进行负载分担,每个IAC的ARP请求处理单元对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应。假设第一IAC21对于第一业务组的控制权是主控,对于第二业务组的控制权是从控;第二IAC22对于第一业务组的控制权是从控,对于第二业务组的控制权是主控。
当第一IAC21和第二IAC22都可以正常工作的情况下,每个IAC的ARP请求处理单元对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应。具体而言,第一IAC21的第一ARP请求处理单元72只对第一业务组关联的业务虚拟IP地址10.1.1.3的ARP请求予以响应,不对第二业务组关联的业务虚拟IP地址10.1.1.4的ARP请求进行响应;第二IAC22的第二ARP请求处理单元74只对第二业务组关联的业务虚拟IP地址10.1.1.4的ARP请求予以响应,不对第一业务组关联的业务虚拟IP地址10.1.1.3的ARP请求进行响应。
如果NFC23首次接收到目的IP地址为10.1.1.3的报文,由于此前没有学习过相关ARP(地址解析协议)内容,于是广播IP地址为10.1.1.3的ARP请求。第一IAC21发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,目前自己对第一业务组的控制权是主控,因而通过第一ARP请求处理单元72响应该ARP请求,告知NFC23自己的IP地址是10.1.1.3、MAC地址是00.00.00.00.00.01。第二IAC22的第二ARP请求处理单元74发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,而目前自己对第一业务组的控制权是从控,因此丢弃该报文不予以响应。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与真实MAC地址00.00.00.00.00.01之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.01和第一接口241的对应关系。此后,NFC23就会将目的IP为10.1.1.3的报文通过第一接口241转发给真实MAC地址为00.00.00.00.00.01的第一IAC21。
同理,如果NFC23首次接收到目的IP地址为10.1.1.4的报文,当其发送该IP地址的ARP请求时,只有第二IAC22予以响应。进而,NFC23根据第二IAC21回复的ARP响应,获得虚拟IP地址10.1.1.4与真实MAC地址00.00.00.00.00.02之间的对应关系。与此同时,由于第二IAC21回复的ARP响应报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系。此后,NFC23就会将目的IP为10.1.1.4的报文通过第二接口251转发给真实MAC地址为00.00.00.00.00.02的第二IAC22。
如果第一IAC21和第二IAC22之间不就相关业务组的控制权发生主、从切换,则NFC23会一直按照记录的路由信息将到达虚拟IP地址10.1.1.3的业务流量发送到第一IAC21,将到达虚拟IP地址10.1.1.4的业务流量发送到第二IAC22。
如果第一IAC21发生故障或者其他原因,导致第二IAC22对第一业务组的控制权由从控切换到主控。最常见的例子是第一IAC21发生故障,那么其就无法完成对第一业务组的主控工作,必须由第二IAC22予以接替,进而第二IAC22对第二业务组的控制权由从控切换为主控。此外,和前述两个实施例中所述内容类似,还可能基于优先级竞争导致一个IAC对相关业务组的控制权发生变化。即通过主从控制单元进行基本信息报文的交互,并根据交互的基本信息报文进行各业务组的主从控制权切换。
例如,正常工作的互为备份IAC通过主从控制单元中的基本信息报文收发子单元周期性发布基本信息报文,所述基本信息报文包括各自支持的业务组以及对每个业务组的控制权优先级(优先级相同情况下还可以判断IP地址),进而各IAC根据接收到的基本信息报文内容通过选举子单元对各业务组的控制权进行竞争,最后每个IAC都有主控的业务组以及从控的业务组,达到了负载分担目的。此后,如果某IAC对某些业务组的控制权优先级发生了变化,就可能某个IAC对一些业务组的控制权进行切换,由从控切换到主控或由主控切换到从控。
当第二IAC22对第一业务组的控制权由从控切换到主控时,通过第二ARP请求处理单元74主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为其自身的真实MAC地址00.00.00.00.00.02。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系。NFC23原有ARP表项中记录与IP地址10.1.1.3对应的MAC地址是00.00.00.00.00.01,于是,将记录的ARP表项中IP地址10.1.1.3对应的MAC地址由原来的00.00.00.00.00.01(即第一IAC22的真实MAC地址)刷新为00.00.00.00.00.02(即第二IAC22的真实MAC地址)。
此外,由于第二IAC22发送的免费ARP报文是通过第二接口251进入NFC23的,因此NFC23还可以获得真实MAC地址00.00.00.00.00.02和第二接口251的对应关系。此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给真实MAC地址为00.00.00.00.00.02的第二IAC22。
相对于上述支持负载分担的主从切换系统实施例,还有另外一种实施方式。主要是为互为备份的第一IAC21和第二IAC22不但具有共同的业务虚拟IP地址组,还具有共同的虚拟MAC地址组。所述虚拟MAC地址组包括关联于不同业务组的两个业务虚拟IP地址关联于第一业务组的业务虚拟MAC地址00.00.00.00.00.05和关联于第二业务组的业务虚拟MAC地址00.00.00.00.00.06。
如果NFC23首次接收到目的IP地址为10.1.1.3的报文,则广播IP地址为10.1.1.3的ARP请求。假设第一IAC21发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,目前自己对第一业务组的控制权是主控,因而通过第一ARP请求处理单元72响应该ARP请求,告知NFC23自己的IP地址是10.1.1.3、MAC地址是00.00.00.00.00.05(关联于第一业务组的虚拟MAC地址)。第二IAC22发现10.1.1.3这个业务虚拟IP地址关联的业务组是第一业务组,而目前自己对第一业务组的控制权是从控,因此第二ARP请求处理单元74丢弃该报文不予以响应。
NFC23根据第一IAC21回复的ARP响应,获得虚拟IP地址10.1.1.3与业务虚拟MAC地址00.00.00.00.00.05之间的对应关系。与此同时,由于第一IAC21回复的ARP响应报文是通过第一接口241进入NFC23的,因此NFC23还可以获得业务虚拟MAC地址00.00.00.00.00.05和第一接口241的对应关系。进而,NFC23就会将目的IP为10.1.1.3的报文通过第一接口241转发给业务虚拟MAC地址为00.00.00.00.00.05的IAC,由于第一接口241连接的只是第一IAC 21,因此到达IP地址10.1.1.3(即关联于第一业务组)的流量都会发送给第一IAC 21。
同理,NFC23会将目的IP为10.1.1.4的报文(即关联于第二业务组)通过第二接口251转发给业务虚拟MAC地址为00.00.00.00.00.06的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.4的流量都会发送给第二IAC 22。
当第一IAC21发生故障或者其他原因,导致第二IAC22对第一业务组的控制权由从控切换到主控时,第二ARP请求处理单元74主动发送虚拟IP地址10.1.1.3的免费ARP报文,在该免费ARP报文中公布虚拟IP地址10.1.1.3对应的MAC地址为虚拟MAC地址00.00.00.00.00.05。这个虚拟IP地址10.1.1.3的免费ARP报文用于触发NFC23刷新虚拟IP地址10.1.1.3与真实MAC地址的对应关系。由于第二IAC22发送的免费ARP报文是通过第二接口251进入NFC23的,所以NFC23此次获得虚拟MAC地址00.00.00.00.00.05对应的接口为第二接口251;而此前NFC记录的虚拟MAC地址00.00.00.00.00.05对应的接口为第一接口241。于是,NFC就需要根据新接收到的免费ARP报文对已记录的MAC地址和接口对应关系进行刷新,将MAC地址00.00.00.00.00.05对应的接口由第一接口241改为第二接口251。
此后,如果有新的到达10.1.1.3这个IP地址的流量,就会被NFC通过第二接口251发送给虚拟MAC地址为00.00.00.00.00.05的IAC,由于第二接口251连接的只是第二IAC 22,因此到达IP地址10.1.1.3的流量都会发送给第二IAC22。
以上对本发明所提供的一种互为备份装置的主从切换方法及主从切换系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种互为备份装置的主从切换方法,所述装置为工作于主机模式的开放应用架构OAA中的独立业务部件IAC,其特征在于,所述互为备份的至少两个IAC具有相同的虚拟IP地址,从IAC拒绝响应对上述虚拟IP地址的ARP请求;从IAC新当选为主IAC时,发布其自身MAC地址与所述虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录。
2.如权利要求1所述的主从切换方法,其特征在于,所述互为备份的至少两个IAC还具有相同的虚拟MAC地址,从IAC新当选为主IAC时,发布其自身虚拟MAC地址与虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新虚拟MAC地址与接口的对应关系。
3.如权利要求1所述的主从切换方法,其特征在于,所述互为备份的至少两个IAC具有不同的真实MAC地址,从IAC新当选为主IAC时,发布其自身真实MAC地址与虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新虚拟IP地址与真实MAC地址的对应关系。
4如权利要求1至3中任意一项所述的切换方法,其特征在于,所述方法还包括当主IAC发生故障时,另外一个与之互为备份的从IAC新当选为主IAC。
5.如权利要求1至3中任意一项所述的主从切换方法,其特征在于还包括新主IAC接收来自NFC的新到达所述虚拟IP地址的业务流量。
6.如权利要求1至3中任意一项所述的主从切换方法,其特征在于,所述方法还包括互为备份的IAC根据交互的基本信息报文进行主从角色选举。
7.一种主从切换系统,包括OAA中工作于主机模式的互为备份的至少两个独立业务部件IAC,其特征在于,所述互为备份IAC具有相同的虚拟IP地址,每个IAC包括ARP请求处理单元,用以在所述IAC由从IAC新当选为主IAC时发布其自身MAC地址与所述虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录;当所述IAC作为从IAC时,其ARP请求处理单元拒绝响应对上述虚拟IP地址的ARP请求。
8.如权利要求7所述的主从切换系统,其特征在于,所述互为备份IAC还具有相同的虚拟MAC地址,上述ARP请求处理单元在其所属IAC由从IAC新当选为主IAC时发布的免费ARP报文包括自身虚拟MAC地址与虚拟IP地址的对应关系,所述免费ARP报文用于触发NFC刷新虚拟MAC地址与接口的对应关系。
9.如权利要求7所述的主从切换系统,其特征在于,所述互为备份IAC具有不同的真实MAC地址,上述ARP请求处理单元在其所属IAC由从IAC新当选为主IAC时发布的免费ARP报文包括自身真实MAC地址与虚拟IP地址的对应关系,所述免费ARP报文用于触发NFC刷新虚拟IP地址与真实MAC地址的对应关系。
10.如权利要求7至9中任意一项所述的主从切换系统,其特征在于,每个IAC还包括主从控制单元,用以根据交互的基本信息报文进行主从角色选举。
11.一种互为备份装置的主从切换方法,所述装置为工作于主机模式的开放应用架构OAA中的独立业务部件IAC,其特征在于,所述互为备份的至少两个IAC具有相同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的至少两个业务虚拟IP地址,所述互为备份IAC基于不同的业务组进行负载分担,每个IAC对其从控业务组相关的业务虚拟IP地址的ARP请求拒绝响应;一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录。
12.如权利要求11所述的主从切换方法,其特征在于,所述互为备份的至少两个IAC还具有相同的业务虚拟MAC地址组,所述业务虚拟MAC地址组包括关联于不同业务组的至少两个业务虚拟MAC地址,一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址和业务虚拟MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟MAC地址与接口的对应关系。
13.如权利要求11所述的主从切换方法,其特征在于,所述互为备份的至少两个IAC具有不同的真实MAC地址,一个IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身真实MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟IP地址与真实MAC地址的对应关系。
14.如权利要求11至13中任意一项所述的主从切换方法,其特征在于,所述方法还包括当一个IAC发生故障时,接替工作的IAC将其对应业务组的控制权由从控切换为主控。
15.如权利要求11至13中任意一项所述的主从切换方法,其特征在于还包括新掌握业务组主控权的IAC接收来自NFC的到达所述业务组关联的业务虚拟IP地址的流量。
16.一种主从切换系统,包括OAA中工作于主机模式的互为备份的至少两个独立业务部件IAC,其特征在于,所述互为备份IAC具有相同的业务虚拟IP地址组,所述业务虚拟IP地址组包括关联于不同业务组的至少两个业务虚拟IP地址,互为备份IAC基于不同的业务组进行负载分担;每个IAC包括ARP请求处理单元,用以在所述IAC将其业务组的控制权由从控切换为主控时,发布所述业务组关联的业务虚拟IP地址与其自身MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录;所述IAC的ARP请求处理单元拒绝响应对该IAC从控业务组相关的业务虚拟IP地址的ARP请求。
17.如权利要求16所述的主从切换方法,其特征在于,所述互为备份IAC还具有相同的业务虚拟MAC地址组,所述业务虚拟MAC地址组包括关联于不同业务组的至少两个业务虚拟MAC地址,所述IAC在将其业务组的控制权由从控切换为主控时,其ARP请求处理单元发布的免费ARP报文包括所述业务组关联的业务虚拟IP地址和业务虚拟MAC地址的对应关系,所述免费ARP报文用于触发NFC刷新业务虚拟MAC地址与接口的对应关系。
18.如权利要求16所述的主从切换方法,其特征在于,所述互为备份IAC具有不同的真实MAC地址,所述IAC在将其业务组的控制权由从控切换为主控时,其ARP请求处理单元发布的免费ARP报文包括所述业务组关联的业务虚拟IP地址与其自身真实MAC地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新业务虚拟IP地址与真实MAC地址的对应关系。
19.如权利要求16至18中任意一项所述的主从切换方法,其特征在于,每个IAC还包括主从控制单元,用以根据交互的基本信息报文进行各业务组的主从控制权切换。
全文摘要
本发明公开了一种互为备份装置的主从切换方法,所述互为备份装置具有相同的虚拟IP地址,从装置拒绝响应对上述虚拟IP地址的ARP请求;从装置新当选为主装置时,发布其自身MAC地址与所述虚拟IP地址对应关系的免费ARP报文,所述免费ARP报文用于触发NFC刷新ARP记录。本发明还公开了另外一种可以进行负载分担的互为备份装置的主从切换方法。本发明还公开了一种主从切换系统。
文档编号G06F11/00GK1929324SQ20061014094
公开日2007年3月14日 申请日期2006年10月17日 优先权日2006年10月17日
发明者王飓 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1