CN101383732B - 负载平衡联网环境中的智能故障恢复 - Google Patents

负载平衡联网环境中的智能故障恢复 Download PDF

Info

Publication number
CN101383732B
CN101383732B CN2008100988951A CN200810098895A CN101383732B CN 101383732 B CN101383732 B CN 101383732B CN 2008100988951 A CN2008100988951 A CN 2008100988951A CN 200810098895 A CN200810098895 A CN 200810098895A CN 101383732 B CN101383732 B CN 101383732B
Authority
CN
China
Prior art keywords
nic
recovered
connection group
overload
module
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.)
Expired - Fee Related
Application number
CN2008100988951A
Other languages
English (en)
Other versions
CN101383732A (zh
Inventor
阿亚兹·阿卜杜拉
诺曼·K·陈
阿南德·拉贾戈帕兰
阿舒托什·K·杰哈
赫马马利尼·马尼克瓦萨甘
萨米尔·南达
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.)
Nvidia Corp
Original Assignee
Nvidia 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 Nvidia Corp filed Critical Nvidia Corp
Publication of CN101383732A publication Critical patent/CN101383732A/zh
Application granted granted Critical
Publication of CN101383732B publication Critical patent/CN101383732B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明的一个实施例阐述一种用于将网络连接故障恢复到计算装置内的网络接口卡(NIC)的方法。所述方法包含以下步骤:监视所述计算装置内的出现故障的或不可靠的NIC;确定所述出现故障的或不可靠的NIC已恢复;确定所述计算装置内的起作用的NIC过载;选择通过所述过载的NIC传送的第一连接组;以及将所述第一连接组转移到所述已恢复的NIC。通过此方法,可有利地基于所述过载的NIC和所述已恢复的NIC上的业务负载而关于是否将网络连接组故障恢复到已恢复的NIC智能地作出决定。这种在计算装置内的所述起作用的NIC间平衡网络业务的方法可相对于现有技术显著改进整体性能。

Description

