CN1770733A - 容错网络构架 - Google Patents

容错网络构架 Download PDF

Info

Publication number
CN1770733A
CN1770733A CNA2005100875502A CN200510087550A CN1770733A CN 1770733 A CN1770733 A CN 1770733A CN A2005100875502 A CNA2005100875502 A CN A2005100875502A CN 200510087550 A CN200510087550 A CN 200510087550A CN 1770733 A CN1770733 A CN 1770733A
Authority
CN
China
Prior art keywords
network
address
virtual
node
node according
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
Application number
CNA2005100875502A
Other languages
English (en)
Other versions
CN1770733B (zh
Inventor
安东尼·戈利亚
·J·兰姆哈斯卡
托马斯·施瓦茨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CN1770733A publication Critical patent/CN1770733A/zh
Application granted granted Critical
Publication of CN1770733B publication Critical patent/CN1770733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Abstract

本发明提供了一种容错网络结构,其使用包括到可寻址网络的第一网络接口的网络节点。将由第一IP地址范围所定义的第一网络接口IP地址分派给第一网络接口。该网络节点还包括由在第一IP地址范围外的IP地址范围所定义的至少一个虚拟IP地址。从第一网络接口将至少一个虚拟IP地址通告到可寻址网络,并且可将寻址到至少一个虚拟IP地址的数据包路由到第一网络接口。

Description

容错网络构架
技术领域
本发明一般涉及用于提高网络可用性的系统和方法,更具体地,涉及用于通过使用容错网络架构来提高网络可用性的系统和方法。
背景技术
在因特网协议(IP)网络中,减小故障时间和实现高可用性是非常重要的。一个实现高可用性的方法是在两(多个)网络主机之间共享单个或多个IP地址。将于主机之间切换所共享的IP地址的拥有者身份的操作称为漂移(floating),并且将所共享的IP地址称为漂移IP地址。在任何给定的瞬间只有一个主机能拥有该漂移IP地址。
将被配置为IP地址在其间漂移的主机称为高可用性(HA)节点。可能拥有漂移IP地址的所有HA节点组成HA群集。在任何给定的瞬间只有在HA群集中的一个HA节点可以拥有IP地址。在HA群集内,HA节点使用(例如)心跳协议来彼此监测,所以每个HA节点知道哪一个节点应该拥有漂移IP地址。
用于实现高可用性的现有方法存在几个问题。一个问题是HA节点通常必须位于相同的局域网(LAN)中。即相同的LAN必须物理上与HA节点共存。因为IP地址不能可靠地遍历(traverse off)给定的LAN的事实而产生的限制使得HA节点间所允许的距离和位置受到严格的约束。
当主机试图在不同的物理接口间提供负载均衡和/或冗余时产生另一个问题。即在这种情况下,因为接口共享相同的IP地址,所以所有冗余接口必须在相同的LAN上。因此,由于可恢复的本地网络故障,HA节点可能过早地解决(fail over)其IP地址的故障。这可能导致因为故障解决而引起的启动操作和增加的等待时间。当HA节点连接到多个LAN时这个限制非常明显,并且单个LAN的故障导致HA节点的不可用性。此外,因为可能将LAN当作单个故障点,所以一个网络设备的故障可能使给定LAN上的所有接口不可操作。
因此,非常需要用于在HA节点间漂移IP地址的改进的方法和系统,以及改进的本地子网故障检测和恢复。
发明内容
在一个通常方面,容错网络构架使用包括到可寻址网络的第一网络接口的网络节点。将由第一IP地址范围定义的第一网络接口IP地址分派给第一网络接口。该网络接口还包括由第一IP地址范围以外的IP地址范围定义的至少一个虚拟IP地址。从第一网络接口将至少一个虚拟地址通告给可寻址网络,并且将可寻址到至少一个虚拟IP地址的数据包路由到第一网络接口。
在另一方面,容错方法包括用一个或多个虚拟IP地址来配置节点,将一个或多个虚拟IP地址通告给可寻址网络的网络设备,监测一个或多个默认路由器,并且在节点间漂移一个或多个虚拟IP地址。
可以由计算机系统和/或存储于计算机可读介质上的计算机程序来实现本发明的多个方面。计算机可读介质可以包括盘、设备、和/或所传播的信号。
从下面包括附图的说明书和从权利要求书中,其他特点和优点将变得明显。
附图说明
图1示出了根据本发明的一个实施例的容错网络;
图2示出了根据本发明的一个实施例的容错网络节点;
图3示出了根据本发明的一个实施例的容错网络方法;和
图4示出了根据本发明的一个实施例的容错网络。
具体实施方式
在各种实施例中,本发明都提出了用于提高网络可用性的容错网络构架。应该理解在下面描述的系统和方法可以包括在实际实施中的各种其他组件和/或处理过程。
图1示出了根据本发明的多个方面的容错网络10的一个实施例。在这个实施例中,容错网络10包括第一节点(节点A)110和第二节点(节点B)120。应该理解在各种实施例中容错网络10可以包括任何数量的节点。
节点110、120的每一个可以是诸如用于为一个或多个用户提供资源的计算机或计算机系统之类的服务器或主机。通常,节点110、120包括用于通过网络130进行彼此通信的软件组件和硬件组件。可以将节点110、120进行构造和安排以使用各种通信和/或路由协议来通信。
在一个实施例中,将第一节点110配置为响应第一主机控制器115进行操作,而将第二节点120配置为响应第二主机控制器125进行操作。虚线是要指示在一些实施例中,主机控制器115、125或其部分可以指令节点110、112的一个或多个组件来进行所述的操作。
主机控制器115、125的例子包括(但不限于)计算机程序、软件应用、计算机代码、指令组、插件(plug-in)、微处理器、虚拟机、设备、或其组合,用于独立地或共同地指令一个或多个计算设备如所编程那样的进行操作和相互作用。通常,主机控制器115、125可以利用任何适当的算法和计算语言,并且能够以计算机、计算机系统、设备、机器、组件、物理或虚拟设备、存储介质、或能够递送指令的传播信号的任何类型永久地或临时地实施。当作为软件或计算机程序实施时,主机控制器115、125可以(例如)存储在计算机可读介质上(如,设备、盘、或传播的信号),从而当计算机读取介质时执行这里所述的功能。
如图1所示,节点110、112包括用于连接到网络130的至少一个物理网络接口卡(NIC)。通常,NIC是到网络130的上行链路或连接点。在一个实施例中,用第一网络接口卡(NIC1)111和第二NIC(NIC2)112来配置第一节点110。用第一网络接口卡(NIC1)121和第二NIC(NIC2)122来配置第二节点120。在各个实施中,节点110、120可以包括附加的NIC。
在一个实施例中,网络130包括或形成诸如局域网(LAN)的可寻址IP网络的一部分。在这种实施例中,在任何给定时间点必须由唯一的IP地址来表示每个网络设备。IP寻址方案使得应用能够使用其IP地址联系具体的网络设备主机。
在一个实施例中,将第一IP地址(IP1)绑定到在第一节点110上的第一NIC111,将第二IP地址(IP2)绑定到在第一节点110上的第二NIC 112,将第三IP地址(IP3)绑定到在第二节点120上的第一NIC 121,并且将第四IP地址(IP4)绑定到在第二节点120上的第二NIC 122。
在各种实施中,网络130可以包括或形成任何类型的可寻址网络的一部分,可寻址网络包括(但不限于)局域网(如以太网)、广域网(如因特网和/或万维网)、电话网络(如,模拟、数字、有线、无线、PSTN、ISDN、GSM、GPRS、和/或xDSL)、分组交换网络、无线电网络、电视网络、有线网络、卫星网络、和/或任何其他被配置来承载数据的有线或无线通信网络。网络130可以包括的元件有(比如)中间节点、代理服务器、路由器、交换机、和被配置来引导和/或递送数据的适配器。在各种实施中,网络130可以与一个或多个其他通信网络合作或在一个或多个其他通信网络内进行操作。
在一个实施例中,将网络130进行配置以包括多个子网(SUB1-SUB4)131-134。通常,子网是其中网络设备共享诸如共同IP前缀的共同地址组件的网络的一部分。可以通过用IP地址的邻近范围来配置子网接口以在网络130(如LAN)上创建子网。例如,可以用IP前缀10.10.10.来配置第一子网(SUB1)131,而用IP前缀11.11.11.来配置第二子网(SUB2)132。
在各种实施中,可以将节点110、120的每一个物理连接到多于一个子网或“多重连接(multihomed)”。通常,多重连接的主机可以具有连接到不同子网或LAN的多个物理网络接口,并且可以在每个子网或LAN具有一个(或多个)IP地址。
在一个实施例中,第一节点110通过第一NIC(NIC1)111连接到第一子网(SUB1)131并且通过第二NIC(NIC2)112连接到第二子网(SUB2)132。第二节点120通过第一NIC(NIC1)121连接到第三子网(SUB3)133并且通过第二NIC(NIC2)122连接到第四子网(SUB4)134。
如所示的,网络130还包括几个路由器(R1-R4,RX和RY)141-144、145和147。通常,路由器是被配置来引导网络通信量的网络设备。在一个实施例中,第一路由器(R1)141连接到第一子网131,第二路由器(R2)142连接到第二子网132,第三路由器(R3)143连接到第三子网133,并且第四路由器(R4)144连接到第四子网134。在一个实施例中,网络130包括:第五路由器(RX)145,用于与客户系统150连接;和第六路由器(RY)146,连接第二路由器(R2)142和第四路由器(R4)144。在各种实施中,网络130可以包括其他路由器(未示出)。
第一路由器(R1)141知道第一节点110的第一NIC(NIC1)111的IP地址(IP1),并且第二路由器(R2)142知道第一节点110的第二NIC(NIC2)112的IP地址(IP2)。第三路由器(R3)143知道第二节点120的第一NIC(NIC1)121的IP地址(IP3),并且第四路由器(R4)144知道第二节点120的第二NIC(NIC2)122的IP地址(IP4)。
在各种实施例中,将客户系统150配置来从网络130请求和接收信息。可以通过一个或多个有线和/或无线数据通路将客户系统150连接到网络130,该客户系统150还可以包括客户设备。客户设备的例子包括个人计算机(PC)、工作站、笔记本计算机、可联网的个人数字助理(PDA)、和可联网的移动电话。其他例子包括(但不限于)微处理器、集成电路、或任何其他组件、机器、工具、设备、或其能够响应和执行指令的某种组合。
在各种实施中,将节点110、120以冗余和可升级的方式彼此备份以提供高可用性(HA)。比如,HA节点可以作为热-冷对(hot-cold pair)操作从而在给定时间仅仅一个节点有效地服务于应用。此外,HA节点可以位于不同的物理位置,从而将灾难情况隔离到单个节点。在HA群集的一个节点发生故障的情况下,应用转移到另一个HA节点。IP地址可以在HA群集的HA节点间漂移,从而将应用再定向到可工作的HA节点。
在各种实施中,将第一节点110配置为包括至少一个虚拟IP地址(VIP)。一个和多个VIP地址可以在HA群集中的HA节点间漂移。在一个实施例中,将第一节点110配置为包括没有耦合到任何物理接口或子网的VIP地址(VIP1)。比如,VIP1没有绑定于任何物理NIC(如NIC1和NIC2)或网络130的任何子网(如SUB1-SUB4)。而是可以将VIP1分派给其自己具有唯一子网的虚拟接口。
在一个实施中,将一个或多个VIP地址分派给第一节点110的回送(loopback)适配器或回送接口。在各种实施例中,第一节点110的回送接口包括预定的回送IP地址(如127.0.0.1)。回送接口的预定IP地址保持不变,而将一个或多个VIP地址额外地分派给回送接口。
在各种实施例中,用特殊的子网掩码或逻辑比特掩码来定义被分派给回送接口的一个或多个VIP地址的每一个。通常,子网掩码定义子网的大小或范围。在一个实施例中,用32比特网络掩码(如IP版本4中的255.255.255.255)来配置VIP1地址,从而其不受任何其他IP子网的约束。
从第一节点110(或第二节点120)将一个或多个VIP地址和子网掩码通告给在容错网络10中的其他设备。比如,第一节点110可以将VIP1地址和对应的子网掩码通告给使用路由协议的其他网络设备。可以与第一源IP地址(IP1)一起将VIP1地址通告给第一子网(SUB1)131,同时可以与第二源IP地址(IP2)一起将VIP1地址通告给第二子网(SUB2)132。路由协议的例子包括(但不限于)路由信息协议(RIP)或开放最短路径优先(OSPF)协议。通常,路由协议将VIP地址和对应的子网掩码传遍网络。
将VIP地址和子网掩码通知给诸如(例如)路由器的网络设备,相应地,将数据包路由给节点。因为在网络中的路由器没有关于VIP所在的子网的预先判断,所以路由器将接收用于路由数据包的VIP地址。比如,第二路由器(R2)142通常知道与第一子网(SUB1)131(也许其他子网)关联的IP范围。第二路由器(R2)142将注意到所通告的VIP1并不符合其知道的任何子网的IP范围。因为第二路由器(R2)132还接收VIP1的32比特子网掩码,所以第二路由器(R2)计算其不存在于R2知道的任何子网中,并且接受VIP1地址用于路由数据包到第一节点110。
图2示出了根据本发明一些方面的容错网络节点110的一个实施例。如图所示,节点110包括第一NIC(NIC1)111、第二NIC(NIC2)112、第一默认路由器(RD1)113、第二默认路由器(RD2)114、和主机控制器115。
如图所示,主机控制器115包括操作系统。操作系统的例子包括(但不限于)Linux、Solaris和Windows。在各种实施例中,主机控制器115或操作系统包括提供在软件和/或存储器中的回送接口或回送适配器。通常,回送接口不受任何实际NIC的约束并且基本上免于任何物理故障。
在各种实施中,将一个或多个VIP地址(如VIP1)分派给回送接口。此外,用特殊子网掩码(如在IP版本4中的255.255.255.255)定义一个或多个VIP地址,从而VIP地址不耦合于任何物理接口(如NIC1、NIC2)或子网(如SUB1、SUB2)。可以向回送接口分派预定的保持不变的IP地址(如127.0.0.1),而同时可以将一个或多个VIP地址额外地分派给回送接口。
节点110还包括路由软件。通常,根据本发明,可以使用路由协议的各种软件实现(如Zebra,GateD,RouteD)。可以改进或配置路由协议来将一个或多个VIP地址(如VIP1)与对应的子网掩码一起通告给其他网络设备。
在一个实施中,将路由协议配置为从第一NIC(NIC1)111和第二NIC(NIC2)112同时通告VIP1地址和子网掩码,从而VIP1和子网掩码传播到各种网络设备。在一个实施例中,在第一路由器(R1)131中的VIP1的路由表入口映射到第一NIC(NIC1)111的IP地址(IP1),并且在第二路由器(R2)132中的VIP1的路由表入口映射到第二NIC(NIC2)112的IP地址(IP2)。
在各种实施中,操作系统被配置为将诸如(例如)第一默认路由器113和第二默认路由器114的一个或多个默认路由器提供给节点110。通常,默认路由器113、114能够为节点110引导输入和/或输出的网络通信量。第一默认路由器113可以为第一NIC(NIC1)111引导输出通信量,并且第二默认路由器114可以为第二NIC(NIC2)112引导输出通信量。
在各种实施例中,主机控制器115包括用于监测默认路由器113、114操作的路由看守程序。在一个实施中,可以将路由看守程序实施为用户级别的进程(user level process),并且路由看守程序可以包括在操作系统上运行的一个或多个软件算法。该路由看守程序可以执行诸如(例如)试通测试的监测测试,以确定默认路由器113、114是否在正常工作。
如果路由看守程序确定默认路由器113、114的一个不工作,则不再将其作为默认路由器。路由器看守程序确保数据包被路由或重路由到可工作的路由器。该路由看守程序可以持续地监测默认路由器113、114并且可以在路由器再次变为可工作时将其加入。在一些实施中,将主机控制器115配置为在两个默认路由器113、114间提供输出数据包的负载均衡。
可以使用一个伪代码的例子来实施路由看守程序如下:
  while(TRUE){

     for each NIC router association{

           if(router passes monitor test){

               router_ok_count++;

                }

                if(router_ok_count!=last_router_ok_count){

                      last_router_ok_count=router_ok_count;

                      if(router_was_marked failed){

                             mark router as good;

                             and router as default route out NIC;

                      }

              }

              else{

                   mark router as failed;

                   remove router from NIC’s default router list;

              }

  }

  sleep for some time;
 }
在一个实施例中,主机控制器115还包括高可用性(HA)软件。在一个实施中,节点110形成HA群集的一部分并且将HA软件配置为在HA群集内监测HA节点的情况。HA软件可以使用心跳协议并且在HA节点间持续地通信。如果拥有VIP1地址的HA节点发生故障,则VIP1地址漂移到HA群集中的另一个HA节点并且在其上进行配置,然后在HA群集由适当的路由协议将其通告。
图3示出了根据本发明的一些方面改善网络可用性的方法30的一个实施例。在一个实施中,可以由硬件(如装置、计算机、计算机系统、设备、组件)、软件(如程序、应用、指令集、代码)、存储介质(如盘,设备、传播的信号)、或其组合来实施方法30。但是应该注意能够以与本发明的一些方面一致的任何方式执行方法10。
在步骤310,用一个或多个VIP地址来配置至少一个节点。在一个实施中,将虚拟IP地址(VIP1)分派给第一节点(如节点A110)。通常,所述一个或多个VIP地址不耦合于任何网络接口(如NIC1、NIC2)或子网(如SUB1、SUB2)。
在各种实施例中,将一个或多个VIP地址分派给诸如节点的回送适配器和回送接口的虚拟接口。可以向回送接口分派保持完整的预定回送接口IP地址(如127.0.0.1),而同时分派一个或多个额外的VIP地址。可以用子网掩码(如255.255.255.255)来定义一个或多个VIP地址,从而在任何物理接口或子网(如SUB1、SUB2)的边界外存在VIP地址。实际上,将VIP1地址定义为存在于其自己的子网中。
在步骤320,将一个或多个VIP地址通告给一个或多个网络设备。在一个实施中,由NIC1和/或NIC2使用IP路由协议来通告VIP1。路由协议可以包括路由度量或开销并且可以由适当的路由软件来实施。
可以配置HA节点从而用相同的路由开销或度量同时从NIC1和NIC2之中通告VIP1。诸如在各种子网(如SUB1、SUB2)上的路由器的网络设备接受这些路由更新并且将它们传播到网络中的其他路由器。一些路由器和路由协议能够在多个相等开销的路由间均衡负载。一旦被通知了VIP1,则在SUB1上的路由器(R1)为VIP1创建指向IP1的入口,并且路由器(R2)为VIP1创建指向IP2的入口。
如果路由协议支持在相等开销路线(如OSPF)之间的负载均衡,则从SUB1或SUB2以外的子网来的寻址于VIP1的通信量被在可用的物理接口(如NIC1和NIC2)之间进行负载均衡。如果物理接口(如NIC2)发生故障,则对应的路由器(如R2)不再从有故障的物理接口接收路由更新。然后路由器(如R2)将从其路由表中删去VIP1到对应物理IP地址(IP2)的入口。在应用相等开销路由进行负载均衡的情况中,所有从SUB1或SUB2以外的子网来的寻址于VIP1的通信量将进入到剩下的物理接口(如NIC1)。这避免了到VIP1的输入通信量的中断。
在步骤330,监测一个或多个默认路由器。在一个实施中,用一个或多个默认路由器(RD1和/和RD2)来配置第一节点(如节点A110),并且操作系统支持在多个默认路由器之间的输出通信量的负载均衡。在这个实施中,在可用的物理接口(如NIC1和NIC2)之间将去往SUB1和SUB2以外的子网的输出通信量进行负载均衡。在一些实施中,可以只使用一个默认路由器。
在各种实施中,紧密地监测默认路由器的性能。在一些情况下,路由看守程序监测默认路由器(如RD1和RD2)的工作情况,并且从路由表中替代或删除不能到达的路由器。为了监测工作情况和性能,路由看守程序还可以检测从默认路由器来的所期望的网络通信量(如多点传送通告)。
在一些实施例中,还将路由看守程序配置来监测在默认路由器(如RD1和RD2)之外的网络设备(如RX、RY)的操作情况。比如,可以将路由看守程序配置来执行不同子网上的物理路由器的故障检测。可以使用监测测试(如试通程序测试)来确定节点(如节点A 110)是否可以到达这样的网络设备(如RX、RY)。
在步骤340,漂移一个或多个VIP地址。在一个实施中,两个或多个节点(如节点A110和节点B120)可以作为能够在HA群集内拥有漂移VIP地址(如VIP1)的HA节点来操作。在一些情况下,节点110、112能形成较大HA群集的一部分。
通常,在给定瞬间只有在HA群集中的一个HA节点能拥有VIP地址。在各种实施例中,HA节点使用(例如)心跳协议互相监测,从而每个HA节点知道哪一个节点应该拥有漂移的VIP地址。
在一个HA节点(如节点A110)发生故障的情况下,VIP地址(如VIP1)可以漂移到冗余、备份HA节点(如节点B120)并且被在其上进行配置。在各种实施中,在不连接到相同子网(如SUB1、SUB2)的另一个HA节点(如节点B120)主机上将VIP地址配置为原始节点(如节点A110)。可以在不同的位置提供冗余、备份的HA节点,并且可以将冗余、备份的HA节点连接到不同的子网从而隔离故障。
在VIP地址漂移到第二节点(如节点B120)后,在第二节点120上的路由软件用相同的掩码传播相同的VIP,而不是通告分派给第二节点的源IP地址(如IP3和IP4)。
在节点间分派、通告、和/或漂移多个VIP地址的实施例中,可以根据IP前缀将这样的多个VIP地址进行分组以允许路由汇总。比如,根据物理位置将共同的IP前缀分派给VIP地址和/或带有共同IP前缀的VIP地址共同放置。
所述方法和系统还可以在使用刀片服务器的网络中发现应用。刀片服务器包括在单一闭合范围(enclosure)内存放(housed)的一些主机。在一个物理闭合范围中将刀片服务器的主机分组在一起,并且用一个或多个交换机将他们的网络端口进行集合。
当以可升级和冗余的方式将刀片服务器合并到存在的LAN中时它们展示出一些问题。刀片服务器需要比标准服务器少的多的物理连接来建立冗余,并且因为上行链路极少所以负载均衡更加重要。
图4示出了包括第一刀片服务器410和第二刀片服务器420的容错网络40的实施例。分别响应于主机控制器415a-f、425a-f,刀片服务器410、420进行操作。如图所示,每个刀片服务器410、420包括六个主机。每个主机包括第一NIC(NIC1)和第二NIC(NIC2),用于连接子网(SUB1-SUB4)。使用第一交换机416将第一NIC集合在第一刀片服务器节点410上,并且使用第二交换机417将第二NIC集合在第一刀片服务器节点410上。使用第一交换机426将第一NIC集合在第二刀片服务器节点420上,并且使用第二交换机427将第二NIC集合在第二刀片服务器节点420上。
在一个实施例中,第一节点410包括分派第一VIP(VIP1)的第一主机(HOST1)。如图所示HOST1包括分派了IP1的第一NIC(NIC1)和分派了IP2的第二NIC(NIC2)。第一节点410包括分派了第二VIP(VIP2)的第二主机(HOST2)。如图所示HOST2包括分派了IP3的第一NIC(NIC1)和分派了IP4的第二NIC(NIC2)。第一节点410包括分派了第三VIP(VIP3)的第三主机(HOST3)。如图所示HOST3包括分派了IP5的第一NIC(NIC1)和分派了IP6的第二NIC(NIC2)。第一节点410包括分派了第四VIP(VIP4)的第四主机(HOST4)。如图所示HOST4包括分派了IP7的第一NIC(NIC1)和分派了IP8的第二NIC(NIC2)。第一节点410包括分派了第五VIP(VIP5)的第五主机(HOST5)。如图所示HOST5包括分派了IP9的第一NIC(NIC1)和分派了IP10的第二NIC(NIC2)。第一节点410包括分派了第六VIP(VIP6)的第六主机(HOST6)。如图所示HOST6包括分派了IP11的第一NIC(NIC1)和分派了IP12的第二NIC(NIC2)。
在刀片服务器节点410、420的上下文中可执行上述方法30。在这样的实施例中,将一个或多个VIP地址分派给在多个刀片服务器节点之一(如节点410)以内的单个主机的回送接口。可以在刀片闭合范围内和/或在不同地点和/或不同LAN上的刀片服务器节点间漂移一个或多个VIP地址和子网掩码。
对于本领域的技术人员,本发明的方法、系统和计算机可读介质的优点非常明显。这里使用的术语“计算机可读介质”可包括(例如)诸如磁盘、只读和可写的致密盘、光盘驱动器、和硬盘驱动器的磁和光存储设备。
计算机可读介质还可以包括可以是物理的、虚拟的、永久的、暂时的、半永久的和/或半暂时的存储器。计算机可读介质还可以包括在一个和多个载波上传输的一个或多个数据信号。可以使用(例如)Visual Basic、C、或C++计算机语言使用(例如)面向对象的技术以计算机软件代码的形式实施本发明的各种实施例的各种部分和组件。
虽然已经描述了本发明的几个实施例,但是对本领域的技术人员很明显,在保持本发明的一些或所有的优点的情况下,可以对那些实施例进行改进和调整。因此本说明书希望在不偏离如所附的权利要求定义的本发明的范围和要旨的情况下,覆盖所有的改进、变化和调整。

Claims (20)

1、一种网络节点,包括:
到可寻址网络的第一网络接口,将由第一IP地址范围定义的第一网络接口IP地址分派给该第一网络接口;和
由第一IP地址范围以外的IP地址范围所定义的至少一个虚拟IP地址,
其中从第一网络接口将至少一个虚拟地址通告给可寻址网络,并且可以将被寻址到至少一个虚拟IP地址的数据包路由到第一网络接口。
2、根据权利要求1所述的网络节点,其中第一网络接口包括网络接口卡。
3、根据权利要求1所述的网络节点,其中第一网络接口连接到被配置在可寻址网络上的多个子网。
4、根据权利要求1所述的网络节点,其中可寻址网络包括局域网。
5、根据权利要求1所述的网络节点,其中将至少一个虚拟IP地址分派给回送接口。
6、根据权利要求1所述的网络节点,其中用子网掩码定义至少一个虚拟地址。
7、根据权利要求6所述的网络节点,其中将至少一个虚拟IP地址和32比特子网掩码通告到可寻址网络。
8、根据权利要求1所述的网络节点,还包括到所述可寻址网络的第二网络接口,所述第二网络接口被分派了由第二IP地址范围所定义的第二网络接口IP地址,其中虚拟IP地址的IP地址范围在第二IP地址范围之外。
9、根据权利要求2所述的网络节点,其中可以将寻址到所述至少一个虚拟IP地址的数据包路由到所述第一网络接口和所述第二网络接口的至少一个。
10、根据权利要求1所述的网络节点,其中第二网络接口包括网络接口卡。
11、根据权利要求1所述的网络节点,其中第二网络接口连接到配置在可寻址网络上的多个子网。
12、根据权利要求1所述的网络节点,还包括实施路由协议以通告至少一个虚拟IP地址的路由程序。
13、根据权利要求1所述的网络节点,还包括多个默认路由器。
14、根据权利要求13所述的网络节点,还包括用于监测多个默认路由器的路由器看守程序。
15、根据权利要求14所述的网络节点,其中将路由器看守程序进行配置以删除不工作的默认路由器。
16、根据权利要求1所述的网络节点,还包括用于将至少一个虚拟IP地址漂移到第二网络节点的高可用性程序。
17、一种网络方法,包括:
用一个或多个虚拟IP地址和一个或多个默认路由器来配置节点;
将一个或多个虚拟IP地址通告到可寻址网络的网络设备;
监测一个或多个默认路由器;以及
在节点间漂移一个或多个虚拟IP地址。
18、一种存储在计算机可读介质上的计算机程序,该计算机程序包括指令用于:
用一个或多个虚拟IP地址和一个或多个默认路由器来配置节点;
将一个或多个虚拟IP地址通告到可寻址网络的网络设备;
监测一个或多个默认路由器;以及
在节点间漂移一个或多个虚拟IP地址。
19、根据权利要求18所述的程序,其中计算机可读介质包括盘、设备、和传播的信号中的至少一个。
20、一种网络,包括:
用于用一个或多个虚拟IP地址和一个或多个默认路由器来配置节点的设备;
用于将一个或多个虚拟IP地址通告到可寻址网络的网络设备的设备;
用于监测一个或多个默认路由器的设备;以及
用于在节点间漂移一个或多个虚拟IP地址的设备。
CN2005100875502A 2004-10-27 2005-07-27 容错网络构架 Active CN1770733B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/974,563 US7450498B2 (en) 2004-10-27 2004-10-27 Fault tolerant network architecture
US10/974,563 2004-10-27

Publications (2)

Publication Number Publication Date
CN1770733A true CN1770733A (zh) 2006-05-10
CN1770733B CN1770733B (zh) 2010-08-25

Family

ID=35852846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005100875502A Active CN1770733B (zh) 2004-10-27 2005-07-27 容错网络构架

Country Status (7)

Country Link
US (1) US7450498B2 (zh)
EP (1) EP1653711B8 (zh)
JP (1) JP2006129446A (zh)
CN (1) CN1770733B (zh)
AT (1) ATE388576T1 (zh)
DE (1) DE602005005134T2 (zh)
HK (1) HK1089024A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316085A (zh) * 2010-07-06 2012-01-11 大唐移动通信设备有限公司 一种sctp偶联通信的方法及系统
WO2013159549A1 (zh) * 2012-04-28 2013-10-31 华为技术有限公司 一种建立和使用浮动网段的方法、装置和系统

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60304704T2 (de) * 2003-09-18 2007-04-12 Sap Aktiengesellschaft Netzsystem, Router und Netzeinrichtungsverfahren
WO2006093929A2 (en) * 2005-02-28 2006-09-08 Blade Network Technologies, Inc. Blade server system with rack-switch
US20060274752A1 (en) * 2005-06-06 2006-12-07 Vinit Jain Method and apparatus for managing address resolution protocol data for interfaces connected to different switches
JP4193820B2 (ja) * 2005-07-05 2008-12-10 ブラザー工業株式会社 管理装置、およびプログラム
US8619771B2 (en) 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US8924524B2 (en) 2009-07-27 2014-12-30 Vmware, Inc. Automated network configuration of virtual machines in a virtual lab data environment
US8892706B1 (en) 2010-06-21 2014-11-18 Vmware, Inc. Private ethernet overlay networks over a shared ethernet in a virtual environment
US20070291704A1 (en) * 2006-06-14 2007-12-20 Inventec Corporation Internet protocol address take-over system in a local area network and method thereof
US20080019376A1 (en) * 2006-07-21 2008-01-24 Sbc Knowledge Ventures, L.P. Inline network element which shares addresses of neighboring network elements
US20080205286A1 (en) * 2007-02-26 2008-08-28 Inventec Corporation Test system using local loop to establish connection to baseboard management control and method therefor
US7962587B2 (en) * 2007-12-10 2011-06-14 Oracle America, Inc. Method and system for enforcing resource constraints for virtual machines across migration
US7945647B2 (en) * 2007-12-10 2011-05-17 Oracle America, Inc. Method and system for creating a virtual network path
US8370530B2 (en) * 2007-12-10 2013-02-05 Oracle America, Inc. Method and system for controlling network traffic in a blade chassis
US8086739B2 (en) * 2007-12-10 2011-12-27 Oracle America, Inc. Method and system for monitoring virtual wires
US7984123B2 (en) * 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
US8095661B2 (en) * 2007-12-10 2012-01-10 Oracle America, Inc. Method and system for scaling applications on a blade chassis
US20090210523A1 (en) * 2008-02-14 2009-08-20 Matthew Edward Duggan Network management method and system
US7965714B2 (en) * 2008-02-29 2011-06-21 Oracle America, Inc. Method and system for offloading network processing
US7970951B2 (en) * 2008-02-29 2011-06-28 Oracle America, Inc. Method and system for media-based data transfer
US7944923B2 (en) * 2008-03-24 2011-05-17 Oracle America, Inc. Method and system for classifying network traffic
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8739179B2 (en) * 2008-06-30 2014-05-27 Oracle America Inc. Method and system for low-overhead data transfer
US7941539B2 (en) * 2008-06-30 2011-05-10 Oracle America, Inc. Method and system for creating a virtual router in a blade chassis to maintain connectivity
JP4682255B2 (ja) * 2009-03-11 2011-05-11 富士通株式会社 経路制御装置、経路制御方法及び経路制御プログラム
US8041811B2 (en) * 2009-04-21 2011-10-18 Alcatel Lucent Multi-chassis component corrector and associator engine
US8315156B2 (en) * 2010-06-30 2012-11-20 Oracle America, Inc. Method and system for distributing network traffic among multiple direct hardware access datapaths
US8634415B2 (en) 2011-02-16 2014-01-21 Oracle International Corporation Method and system for routing network traffic for a blade server
US9858241B2 (en) 2013-11-05 2018-01-02 Oracle International Corporation System and method for supporting optimized buffer utilization for packet processing in a networking device
EP2737411A4 (en) * 2011-07-26 2015-10-14 Nebula Inc SYSTEMS AND METHODS FOR CLOUD COMPUTING IMPLEMENTATION
US8682780B2 (en) 2011-08-16 2014-03-25 Sl-X Technology Uk Ltd. Systems and methods for electronically initiating and executing securities lending transactions
US8706610B2 (en) 2011-08-16 2014-04-22 Sl-X Technology Uk Ltd. Systems and methods for electronically initiating and executing securities lending transactions
CN102752152B (zh) * 2012-07-24 2015-03-11 杭州华三通信技术有限公司 用于配置vrrp备份组的方法和装置
US9231909B2 (en) * 2013-05-20 2016-01-05 International Business Machines Corporation Communication system employing subnet or prefix to determine connection to same network segment
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9489327B2 (en) 2013-11-05 2016-11-08 Oracle International Corporation System and method for supporting an efficient packet processing model in a network environment
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US20160080255A1 (en) * 2014-09-17 2016-03-17 Netapp, Inc. Method and system for setting up routing in a clustered storage system
CN104378449B (zh) * 2014-12-09 2017-07-14 飞天诚信科技股份有限公司 一种虚拟ip的实现方法
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US10382534B1 (en) 2015-04-04 2019-08-13 Cisco Technology, Inc. Selective load balancing of network traffic
US9825902B1 (en) * 2015-04-22 2017-11-21 Cisco Technology, Inc. Route advertisement for native hardware-based virtual IP address (“VIP”) on layer 2/layer 3 switch
US9942631B2 (en) * 2015-09-25 2018-04-10 Intel Corporation Out-of-band platform tuning and configuration
CN108463975B (zh) * 2015-10-26 2020-03-27 Abb瑞士股份有限公司 用于建立独立网络路径的方法、节点和系统
US10885461B2 (en) 2016-02-29 2021-01-05 Oracle International Corporation Unsupervised method for classifying seasonal patterns
US10699211B2 (en) 2016-02-29 2020-06-30 Oracle International Corporation Supervised method for classifying seasonal patterns
US10867421B2 (en) 2016-02-29 2020-12-15 Oracle International Corporation Seasonal aware method for forecasting and capacity planning
US10331802B2 (en) 2016-02-29 2019-06-25 Oracle International Corporation System for detecting and characterizing seasons
US10333849B2 (en) 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10198339B2 (en) 2016-05-16 2019-02-05 Oracle International Corporation Correlation-based analytic for time-series data
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US10142346B2 (en) 2016-07-28 2018-11-27 Cisco Technology, Inc. Extension of a private cloud end-point group to a public cloud
US11082439B2 (en) 2016-08-04 2021-08-03 Oracle International Corporation Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems
US10635563B2 (en) 2016-08-04 2020-04-28 Oracle International Corporation Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router
US10949436B2 (en) 2017-02-24 2021-03-16 Oracle International Corporation Optimization for scalable analytics using time series models
US10915830B2 (en) 2017-02-24 2021-02-09 Oracle International Corporation Multiscale method for predictive alerting
US10817803B2 (en) 2017-06-02 2020-10-27 Oracle International Corporation Data driven methods and systems for what if analysis
US10637800B2 (en) 2017-06-30 2020-04-28 Nicira, Inc Replacement of logical network addresses with physical network addresses
US10681000B2 (en) 2017-06-30 2020-06-09 Nicira, Inc. Assignment of unique physical network addresses for logical network addresses
US10963346B2 (en) 2018-06-05 2021-03-30 Oracle International Corporation Scalable methods and systems for approximating statistical distributions
US10997517B2 (en) 2018-06-05 2021-05-04 Oracle International Corporation Methods and systems for aggregating distribution approximations
US10855587B2 (en) * 2018-10-19 2020-12-01 Oracle International Corporation Client connection failover
US11138090B2 (en) 2018-10-23 2021-10-05 Oracle International Corporation Systems and methods for forecasting time series with variable seasonality
US10855757B2 (en) 2018-12-19 2020-12-01 At&T Intellectual Property I, L.P. High availability and high utilization cloud data center architecture for supporting telecommunications services
US10855548B2 (en) 2019-02-15 2020-12-01 Oracle International Corporation Systems and methods for automatically detecting, summarizing, and responding to anomalies
US11533326B2 (en) 2019-05-01 2022-12-20 Oracle International Corporation Systems and methods for multivariate anomaly detection in software monitoring
US11537940B2 (en) 2019-05-13 2022-12-27 Oracle International Corporation Systems and methods for unsupervised anomaly detection using non-parametric tolerance intervals over a sliding window of t-digests
US11887015B2 (en) 2019-09-13 2024-01-30 Oracle International Corporation Automatically-generated labels for time series data and numerical lists to use in analytic and machine learning systems
US11706298B2 (en) * 2021-01-21 2023-07-18 Cohesity, Inc. Multichannel virtual internet protocol address affinity

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH103440A (ja) * 1996-06-14 1998-01-06 Fujitsu Ltd 計算機システム
US5923854A (en) * 1996-11-22 1999-07-13 International Business Machines Corporation Virtual internet protocol (IP) addressing
US5917997A (en) * 1996-12-06 1999-06-29 International Business Machines Corporation Host identity takeover using virtual internet protocol (IP) addressing
JP3080029B2 (ja) * 1997-03-10 2000-08-21 日本電気株式会社 仮想アドレスルーティングによるスイッチ保守方法
US6148410A (en) 1997-09-15 2000-11-14 International Business Machines Corporation Fault tolerant recoverable TCP/IP connection router
US6718387B1 (en) 1997-12-10 2004-04-06 Sun Microsystems, Inc. Reallocating address spaces of a plurality of servers using a load balancing policy and a multicast channel
US6327675B1 (en) 1998-07-31 2001-12-04 Nortel Networks Limited Fault tolerant system and method
US6714549B1 (en) 1998-12-23 2004-03-30 Worldcom, Inc. High resiliency network infrastructure
US6751191B1 (en) * 1999-06-29 2004-06-15 Cisco Technology, Inc. Load sharing and redundancy scheme
US6704278B1 (en) * 1999-07-02 2004-03-09 Cisco Technology, Inc. Stateful failover of service managers
US6766348B1 (en) 1999-08-03 2004-07-20 Worldcom, Inc. Method and system for load-balanced data exchange in distributed network-based resource allocation
US6430622B1 (en) 1999-09-22 2002-08-06 International Business Machines Corporation Methods, systems and computer program products for automated movement of IP addresses within a cluster
US6657974B1 (en) * 2000-04-14 2003-12-02 International Business Machines Corporation Method and apparatus for generating replies to address resolution protocol requests
US6725261B1 (en) 2000-05-31 2004-04-20 International Business Machines Corporation Method, system and program products for automatically configuring clusters of a computing environment
US6718383B1 (en) 2000-06-02 2004-04-06 Sun Microsystems, Inc. High availability networking with virtual IP address failover
US6728780B1 (en) 2000-06-02 2004-04-27 Sun Microsystems, Inc. High availability networking with warm standby interface failover
KR100385116B1 (ko) 2000-09-02 2003-05-22 국방과학연구소 다중 장애 허용망 구조를 이용한 패킷 처리 방법
US6970939B2 (en) 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US7146432B2 (en) 2001-01-17 2006-12-05 International Business Machines Corporation Methods, systems and computer program products for providing failure recovery of network secure communications in a cluster computing environment
US7165107B2 (en) 2001-01-22 2007-01-16 Sun Microsystems, Inc. System and method for dynamic, transparent migration of services
US8032625B2 (en) 2001-06-29 2011-10-04 International Business Machines Corporation Method and system for a network management framework with redundant failover methodology
US6862697B1 (en) 2001-09-28 2005-03-01 Emc Corporation Method and system for pseudo-random testing a fault tolerant network
US6925578B2 (en) 2001-09-29 2005-08-02 Hewlett-Packard Development Company, L.P. Fault-tolerant switch architecture
US7257817B2 (en) * 2001-10-16 2007-08-14 Microsoft Corporation Virtual network with adaptive dispatcher
US6917986B2 (en) 2002-01-07 2005-07-12 Corrigent Systems Ltd. Fast failure protection using redundant network edge ports
US20040078625A1 (en) 2002-01-24 2004-04-22 Avici Systems, Inc. System and method for fault tolerant data communication
US7010716B2 (en) * 2002-07-10 2006-03-07 Nortel Networks, Ltd Method and apparatus for defining failover events in a network device
US20040027377A1 (en) 2002-08-06 2004-02-12 Grace Hays User interface design and validation including dynamic data
US7796503B2 (en) 2002-09-03 2010-09-14 Fujitsu Limited Fault tolerant network routing
US6954794B2 (en) 2002-10-21 2005-10-11 Tekelec Methods and systems for exchanging reachability information and for switching traffic between redundant interfaces in a network cluster
US7480737B2 (en) * 2002-10-25 2009-01-20 International Business Machines Corporation Technique for addressing a cluster of network servers
CN1423197A (zh) * 2002-12-16 2003-06-11 华中科技大学 基于多tcp连接映像的高可用系统
US7178051B2 (en) 2003-02-27 2007-02-13 Sun Microsystems, Inc. Method for synchronous support of fault-tolerant and adaptive communication
GB2403381A (en) 2003-06-25 2004-12-29 Hewlett Packard Development Co Fault tolerant network, reliant on the determination of an automorphism of the network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316085A (zh) * 2010-07-06 2012-01-11 大唐移动通信设备有限公司 一种sctp偶联通信的方法及系统
CN102316085B (zh) * 2010-07-06 2014-02-05 大唐移动通信设备有限公司 一种sctp偶联通信的方法及系统
WO2013159549A1 (zh) * 2012-04-28 2013-10-31 华为技术有限公司 一种建立和使用浮动网段的方法、装置和系统

Also Published As

Publication number Publication date
HK1089024A1 (en) 2006-11-17
DE602005005134D1 (de) 2008-04-17
JP2006129446A (ja) 2006-05-18
ATE388576T1 (de) 2008-03-15
DE602005005134T2 (de) 2009-03-12
EP1653711A1 (en) 2006-05-03
EP1653711B8 (en) 2008-07-09
US20060087962A1 (en) 2006-04-27
CN1770733B (zh) 2010-08-25
US7450498B2 (en) 2008-11-11
EP1653711B1 (en) 2008-03-05

Similar Documents

Publication Publication Date Title
CN1770733B (zh) 容错网络构架
US7894456B2 (en) Routing data packets from a multihomed host
US7769886B2 (en) Application based active-active data center network using route health injection and IGP
US7609619B2 (en) Active-active data center using RHI, BGP, and IGP anycast for disaster recovery and load distribution
KR101460848B1 (ko) 가상 스위치를 구현 및 관리하는 방법 및 장치
US6751191B1 (en) Load sharing and redundancy scheme
CN110784400B (zh) N:1有状态应用网关冗余方法、系统和备用服务网关
US7430611B2 (en) System having a single IP address associated with communication protocol stacks in a cluster of processing systems
JP4897927B2 (ja) 複数のアダプタにわたり複数の仮想ipアドレスを同時にサポートしているホストにおけるフェイルオーバのための方法、システム、およびプログラム
US6996617B1 (en) Methods, systems and computer program products for non-disruptively transferring a virtual internet protocol address between communication protocol stacks
US6941384B1 (en) Methods, systems and computer program products for failure recovery for routed virtual internet protocol addresses
KR100322715B1 (ko) 호스트 그룹의 네트워크 디스패처를 이용한 데이터 전송시스템에서의 라우터 모니터링
US20040083403A1 (en) Stateless redundancy in a network device
JP4789425B2 (ja) 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム
WO2003041355A1 (en) A method and a system for stateless load sharing for a server cluster in an ip-based telecommunications network
CN109743197B (zh) 一种基于优先级配置的防火墙部署系统和方法
JP2004032758A (ja) VRRP(VirtualRouterRedundancyProtocol)によるルータ・インターフェース・バックアップ実行方法
CN1848841A (zh) 路由设备备份方法
CN101060533A (zh) 一种提高vgmp协议可靠性的方法、系统及装置
KR20000076845A (ko) Ip 데이터 전송 시스템의 다중 arp 기능
CN110011859A (zh) 一种虚拟机控制方法及集群系统
Cisco Router Products Configuration and Reference Volume II
Cisco Routing DECnet
US8023407B2 (en) Redundancy in a communication network
Cisco Configuring CLAW and TCP/IP Offload Support

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant