掌桥专利:专业的专利平台
掌桥专利
首页

用于提供冗余的中继器、特别是路由功能的方法、系统、计算机程序和计算机可读的介质

文献发布时间:2023-06-19 11:06:50


用于提供冗余的中继器、特别是路由功能的方法、系统、计算机程序和计算机可读的介质

技术领域

本发明涉及一种用于在尤其工业网络中提供冗余的中继器、特别是路由功能的方法,在工业网络中,上层的子网络经由两个或更多冗余的中继器、特别是路由器与下层的子网络连接,其中,冗余的中继器中总是最多一个在激活模式中运行,同时一个或多个剩余的中继器处于待机模式,其中,每个冗余的中继器都具有用于控制中继器模式的中继器冗余模块,并且对于当前激活的中继器故障的情况,激活剩余的冗余中继器中的一个或多个。

此外,本发明涉及用于提供冗余的中继器、特别是路由功能的系统,该系统包括两个或更多冗余的中继器、特别是路由器,其使得上层的子网络与下层的子网络连接或者能够连接,其中,每个冗余的中继器都具有中继器冗余模块,并且其中,系统设计和/或设置为,冗余的中继器中总是最多一个在激活模式中运行,同时一个或多个剩余的中继器处于待机模式,并且对于当前激活的中继器故障的情况,剩余的一个中继器或剩余的多个个中继器中正好一个由其中继器冗余模块激活。此外,本发明涉及计算机程序产品和计算机可读的介质。

背景技术

在工业化领域、特别是分等级的自动化网中,使用IPv6路由器以及NAT64路由器。通过路由器能够相对简单地实现所谓的“网络分离”,通过网络分离例如保持通信负载以广播消息的顺序受限。IP路由是必要的,以便尽管有网络分离也能够实现IP层上的端到端连接。

为了阻止伴随网络分离的IP路由在使用者处要求大量的IT知识,能够使用自动配置的路由器。

尤其对于工业化使用,除了尽可能自动的配置之外,基础设施部件、例如中继器、特别是IPv6和NAT64路由器的尽可能高的可用性是重要的。高的可用性能够原则上通过提供替代中继器或替代路由器实现,他们承担或“取代”故障的设备/故障的功能。

在IPv4和IPv6的情况下,实际的路由过程是无状态的。对于无状态的情况,能够相对简单地从故障的路由器切换到替代路由器上。这尤其不必将替代路由器首先同步到故障的路由器的状态上。

特别地,申请人对于工业自动化应用的背景开发了一系列自动配置机制。例如,在此参考EP 2 940 972 A1、EP 2 955 904 B1、EP 3 076 636 B1、EP 3 062 490 B1和EP 3091 714 B1。

通过自动配置能够添加基本上标记状态的元件:自动的前缀配置、即子网带宽的自动配置。