负载平衡联网环境中的智能故障恢复
技术领域
本发明的实施例大体上涉及网络通信,且更具体来说涉及一种在负载平衡的联网环境中对网络连接智能地进行故障恢复的系统和方法。
背景技术
性能和可靠性是对于现代计算机网络的关键要求。当网络接口卡(“NIC”)出现故障或变得不可靠并接着返回到完全起作用的状态时,计算装置可能会通过将网络连接重新分配给现在起作用的NIC来实现改进的网络性能。更具体来说,如果计算装置中的特定NIC过载或变得过载,那么可通过在计算装置中的起作用的NIC(包含恢复后的NIC)之间重新分配网络连接来改进网络性能。然而,将连接从一个NIC转移到另一个NIC所涉及的额外开销可能会超过在计算装置内的起作用的NIC间重新分配业务所带来的性能益处。在此种情况下,可能会因为试图重新分配网络连接而降低整体联网性能。此外,所转移的连接可能会使有效操作的NIC过载,从而降低所述NIC的性能和可靠性。
如上文所说明,此项技术中需要一种用于在对网络连接进行故障恢复时将网络连接转移到计算装置中的一个或一个以上起作用的NIC的技术,其减少NIC负载或其它可能损害整体系统性能的现象的可能性。
发明内容
本发明的一个实施例阐述一种用于将网络连接故障恢复到计算装置内的网络接口卡(NIC)的方法。所述方法包含以下步骤:监视计算装置内的出现故障的或不可靠的NIC;确定所述出现故障的或不可靠的NIC已恢复;确定所述计算装置内的起作用的NIC过载;选择通过所述过载的NIC传送的第一连接组;以及将所述第一连接组转移到所述已恢复的NIC。
所揭示的方法的一个优点在于,通过对过载的NIC上的连接组进行再散列(rehashing),可基于过载NIC和已恢复NIC上的业务负载来决定是否将网络连接组故障恢复到已恢复的NIC。这种在计算装置内的起作用的NIC间平衡网络业务的方法可相对于现有技术实质上改进整体性能。
附图说明
为了可更详细了解本发明的上述特征,可参考实施例对上文简要概述的本发明进行更具体的描述,所述实施例中的一些实施例在附图中说明。然而,应注意,附图只说明本发明的典型实施例,且因此不应被视为限制本发明的范围,因为本发明可承认其它同等有效的实施例。
图1A到图1C说明其中可实施本发明的一个或一个以上方面的计算装置;以及
图2A到图2D说明根据本发明一个实施例用于将网络连接从过载的NIC恢复到计算装置中的一个或一个以上起作用的NIC的方法步骤的流程图。
具体实施方式
可通过使用以下元件来实现将网络连接从过载的NIC智能地故障恢复到一个或一个以上完全起作用的NIC:跟踪网络统计资料的散列引擎,所述网络统计资料包含连接的数目以及通过每个NIC传输和接收的业务的量;以及跟踪每个网络连接初始借以传送的NIC的TCP/IP堆栈。一旦出现故障或不可靠的NIC再次恢复成完全起作用地操作,如果系统内的另一NIC变得过载,便将过载的NIC上的一些网络连接自动故障恢复到已恢复的NIC,直到先前过载的NIC不再过载为止。此转移允许由替代的NIC来处理一个或一个以上额外的网络连接而不会超出所述NIC的能力,因而避免可能会降低计算装置的整体性能的连接重新分配范例。从过载的NIC转移连接可能还包含从过载的NIC内的硬件卸载引擎去卸载连接,并随后将所述连接卸载到所述连接被转移到的已恢复的NIC内的硬件卸载引擎。
图1A到图1C说明可实施本发明的一个或一个以上方面的计算装置100。如图所示,计算装置100包含主存储器102、存储器控制器104、微处理器106、I/O控制器108以及NIC 110、111和116。NIC 110包含多播列表114和硬件卸载引擎(“HOE”)112。NIC 111包含多播列表115和HOE 113。NIC 116包含多播列表120和HOE 118。HOE 112、113和118包含经配置以用于处理和计算装置100与已经被选择性地卸载到NIC 110、111和116的一个或一个以上远程网络计算装置(未图示)之间的网络连接相关联的网络帧的逻辑。与常规做法一样,通过用HOE 112、113和118来处理网络帧(有时称为“在硬件中处理连接”),而不是在主机软件TCP/IP堆栈中执行那些处理功能(有时称为“在软件中处理连接”),可实质上减少NIC 110、111和116与微处理器106之间的传送以及由微处理器106执行的计算。
存储器控制器104耦接到主存储器102,且耦接到微处理器106,且I/O控制器108耦接到微处理器106以及NIC 110、111和116。在本发明的一个实施例中,微处理器106通过将命令或数据写入到I/O控制器108中来向NIC 110、111和116传输命令或数据。一旦此类命令或数据被写入到I/O控制器108中,I/O控制器108就视情况将所述命令或数据转译成目标NIC可理解的格式,并将所述命令或数据传送到所述目标NIC。类似地,NIC 110、111和116通过将命令或数据写入到I/O控制器108中来向微处理器106传输命令或数据,且I/O控制器108视情况将所述命令或数据转译成微处理器106可理解的格式,并将所述命令或数据传送到微处理器106。前面提及的耦接可实施为存储器总线或I/O总线,例如PCITM总线或其任一组合,或者另外可以任何其它技术上可行的方式来实施。
如图1B中更详细展示,主存储器102包含操作系统122和软件驱动程序124。软件驱动程序124包含负载平衡和故障转移(“LBFO”)模块126和TCP/IP堆栈130。LBFO模块126跟踪每个NIC的联网统计资料(例如,每个NIC上的连接的数目,每个NIC发送和接收的包的数目),且在网络连接在计算装置100内从一个NIC移动到另一NIC时与TCP/IP堆栈130通信。LBFO模块126包含散列引擎128,其基于前面提及的联网统计资料来智能地确定应如何在计算装置100中的不同的起作用的NIC上分配网络连接。关于散列引擎128的功能性的更多细节在2007年5月18申请的、序列号为______且代理人案号为NVDA/P001883的题为“网络业务的智能负载平衡和故障转移”(“Intelligent Load B alancing and Failover of Network Traffic”)的相关美国专利申请案中描述。此相关专利申请案在此以引用的方式并入本文中。
如图1C中更详细展示,散列引擎128包含传输散列表138和接收散列表140。传输散列表138的用途是基于由LBFO模块126向传输散列表138提供的数据,在计算装置100内选择用于传输与网络连接有关的包的起作用的NIC。传输散列表138包含多个散列表条目(例如,散列表条目134)和软件散列函数(未图示)。另外,每个散列表条目包含表索引(例如,表索引132)和表值(例如,表值136)。LBFO模块126引导散列引擎128通过将TCP/IP连接数据传送到散列引擎128来在计算装置100内选择传输NIC,所述散列引擎128将TCP/IP连接数据传送到传输散列表138中的软件散列函数。作为响应,软件散列函数基于所述TCP/IP连接数据的值而在传输散列表138内选择表索引。从这个选定的表索引中,传输散列表138识别相应的表值,且散列引擎128将识别出的表值传送回到LBFO模块126。由于软件散列函数的设计和操作是所属领域的技术人员众所周知的,所以本文将不会论述这些问题。在一个实施例中,LBFO模块126将以下四个TCP/IP数据传送到散列引擎128:客户端因特网协议(“IP”)地址、服务器IP地址、服务器TCP端口、客户端TCP端口和虚拟局域网(“VLAN”)连接ID。在其它实施例中,LBFO模块126可将任何技术上可行的TCP/IP参数传送到散列引擎128。
接收散列表140的用途是基于由LBFO模块126向接收散列表140提供的数据,在计算装置100内选择用于接收与网络连接有关的包的起作用的NIC。类似于传输散列表138,接收散列表140包含多个散列表条目和软件散列函数(未图示),且每个散列表条目包含表索引和表值。同样,LBFO模块126通过将TCP/IP连接数据传送到散列引擎128来引导散列引擎128在计算装置100内选择接收NIC,所述散列引擎128将TCP/IP连接数据传送到接收散列表140中的软件散列函数。作为响应,软件散列函数基于所述TCP/IP连接数据的值而在接收散列表140内选择表索引。从这个选定的表索引中,接收散列表140识别相应的表值,且散列引擎128将识别出的表值传送回到LBFO模块126。在一个实施例中,LBFO模块126传送到散列引擎128的TCP/IP数据包含服务器IP地址。在其它实施例中,LBFO模块126可将任何技术上可行的TCP/IP数据传送到散列引擎128。
计算装置100可以是台式计算机、服务器、膝上型计算机、掌上型计算机、个人数字助理、平板计算机、游戏控制台、蜂窝式电话或处理信息的任何其它类型的类似装置。
图2A到图2D说明根据本发明一个实施例的用于将网络连接从过载的NIC故障恢复到已恢复的NIC的方法步骤200的流程图。尽管参考计算装置100来描述所述方法,但所属领域的技术人员将了解,任何经配置以用任何次序执行所述方法步骤的系统都在本发明的范围内。
如图所示,用于对网络连接进行故障恢复的方法在步骤202处开始,其中LBFO模块126监视每个NIC的状态以获得出现故障或不可靠的NIC已恢复(即,出现故障或不可靠的NIC现在完全起作用)的指示。在一个实施例中,当存在两种情形时,认为NIC已恢复。第一,基于对出现故障或不可靠的NIC的链接指示,LBFO模块126确定对于出现故障或不可靠的NIC存在链接连接,这表明先前可能已断开的网络电缆现在已经重新连接。第二,LBFO模块126确定在计算装置100中的NIC之间传输的保持有效(keep-alive)包正由出现故障或不可靠的NIC可靠地接收。如在2005年12月15日申请的、序列号为11/303,285且代理人案号为NVDA/P001879、题为“用于识别网络接口卡组内出现故障的网络接口卡的技术”(“Technique for Identifying a Failed NetworkInterface Card within a Team of Network Interface Cards”)的相关美国专利申请案中所描述,可基于每个NIC正如何传输和/或接收保持有效包来识别计算装置内出现故障或起作用的NIC。此相关专利申请案在此以引用的方式并入本文中。通过监视这两种情形,LBFO模块126能够确定出现故障或不可靠的NIC是否已经恢复。
在步骤204中,LBFO模块126确定在步骤202中监视的出现故障或不可靠的NIC是否已经恢复。如果出现故障或不可靠的NIC尚未恢复,那么所述方法返回到步骤202,其中LBFO模块126继续监视出现故障或不可靠的NIC。然而,如果在步骤204中,LBFO模块126确定出现故障或不可靠的NIC已恢复,那么所述方法前进到步骤206。仅出于论述的目的,假设NIC 110先前已出现故障或变得不可靠且现在已经恢复,当NIC 110出现故障时将初始通过NIC 110传送的一个或一个以上连接组转移到NIC 116,且NIC116当前过载。如本文中所使用,“连接组”是多个初始通过一个共用NIC传送的连接。重要的是,将连接组而不是各个连接转移到故障恢复NIC会防止针对给定MAC地址的连接被指配给一个以上NIC。
在步骤206中,LBFO模块126用信号通知TCP/IP堆栈130:NIC 110已恢复。在步骤208中,LBFO模块126用信号通知散列引擎128:NIC 110已恢复。在步骤209中,散列引擎128对传输散列表138和接收散列表140进行配置,以便在散列引擎128就应如何在计算装置100内起作用的NIC间分配网络连接作出决定时,使得可再次将连接指配给NIC 110。
在步骤210中,LBFO模块126监视完全起作用的NIC 110、111和116,以确定这些NIC中是否有任何一者过载。在一个实施例中,当NIC的作为NIC的传输或接收能力的百分比的利用率超过某一阈值时,认为所述NIC过载。在另一实施例中,当NIC的出错率上升到某一阈值以上时,认为所述NIC过载。在又一实施例中,可使用利用率与出错率的组合来确定NIC是否过载。在步骤212中,LBFO模块126基于每个NIC的利用率和/或所述NIC的出错率来确定在步骤210中监视的NIC 110、111和116中是否有任何一者过载。如果LBFO模块126发现所监视的NIC中没有一个过载,那么所述方法返回到步骤210,其中LBFO模块126继续监视NIC 110、111和116。
然而,如果在步骤212中发现NIC过载(例如,NIC 116),那么所述方法前进到步骤214-238,其中将过载的NIC 116上的多个“连接组”“重新散列”,以便减少过载的NIC 116上的网络业务。此处,对连接组进行重新散列包含确定用于所述连接组的“初始NIC”并将连接组转移到已恢复的NIC 110。如本文中所使用,“初始NIC”是指初始用以传送连接的NIC。在步骤214中,LBFO模块126选择过载的NIC 116上的连接组来重新散列。如有必要,在步骤216中,LBFO模块126将选定的连接组从HOE 118去卸载到TCP/IP堆栈130。如在2007年5月18日申请的、序列号为______且代理人案号为NVDA/P001880、题为“负载平衡的联网环境中的智能故障转移”(“Intelligent Failoverin a Load-Balanced Networking Environment”)中所描述,可将连接分别卸载或去卸载到NIC 110、111和116内的相应硬件卸载引擎112、113和118。此相关专利申请案在此以引用的方式并入本文中。
在步骤217中,LBFO模块126将已恢复的NIC(在此情况下为已恢复的NIC 110)识别为选定连接组应转移到的新NIC。重要的是,一旦LBFO模块126将已恢复的NIC110识别为用于选定连接组的新NIC,LBFO模块126便对其自身进行配置,以便截取正从操作系统122传送到远程计算装置(未图示)的包,并将所截取的包的源MAC地址重写成对应于已恢复的NIC 110的MAC地址。重写连接组的包的源MAC地址确保交换机将把用于连接组的接收业务正确地分配给已恢复的NIC 110。在步骤218中,LBFO模块126确定计算装置100内的NIC是用于选定连接组的初始NIC。在一个实施例中,将用于每个连接组的初始NIC的身份存储在TCP/IP堆栈130中,从而允许LBFO模块126向TCP/IP堆栈130询问用于任何连接组的初始NIC的身份。在步骤219中,TCP/IP堆栈130引导已恢复的NIC 110向网络交换机(同样未图示)发送获知包。所述获知包可以是任何技术上可行的包含初始NIC的MAC地址的包类型。如众所周知的,从已恢复的NIC 110发送此包会致使交换机对其自身进行重新配置,以便将以用于选定连接组的初始NIC(此处是已恢复的NIC 110)的MAC地址为目的地的后续包路由到实际NIC110而不是过载的NIC 116。因此,此后由已恢复的NIC 110接收所有与正被转移给已恢复的NIC 110的选定连接组有关的网络业务。
在步骤220中,LBFO模块126基于在步骤218中确定的初始NIC的身份来确定用于选定连接组的初始NIC是否为已恢复的NIC 110。如果LBFO模块126确定用于选定连接组的初始NIC是已恢复的NIC(在此情况下是NIC 110),那么所述方法前进到步骤222,其中软件驱动程序124从过载的NIC 116的多播列表中移除用于选定连接组的初始NIC的MAC地址。从多播列表中移除此MAC地址可防止过载的NIC 116接收正被传输到初始NIC(此处是NIC 110)的MAC地址的包。在步骤232中,如果LBFO模块126确定因卸载实现的性能益处保障了此动作,那么LBFO模块126视情况将选定连接组卸载到已恢复的NIC 110内的HOE 112。
在步骤234中,LBFO模块126确定是否已对过载的NIC 116上的足够数目的连接组进行重新散列,使得NIC 116不再过载。如果LBFO模块126确定NIC 116不再过载,那么所述方法在步骤238处终止。然而,如果NIC 116仍然过载,那么所述方法前进到步骤236,其中LBFO模块126在返回到步骤216之前选择过载的NIC 116上的另一连接组来重新散列。
现在返回到步骤220,如果LBFO模块126确定用于选定连接组的初始NIC不是已恢复的NIC 110——这意味着(i)选定连接组被从不同于先前负载平衡操作中的NIC110的起作用的NIC转移到过载的NIC 116;或(ii)过载的NIC 116是用于选定连接组的初始NIC——那么所述方法前进到步骤226。在步骤226中,如果选定连接组被从不同于先前负载平衡操作中的NIC 110的起作用的NIC转移到过载的NIC 116,那么软件驱动程序124从过载的NIC 116的多播列表中移除初始NIC的MAC地址。
在步骤228中,软件驱动程序124向已恢复的NIC 110的多播列表添加选定连接组的初始NIC的MAC地址,这允许NIC 110接收与选定连接组相关联的正被传输到初始NIC的MAC地址的包。所述方法接着如前所述前进到步骤232。
所揭示的方法的一个优点在于,通过对过载的NIC上的连接组进行重新散列,可基于过载的NIC和已恢复的NIC上的业务负载智能地决定是否将网络连接组故障恢复到已恢复的NIC。这种在计算装置内的起作用的NIC间平衡网络业务的方法相对于现有技术可显著改进总体性能。
虽然前述内容针对本发明的实施例,但在不偏离本发明的基本范围的情况下可设计本发明的其它和进一步的实施例。举例来说,可在硬件或软件中或者在硬件与软件的组合中实施本发明的各方面。可将本发明的一个实施例实施为用于计算机系统的程序产品。所述程序产品的程序定义实施例的功能(包含本文中描述的方法),且可包含在多种计算机可读存储媒体上。说明性计算机可读存储媒体包含(但不限于):(i)上面永久存储信息的不可写的存储媒体(例如,计算机内的只读存储器装置,比如可由CD-ROM驱动器读取的CD-ROM盘、快闪存储器、ROM芯片或任何类型的固态非易失性半导体存储器);和(ii)上面存储可更改的信息的可写的存储媒体(例如,软盘驱动器内的软盘或硬盘驱动器或者任何类型的固态随机存取半导体存储器)。此种计算机可读存储媒体在载运引导本发明功能的计算机可读指令时是本发明的实施例。因此,本发明的范围由所附权利要求书确定。

