[go: up one dir, main page]

CN1815979A - Method and apparatus for providing network connector - Google Patents

Method and apparatus for providing network connector Download PDF

Info

Publication number
CN1815979A
CN1815979A CNA2006100024088A CN200610002408A CN1815979A CN 1815979 A CN1815979 A CN 1815979A CN A2006100024088 A CNA2006100024088 A CN A2006100024088A CN 200610002408 A CN200610002408 A CN 200610002408A CN 1815979 A CN1815979 A CN 1815979A
Authority
CN
China
Prior art keywords
interface
computer
interfaces
virtual
active
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
CNA2006100024088A
Other languages
Chinese (zh)
Other versions
CN100456694C (en
Inventor
威维克·卡施雅普
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1815979A publication Critical patent/CN1815979A/en
Application granted granted Critical
Publication of CN100456694C publication Critical patent/CN100456694C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本申请公开了一种用于在网络中的接口之间提供相互的故障转移和负载平衡的方法、设备和程序存储设备。为第一和第二计算机接口中的每一个提供有源虚拟接口和无源虚拟接口。把所述第一计算机接口的有源虚拟接口可通信地耦合至所述第二接口的无源虚拟接口。把所述第二计算机接口的有源虚拟接口可通信地耦合至所述第一计算机接口的无源虚拟接口。当所述第一和第二计算机接口可利用时,通过所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口中的每一个来引导数据流,否则把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。

The present application discloses a method, apparatus and program storage device for providing mutual failover and load balancing between interfaces in a network. An active virtual interface and a passive virtual interface are provided for each of the first and second computer interfaces. The active virtual interface of the first computer interface is communicatively coupled to the passive virtual interface of the second interface. The active virtual interface of the second computer interface is communicatively coupled to the passive virtual interface of the first computer interface. When the first and second computer interfaces are available, directing data flow through each of the active virtual interface of the first computer interface and the active virtual interface of the second computer interface, otherwise directing data flow Active virtual interface and passive virtual interface to available first or second interface.

Description

用于提供网络连接的设备和方法Apparatus and method for providing network connectivity

技术领域technical field

本申请总体上涉及网络计算机系统,具体而言,涉及在网络接口之间提供相互的故障转移和负载平衡的方法、设备和程序存储设备。The present application relates generally to network computer systems and, more particularly, to methods, apparatus and program storage devices for providing mutual failover and load balancing between network interfaces.

背景技术Background technique

在网络中彼此链接的计算机系统通常用于商业以及其他组织。计算机系统网络(“网络”)为用户提供很多利益,诸如提高生产率、增加灵活性并且提供便利,同时还提供资源共享和分配。Computer systems linked to each other in a network are commonly used in businesses and other organizations. Networks of computer systems ("networks") provide many benefits to users, such as increased productivity, increased flexibility, and convenience, while also providing resource sharing and allocation.

根据特定实现方式的细节、诸如所使用的硬件以及所述装备的物理位置,并且根据所述网络的特殊目的,可以依照不同的方式来构成网络。总体上讲,网络包括一个或多个服务器计算机系统,均可通信地耦合至很多客户端计算机系统。Networks may be structured in different ways depending on details of the particular implementation, such as the hardware used and the physical location of the equipment, and depending on the particular purpose of the network. Generally, a network includes one or more server computer systems, each communicatively coupled to a number of client computer systems.

随着网络计算机系统使用的增加,已经出现了对提供额外的带宽以便处理网络上电子流量的需求。例如,不充足的带宽可能导致客户端和服务器之间的供应线中的数据阻塞。这种阻塞会明显地限制网络性能。As the use of networked computer systems has increased, a need has arisen to provide additional bandwidth in order to handle electronic traffic on the network. For example, insufficient bandwidth may cause data congestion in the supply line between the client and the server. This blocking can significantly limit network performance.

通常使用网络接口卡(NIC)来把服务器或者任何计算设备连接至网络。这种NIC例如包括插进台式计算机或者服务器中的以太网卡或者令牌环网卡。所述NIC实现对附属于网络的计算机的物理层信令和介质访问控制(Media Access Control,MAC)。多个NIC可有效地把计算机附于网络上多次。这样做成比例地向网络增加了潜在的带宽。如果所述NIC之一发生故障,那么多个NIC还提供弹性和冗余性。在一个NIC发生故障的情况下,其它NIC中的一个用于处理先前由该故障NIC处理的流量,由此增加了整个系统的可靠性。因此,需要能够检测到NIC发生故障,并且当检测到发生故障的NIC时,能够切换至起作用的NIC(将此操作称为容错以及故障转移支持)。在主机操作系统中,NIC通常经由被称为“网络接口”的核心对象表示。此处,将直接由互联网协议(IP)使用的网络接口称为“IP接口”。此外,把直接对应于所述NIC的接口称为物理接口。正如此处所述的那样,把从物理接口导出的接口称为逻辑或虚拟接口。A network interface card (NIC) is typically used to connect a server, or any computing device, to a network. Such NICs include, for example, Ethernet or Token Ring cards that plug into desktop computers or servers. The NIC implements physical layer signaling and media access control (Media Access Control, MAC) for computers attached to the network. Multiple NICs can effectively attach a computer to the network multiple times. Doing so proportionally increases the potential bandwidth to the network. Multiple NICs also provide resiliency and redundancy should one of the NICs fail. In the event of a failure of one NIC, one of the other NICs is used to handle traffic previously handled by the failed NIC, thereby increasing the reliability of the overall system. Therefore, there is a need to be able to detect that a NIC has failed, and when a failed NIC is detected, to be able to switch to a functioning NIC (this operation is referred to as fault tolerance and failover support). In a host operating system, a NIC is usually represented via a core object called a "network interface". Herein, a network interface directly used by Internet Protocol (IP) is referred to as an "IP interface". Also, the interface directly corresponding to the NIC is referred to as a physical interface. As described herein, an interface derived from a physical interface is called a logical or virtual interface.

负载平衡是一种用于减少由过载通信网络引起的数据瓶颈的技术。在负载平衡中,服务器和网络之间的流量经由多个NIC共享。这种负载平衡通常要求专用软件。负载平衡还提供容错功能,倘若在数据链路中发生中断,所述功能用于维持服务器和网络之间的数据通信。当链路发生故障时,把负载故障转移至备份或者辅助链路,如此使信号的连续性得以维持。Load balancing is a technique used to reduce data bottlenecks caused by overloaded communication networks. In load balancing, traffic between servers and the network is shared over multiple NICs. This load balancing usually requires specialized software. Load balancing also provides fault tolerance, which is used to maintain data communication between the server and the network in the event of an interruption in the data link. When a link fails, the load is failed over to a backup or auxiliary link so that signal continuity is maintained.

众所周知的技术是把多个物理链路组合在一起,由此使它们看上去是所述TCP/IP栈的互联网协议(IP)层的单个网络接口。然后,在IP层不知晓的情况下,在所述链路当中实现负载平衡和故障转移。这种技术的例子是Linux中的‘绑定’驱动程序、Etherchannel或者IEEE802.3ad链路合并标准。A well-known technique is to group multiple physical links together, thereby making them appear to be a single network interface to the Internet Protocol (IP) layer of the TCP/IP stack. Load balancing and failover are then implemented among the links without the knowledge of the IP layer. Examples of such techniques are 'bonding' drivers in Linux, Etherchannel or the IEEE802.3ad link merging standard.

然而,这些技术存在几个缺陷。例如,由于系统把多个物理链路认为是单个NIC,所以负载平衡是在IP层下实现的。换言之,大量NIC是作为IP协议的单个接口而存在的。因此,例如路由表之类的网络层信息无法用于数据流量的负载平衡。工作于所述网络层的一般工具也无法适用。这些缺点也存在于故障转移模式。However, these techniques suffer from several drawbacks. For example, load balancing is implemented below the IP layer because the system treats multiple physical links as a single NIC. In other words, a large number of NICs exist as a single interface to the IP protocol. Therefore, network layer information such as routing tables cannot be used for load balancing of data traffic. Common tools that work at the network layer are also not applicable. These disadvantages also exist in failover mode.

如上所述的链路合并技术还要求专门的交换机,所述交换机能够把多个交换机端口视为一个;在直接连接的对等系统的情况下,两个端点均必须被配置为支持所述标准。此外,所述交换机的故障令所有链路失去连接性。在只支持故障转移但不支持负载平衡的替代模式中,可以把链路与不同的交换机相连,然而在这种配置中,只有一个链路在给定时间内可以是有源的。Link merging techniques as described above also require specialized switches capable of treating multiple switch ports as one; in the case of directly connected peer-to-peer systems, both endpoints must be configured to support the standard . Furthermore, failure of the switch takes connectivity out of all links. In an alternate mode that only supports failover but not load balancing, links can be connected to different switches, however in this configuration only one link can be active at a given time.

也可以在IP层提供负载平衡,其中所述负载在多个IP接口中被平衡。按照路由表条目来使数据负载平衡,所述路由表条目指向给定路由的特殊IP接口。当NIC发生故障时,必须实现用于故障转移的替代方法,并且必须花费时间来更新路由表。早先描述的链路级故障转移是在很短(毫秒)的间隔内进行的,而路由传播可能花费更长的时间。另外,需要把IP地址与备份接口相关联并且将故障转移MAC地址通知给对等方。因此,需要一种在所述IP层实现负载平衡、同时提供快速的故障转移的方法。Load balancing can also be provided at the IP layer, where the load is balanced among multiple IP interfaces. The data load is balanced according to routing table entries pointing to the particular IP interface for a given route. When a NIC fails, an alternate method for failover must be implemented, and time must be spent updating the routing tables. The link-level failover described earlier occurs in very short (milliseconds) intervals, whereas route propagation can take much longer. Additionally, an IP address needs to be associated with the backup interface and the failover MAC address notified to the peer. Therefore, there is a need for a method of achieving load balancing at the IP layer while providing fast failover.

那么,可以看出的是,需要用于在处于网络IP层的接口之间提供相互的故障转移和负载平衡的方法、设备和程序存储设备。It can be seen, then, that there is a need for methods, apparatus and program storage devices for providing mutual failover and load balancing between interfaces at the IP layer of a network.

发明内容Contents of the invention

为了克服如上所述的限制,并且为了克服其它的限制,其中这些限制当阅读和理解本说明书时将更加明显,本发明公开了一种用于在网络中的接口之间提供相互的故障转移和负载平衡的方法、设备和程序存储设备。To overcome the limitations described above, and to overcome other limitations which will be more apparent upon reading and understanding this specification, the present invention discloses a method for providing mutual failover and Method, apparatus and program storage device for load balancing.

本发明的实施例通过如下方法解决了上述问题,所述方法为:当所有计算机接口工作时,使有源和无源虚拟接口与合作的计算机接口结合以便共享带宽,并且倘若计算机接口之一发生故障,那么提供故障转移。本发明还提供了将在IP层确定的负载平衡策略,而不需要或者不使用专门的硬件或者能够实现对等系统中相同特征的对应物。所述IP层可以在多个接口中实现负载平衡,同时避免网卡发生故障。Embodiments of the present invention solve the above problems by combining active and passive virtual interfaces with cooperating computer interfaces to share bandwidth when all computer interfaces are active, and in the event that one of the computer interfaces failure, then provide failover. The present invention also provides a load balancing strategy to be determined at the IP layer without requiring or using specialized hardware or counterparts capable of implementing the same features in peer-to-peer systems. The IP layer can implement load balancing among multiple interfaces while avoiding network card failures.

一种依照本发明原理的系统包括至少第一和第二计算机接口,具有用于容纳多个MAC地址的一组公用的一个或多个标识符;第一有源和无源虚拟接口,可通信地耦合至所述第一计算机接口,以及第二有源和无源虚拟接口,可通信地耦合至所述第二计算机接口,其中所述第一有源虚拟接口与第二无源虚拟接口虚拟结合,并且所述第二有源虚拟接口与所述第一无源虚拟接口虚拟结合;以及至少一个接入控制器,耦合至所述虚拟接口,用于控制经由可通信地耦合的虚拟接口流向至少第一和第二计算机接口的数据流,当所述第一和第二计算机接口可利用时,经由所述第一和第二有源虚拟接口来引导数据流,否则,当所述第一或者第二计算机接口无法利用时,把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。A system in accordance with the principles of the present invention includes at least first and second computer interfaces having a common set of one or more identifiers for accommodating a plurality of MAC addresses; first active and passive virtual interfaces capable of communicating ground coupled to the first computer interface, and a second active and passive virtual interface communicatively coupled to the second computer interface, wherein the first active virtual interface is virtual to the second passive virtual interface combined, and the second active virtual interface is virtually combined with the first passive virtual interface; and at least one access controller, coupled to the virtual interface, for controlling flow via the communicatively coupled virtual interface to data flow of at least first and second computer interfaces, directing data flow via said first and second active virtual interfaces when said first and second computer interfaces are available, and otherwise, when said first Or when the second computer interface is unavailable, direct the data flow to the active virtual interface and the passive virtual interface of the available first or second interface.

在本发明的另一个实施例中,提供了一种程序存储设备,所述程序存储设备可由计算机读取,并且可包含可由计算机执行的一条或多条程序指令,以便执行用于支持处于第一和第二计算机接口的数据流的操作,由此提供相互的故障转移和负载共享。所述操作包括为第一和第二计算机接口的每一个提供有源虚拟接口和无源虚拟接口;把所述第一计算机接口的有源虚拟接口与所述第二接口的无源虚拟接口可通信地耦合;把所述第二计算机接口的有源虚拟接口与所述第一计算机接口的无源虚拟接口可通信地耦合;并且当所述第一和第二计算机接口可利用时,经由所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口的每个来引导数据流,否则当所述第一或者第二计算机接口之一无法利用时,把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。In another embodiment of the present invention, a program storage device is provided, which can be read by a computer and can contain one or more program instructions executable by a computer, so as to execute the Operation of data streams interfaced with a second computer, thereby providing mutual failover and load sharing. The operations include providing an active virtual interface and a passive virtual interface to each of the first and second computer interfaces; communicatively coupling; communicatively coupling the active virtual interface of the second computer interface with the passive virtual interface of the first computer interface; and when the first and second computer interfaces are available, via the the active virtual interface of the first computer interface and the active virtual interface of the second computer interface to direct data flow, otherwise when one of the first or second computer interface is not available, the data flow is directed to Active virtual interface and passive virtual interface of the first or second interface available.

在本发明的另一个实施例中,提供了一种用于支持处于第一和第二计算机接口的数据流以便提供相互的故障转移和负载共享的方法。所述方法包括为第一和第二计算机接口的每一个提供有源虚拟接口和无源虚拟接口;把所述第一计算机接口的有源虚拟接口与所述第二接口的无源虚拟接口可通信地耦合;把所述第二计算机接口的有源虚拟接口与所述第一计算机接口的无源虚拟接口可通信地耦合;并且当所述第一和第二计算机接口可利用时,经由所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口的每个来引导数据流,否则当所述第一或者第二计算机接口之一无法利用时,把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。In another embodiment of the present invention, a method for supporting data flow at a first and second computer interface to provide mutual failover and load sharing is provided. The method includes providing an active virtual interface and a passive virtual interface for each of the first and second computer interfaces; connecting the active virtual interface of the first computer interface to the passive virtual interface of the second interface communicatively coupling; communicatively coupling the active virtual interface of the second computer interface with the passive virtual interface of the first computer interface; and when the first and second computer interfaces are available, via the the active virtual interface of the first computer interface and the active virtual interface of the second computer interface to direct data flow, otherwise when one of the first or second computer interface is not available, the data flow is directed to Active virtual interface and passive virtual interface of the first or second interface available.

在本发明的另一个实施例中,提供了一种用于为相互的故障转移和负载共享提供网络连接的系统。所述系统包括用于为第一和第二计算机接口的每一个提供有源虚拟接口和无源虚拟接口的装置;用于把所述第一计算机接口的有源虚拟接口与所述第二接口的无源虚拟接口可通信地耦合的装置;用于把所述第二计算机接口的有源虚拟接口与所述第一计算机接口的无源虚拟接口可通信地耦合的装置;以及用于当所述第一和第二计算机接口可利用时、经由所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口的每个来引导数据流,否则把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口的设备。In another embodiment of the present invention, a system for providing network connections for mutual failover and load sharing is provided. The system includes means for providing an active virtual interface and a passive virtual interface for each of the first and second computer interfaces; for connecting the active virtual interface of the first computer interface to the second interface means for communicatively coupling the passive virtual interface of the second computer interface; means for communicatively coupling the active virtual interface of the second computer interface with the passive virtual interface of the first computer interface; and means for when the directing data flow via each of the active virtual interface of the first computer interface and the active virtual interface of the second computer interface when the first and second computer interfaces are available, otherwise directing the data flow to the available Active virtual interface and passive virtual interface device of the first or second interface.

依照所附权利要求书中的细节指出了作为本发明特性的这些以及各种其它的优势和特征,并且形成本申请的一部分。然而,为了更好地理解本发明、通过使用而获得的优势以及目的,应该参考作为本文一部分的附图并且参考伴随的描述,其中举例说明并且描述了依照本发明的设备的特定例子。These and various other advantages and features which characterize the invention are pointed out with particularity in the claims annexed to and forming a part of this application. However, for a better understanding of the invention, its advantages obtained by its use and objects, reference should be made to the accompanying drawings forming a part hereof, and to the accompanying description, in which there are illustrated and described specific examples of apparatus in accordance with the invention.

附图说明Description of drawings

现在参照附图,其中相似的附图标记始终表示对应部分:Referring now to the drawings, wherein like reference numerals indicate corresponding parts throughout:

图1举例说明了描述现有技术水平的系统网络分级结构;Figure 1 illustrates a system network hierarchy describing the state of the art;

图2a是依照本发明实施例的具有两个接口A和B以便提供故障转移和负载平衡的网络的图示;Figure 2a is a diagram of a network with two interfaces A and B to provide failover and load balancing in accordance with an embodiment of the present invention;

图2b示出了故障转移模式中的图2a的网络;Figure 2b shows the network of Figure 2a in failover mode;

图3说明了依照本发明实施例使用虚拟IP地址管理网络接口访问控制;Fig. 3 illustrates using a virtual IP address to manage network interface access control according to an embodiment of the present invention;

图4说明了依照本发明实施例的用于为相互的故障转移和负载共享提供网络连接的方法;并且Figure 4 illustrates a method for providing network connectivity for mutual failover and load sharing according to an embodiment of the present invention; and

图5说明了依照本发明实施例的用于执行支持处于第一和第二计算机接口的数据流以便提供相互的故障转移和负载共享的操作的系统。FIG. 5 illustrates a system for performing operations to support data flow at a first and second computer interface to provide mutual failover and load sharing, in accordance with an embodiment of the present invention.

具体实施方式Detailed ways

在对实施例的随后描述中,对形成本发明一部分的附图作出参考,并且其中通过图示示出了可以实施本发明的特定实施例。应该理解的是,由于在不脱离本发明的范围的情况下可以做出结构上的改变,故而还可以利用其它实施例。In the ensuing description of the embodiments, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized as structural changes may be made without departing from the scope of the present invention.

本发明提供了一种用于在网络中的接口之间提供相互的故障转移和负载平衡的方法、设备和程序存储设备。当所有计算机接口正在工作时,本发明使有源和无源虚拟接口与合作的计算机接口结合以便共享带宽,并且倘若计算机接口之一发生故障,那么提供故障转移。The present invention provides a method, apparatus and program storage device for providing mutual failover and load balancing between interfaces in a network. The present invention combines active and passive virtual interfaces with cooperating computer interfaces to share bandwidth when all computer interfaces are working, and provides failover in the event that one of the computer interfaces fails.

可以使用单个物理接口来创建虚拟接口。可以把两个或更多虚拟接口结合以便形成单个接口,所述接口用于在所结合的虚拟接口中分布其分组或者使其分组负载平衡。在本发明的上下文中,术语‘结合(join)’或者‘组合(combination)’用于把两个虚拟接口逻辑上组合在一起,由此可以用作单个IP接口。此处,把这种通过组合一个或多个虚拟接口而形成的结合的虚拟接口称为组件(compoment)接口。通过适当的控制,组件接口可以经由其所源于其的物理接口来发送和接收其分组。A single physical interface can be used to create a virtual interface. Two or more virtual interfaces can be combined to form a single interface that distributes or load balances its packets among the combined virtual interfaces. In the context of the present invention, the term 'join' or 'combination' is used to logically combine two virtual interfaces so that they can be used as a single IP interface. Here, such a combined virtual interface formed by combining one or more virtual interfaces is called a component interface. With appropriate controls, a component interface can send and receive its packets via the physical interface from which it originated.

图1举例说明了描述现有技术的系统网络分级结构100。可以通过把设备设定为根据两个物理接口形成的组合来提供故障转移和负载平衡机制。图1的分级结构示出了IP接口C 100,该接口是由两个NIC a 140和b 130形成的。在操作系统的网络堆栈中,把这两个NIC表示为物理接口A 110。沿IP接口C 100发送的所有数据可以在两个接口B 120和A 110中得到负载平衡。介质独立接口(mediaindependent interface,MII)信号故障用于检测一个NIC不工作。此检测和故障转移是瞬时的(在几毫秒内测量)。Figure 1 illustrates a system network hierarchy 100 describing the prior art. Failover and load balancing mechanisms can be provided by configuring the device to be based on a combination of two physical interfaces. The hierarchy of FIG. 1 shows an IP interface C 100, which is formed by two NICs a 140 and b 130. In the operating system's network stack, these two NICs are represented as physical interface A 110. All data sent along IP interface C 100 can be load balanced in two interfaces B 120 and A 110. The media independent interface (MII) signal failure is used to detect that a NIC is not working. This detection and failover is instantaneous (measured in milliseconds).

应该理解的是,组合可以包括多个组件接口,而不局限于如图1所示的两个组件接口B 120和A 110。此外,诸如组件接口B 120和A110之类的组件接口的组合可以被如此配置,以便只有组件接口之一、例如组件接口A 110一直是有源(active)的,而另一个组件接口、例如组件接口B 120充当无源(passive)备份。当在第一组件接口A 110上检测到故障时,例如组件接口B 120的备份接口可能成为有源的。依照此配置,接口b 130和a 140中的每一个均与独立的交换机相连。然而,这种配置浪费了无源备份的资源,这是因为其保持空闲。It should be understood that a composition may include multiple component interfaces and is not limited to the two component interfaces B 120 and A 110 as shown in FIG. 1 . Additionally, combinations of component interfaces such as component interface B 120 and A 110 may be configured such that only one of the component interfaces, such as component interface A 110, is active at all times, while the other component interface, such as component Interface B 120 acts as a passive backup. When a failure is detected on the first component interface A 110, a backup interface such as component interface B 120 may become active. According to this configuration, each of interfaces b 130 and a 140 is connected to a separate switch. However, this configuration wastes the resources of the passive backup since it remains idle.

本发明提出了一种用于在接口当中提供相互的备份由此防止任一资源空闲的方法。如上所述,通过在所述设备处使用MII检测可以提供快速的故障转移(例如,在几毫秒中)。正如将可看出的那样,本发明的实施例继续基于MII监控来平衡这种快速的故障转移,这是因为当检测到接口故障时,立即使起作用的物理接口上的无源组件接口成为有源的。The present invention proposes a method for providing mutual backup among interfaces thereby preventing any resource from being idle. As described above, fast failover (eg, in milliseconds) can be provided by using MII detection at the device. As will be seen, embodiments of the present invention continue to balance this fast failover based on MII monitoring, because when an interface failure is detected, the passive component interface on the functioning physical interface is immediately made active.

依照诸如中继、信道绑定或者IEEE的802.3ad标准之类的链路合并实现方式,多个链路看上去是单个IP接口,同时在所述链路中提供数据的负载平衡和故障转移。在链路合并配置中,多个网络链路看上去是具有单个逻辑网络接口的单个链路(所述单个逻辑网络接口看上去是IP接口),并且具有一个虚拟介质访问控制(MAC)地址。属于合并链路的接口之一的MAC地址提供逻辑链路的虚拟地址。在典型的链路合并配置中,基于诸如对源和目的地MAC地址等等进行循环路由、逻辑异或操作之类的基本算法,可以在所述物理链路中平衡所述数据。由于把不同交换机端口上的多个链路视作同一逻辑链路的一部分,所以需要专门的交换机,所述交换机能够把一组端口视作单个端口并且在这些端口中进行流量的负载平衡。In accordance with link pooling implementations such as trunking, channel bonding, or IEEE's 802.3ad standard, multiple links appear to be a single IP interface while providing load balancing and failover of data across the links. In a link consolidation configuration, multiple network links appear as a single link with a single logical network interface (which appears to be an IP interface) and has one virtual Media Access Control (MAC) address. The MAC address of one of the interfaces belonging to the merged link provides the virtual address of the logical link. In a typical link consolidation configuration, the data can be balanced across the physical links based on basic algorithms such as round robin routing of source and destination MAC addresses, logical XOR operations, and the like. Since multiple links on different switch ports are considered to be part of the same logical link, specialized switches are required that are able to treat a group of ports as a single port and load balance traffic among these ports.

图2a是依照本发明实施例的具有两个接口A 215和B 230以便提供故障转移和负载平衡的网络200的图示。接口A 215和B 230均被划分为两个部分,例如,A 215被划分为Ax 205和Ay 210,而B 230被划分为Bx 220和By 225。接口A 215和B 230对应于图1中的组件接口A 110和B 120。IP接口E1 201和F1 202得以形成。E1 201是通过结合虚拟接口Ax 205和Bx 220而形成的。F1 202是通过结合虚拟接口Ay 210和By 225而形成的。每一组合E1 201和F1202支持有源组件和无源组件接口。由此,对于接口E1 201来说,Ax 205是有源组件而Bx 220是无源组件。对于接口F1 202来说,By 225是有源组件而Ay 210是无源组件。Figure 2a is a diagram of a network 200 having two interfaces A 215 and B 230 to provide failover and load balancing in accordance with an embodiment of the present invention. Both interfaces A 215 and B 230 are divided into two parts, for example, A 215 is divided into Ax 205 and Ay 210, while B 230 is divided into Bx 220 and By 225. Interfaces A 215 and B 230 correspond to component interfaces A 110 and B 120 in FIG. 1 . IP interfaces E1 201 and F1 202 are formed. E1 201 is formed by combining virtual interfaces Ax 205 and Bx 220. F1 202 is formed by combining virtual interfaces Ay 210 and By 225. Each combination of E1 201 and F1202 supports active and passive component interfaces. Thus, for interface E1 201, Ax 205 is an active component and Bx 220 is a passive component. For the interface F1 202, By 225 is the active component and Ay 210 is the passive component.

如果物理接口A 215或者B 230之一变为不可利用的,那么所述组件接口可以把数据流经由与可操作的物理接口相关联的组件接口重引导至可操作的物理接口。因此,两个接口A 215和B 230可以保持有源,充当彼此的备份和/或在两个接口中共享数据分组。当两个接口都是有源的情况下,负载平衡可以在正常操作条件下操作。在组合接口E1 201上发送的数据将流过物理接口A 215上的Ax 205。If one of the physical interfaces A 215 or B 230 becomes unavailable, the component interface may redirect data flow to the operational physical interface via the component interface associated with the operational physical interface. Thus, the two interfaces A 215 and B 230 can remain active, act as backups for each other and/or share data packets in both interfaces. Load balancing can operate under normal operating conditions when both interfaces are active. Data sent on combo interface E1 201 will flow through Ax 205 on physical interface A 215.

同样,在正常条件下,在组合接口F 1202上发送的数据将流过物理接口B 230上的By 225。每一接口均连接至公共OS1层2的目的地,诸如交换机240。把组合接口E1 201和F1 202用作IP接口。借助于网络层技术,诸如相等路径路由、基于策略的路由或其它负载平衡技术,可以在接口E1 201和F1 202中平衡所述网络负载,同时充分利用由接口A 215和B 230两者提供的物理带宽。如上所述,数据实际上流过所述组合的有源组件,然后最后通过物理接口。跨越所述接口的总吞吐量因此得以最大化,同时对接口故障提供相互的备份,同时提供负载平衡的网络级控制。Likewise, under normal conditions, data sent on combo interface F 1202 will flow through By 225 on physical interface B 230. Each interface is connected to a common OS1 layer 2 destination, such as switch 240 . Use combined interfaces E1 201 and F1 202 as IP interface. With the help of network layer techniques, such as equal path routing, policy based routing or other load balancing techniques, the network load can be balanced among interfaces E1 201 and F1 202 while taking full advantage of the resources provided by both interfaces A 215 and B 230 physical bandwidth. As mentioned above, the data actually flows through the active components of the combination and then finally through the physical interface. The aggregate throughput across the interface is thus maximized, while providing mutual backup for interface failures, while providing network-level control of load balancing.

图2b举例说明了当物理接口之一B 230发生故障时图2a的网络200。当接口A 215或者接口B 230不可利用时,启动故障转移,并且可利用的接口将为A 215和B 230接口两者处理所述负载。如图2a中所示那样,有源接口A 215的有源组件Ax 205用于通过E1 201正常地接收数据分组。然而,有源接口A 215的无源组件Ay 210经由组合接口F1202接收最初意欲用于不可利用的接口B 230的数据分组,其中所述组合接口F1 202把数据分组重引导至Ay 210而不是By 225。此故障转移未被IP层检测到,由此IP层继续象以前一样工作。由此,可以在不破坏IP负载平衡的情况下来进行快速的故障转移。由于当物理接口A 215或者B 230发生故障时,所述IP接口E1 201和F1 202仍然未受影响,故而没有路由更新要求。所述IP层因此可用于利用相等路径、基于策略的路由或者利用各种网络级工具而在两个接口中进行负载平衡。Figure 2b illustrates the network 200 of Figure 2a when one of the physical interfaces B 230 fails. When either interface A 215 or interface B 230 is unavailable, failover is initiated and the available interface will handle the load for both A 215 and B 230 interfaces. As shown in Figure 2a, the active component Ax 205 of the active interface A 215 is used to normally receive data packets via E1 201. However, the passive component Ay 210 of the active interface A 215 receives a data packet originally intended for the unavailable interface B 230 via the combined interface F1 202, which redirects the data packet to Ay 210 instead of By 225. This failover is not detected by the IP layer, so the IP layer continues to work as before. Thus, fast failover can be performed without disrupting IP load balance. Since the IP interfaces E1 201 and F1 202 remain unaffected when physical interface A 215 or B 230 fails, there is no routing update requirement. The IP layer can thus be used to load balance between the two interfaces using equal paths, policy based routing, or using various network level tools.

与通过发生故障的NIC接收到分组的路由器/对等方的通信必须得以继续。此处将描述例如当NIC发生故障时用于维持通信的三种方法。使用了用于同时支持多个MAC地址的网络接口卡(NIC)。把同一组MAC地址分配给最后形成组合的所有物理接口,所述组合例如是接口A 215和B 230。把每一MAC地址与用于IP接口E1 201或者F1 202处的各个IP地址相关联。基于源IP地址来选择输出分组的MAC地址。作为默认,只有一个组件在给定物理接口、即组件Ax 205上是有源的,而Ay 210在接口A 215上是无源的。通过所述组件接口,从所述IP接口正常地传输数据。因此,每一物理接口、例如接口A 215和B 230分配对应于有源组件的MAC地址作为其主MAC,并且通过适当的机制将其通告交换机240。当启动时,把物理接口配置为把目的地MAC地址不等于物理接口的主MAC地址的所有分组过滤掉。IP节点之间的正常通信确保所述交换机表依照与其端口相关联的MAC地址进行更新。Communication with routers/peers that received packets through the failed NIC must continue. Three methods for maintaining communication when, for example, a NIC fails, will be described here. A network interface card (NIC) for simultaneously supporting multiple MAC addresses is used. The same set of MAC addresses is assigned to all physical interfaces that end up forming a combination, such as interfaces A 215 and B 230. Each MAC address is associated with a respective IP address for use at the IP interface E1 201 or F1 202. The MAC address of the outgoing packet is selected based on the source IP address. As a default, only one component is active on a given physical interface, component Ax 205, while Ay 210 is passive on interface A 215. Data is normally transferred from the IP interface through the component interface. Accordingly, each physical interface, such as interfaces A 215 and B 230, is assigned the MAC address corresponding to the active component as its primary MAC, and advertises this to switch 240 through an appropriate mechanism. When enabled, the physical interface is configured to filter out all packets with a destination MAC address not equal to the primary MAC address of the physical interface. Normal communication between IP nodes ensures that the switch tables are updated with the MAC addresses associated with their ports.

当故障转移时,把MAC地址传递至与接口A 215和B 230相连的交换机240的方法,是传输把源设置为故障NIC的主MAC并且把目的地MAC设置为有源NIC接口的主MAC的以太网帧。所传输的帧的有效负载符合以太网协议要求,但是数据全部是零。在此实施例中,所述交换机240将更新其表以便表明MAC在接收端口上的位置。帧的“Ethertype”值应该被设定为系统上不支持的值,或者被设定为由互联网分配编号机构(Internet Assigned Number Authority,IANA)请求的特殊值,从而如果所述分组被送回到NIC,则由驱动程序将其过滤掉。在本发明的此实施例中,当故障转移时,与IP地址相关联的MAC地址移到起作用的NIC,而不必通知故障转移的所有IP客户端/对等方。起作用的NIC被适当地配置为同样接收故障转移MAC地址上的分组。The method of passing the MAC address to the switch 240 connected to interfaces A 215 and B 230 when failover is to transmit the source MAC set to the failed NIC's primary MAC and the destination MAC set to the active NIC interface's primary MAC Ethernet frame. The payload of the transmitted frame conforms to the Ethernet protocol requirements, but the data is all zeros. In this embodiment, the switch 240 will update its table to indicate the location of the MAC on the receiving port. The frame's "Ethertype" value SHOULD be set to a value not supported on the system, or to a special value requested by the Internet Assigned Number Authority (IANA), so that if the packet is sent back to NIC, it is filtered out by the driver. In this embodiment of the invention, upon failover, the MAC address associated with the IP address is moved to the functioning NIC without having to notify all IP clients/peers of the failover. The functioning NIC is suitably configured to also receive packets on the failover MAC address.

局域网(LAN)中的分组被传输给接口的MAC地址。IP实现地址解析技术以便确定对应于对等方IP地址的MAC地址。通过地址解析协议或者邻域发现,对任何特殊IP地址的地址解析响应始终返回与和其绑定的IP接口的有源组件相关联的物理接口的主MAC,例如,IP接口E1 201返回A 215的主MAC地址。当接口发生故障时,起作用的物理接口A 215或者B 230的无源组件通过软件控制变为有源的。另外,如上所述的以太网帧在具有发生故障的物理接口的主MAC的物理接口上被传输。The MAC address of the interface to which packets on a local area network (LAN) are transmitted. IP implements address resolution techniques in order to determine the MAC address corresponding to a peer's IP address. An address resolution response to any particular IP address, via ARP or Neighborhood Discovery, always returns the primary MAC of the physical interface associated with the active component of the IP interface bound to it, e.g., IP interface E1 201 returns A 215 primary MAC address. When an interface fails, the passive components of the active physical interface A 215 or B 230 become active through software control. Additionally, Ethernet frames as described above are transmitted on the physical interface of the primary MAC with the failed physical interface.

当每一NIC的多个MAC得不到支持时,当NIC发生故障的时候,可以使用另一种方法来维持通信。在此方法中,可以传输无偿的ARP,以便通告所述IP地址现在与起作用的NIC的MAC地址相关联。While multiple MACs per NIC are not supported, another method can be used to maintain communication when a NIC fails. In this method, a gratuitous ARP can be transmitted to announce that the IP address is now associated with the MAC address of the functioning NIC.

更进一步讲,当所述NIC不支持多个MAC入口时,当NIC发生故障的时候,可以使用第三种方法来维持通信。在同一网络的接收IP节点中,可以把独立的多播MAC值作为它们的MAC地址分配给物理NIC,这是因为所接收的以太网帧中的源MAC地址是否是多播地址的检验。当故障转移时,故障NIC的多播MAC地址可以被添加到有源接口上的多播列表中。由此,在该多播地址上接收到的所有分组将由所述NIC接收到。Furthermore, when the NIC does not support multiple MAC entries, when the NIC fails, the third method can be used to maintain communication. In receiving IP nodes of the same network, independent multicast MAC values can be assigned to physical NICs as their MAC addresses, because of the check of whether the source MAC address in the received Ethernet frame is a multicast address. When failing over, the multicast MAC address of the failed NIC can be added to the multicast list on the active interface. Thus, all packets received on that multicast address will be received by the NIC.

图3说明了依照本发明实施例300使用虚拟IP地址360来管理网络接口访问控制。虚拟IP地址是不与物理IP接口相关联的地址,而是可以被逻辑映射至物理IP地址的逻辑地址。由于这种地址不受物理接口诸如被记录下的接口状态的影响,所以它将始终存在。这种IP地址可以被配置为处于看起来只可以通过虚拟组合接口B1 301和B2302到达的网络上。依照此设定,去往/来自所述系统的所有通信可以使用虚拟IP地址;但是所述数据自身可以在与B1 301和B2 302相关联的IP路由上进行负载平衡。此类控制在网络层进行,即层3,并且在不要求专门硬件的情况下来提供故障转移和负载平衡,由此提供比链路合并方案更好的控制。IP地址360经由两个IP地址IPa 350和IPb 355来提供IP路由(例如相等路径),其中所述IPa 350和IPb 355经由虚拟接口B1 301和B2 302以及虚拟接口Ax 305、Ay 310、Bx 320和By 325耦合至接口A 315和B 330,以便在两个物理接口A 315和B 330之间提供负载平衡。接口A 315和B 330可通信地耦合至网络设备340,其可以包括交换机或者其它IP节点。当接口变为无源时,使用MII监控来检测故障,并且组合IP接口中的无源组件成为有源的。所述故障检测产生无偿的ARP或者以太网帧,以便通知交换机来自同一IP地址的分组流经不同端口。然而,包括网络中其它路由器处的路由表条目的路由表条目不要求任何修改,这是因为没有IP接口受到影响。例如,如果接口A 315发生故障,那么无源的虚拟接口Bx 320变为有源的,并且使用无偿的ARP或者以太网帧来通知交换机340来自同一IP地址、即IPa 350的分组现在在与接口B 330相连的端口被接收。FIG. 3 illustrates the use of virtual IP addresses 360 to manage network interface access control in accordance with an embodiment 300 of the present invention. A virtual IP address is an address that is not associated with a physical IP interface, but a logical address that can be logically mapped to a physical IP address. Since this address is not affected by the state of the physical interface such as the interface being recorded, it will always exist. Such an IP address can be configured to be on a network that appears to be reachable only through virtual bonded interfaces B1 301 and B2 302. With this setup, all communications to/from the system can use the virtual IP address; however the data itself can be load balanced across the IP routes associated with B1 301 and B2 302. Such control occurs at the network layer, layer 3, and provides failover and load balancing without requiring specialized hardware, thereby providing better control than link consolidation schemes. IP address 360 provides IP routing (e.g. equal path) via two IP addresses IPa 350 and IPb 355 via virtual interfaces B1 301 and B2 302 and virtual interfaces Ax 305, Ay 310, Bx 320 and By 325 are coupled to interfaces A 315 and B 330 to provide load balancing between the two physical interfaces A 315 and B 330. Interfaces A 315 and B 330 are communicatively coupled to a network device 340, which may include a switch or other IP node. MII monitoring is used to detect failures when the interface becomes passive, and passive components in the combined IP interface become active. The failure detection generates gratuitous ARP or Ethernet frames to inform the switch that packets from the same IP address flow through different ports. However, routing table entries, including routing table entries at other routers in the network, do not require any modification because no IP interfaces are affected. For example, if interface A 315 fails, then passive virtual interface Bx 320 becomes active and uses a gratuitous ARP or Ethernet frame to inform switch 340 that packets from the same IP address, IPa 350, are now communicating with the interface The port to which the B 330 is connected is received.

本领域技术人员应该理解的是,本发明可以扩展为多个用于提供负载平衡和为彼此故障转移提供相互的备份的NIC。例如,每一NIC可以对N个组件接口起作用。每一IP接口是使用来自只具有有源组件之一的每一NIC的一个虚拟组件接口形成的。其它组件接口是无源的。当NIC发生故障时,具有来自该NIC的有源组件的IP接口将故障转移至与仍有源的NIC相关联的其它组件接口之一。本发明的实施例还可以扩展为包括备份组件接口池,只有当IP接口的有源组件接口发生故障时,其才与组合接口结合。It should be understood by those skilled in the art that the present invention can be extended to multiple NICs for providing load balancing and mutual backup for mutual failover. For example, each NIC can contribute to N component interfaces. Each IP interface is formed using one virtual component interface from each NIC that has only one of the active components. Other component interfaces are passive. When a NIC fails, the IP interface with active components from that NIC will fail over to one of the other component interfaces associated with the NIC that is still active. Embodiments of the present invention can also be extended to include a pool of backup component interfaces that are only combined with the combined interface if the active component interface of the IP interface fails.

图4说明了依照本发明实施例的用于为相互的故障转移和负载共享提供网络连接的方法400。依照所述方法,在410,为第一和第二计算机接口的每一个提供有源虚拟接口和无源虚拟接口。在420,把所述第一计算机接口的有源虚拟接口和所述第二接口的无源虚拟接口可通信地耦合。在430,把所述第二计算机接口的有源虚拟接口和所述第一计算机接口的无源虚拟接口可通信地耦合。在440,就所述第一和第二计算机接口是否可利用做出确定。在445,当确定可利用时,那么在450,经由第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口的每个来引导数据流。否则,在455,当所述第一和第二计算机接口之一不可利用时,那么在460,把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。FIG. 4 illustrates a method 400 for providing network connections for mutual failover and load sharing according to an embodiment of the present invention. In accordance with the method, at 410, an active virtual interface and a passive virtual interface are provided for each of the first and second computer interfaces. At 420, the active virtual interface of the first computer interface and the passive virtual interface of the second interface are communicatively coupled. At 430, the active virtual interface of the second computer interface and the passive virtual interface of the first computer interface are communicatively coupled. At 440, a determination is made as to whether the first and second computer interfaces are available. At 445, when it is determined to be available, then at 450, data flow is directed via each of the active virtual interface of the first computer interface and the active virtual interface of the second computer interface. Otherwise, at 455, when one of the first and second computer interfaces is not available, then at 460, data flow is directed to the active virtual interface and the passive virtual interface of the available first or second interface.

图5说明了根据本发明的系统500,其中根据图1-3举例说明的过程可以在计算机可读介质或者载体上具体实现,所述介质或载体例如是图5中所示的一个或多个固定的和/或可移除的数据存储设备568,或者是其它数据存储或者数据通信设备。表示在可移除的数据存储设备568上具体实现的过程的计算机程序590可以被载入存储器592或者控制器系统500中,例如处理器510中,以便配置图5的控制器系统500来执行。计算机程序590包括指令,当由图5的控制器500读取并且执行所述指令时,令控制器系统500执行实现本发明的步骤或者元件所必须的步骤。FIG. 5 illustrates a system 500 according to the present invention, wherein the processes illustrated in accordance with FIGS. 1-3 may be embodied on a computer-readable medium or carrier, such as one or more of the Fixed and/or removable data storage device 568, or other data storage or data communication device. Computer programs 590 representing processes embodied on removable data storage device 568 may be loaded into memory 592 or into controller system 500, such as processor 510, to configure controller system 500 of FIG. 5 for execution. The computer program 590 includes instructions which, when read and executed by the controller 500 of FIG. 5 , cause the controller system 500 to perform the steps necessary to implement the steps or elements of the present invention.

已经为了举例说明和描述的目的呈现了本发明的示例性实施例的先前描述。这不意味着穷举或者把本发明限制为所公开的具体形式。根据上述教导能够进行许多修改和变化。本发明的范围不由这种详细说明来限制,而是由所附权利要求书来限定。The foregoing description of exemplary embodiments of the present invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in light of the above teachings. It is intended that the scope of the invention be limited not by this detailed description, but by the appended claims.

Claims (25)

1.一种用于为相互的故障转移和负载共享提供网络连接的设备,包括:1. An apparatus for providing network connectivity for mutual failover and load sharing, comprising: 至少第一和第二计算机接口,具有用于容纳多个MAC地址的一组公共的一个或多个标识符;at least first and second computer interfaces having a common set of one or more identifiers for accommodating a plurality of MAC addresses; 第一有源和无源虚拟接口,可通信地耦合至所述第一计算机接口,以及第二有源和无源虚拟接口,可通信地耦合至所述第二计算机接口,其中所述第一有源虚拟接口与所述第二无源虚拟接口虚拟地结合,并且所述第二有源虚拟接口与所述第一无源虚拟接口虚拟地结合;以及A first active and passive virtual interface communicatively coupled to the first computer interface, and a second active and passive virtual interface communicatively coupled to the second computer interface, wherein the first an active virtual interface is virtually bonded to the second passive virtual interface, and the second active virtual interface is virtually bonded to the first passive virtual interface; and 至少一个接入控制器,耦合至所述虚拟接口,用于控制经由所述可通信地耦合的虚拟接口流向所述至少第一和第二计算机接口的数据流,当所述第一和第二计算机接口可利用时,通过所述第一和第二有源虚拟接口来引导数据流,否则,当所述第一或者第二计算机接口之一不可利用时,将数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。at least one access controller coupled to the virtual interface for controlling data flow to the at least first and second computer interfaces via the communicatively coupled virtual interface, when the first and second directing data flow through said first and second active virtual interfaces when a computer interface is available, otherwise directing data flow to an available first or second computer interface when one of said first or second computer interfaces is not available An active virtual interface and a passive virtual interface for one or the second interface. 2.如权利要求1所述的设备,还包括交换机,耦合至所述至少第一和第二计算机接口,所述交换机被配置为处理针对相同源和目的地的以太网帧。2. The apparatus of claim 1, further comprising a switch coupled to the at least first and second computer interfaces, the switch configured to process Ethernet frames for the same source and destination. 3.如权利要求1所述的设备,其中所述第一和第二计算机接口包括至少两个网络接口卡。3. The device of claim 1, wherein the first and second computer interfaces comprise at least two network interface cards. 4.如权利要求3所述的设备,其中每一网络接口卡同时支持多个MAC地址。4. The apparatus of claim 3, wherein each network interface card supports multiple MAC addresses simultaneously. 5.如权利要求1所述的设备,其中计算机接口被配置为传输一个帧以便提供故障转移。5. The device of claim 1, wherein the computer interface is configured to transmit a frame to provide failover. 6.如权利要求5所述的设备,其中所述帧传送设定为发生故障的NIC的主MAC的源和设定为有源NIC接口的主MAC的目的地MAC。6. The apparatus of claim 5, wherein the frame transfers a source set to the primary MAC of the failed NIC and a destination MAC set to the primary MAC of the active NIC interface. 7.如权利要求1所述的设备,其中所述第一有源虚拟接口和所述第二无源虚拟接口形成第一组件接口,并且所述第二有源虚拟接口和所述第一无源虚拟接口形成第二组件接口。7. The device of claim 1, wherein the first active virtual interface and the second passive virtual interface form a first component interface, and the second active virtual interface and the first passive The source virtual interface forms the second component interface. 8.如权利要求1所述的设备,其中所述接入控制器通过发送无偿的地址解析协议(ARP)来确定至少第一和第二计算机接口的可利用性。8. The apparatus of claim 1, wherein the access controller determines the availability of at least the first and second computer interfaces by sending a gratuitous Address Resolution Protocol (ARP). 9.如权利要求1所述的设备,其中所述虚拟接口的至少一部分是从虚拟接口池中选择的。9. The device of claim 1, wherein at least a portion of the virtual interfaces are selected from a pool of virtual interfaces. 10.如权利要求1所述的设备,其中所述接入控制器向至少第一和第二接口中的每一个分配虚拟互联网协议地址,并且使用互联网协议路由来路由所述数据流。10. The device of claim 1, wherein the access controller assigns a virtual internet protocol address to each of at least the first and second interfaces and routes the data flow using internet protocol routing. 11.如权利要求1所述的设备,其中将独立的多播MAC值作为相应的MAC地址分配给所述第一和第二计算机物理接口,并且,当故障转移时,把发生故障的计算机接口的多播MAC地址添加到其余计算机接口上的多播列表中,以便确保具有发生故障的计算机接口的多播MAC地址的所有接收的分组由所述其余计算机接口接收。11. The device of claim 1 , wherein independent multicast MAC values are assigned to the first and second computer physical interfaces as corresponding MAC addresses, and, upon failover, the failed computer interface is is added to the multicast list on the remaining computer interfaces to ensure that all received packets with the multicast MAC address of the failed computer interface are received by the remaining computer interfaces. 12.一种用于为相互的故障转移和负载共享提供网络连接的方法,包括:12. A method for providing network connectivity for mutual failover and load sharing, comprising: 为第一和第二计算机接口中的每一个提供有源虚拟接口和无源虚拟接口;providing an active virtual interface and a passive virtual interface for each of the first and second computer interfaces; 将所述第一计算机接口的有源虚拟接口与所述第二接口的无源虚拟接口可通信地耦合;communicatively coupling the active virtual interface of the first computer interface with the passive virtual interface of the second interface; 将所述第二计算机接口的有源虚拟接口与所述第一计算机接口的无源虚拟接口可通信地耦合;并且communicatively coupling the active virtual interface of the second computer interface with the passive virtual interface of the first computer interface; and 当所述第一和第二计算机接口可利用时,通过所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口中的每一个来引导数据流,否则当所述第一或者第二计算机接口之一不可利用时,把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口。directing data flow through each of the active virtual interface of the first computer interface and the active virtual interface of the second computer interface when the first and second computer interfaces are available, otherwise when the first computer interface When one of the first or second computer interfaces is unavailable, data flow is directed to the active virtual interface and the passive virtual interface of the first or second interface that is available. 13.如权利要求12所述的方法,还包括发送无偿的ARP以便确定所述第一和第二接口之一的可利用性。13. The method of claim 12, further comprising sending a gratuitous ARP to determine the availability of one of the first and second interfaces. 14.如权利要求12所述的方法,其中引导数据流的步骤包括使用所述第一和第二计算机接口的有源虚拟接口和无源虚拟接口来引导数据流。14. The method of claim 12, wherein directing data flow includes directing data flow using active virtual interfaces and passive virtual interfaces of the first and second computer interfaces. 15.如权利要求14所述的方法,其中所述虚拟接口的至少一部分是从虚拟接口池中选择的。15. The method of claim 14, wherein at least a portion of the virtual interfaces are selected from a pool of virtual interfaces. 16.如权利要求12所述的方法,其中为第一和第二计算机接口中的每一个提供有源虚拟接口和无源虚拟接口的步骤还包括向所述第一和第二计算机接口提供至少两个网络接口卡。16. The method of claim 12, wherein the step of providing each of the first and second computer interfaces with an active virtual interface and a passive virtual interface further comprises providing at least one of the first and second computer interfaces with Two network interface cards. 17.如权利要求16所述的方法,其中向所述第一和第二计算机接口提供至少两个网络接口卡的步骤还包括同时提供对多个MAC地址的支持。17. The method of claim 16, wherein the step of providing at least two network interface cards to the first and second computer interfaces further comprises providing support for multiple MAC addresses simultaneously. 18.如权利要求12所述的方法,还包括配置计算机接口以便传输一个帧来提供故障转移。18. The method of claim 12, further comprising configuring the computer interface to transmit a frame to provide failover. 19.如权利要求18所述的方法,其中配置计算机接口以便传输一个帧来提供故障转移的步骤还包括:使用所述帧来传递设定为发生故障的NIC的主MAC的源以及设定为有源NIC接口的主MAC的目的地MAC。19. The method of claim 18 , wherein the step of configuring the computer interface to transmit a frame to provide failover further comprises: using the frame to convey a source set to the primary MAC of the failed NIC and set to Destination MAC of the primary MAC of the active NIC interface. 20.如权利要求12所述的方法,其中引导数据流的步骤包括:20. The method of claim 12, wherein the step of directing data flow comprises: 把虚拟互联网协议地址分配给至少第一和第二接口中的每一个;并且assigning a virtual internet protocol address to each of the at least first and second interfaces; and 使用互联网协议路由来路由所述数据流。The data flow is routed using Internet Protocol routing. 21.如权利要求12所述的方法,其中为第一和第二计算机接口中的每一个提供有源虚拟接口和无源虚拟接口的步骤还包括:使用所述第一有源虚拟接口和第二无源虚拟接口来形成第一组件接口,并且使用所述第二有源虚拟接口和第一无源虚拟接口来形成第二组件接口。21. The method of claim 12, wherein the step of providing each of the first and second computer interfaces with an active virtual interface and a passive virtual interface further comprises: using the first active virtual interface and the second computer interface. Two passive virtual interfaces are used to form a first component interface, and the second active virtual interface and the first passive virtual interface are used to form a second component interface. 22.如权利要求12所述的方法,其中引导数据流的步骤还包括:通过发送无偿的地址解析协议(ARP)来确定至少第一和第二计算机接口的可利用性。22. The method of claim 12, wherein the step of directing data flow further comprises determining the availability of at least the first and second computer interfaces by sending a gratuitous Address Resolution Protocol (ARP). 23.如权利要求12所述的方法,其中引导数据流的步骤还包括:把独立的多播MAC值作为相应的MAC地址分配给所述第一和第二计算机物理接口,并且在故障转移时,把发生故障的计算机接口的多播MAC地址添加到其余计算机接口上的多播列表中,以便确保具有发生故障的计算机接口的多播MAC地址的所有接收的分组由其余计算机接口接收。23. The method of claim 12, wherein the step of directing data flow further comprises: assigning independent multicast MAC values as corresponding MAC addresses to the first and second computer physical interfaces, and upon failover , adding the multicast MAC address of the failed computer interface to the multicast list on the remaining computer interfaces to ensure that all received packets with the multicast MAC address of the failed computer interface are received by the remaining computer interfaces. 24.一种用于为相互的故障转移和负载共享提供网络连接的系统,包括:24. A system for providing network connectivity for mutual failover and load sharing, comprising: 用于为第一和第二计算机接口中的每一个提供有源虚拟接口和无源虚拟接口的装置;means for providing an active virtual interface and a passive virtual interface for each of the first and second computer interfaces; 用于把所述第一计算机接口的有源虚拟接口与所述第二接口的无源虚拟接口可通信地耦合的装置;means for communicatively coupling the active virtual interface of the first computer interface with the passive virtual interface of the second interface; 用于把所述第二计算机接口的有源虚拟接口与所述第一计算机接口的无源虚拟接口可通信地耦合的装置;以及means for communicatively coupling the active virtual interface of the second computer interface with the passive virtual interface of the first computer interface; and 用于当所述第一和第二计算机接口可利用时,通过所述第一计算机接口的有源虚拟接口和第二计算机接口的有源虚拟接口中的每一个来引导数据流,否则把数据流引导至可利用的第一或者第二接口的有源虚拟接口和无源虚拟接口的装置。for directing data flow through each of the active virtual interface of the first computer interface and the active virtual interface of the second computer interface when the first and second computer interfaces are available, and otherwise Means that flow is directed to the active virtual interface and the passive virtual interface of the available first or second interface. 25.一种包括用于执行如前面的方法权利要求中的任一项所述的方法的指令的程序存储设备。25. A program storage device comprising instructions for performing the method of any one of the preceding method claims.
CNB2006100024088A 2005-01-31 2006-01-27 Apparatus and method for providing network connectivity Expired - Fee Related CN100456694C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/047,999 2005-01-31
US11/047,999 US7505401B2 (en) 2005-01-31 2005-01-31 Method, apparatus and program storage device for providing mutual failover and load-balancing between interfaces in a network

Publications (2)

Publication Number Publication Date
CN1815979A true CN1815979A (en) 2006-08-09
CN100456694C CN100456694C (en) 2009-01-28

Family

ID=36756421

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100024088A Expired - Fee Related CN100456694C (en) 2005-01-31 2006-01-27 Apparatus and method for providing network connectivity

Country Status (2)

Country Link
US (2) US7505401B2 (en)
CN (1) CN100456694C (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101999225A (en) * 2008-03-13 2011-03-30 哈里公司 System and method for distributing a client load from a failed server among remaining servers in a storage area network (san)
CN107769956A (en) * 2016-08-19 2018-03-06 三星电子株式会社 Computing system and redundant resource attachment structure

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769862B2 (en) * 2003-12-19 2010-08-03 Check Point Software Technologies Inc. Method and system for efficiently failing over interfaces in a network
US7710865B2 (en) * 2005-02-25 2010-05-04 Cisco Technology, Inc. Disaster recovery for active-standby data center using route health and BGP
US7769886B2 (en) * 2005-02-25 2010-08-03 Cisco Technology, Inc. Application based active-active data center network using route health injection and IGP
US8266272B2 (en) * 2005-11-07 2012-09-11 Hewlett-Packard Development Company, L.P. Methods for IT network representation and associated computer program products
EP1816804B1 (en) * 2005-12-05 2012-12-19 Nippon Telegraph And Telephone Corporation Failure recovery method and packet communication apparatus
US8134928B1 (en) * 2005-12-15 2012-03-13 Nvidia Corporation Technique for identifying a failed network interface card within a team of network interface cards
US7545741B1 (en) 2005-12-15 2009-06-09 Nvidia Corporation Technique for identifying a failed network interface card within a team of network interface cards
US7945164B2 (en) * 2006-05-25 2011-05-17 Cisco Technology, Inc. Multiple fiber optic gigabit ethernet links channelized over single optical link
US7710862B2 (en) * 2006-08-30 2010-05-04 Hewlett-Packard Development Company, L.P. Method and system of assigning media access control (MAC) addresses across teamed communication ports
US20080144634A1 (en) * 2006-12-15 2008-06-19 Nokia Corporation Selective passive address resolution learning
US8184631B2 (en) * 2007-01-22 2012-05-22 Oracle America, Inc. Method for specifying a MAC identifier for a network-interface-device
US7756012B2 (en) * 2007-05-18 2010-07-13 Nvidia Corporation Intelligent failover in a load-balanced network environment
US7792018B2 (en) * 2007-05-18 2010-09-07 Nvidia Corporation Intelligent load balancing and failover of network traffic
US7760619B2 (en) * 2007-05-18 2010-07-20 Nvidia Corporation Intelligent failover in a load-balanced networking environment
US8300647B2 (en) * 2007-05-18 2012-10-30 Nvidia Corporation Intelligent load balancing and failover of network traffic
US8432788B2 (en) * 2007-05-18 2013-04-30 Nvidia Corporation Intelligent failback in a load-balanced networking environment
US7995465B2 (en) * 2007-05-18 2011-08-09 Nvidia Corporation Intelligent load balancing and failover of network traffic
JP5176482B2 (en) * 2007-10-26 2013-04-03 富士通株式会社 Management program, management method, management apparatus, and communication system
KR101442309B1 (en) * 2007-12-18 2014-09-23 인터내셔널 비지네스 머신즈 코포레이션 Failover in a host concurrently supporting multiple virtual ip addresses across multiple adapters
US8521879B1 (en) 2008-03-11 2013-08-27 United Services Automobile Assocation (USAA) Systems and methods for a load balanced interior gateway protocol intranet
US7949893B1 (en) * 2008-04-30 2011-05-24 Netapp, Inc. Virtual user interface failover
US9880954B2 (en) * 2008-12-01 2018-01-30 Micron Technology, Inc. Method and apparatus for providing data access
CN101610182B (en) * 2009-06-26 2011-09-07 杭州华三通信技术有限公司 Multi-primary apparatus conflict detection method in stack and stack member apparatus
US8745243B2 (en) * 2009-08-03 2014-06-03 Brocade Communications Systems, Inc. FCIP communications with load sharing and failover
US8780911B2 (en) 2009-10-08 2014-07-15 Force10 Networks, Inc. Link aggregation based on port and protocol combination
US8499093B2 (en) * 2010-05-14 2013-07-30 Extreme Networks, Inc. Methods, systems, and computer readable media for stateless load balancing of network traffic flows
US8514743B2 (en) * 2010-06-17 2013-08-20 Cisco Technology, Inc. Maintaining balance of active links across network devices in a double-sided virtual port-channel environment
WO2012104862A1 (en) 2011-02-02 2012-08-09 Tata Consultancy Services Limited System and method for aggregating and estimating the bandwidth of multiple network interfaces
US9825815B2 (en) 2011-02-02 2017-11-21 Tata Consultancy Services Limited System and method for aggregating and estimating the bandwidth of multiple network interfaces
CN102118319B (en) * 2011-04-06 2013-09-18 杭州华三通信技术有限公司 Traffic load balancing method and device
US8650433B2 (en) * 2011-08-15 2014-02-11 International Business Machines Corporation Shared ethernet adapter (SEA) load sharing and SEA fail-over configuration as set by a user interface
JP6035726B2 (en) * 2011-11-02 2016-11-30 富士通株式会社 Connection control apparatus, storage system, and connection control apparatus control method
US9614688B2 (en) 2011-11-15 2017-04-04 Canon Kabushiki Kaisha Providing image data to a client display device
ITCO20110065A1 (en) * 2011-12-15 2013-06-16 Nuovo Pignone Spa METHOD TO CHECK A PLURALITY OF MACHINES, CONTROL SYSTEM AND PLANT
US8711681B2 (en) * 2012-02-08 2014-04-29 Radisys Corporation Switch redundancy in systems with dual-star backplanes
US9019967B2 (en) 2012-07-30 2015-04-28 Dell Products L.P. VLAN advertisement and automated configuration
US9830239B2 (en) 2013-01-30 2017-11-28 Hewlett Packard Enterprise Development Lp Failover in response to failure of a port
US9575738B1 (en) * 2013-03-11 2017-02-21 EMC IP Holding Company LLC Method and system for deploying software to a cluster
US9298566B2 (en) * 2013-04-17 2016-03-29 Hewlett Packard Enterprise Development Lp Automatic cluster-based failover handling
CN104579945B (en) * 2013-10-18 2019-07-02 中兴通讯股份有限公司 A redundant protection method and device
US10833993B2 (en) * 2014-03-28 2020-11-10 Weigel Broadcasting Co. Channel bonding
US9712436B2 (en) 2014-07-03 2017-07-18 Red Hat Israel, Ltd. Adaptive load balancing for bridged systems
WO2016164052A1 (en) 2015-04-10 2016-10-13 Hewlett Packard Enterprise Development Lp Network address of a computing device
US11372787B2 (en) * 2017-12-09 2022-06-28 Intel Corporation Unified address space for multiple links
US11336508B2 (en) 2018-07-01 2022-05-17 Mellanox Technologies, Ltd. Transparent failover in a network interface controller
US11706298B2 (en) * 2021-01-21 2023-07-18 Cohesity, Inc. Multichannel virtual internet protocol address affinity
US11785077B2 (en) 2021-04-29 2023-10-10 Zoom Video Communications, Inc. Active-active standby for real-time telephony traffic
US11575741B2 (en) * 2021-04-29 2023-02-07 Zoom Video Communications, Inc. System and method for active-active standby in phone system management
US11570246B1 (en) 2021-11-17 2023-01-31 Saudi Arabian Oil Company Layer 7 health check automated execution framework
CN116132484B (en) * 2023-03-24 2025-09-09 河北白沙烟草有限责任公司 Construction method of workshop-level Ethernet full-coverage network for tobacco filament making
US20250328370A1 (en) * 2024-04-23 2025-10-23 Dell Products L.P. Replacement of a host in a multi-host environment

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5946684A (en) * 1997-02-18 1999-08-31 Ameritech Corporation Method and system for providing computer-network related information about a calling party
US6314525B1 (en) 1997-05-13 2001-11-06 3Com Corporation Means for allowing two or more network interface controller cards to appear as one card to an operating system
US6253334B1 (en) 1997-05-13 2001-06-26 Micron Electronics, Inc. Three bus server architecture with a legacy PCI bus and mirrored I/O PCI buses
US6393483B1 (en) 1997-06-30 2002-05-21 Adaptec, Inc. Method and apparatus for network interface card load balancing and port aggregation
US6067545A (en) 1997-08-01 2000-05-23 Hewlett-Packard Company Resource rebalancing in networked computer systems
CA2217275C (en) * 1997-10-03 2005-08-16 Newbridge Networks Corporation Multiple internetworking realms within an internetworking device
US6078957A (en) * 1998-11-20 2000-06-20 Network Alchemy, Inc. Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system
US6714549B1 (en) * 1998-12-23 2004-03-30 Worldcom, Inc. High resiliency network infrastructure
US6560630B1 (en) 1999-03-18 2003-05-06 3Com Corporation Receive load balancing and fail over with multiple network interface cards
US6490632B1 (en) 1999-03-18 2002-12-03 3Com Corporation High performance load balancing and fail over support of internet protocol exchange traffic over multiple network interface cards
US6754699B2 (en) 2000-07-19 2004-06-22 Speedera Networks, Inc. Content delivery and global traffic management network system
AU2001257364A1 (en) * 2000-04-27 2001-11-07 Fortress Technologies, Inc. Network interface device having primary and backup interfaces for automatic dialbackup upon loss of a primary connection and method of using same
US6728780B1 (en) * 2000-06-02 2004-04-27 Sun Microsystems, Inc. High availability networking with warm standby interface failover
US6687245B2 (en) * 2001-04-03 2004-02-03 Voxpath Networks, Inc. System and method for performing IP telephony
US6944785B2 (en) * 2001-07-23 2005-09-13 Network Appliance, Inc. High-availability cluster virtual server system
US7043569B1 (en) * 2001-09-07 2006-05-09 Chou Norman C Method and system for configuring an interconnect device
US7296069B2 (en) * 2002-05-08 2007-11-13 Hewlett-Packard Development Company, L.P. Method and system for network fault monitoring with linux
FI20021287A0 (en) * 2002-06-28 2002-06-28 Nokia Corp Load sharing in a telecommunications system
US7382790B2 (en) * 2002-07-02 2008-06-03 Emulex Design & Manufacturing Corporation Methods and apparatus for switching fibre channel arbitrated loop systems
US7287186B2 (en) * 2003-06-02 2007-10-23 Surgient Inc. Shared nothing virtual cluster
US20050022202A1 (en) * 2003-07-09 2005-01-27 Sun Microsystems, Inc. Request failover mechanism for a load balancing system
US9491084B2 (en) * 2004-06-17 2016-11-08 Hewlett Packard Enterprise Development Lp Monitoring path connectivity between teamed network resources of a computer system and a core network
US8730976B2 (en) * 2004-08-17 2014-05-20 Cisco Technology, Inc. System and method for preventing erroneous link aggregation due to component relocation
US7711820B2 (en) * 2004-11-08 2010-05-04 Cisco Technology, Inc. High availability for intelligent applications in storage networks

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101999225A (en) * 2008-03-13 2011-03-30 哈里公司 System and method for distributing a client load from a failed server among remaining servers in a storage area network (san)
CN101999225B (en) * 2008-03-13 2014-08-27 Hbc方案股份有限公司 System and method for distributing a client load from a failed server among remaining servers in a storage area network (san)
CN107769956A (en) * 2016-08-19 2018-03-06 三星电子株式会社 Computing system and redundant resource attachment structure
US11693747B2 (en) 2016-08-19 2023-07-04 Samsung Electronics Co., Ltd. Adaptive multipath fabric for balanced performance and high availability
US12181984B2 (en) 2016-08-19 2024-12-31 Samsung Electronics Co., Ltd. Adaptive multipath fabric for balanced performance and high availability

Also Published As

Publication number Publication date
CN100456694C (en) 2009-01-28
US7505401B2 (en) 2009-03-17
US20060171303A1 (en) 2006-08-03
US20090073875A1 (en) 2009-03-19
US7903543B2 (en) 2011-03-08

Similar Documents

Publication Publication Date Title
CN1815979A (en) Method and apparatus for providing network connector
US7580415B2 (en) Aggregation of hybrid network resources operable to support both offloaded and non-offloaded connections
JP6445015B2 (en) System and method for providing data services in engineered systems for execution of middleware and applications
US11153194B2 (en) Control plane isolation for software defined network routing services
US8842518B2 (en) System and method for supporting management network interface card port failover in a middleware machine environment
US8972475B2 (en) Network secure communications in a cluster computing environment
US7519721B2 (en) Computer program products for security processing inbound communications in a cluster computing environment
US11336570B1 (en) Layer three multi-homing for virtual networks
US7146432B2 (en) Methods, systems and computer program products for providing failure recovery of network secure communications in a cluster computing environment
US11398956B2 (en) Multi-Edge EtherChannel (MEEC) creation and management
US6954784B2 (en) Systems, method and computer program products for cluster workload distribution without preconfigured port identification by utilizing a port of multiple ports associated with a single IP address
US6941366B2 (en) Methods, systems and computer program products for transferring security processing between processors in a cluster computing environment
US7991914B2 (en) Technique for addressing a cluster of network servers
US6996617B1 (en) Methods, systems and computer program products for non-disruptively transferring a virtual internet protocol address between communication protocol stacks
CN102821044B (en) Method and device for configuring server cluster
US8891358B2 (en) Method for application broadcast forwarding for routers running redundancy protocols
US20070025253A1 (en) Network resource teaming providing resource redundancy and transmit/receive load-balancing through a plurality of redundant port trunks
US9559990B2 (en) System and method for supporting host channel adapter (HCA) filtering in an engineered system for middleware and application execution
CN1848841A (en) Route equipment backup method
JP2003234752A (en) Load distribution method using tag conversion, tag conversion device, load distribution control device
CN101127770B (en) Method of Realizing Backup on Address Resolution Protocol Proxy
US20240195743A1 (en) Application-layer load balancing and high availability via lacp bonding in a network
US20240348658A1 (en) Method and apparatus for security application balancing using a packet switch

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090128

Termination date: 20210127