在此,自动配置的IPv6和NAT64路由器的标准化的功能性的“基础”能够由所谓的“前缀委派”形成(尤其参见RFC 3633,其中,RFC为“请求注释(Request For Comments)”,并且RFC 3633能由https://tools.ietf.org/html/rfc3633调阅出)

前缀委派技术上基于DHCPv6、特别是根据RFC 3315,并且优选基于DHCPv6的所谓的“标记状态的”(“有状态的(stateful)”)变体方案。如果进行前缀委派,那么就将状态引入到实际上无状态的中继器、特别是IPv6或NAT64路由器中,该状态尤其对于自动配置来说是必要的。

在工业领域存在对于高可用性的需求,也对使用自动配置的中继器、特别是路由器的情况来说。

现有技术中已知了不同的冗余机制。

对于IP路由器来说存在所谓的共享地址冗余协议(CARP)以及虚拟路由器冗余协议(VRRP)(此外见RFC 5798)。相应地,路由器组得到整体虚拟的IP地址,并且常常也得到整体虚拟的MAC地址。在此,IP地址和MAC地址仅在相应的激活的路由器上接通。如果激活的路由器故障,那么激活其它路由器并且为自己要求虚拟的IP地址和MAC地址。关于IPv6该方法的优点在于,不必先声明“邻居不可到达性检测(Neighbour Unreachability Detection)”(见RFC 4861章节7.3),从而将唯一的IPv6节点从故障的IPv6路由器切换到替代路由器上。更确切地说,用于IPv6节点的切换是不可见的,因为不仅路由器的IPv6地址、还有其MAC地址都保持不变。

DHCPv6也知道冗余机制(尤其参见RFCs 6853“DHCPv6冗余部署考虑(RedundancyDeployment Considerations)”和7031“DHCPv6故障转移要求(FailoverRequirements)”),然而,仅一个用于DHCPv6服务器,因为注意力在服务器冗余上。特别地,这根据申请人的观点允许归因于最初的使用场所是办公室或者家庭,因为在其中应当自动分配IP地址,其中,IP地址与使用场所是哪个无关。如果终端设备故障,那么就不必有待机中等待的终端装置尽可能快地承担故障的装置的任务。这尤其是因为通常没有另外的设备依赖于例如家庭PC。

相比之下,一系列其他设备通常依赖于路由器/NAT设备,因此故障在这里表现出更大的影响。

最后,申请人已知的是,在企业领域中IP和NAT路由器常常由IT专业人员静态配置。在此,使用者特别地以IT专家的形式对其管理,即在激活的路由器故障时另一方面为冗余运行配置替代装置。这与不可忽视的人员和时间花费有关。

从WO 2018/006684 A1中得知消息处理方法和设备以及路由器。在方法的范畴中使用主路由器和备用路由器,其存在于主和备用关系中,其解决了在双机器待机网络中关于由使用者得到的地址存在不确定的问题。

此外,从CN 104158694中得知了热待机方法和用于DHCPv6服务器的相关的装置。在此,主机DHCPv6服务器接收的由DHCPv6客户端发送的VDUID包括的服务请求,确定VDUID是否在存储的DUID连接表中存储或没有存储,并且当是这样,则提供用于DHCPv6客户端的商业服务器。主机DHCPv6服务器在故障时通知待机DHCPv6服务器。待机DHCPv6服务器将VDUID的状态从不可用的状态切换到可用状态并且提供用于DHCPv6客户端的商业服务器。

在工业领域中存在对于也自动配置的中继器、特别是路由器的高可用性的需求。

发明内容

因此,本的目的在于,给出一种开头所述类型的方法,其能够实现也对于具有附加状态的自动配置的中继器或IPv6或NAT64路由器的提高的故障安全性。此外,本发明的目的在于,给出用于执行这样的方法的系统。

在开头所述的类型的方法中,该目的通过以下实现,冗余的中继器、特别是路由器分别包括用于尤其根据RFC 3633处理前缀委派的DHCPv6客户端,其中,总是仅正好激活的中继器的DHCPv6客户端尤其根据RFC3633处理前缀委派,并且冗余的中继器分别具有中继器控制模块,相应的中继器的中继器冗余模块告知中继器控制模块当前的中继器模式,并且相应的激活的中继器的中继器控制模块将其DHCPv6客户端的虚拟的DUID和/或委派给激活的中继器的前缀同步到一个或每个处于待机模式的中继器、特别是其中继器控制模块上,并且对于当前激活的中继器故障的情况,作为对于故障的反应而激活的中继器的中继器控制模块启动其DHCPv6客户端,并且DHCPv6客户端采用经由同步得到的DUID和/或采用经由同步得到的前缀。

此外,在开头所述的类型的系统中,该目的通过以下实现,冗余的中继器、特别是路由器分别包括用于尤其根据RFC 3633处理前缀委派的DHCPv6客户端,并且系统设计和/或设置为,总是仅正好激活的中继器的DHCPv6客户端尤其根据RFC 3633处理前缀委派,并且相应的中继器的中继器冗余模块告知相应的中继器控制模块当前的中继器模式,并且相应的激活的中继器的中继器控制模块将其DHCPv6客户端的虚拟的DUID和/或委派给激活的中继器的前缀同步到一个或每个处于待机模式的中继器、特别是其中继器控制模块上,并且对于当前激活的中继器故障的情况,作为对于故障的反应而激活的中继器的中继器控制模块启动其DHCPv6客户端,并且DHCPv6客户端采用经由同步得到的DUID和/或采用经由同步得到的前缀。根据本发明的系统设计和/或设置用于实施根据本发明的方法。根据本发明的系统设计和/或设置用于实施根据本发明的方法。

换句话说,本发明的基本想法在于,为DHCPv6客户端的前缀委派提供新形式的同步自动机制。这能够实现的是,基于或使用前缀委派的自动配置机制也在冗余的中继器、特别是路由器上使用,由此,取消了通过IT专业人员的刚性配置或者静态的配置的必要性,IT专业人员在布置中继器或路由器时静态地调节待发送的IPv6前缀并且相应地在故障时必须重新手动相应地调整替代装置。利用迄今为止静态的配置不能够在冗余的中继器、特别是路由器的背景下使用通过DHCPv6的自动的前缀委派,这能够通过本发明实现。

在此,本发明具体地提出下层的冗余机制,其特别地在用于IP路由器的已知的机制、特别是CARP或VRRP的基础上建立,然而独立于此并且尤其不代表这些已知的机制的扩展。更确切地说,根据本发明,提出在IP/MAC冗余角度之上的独立功能的冗余角度。特别地,使得自动配置控制层(“控制层(control plane)”)扩展出冗余机制。

在MAC冗余中,同时在网络中在多个路径上传输相同的包(所谓的“重复(Doppelung)”)并且随后在接收方识别并且抑制MAC层之中的该重复,从而使得更高的层、例如IP层不再见到重复。这样的MAC冗余在根据本发明的方法中不需要。同样不需要IP冗余,在该意义上,使得IP包重复并且经由不同的路径发送,其中,在IP数据移交给应用之前,接收的IP堆栈随后必须再次移除重复。与此相反,本发明在不发生重复的意义上使用IP冗余,而是绕过损坏的网络区域(例如损坏的中继器、特别是损坏的路由器或其接线),即完全在IP架构的原始的意义上。该绕路尤其通过路由器的再配置实现,其中,能够使用已知的机制,优选路由器通告、路由协议如OSPF、RIP等。

本发明提出一种机制,利用其从现存的标准(软件)部件出发,在前缀委派方面在技术上能够删除实际的冗余功能。

通过根据本发明的措施能够实现的是,冗余的中继器、特别是路由器除了虚拟的MAC和IP地址之外还共享DHCPv6客户端DUID,即所谓的DHCP特殊标识符。该客户端DUID针对委派前缀的上层标识逻辑的、激活的中继器、特别是逻辑的激活的路由器。DHCPv6前缀委派的状态由激活的中继器、特别是路由器同步到一个或多个替代中继器、特别是替代路由器上。在根据本发明的冗余切换中,状态也被转移到新的中继器、特别是新的路由器、即替代中继器或替代路由器上并且因此也使得客户端DUID“搬家”。

如果激活的中继器、特别是激活的路由器故障,那么替代中继器、特别是替代路由器能够接管,其中,该替换(除了可能的暂时的包丢失之外)对于连接在下层的下游网络的IPv6节点来说是不可见的。特别地,自动配置的中继器或路由器的IPv6地址和MAC保持恒定的。同时,在上层的委派的路由器的角度,中继器或路由器、特别是IPv6路由器的身份也保持相同。在IPv6中客户端的身份单独与其DUID耦连并且不与其MAC地址耦连。

因此能够实现的是,自动化使用者也得到其网络节点的冗余的多值,而不需要他们获得特定的IT技术知识或让IT人员参与进来。

对此,两个、或更多的冗余的中继器、特别是路由器根据本发明分别具有中继器控制模块,其一方面确保当前激活的中继器将DHCPv6前缀委派的状态同步到另外的在待机模式的中继器、特别是其中继器控制模块上,因此,其在激活的中继器、特别是路由器故障时在那里可用。(相应的)激活的中继器、特别是路由器的DHCPv6客户端的状态例如能够在激活的中继器、特别是路由器的文件系统中的文件中存储。

例如能够通过相应的激活的中继器的中继器控制模块将虚拟的DUID和/或委派的前缀告知给处于待机模式的一个或每个中继器的中继器控制模块,进行虚拟DUID和/或委派的前缀的同步。相应地,根据本发明的系统能够在有利的改进方案中设计/或设置为,通过相应的激活的中继器的中继器控制模块将虚拟的DUID和/或委派的前缀告知处于待机模式的一个或每个中继器的中继器控制模块,来进行虚拟DUID和/或委派的前缀的同步。优选地,虚拟的DUID和/或委派的前缀的同步通过协议实现。相应地,根据本发明的系统能够在改进方案中设计/或布置为,虚拟的DUID和/或委派的前缀的同步通过协议实现。例如,出图待机模式的一个或多个中继器或路由器的文件系统中,能够以激活的中继器或路由器的文件系统中的文件的形式进行状态数据的“安全远程复制(Secure Remote Copy)”。

中继器、特别是路由器处于激活状态中尤其意味着,一个或多个以本身已知的方式承担从上层(子)网络传输到下层(子)网络的功能,同时一个或多个中继器、特别是路由器在被动或待机模式下不做这些,而是仅准备并且“等待”,以便在激活的中继器或路由器故障时能够为其承担。

中继器或路由器故障例如能够归因于或者由于设备硬件的故障和/或中继器或路由器软件的死机和/或电源的故障和/或网络接线中的损坏。

特别地,本申请的意义上的中继器理解为将由实体接收的数据传递给其它的实体的第n层的功能,优选在ISO/IEC74981:1994,条文5.3.1.6的意义上。

中继器、特别是第3层的中继器能够以路由器的形式给定。

特别地,路由器理解为每个功能或每个节点(或者每个设备),其传递不是专门寻址到其的包,优选地在RFC 4861的意义上。

中继器、特别是路由器例如能够是(单独的)设备或(单独的)硬件部件,其设计和/或设置为,满足该功能。显而易见地也可行是,中继器作为“软件中继器”或“软中继器”或者路由器作为“软件路由器”或“软路由器”存在,例如以计算机程序或计算机程序集合的形式,其存放在设计用于实施其的装置、例如PC或其它的计算装置或任意其它的设备上。中继器或路由器或者中继器或路由功能例如能够也集成到控制系统、例如自动化系统的可编程逻辑控制器(SPS)或者其它的设备中,其不仅以硬件、还以软件的形式。

本申请的意义上的中继器或路由器的概念在涵盖前述所有可行性、特别是“软中继器”/“软路由器”以及实际上实施其它的功能或者用于其它的目的但是也承担中继器或路由器功能、即尤其也传递不是专门寻址到其处的数据的设备。例如,具有中继器或路由器功能的自动化设备、例如特别的可编程逻辑控制器也能够视作为根据本发明的中继器或路由器,或者当在其中集成相应设计和/或设置的单独的装置的时候,这样的控制器包括本发明的意义上的中继器或路由器。

通常,中继器或路由器具有至少一个上游接口和至少一个下游接口。然而也可行的是,中继器或路由器仅具有唯一的(物理)接口,并且上游和下游之间的区别仅基于软件实现。用作为接口的能够是中继器或路由器的端口。

特别地,上游接口、即中继器或路由器的上游接口是在至少一个上层(子)网络或子网络和/或中继器或路由器的方向上显示的接口。特别地,下游接口、即下游接口是在至少一个下层(子)网络或子网络和的方向上显示的接口。

特别地,对于冗余的中继器以路由器的形式给定的情况来说,其除了在路由器的情况下也能够称为路由器冗余模块和路由器控制模块的中继器冗余模块和中继器控制模块之外,还以有利的方式相应地包括路由器通告模块,借助于其能够在下层的网络中通告路由器通告消息。优选地,路由器通告模块设计和/或设置用于具体地处理路由器通告协议。

路由器通告模块能够相应地包括硬和软件的组合,或者通过硬和软件的组合形成,又或者是纯软件或纯硬件实现的。路由器通告模块例如能够包括相应的路由器通告守护进程(RAD或radvd)或者通过这样给定,在可能的情况下与合适的硬件组合。

中继器或路由器控制模块也能够分别是纯软件地实现或纯硬件地实现,或者包括软件和尤其专门为其设置的硬件的组合。

除了激活的路由器故障的情况下的状态同步之外,中继器或路由器控制模块还承担参与的DHCPv6客户端的具体的编排,并且特别是路由器通告模块。

特别地,如果冗余的中继器的中继器控制模块由其中继器的中继器冗余模块报告为中继器过渡到激活状态,那么中继器控制模块就激活DHCPv6客户端,并且首先在冗余的中继器以冗余的路由器的形式存在的情况下,特别是路由器通告模块。

特别地,(相应地)作为对之前激活的路由器的故障起反应而过渡到或已经过渡到激活状态中的路由器的路由器通告模块优选保持下层的网络中经由同步得到的前缀是激活的,尤其将该前缀优选地根据RFC 4861告知连接至下层的网络上的IPv6参与者。

一个或多个剩余的、当前未激活而是与之相反处于待机模式的冗余的中继器或路由器的中继器控制模块或路由器控制模块停用其DHCPv6客户端和尤其其路由器通告模块,和/或保持他们的停用,直到一个或多个中继器或路由器不是激活的。

优选地,仅相应的激活的冗余的中继器、尤其仅相应的激活的冗余的路由器进行前缀委派,同时剩余的冗余的中继器或路由器的DHCPv6客户端优选处于待机模式或者是未激活的并且不进行前缀委派。

根据本发明,中继器、特别是路由器的角色经由中继器冗余模块、特别是路由器冗余模块控制,其同样具有冗余的中继器中的每个、尤其冗余的路由器中的每个。中继器冗余模块能够,正如中继器控制模块和路由器通告模块那样,分别是纯软件实现又或者是纯硬件实现,或者包括软件和尤其专门为其设置的硬件的组合。

在优选的设计方案中设计和/或设置中继器冗余模块、特别是路由器冗余模块,以便实施共享地址冗余协议和/或虚拟路由器冗余协议、特别是根RFC 5798,这已被证明是成功的。

在另外的实施方式中能够设置的是,除了(相应地)作为对之前激活的中继器故障的反应而(新)激活的中继器采用同步的状态,(新)激活的中继器在上层、特别是前缀委派的路由器中验证经由同步的到的委派的前缀。根据本发明的系统在优选的设计方案中被相应地设计和/或设置。

以有利的方式在每个冗余的中继器、特别是路由器上存储相同的虚拟的IP地址和/或相同的虚拟的MAC地址,并且虚拟的IP地址和/或虚拟的MAC地址总是仅在处于激活模式中的冗余的中继器、特别是路由器上被激活。优选地,根据本发明的系统相应地设计和/或设置。

如果作为对于冗余的中继器、特别是路由器的故障的反应,将其它的中继器、特别是其它的路由器转移到激活状态中,那么一个或多个中继器进一步优选为自己要求相同的虚拟的IP地址和/或相同的虚拟的MAC地址,其之前被故障的中继器、特别是路由器使用,并且优选地也存储在新激活的中继器、特别是路由器上。

另一个特别优选的设计方案提出,冗余的中继器、特别是冗余地路由器中的作为首先处于激活模式中的那个或那些产生唯一的自己的DHCPv6客户端DUID。特别地,这尤其能够通过唯一的比特模式或者或者替换DUID来实现,其中,唯一的比特模式能够例如通过该中继器或路由器和/或当前的系统时间来提供。

实际上,客户端DUID根据RFC 3315不仅从(虚拟的)MAC地址形成。因为该MAC地址通常仅在各个上游或下游网络之中是唯一的,其导致上层委派的路由器中的DUID冲突。当中继器或路由器类似于生产机器那样多次相同地构造的时候更是如此。出于该原因,激活的中继器或路由器优选在其最先启动中使其客户端DUID隔开,这能够通过DUID的通过唯一的比特模式的扩展/替代来实现。根据本发明的系统在优选的实施方案中相应地设计和/或设置。

能够提出,至少一个、优选所有冗余的中继器都是网关、特别是应用层网关(ALG)。其通常具有一个或多个IPv6地址并且能够将应用协议通过IPv6放置到一个或该相同的应用协议或非IP协议上。

中继器也能够以路由器的形式使用。然后能够设置为,冗余的中继器中的至少一个是IPv6路由器。替代地或附加地,冗余的中继器中的至少一个是NAT64路由器。当然,全部冗余的中继器也能够以IPv6路由器的形式或者全部冗余的中继器以NAT64路由器的形式存在。

本发明的另一个内容是计算机程序,其包括程序代码构件,计算机程序在实施程序并且由至少一个计算机实施时,执行根据本发明的用于提供冗余的路由功能的方法。

此外,本发明设计计算机可读的介质,其包括指令,当指令在至少一个计算机上实施时,使得至少一个计算机执行根据本发明的用于提供冗余的路由功能的方法的步骤。

计算机可读的介质例如能够是CD-ROM或DVD或USB或闪存。要说明的是,计算机可读的介质不应当仅理解为物理的介质,而且能够例如也以数据流和/或代表数据流的信号的形式存在。

附图说明

结合下述联系附图的根据本发明的实施方式的描述阐述本发明的另外的特征和优点。

唯一的附图示出了根据本发明的系统的实施例的纯示意图。

具体实施方式

示出的是根据本发明的用于提供冗余的中继器、当前为路由功能的系统1的实施例。

系统1包括两个冗余的中继器,其在所示的实施例中通过两个冗余的路由器2、3给定,这两个路由器将自动化解决方案的在附图中未另外示出的工业化网络的上层的上游子网络4与下层的下游子网络5连接。此外,上游和下游子网络4、5在附图中仅纯示意性地通过向上或向下指示的箭头6表示。两个冗余的路由器2、3中的每个都具有在附图中未示出的与上游子网络4连接的上游接口以及在附图中同样未示出的与下游子网络5连接的下游接口。

两个冗余的路由器2、3中的每个还包括DHCPv6客户端7,、IP堆栈8和路由器通告模块9,其以已知的方式设计和设置用于具体地执行通告协议。路由器通告模块9在当前给定为路由器通告守护程序(RADVD)或者分别包括这样的路由器通告守护程序。DHCPv6客户端7和IP堆栈8同样代表由根据现有技术的路由器的充分已知的元件,从而不进一步讨论。

在运行中,两个冗余的路由器2、3中总是仅最多一个在激活模式中,同时另一个处于待机模式并且“等待”,以便尤其对于迄今为止激活的路由器故障、特别是不再能够传递包的情况,能够承担迄今为止激活的路由器。路由器故障例如能够归因于或者由设备硬件的故障和/或路由器软件的死机和/或电源的故障和/或网络接线中的损坏引起。接下来假设的是,在初始状态下在附图中左边的路由器2处于激活模式,并且在附图中右边的路由器3处于待机模式,其中,清楚的是,角色同样能够调换。

仅处于激活模式中的路由器2、3承担路由功能,并且以已知的方式将来自上层的子网络4的包传递到下层的子网络5中。

除了已经提及的模块或部件,系统1的两个冗余的路由器3中的每个具有路由器冗余模块10,其控制相应的路由器2、3的模式、即其角色。

当前,设计和/或设置两个冗余的路由器2、3的中继器冗余模块10,以便实施所谓的共享地址冗余协议(CARP)。替代地或附加地能够设计和/或布置其,以便实施所谓的共享地址冗余协议(VRRP),尤其根据RFC5798。

两个冗余的路由器2、3得到共同的虚拟的IP地址,并且在当前也得到共同的虚拟的MAC地址(对于虚拟的IP地址和MAC地址,尤其参见RFC 5798)。在此,虚拟的IP地址和MAC地址相应地仅在激活的路由器2、3、当前即为左边的路由器2上激活。如果激活的路由器2故障,那么另一个路由器3就从待机模式切换到激活模式,并且为自己要求虚拟的IP地址和MAC地址。

两个路由器2、3的路由器冗余模块10能够相互通信,这在附图中通过连接两个模块的箭头11表示。因此,可行的是,当激活的路由器3故障并且处于待机模式的路由器为此必须接管的时候,能够通知处于待机模式的路由器3。

具体地,当前激活的路由器3的路由器冗余模块10周期地以合适的时间间隔(例如1秒)、发送消息给处于待机模式的路由器2的路由器冗余模块10(对于周期的发送,尤其参见根据RFC 5798的“通告时间(Adver_Timer)”)。如果激活的路由器3故障,那么该消息消失,并且到那时处于待机模式的路由器3作为对器冗余模块10的消息的消失的反应而过渡到激活状态中。

要说明的是,在当前描述的实施例的范畴中,根据本发明的系统1包括两个冗余的路由器2、3。显而易见地也能够设置三个或更多个冗余的路由器2、3,并且在该情况下所有的路由器冗余模块10同样能够相互通信。如果存在三个或更多冗余的路由器2、3,那么在激活的路由器2故障的情况下决定两个或更多个剩余的路由器2、3中的哪个过渡到激活的模式中。对此例如能够设置优先级顺序。此外说明的是,替代地,当相应的激活的路由器2故障时,其消息消失,也可行的是,然后才由其路由器冗余模块10发送消息、以便将故障通知一个或多个剩余的冗余的路由器3。

当前,两个冗余的路由器2、3是自动配置的IPv6路由器,其标准化功能“基础”是根据RFC 3633的所谓的前缀委派。替代于两个路由器2、3(又或者仅其中一个)是IPv6路由器能够例如也通过自动配置的NAT64路由器提供。

能够由冗余的路由器2、3的DHCPv6客户端7执行的前缀委派技术上基于根据RFC3315的DHCPv6,并且尤其基于DHCPv6的所谓的“标记状态的”(“有状态的(stateful)”)变体方案。由此将状态引入到没有动用前缀委派的自动配置是无状态的路由器2、3中。

在附图中状态纯示意性地通过设置有附图标记12的元件在相应的冗余的路由器2、3的DHCPv6客户端7中表示。当前,状态12包括在附图中未详细示出的前缀以及虚拟的DHCPv6客户端DUID(DUID在此为用于DHCP的独特的标识符),其中,该前缀在根据RFC 3633进行前缀委派的情况下对激活的冗余的路由器2的DHCPv6客户端7委派。该客户端DUID相对于委派前缀的上层、尤其相对于在附图中未示出的前缀委派的上层的路由器来识别逻辑的激活的路由器2。

为了也在“标记状态的”(“有状态的(stateful)”)情况下能够提供连续的服务,两个冗余的路由器2、3中的每个都包括路由器控制模块13。相应的路由器2、3的路由器冗余模块10告知路由器控制模块当前的路由器模式,即相应的路由器2、3是否在激活模式还是待机模式中。相应的告知或消息在运行中周期地以合适的时间间隔(例如每秒)由相应的路由器2、3的路由器冗余模块19传输给相应的路由器控制模块13。这在附图中纯示意性地通过箭头14表示,该箭头从相应的路由器冗余模块10指向相应的路由器控制模块13。相应地设计并且设置路由器冗余模块10或路由器2、3。

此外,设计和/或设置路由器控制模块13,以便根据由路由器冗余模块10所发信号的角色执行状态同步。路由器控制模块具体地设计和/或设置为,以便其在被相应的路由器2、3的路由器冗余模块10发信号的情况下、相应的路由器2、3在激活模式的情况下,将相关的路由器2、3的DHCPv6客户端7的虚拟的DUID以及为相关的路由器2、3的DHCPv6客户端7动态委派的前缀同步到处于待机模式的一个(或者多个)路由器上。对于存在三个或更多冗余的路由器2、3的情况,对全部处于待机模式的路由器进行同步。包括委派的前缀和DHCPv6客户端7的虚拟的DUID的状态12能够在激活的路由器2中例如在路由器2的文件系统中的文件中存储。

同样地,状态12的同步周期地(例如每秒或以其它的时间间距)并且通过协议实现。在附图中同步纯示意性地通过连接两个冗余的路由器2、3的两个路由器控制模块13的双箭头15以及使得相应的路由器控制模块13与状态12连接的双箭头15表示。

当前仅激活的路由器2执行前缀委派,并且仅激活的路由器2将对其委派的前缀和其DHCPv6客户端7的虚拟的UDID同步到另一个处于待机模式中的路由器3上。相反地,如果路由器2、3的路由器控制模块13收到涉及的路由器2、3处于待机模式(当前为路由器3)的信号,那么就不同步状态12到该或这些剩余的路由器2、3上,而是仅由正好一个激活的路由器2接收该状态12。

当前,路由器通告模块9负责的是,根据RFC 4861(“邻居发现(NeighbourDiscovery)”)将动态分配给激活的路由器2的DHCPv6客户端7的前缀告知给连接至下层的网络5的、在附图中未示出的IPv6参与者。该关系在附图中通过从DHCPv6客户端7指向路由器通告模块9的箭头16表示。

由于状态同步,除了相同的虚拟的Mac和IP地址(尤其根据CARP和/或根据RFC5798的VRRP),激活的冗余的路由器2的相应的状态12在所有的冗余的路由器2、3上也可用。

除了状态同步之外,路由器控制模块13也承担参与的DHCPv6客户端7的具体的编排以及路由器通告模块9。具体地,路由器2、3的路由器控制模块13如果从其路由器冗余模块10收到路由器2、3处于激活的状态的信号,则激活DHCPv6客户端7和路由器通告模块9并且在激活模式保持的情况下保持他们激活。

相反地,如果路由器2、3的路由器控制模块13被路由器冗余模块10告知路由器2、3处于待机模式,那么路由器控制模块13停用相关的路由器2、3的HCPv6客户端7和路由器通告模块9,并且只要保持待机模式,就保持其停用。路由器控制模块13相应地影响HCPv6客户端7和路由器通告模块9,这在附图中纯示意性地通过箭头17和18表示,其从路由器控制模块13指向HCPv6客户端7或路由器通告模块9。

对于因为路由器2、3故障(当前为激活的路由器2)而进行模式改变的情况来说,做为对故障的反应而激活的路由器2、3(当前为第二冗余的路由器3)的路由器控制模块13启动该路由器的HCPv6客户端7并且其(由于状态同步)在开始运行时“完全正常”地采取同步的状态12。该启动是取决于系统的,例如在Linus系统的情况下,利用“systemd”通过执行指令“"systemctl start dhcpd.service”实现。相关的路由器3的路由器控制模块13被该路由器的路由器冗余模块10告知关于模式改变。可选地,作为对路由器2的故障的起反应而激活的路由器3能够附加地在附图中未示出的)上层的委派的路由器中验证(委派的前缀。

并行地,随后激活的路由器2的路由器通告模块9,该模块(就像HCPv6客户端7)被路由器控制模块13作为对于另外的冗余的路由器2的故障的反应激活,使得迄今为止经由同步得到的下层子网络5的前缀继续保持激活。

对于连接至下层子网络5的IPv6节点(在附图中未示出),该改变除了从该网络5或到该网络5中去的可能暂时出现的包丢失之外是不可见的。特别地,路由器2、3的IPv6地址和Mac保持恒定。同时,上层的委派的路由器(在附图中未示出)、IPv6路由器2、3的身份也保持相同。在IPv6中客户端的身份单独与其DUID耦连并且不与其MAC地址耦连。

即使当路由器2、3中的一个故障并且甚至在自动配置的、由于其“标记状态的”(“有状态的(stateful)”)路由器2、3的情况下,也能够提供冗余功能并且因此连续地维持得到路由器服务。自动化使用者得到重要的基础设施部件(特别是其网络节点)的冗余的增值,而不需要他们对此获得IT技术知识或者让IT人员参与进来。状态同步和角色改变完全自动运行。

尽管通过优选的实施例在细节上详细地阐述并描述了本发明,但本发明并不局限于所公开的实例,并且本领域的技术人员能够在不脱离本发明的保护范围的情况下由此推导出其他变体方案。

相关技术
  • 用于提供冗余的中继器、特别是路由功能的方法、系统、计算机程序和计算机可读的介质
  • 用于向直径信令路由器提供集成的监控和/或防火墙功能的方法、系统和计算机可读介质
技术分类

06120112803420