Claims (9)

1.一种用于将网络连接故障恢复到计算装置内的网络接口卡NIC的方法,所述方法包括:
监视所述计算装置内的出现故障或不可靠的NIC;
确定所述出现故障或不可靠的NIC已经恢复;
确定所述计算装置内起作用的NIC过载;
选择通过所述过载NIC传送的第一连接组;其中,所述第一连接组为初始通过所述已恢复的NIC传送的连接组,且当所述已恢复的NIC出现故障时转移到所述过载NIC,其中所述连接组包括多个初始通过一个共用NIC传送的连接;以及
将所述第一连接组转移到所述已恢复的NIC。
2.根据权利要求1所述的方法,其中所述转移所述第一连接组的步骤包括通过所述已恢复的NIC向网络交换机传输获知包的步骤。
3.根据权利要求2所述的方法,其中所述转移所述第一连接组的步骤进一步包括从与所述过载的NIC相关联的多播中移除所述已恢复的NIC的媒体接入控制MAC地址的步骤。
4.根据权利要求3所述的方法,其进一步包括将所述第一连接组卸载到与所述已恢复的NIC相关联的硬件卸载引擎的步骤。
5.根据权利要求2所述的方法,其中初始不是通过所述已恢复的NIC传送所述第一连接组,且所述转移所述第一连接组的步骤进一步包括从与所述过载NIC相关联的多播列表中移除初始用以传送所述第一连接组的NIC的MAC地址的步骤。
6.一种用于将网络连接故障恢复到计算装置内的网络接口卡NIC的装置,包括:
用于监视所述计算装置内的出现故障或不可靠的NIC的模块;
用于确定所述出现故障或不可靠的NIC已经恢复的模块;
用于确定所述计算装置内的起作用的NIC过载的模块;
用于选择通过所述过载NIC传送的第一连接组的模块;其中,所述第一连接组为初始通过所述已恢复的NIC传送的连接组,且当所述已恢复的NIC出现故障时转移到所述过载NIC,其中所述连接组包括多个初始通过一个共用NIC传送的连接;以及
用于将所述第一连接组转移到所述已恢复的NIC的模块。
7.根据权利要求6所述的装置,其中所述用于将所述第一连接组转移到所述已恢复的NIC的模块包括用于通过所述已恢复的NIC向网络交换机传输获知包的模块。
8.根据权利要求7所述的装置,其中所述用于将所述第一连接组转移到所述已恢复的NIC的模块进一步包括用于从与所述过载的NIC相关联的多播中移除所述已恢复的NIC的媒体接入控制MAC地址的模块。
9.根据权利要求7所述的装置,其中初始不是通过所述已恢复的NIC传送所述第一连接组,所述用于将所述第一连接组转移到所述已恢复的NIC的模块进一步包括用于从与所述过载NIC相关联的多播列表中移除初始用以传送所述第一连接组的NIC的MAC地址的模块。
CN2008100988951A 2007-05-18 2008-05-19 负载平衡联网环境中的智能故障恢复 Expired - Fee Related CN101383732B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/750,914 2007-05-18
US11/750,914 US8432788B2 (en) 2007-05-18 2007-05-18 Intelligent failback in a load-balanced networking environment

Publications (2)

Publication Number Publication Date
CN101383732A CN101383732A (zh) 2009-03-11
CN101383732B true CN101383732B (zh) 2012-07-25

Family

ID=40027351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100988951A Expired - Fee Related CN101383732B (zh) 2007-05-18 2008-05-19 负载平衡联网环境中的智能故障恢复

Country Status (5)

Country Link
US (1) US8432788B2 (zh)
JP (1) JP4925218B2 (zh)
KR (1) KR101078523B1 (zh)
CN (1) CN101383732B (zh)
TW (1) TWI363525B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8675478B2 (en) * 2008-04-30 2014-03-18 Cisco Technology, Inc. Network based switchover to original content after ad-insertion device failure
US7751401B2 (en) * 2008-06-30 2010-07-06 Oracle America, Inc. Method and apparatus to provide virtual toe interface with fail-over
US8108503B2 (en) * 2009-01-14 2012-01-31 International Business Machines Corporation Dynamic load balancing between chassis in a blade center
US8254249B2 (en) * 2009-08-06 2012-08-28 Telefonaktiebolaget L M Ericsson (Publ) Session resilience prioritization queuing mechanism to minimize and eliminate packet loss
WO2011148493A1 (ja) 2010-05-27 2011-12-01 富士通株式会社 パケット通信装置及びパケット転送方法
CN102170398B (zh) * 2011-05-09 2016-09-28 中兴通讯股份有限公司 外接时间端口的倒换方法及装置
US8953607B2 (en) * 2012-04-03 2015-02-10 International Business Machines Corporation Internet group membership protocol group membership synchronization in virtual link aggregation
US9116860B2 (en) 2012-12-14 2015-08-25 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Cascading failover of blade servers in a data center
US9122652B2 (en) 2012-12-17 2015-09-01 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Cascading failover of blade servers in a data center
US9170976B2 (en) 2013-01-03 2015-10-27 International Business Machines Corporation Network efficiency and power savings
US11343152B2 (en) * 2020-04-07 2022-05-24 Cisco Technology, Inc. Traffic management for smart network interface cards
US11645104B2 (en) * 2020-12-22 2023-05-09 Reliance Jio Infocomm Usa, Inc. Intelligent data plane acceleration by offloading to distributed smart network interfaces

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208616B1 (en) * 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
US6512774B1 (en) * 1999-03-18 2003-01-28 3Com Corporation Fail over with multiple network interface cards
US6687758B2 (en) * 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
CN1595935A (zh) * 2003-09-10 2005-03-16 微软公司 支持故障切换事件的网络状态对象的多个卸载

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557798A (en) * 1989-07-27 1996-09-17 Tibco, Inc. Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
EP0660569A1 (en) 1993-12-22 1995-06-28 International Business Machines Corporation Method and system for improving the processing time of the path selection in a high speed packet switching network
JPH0816422A (ja) 1994-07-04 1996-01-19 Fujitsu Ltd バス通信方法及びバス通信システム
US5724510A (en) 1996-09-06 1998-03-03 Fluke Corporation Method of configuring a valid IP address and detecting duplicate IP addresses in a local area network
US5864535A (en) 1996-09-18 1999-01-26 International Business Machines Corporation Network server having dynamic load balancing of messages in both inbound and outbound directions
US5914938A (en) 1996-11-19 1999-06-22 Bay Networks, Inc. MAC address table search unit
US6052733A (en) * 1997-05-13 2000-04-18 3Com Corporation Method of detecting errors in a network
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
JP3372455B2 (ja) 1997-07-03 2003-02-04 富士通株式会社 パケット中継制御方法,パケット中継装置およびプログラム記憶媒体
US6151297A (en) 1997-07-08 2000-11-21 Hewlett-Packard Company Method and system for link level server/switch trunking
JP2000029806A (ja) 1998-07-09 2000-01-28 Hitachi Ltd 計算機システムのlanアダプタ負荷分散方式
US6570875B1 (en) 1998-10-13 2003-05-27 Intel Corporation Automatic filtering and creation of virtual LANs among a plurality of switch ports
JP4015770B2 (ja) 1998-12-22 2007-11-28 株式会社東芝 クラスタシステム、サーバ計算機及び負荷分散方法
US6590861B1 (en) 1999-03-18 2003-07-08 3Com Corporation Combining virtual local area networks and load balancing with fault tolerance in a high performance protocol
US6560630B1 (en) 1999-03-18 2003-05-06 3Com Corporation Receive load balancing and fail over with multiple network interface cards
US6567377B1 (en) 1999-03-18 2003-05-20 3Com Corporation High performance load balancing of outbound internet protocol traffic over multiple network interface cards
US7299294B1 (en) 1999-11-10 2007-11-20 Emc Corporation Distributed traffic controller for network data
US20030229809A1 (en) 1999-04-15 2003-12-11 Asaf Wexler Transparent proxy server
US6683882B1 (en) 1999-11-09 2004-01-27 3Com Corporation Method and system for directing transmission of IPX control packets to influence reception of IPX data packets
US6779039B1 (en) 2000-03-31 2004-08-17 Avaya Technology Corp. System and method for routing message traffic using a cluster of routers sharing a single logical IP address distinct from unique IP addresses of the routers
US20010056503A1 (en) 2000-04-27 2001-12-27 Hibbard Richard J. Network interface device having primary and backup interfaces for automatic dial backup upon loss of a primary connection and method of using same
JP2002044178A (ja) 2000-07-17 2002-02-08 Hitachi Ltd I/oチャネルの通信制御方式
US7116664B2 (en) 2002-05-13 2006-10-03 International Business Machines Corporation Lookups by collisionless direct tables and CAMs
US8145790B2 (en) 2002-07-11 2012-03-27 Hewlett-Packard Development Company, L.P. Method and device for using dynamic updates in a network
US7386611B2 (en) 2002-12-10 2008-06-10 International Business Machines Corporation Apparatus and methods for co-location and offloading of web site traffic based on traffic pattern recognition
US7415028B1 (en) 2003-02-11 2008-08-19 Network Equipment Technologies, Inc. Method and system for optimizing routing table changes due to ARP cache invalidation in routers with split plane architecture
US7159034B1 (en) 2003-03-03 2007-01-02 Novell, Inc. System broadcasting ARP request from a server using a different IP address to balance incoming traffic load from clients via different network interface cards
MXPA05010227A (es) 2003-03-28 2006-03-28 Thomson Licensing Sistema y metodo para transmitir archivos con base en medios.
US7324512B2 (en) 2003-06-12 2008-01-29 International Business Machines Corporation MAC layer bridging of network frames between isolated and external networks
US7934020B1 (en) * 2003-09-19 2011-04-26 Vmware, Inc. Managing network data transfers in a virtual computer system
EP1671235A4 (en) * 2003-09-23 2007-10-24 Amazon Com Inc CUSTOMIZED RESEARCH BANK WITH HIGH-PERFORMANCE CAPABILITIES FOR ACCESSING ELECTRONIC TEXT IMAGES ON THE BASIS OF MEMBERSHIP OF THE CORRESPONDING PHYSICAL TEXT
EP1697842A2 (en) 2003-12-11 2006-09-06 Bladefusion Technologies 2003 LTD. Method and an apparatus for controlling executables running on blade servers
US7990849B2 (en) * 2004-06-17 2011-08-02 Hewlett-Packard Development Company, L.P. Automated recovery from a split segment condition in a layer2 network for teamed network resources of a computer system
US7877519B2 (en) 2004-10-18 2011-01-25 Intel Corporation Selecting one of a plurality of adapters to use to transmit a packet
US7505401B2 (en) * 2005-01-31 2009-03-17 International Business Machines Corporation Method, apparatus and program storage device for providing mutual failover and load-balancing between interfaces in a network
JP2006253900A (ja) 2005-03-09 2006-09-21 Hitachi Ltd Ipアドレス引き継ぎ方法、ipアドレスアドレス引き継ぎプログラム、サーバおよびネットワークシステム
US7962915B2 (en) * 2005-03-18 2011-06-14 International Business Machines Corporation System and method for preserving state for a cluster of data servers in the presence of load-balancing, failover, and fail-back events
US7460470B2 (en) 2005-03-18 2008-12-02 Hewlett-Packard Development Company, L.P. Systems and methods of priority failover determination
US7876689B2 (en) 2005-06-29 2011-01-25 Hewlett-Packard Development Company, L.P. Method and apparatus for load balancing network interface adapters based on network information
US20070201490A1 (en) 2005-07-13 2007-08-30 Mahamuni Atul B System and method for implementing ethernet MAC address translation
US7872965B2 (en) 2005-08-01 2011-01-18 Hewlett-Packard Development Company, L.P. Network resource teaming providing resource redundancy and transmit/receive load-balancing through a plurality of redundant port trunks
US7619993B2 (en) 2005-11-01 2009-11-17 International Business Machines Corporation Efficient probabilistic duplicate packet detector in computer networks
US8031617B2 (en) * 2006-07-28 2011-10-04 Hewlett-Packard Development Company, L.P. Fast detection of path failure for TCP
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
US7995465B2 (en) 2007-05-18 2011-08-09 Nvidia Corporation Intelligent load balancing and failover of network traffic

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208616B1 (en) * 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
US6512774B1 (en) * 1999-03-18 2003-01-28 3Com Corporation Fail over with multiple network interface cards
US6687758B2 (en) * 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
CN1595935A (zh) * 2003-09-10 2005-03-16 微软公司 支持故障切换事件的网络状态对象的多个卸载

Also Published As

Publication number Publication date
TW200913567A (en) 2009-03-16
KR101078523B1 (ko) 2011-10-31
US8432788B2 (en) 2013-04-30
KR20080101813A (ko) 2008-11-21
US20080285435A1 (en) 2008-11-20
CN101383732A (zh) 2009-03-11
JP4925218B2 (ja) 2012-04-25
TWI363525B (en) 2012-05-01
JP2008293492A (ja) 2008-12-04

Similar Documents

Publication Publication Date Title
CN101383732B (zh) 负载平衡联网环境中的智能故障恢复
CN101321085B (zh) 负载平衡的联网环境下的智能故障转移
CN101394400B (zh) 用于建立避免地址解析协议高速缓冲存储器破坏的网络连接的方法
CN101350817B (zh) 网络业务的智能负载平衡和故障转移的方法和装置
CN101350818B (zh) 网络业务的智能负载平衡和故障转移
CN101360005B (zh) 负载平衡的联网环境下的智能故障转移
US7974186B2 (en) Connection recovery device, method and computer-readable medium storing therein processing program
US20140129737A1 (en) System and method for network interfacing in a multiple network environment
US8780701B2 (en) Communication apparatus and packet distribution method
US8867375B2 (en) Failback to a primary communications adapter
US8953591B2 (en) Packet transferring node
CN102255751A (zh) 一种堆叠冲突的处理方法和设备
CN111327650A (zh) 数据传输方法、装置、设备及存储介质
US20050180432A1 (en) Program and method for controlling communication
US20060271639A1 (en) Multipath control device and system
EP1540473B1 (en) System and method for network interfacing in a multiple network environment
WO2013161366A1 (ja) スイッチ、送信方法、プログラム、記録媒体
CN101227378B (zh) 基于网络存储的通信业务建立方法及存储设备
US11212217B2 (en) Spanning tree enabled link aggregation system
WO2020177471A1 (zh) 报文传输方法、装置及存储介质
CN116896530A (zh) 一种双网卡设备的无缝通信方法及装置
CN112100008A (zh) 一种跨节点的多链路冗余保护方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120725

Termination date: 20160519

CF01 Termination of patent right due to non-payment of annual fee