CN1943206A - 用于在集群系统的网络故障期间最大化连通性的系统和方法 - Google Patents
用于在集群系统的网络故障期间最大化连通性的系统和方法 Download PDFInfo
- Publication number
- CN1943206A CN1943206A CNA2005800117387A CN200580011738A CN1943206A CN 1943206 A CN1943206 A CN 1943206A CN A2005800117387 A CNA2005800117387 A CN A2005800117387A CN 200580011738 A CN200580011738 A CN 200580011738A CN 1943206 A CN1943206 A CN 1943206A
- Authority
- CN
- China
- Prior art keywords
- cluster
- network equipment
- main frame
- network
- connectivity
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/091—Measuring contribution of individual network components to actual service level
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
一种用于在网络集群系统中的网络故障之后用于最大化网络连通性的装置、方法和系统。集群中的集群主机配置用于部分基于成员到相邻网络的连通性,管理所述集群的成员资格。网络装置发送有关其连通性的信息到集群主机。集群主机比较所接收的信息以确定网络装置是否具有与该集群不同的连通性。如果网络装置具有不同的连通性,则集群主机可以拒绝给予该网络装置集群成员资格。通过拒绝具有不同连通性的网络装置,本发明确保由集群接收的数据实际上由任何集群成员以基本上相等的可靠性传递。从而,甚至可能拒绝集群主机成为集群的成员资格。
Description
技术领域
本发明涉及计算系统,尤其涉及用于在网络集群系统中发生网络故障之后,最大化网络连通性的系统和方法。
背景技术
如今,计算系统对于很多企业的成功变得越来越重要。由于计算机系统及其相关网络设施变得更为重要,这种系统的可用性成为关键性的。企业计算机网络中和/或它们的网络设施的故障可能给企业造成灾难性的损失。
适应于提供计算机系统资源的高可用性和保护不受故障影响的计算设施的这种需求,提出了集群架构。集群可以定义为多个松散耦合的网络装置,它们通过网络合作以提供对服务、资源等的集合的客户端访问。集群中的成员可以用于提高访问的可靠性和可用性。
很多集群架构依赖于以某种时间间隔的成员之间的集群心跳消息(有时称为保持活动消息)的交换,该时间间隔可根据网络上的分组丢失或类似因素而变化。集群可以利用这些保持活动消息管理集群成员资格、分配工作、并检测成员故障。如果在某个预定的超时期间没有接收到来自集群的某个成员的这种保持活动消息,该未响应的集群成员可能就会被迫离开集群。
如果集群成员的网络装置出故障,或者类似的情况,这种响应可能适合单个集群成员未能响应的情况。然而,如果所有的集群成员都连接到诸如交换机、集线器、以及类似设备的同一网络设备,并且该网络设备发生了故障,就是说由于交换机、集线器的故障,那么所有的集群成员都可能离开该集群系统。这种行为可能导致到该集群系统所服务的所有剩余网络的连通性的完全丧失。很不幸的是,作为解决方案的增加网络设备冗余对于很多企业来说可能太昂贵。因此,在产业中存在对于高度可靠的集群基础设施的需求。由此,本发明是关于这些以及其他考虑而提出的。
附图说明
将参考以下图示描述本发明的非限制和非详尽实施例。在附图中,除非另外指定,类似的附图标记表示贯穿各图的类似部分。
为了更好的理解本发明,将对以下本发明的详细描述进行参考,本发明详细描述将参照附图而被阅读,其中:
图1举例说明了其中运行本发明的环境的一个实施例;
图2举例说明了配置作为集群成员的网络装置的一个实施例的功能框图;
图3A-3B举例说明了通常展示集群建立过程的一个实施例的流程图;
图4A-4E举例说明了通常展示集群主机(cluster master)管理集群成员的过程的一个实施例的流程图;以及
图5根据本发明的一个实施例,举例说明了通常展示集群成员(客户端)管理与集群主机的连通性通信的过程的一个实施例的流程图。
具体实施方式
现在将参考附图在下文中更加完整地描述本发明,其中由此形成本发明的一部分,并且其通过举例说明的方式展示了本发明可以通过其实现的特定示例性实施例。然而,本发明可以以很多不同形式实施,并不应当被认为是受限于此处阐明的实施例;而是,提供这些实施例以便本公开内容将彻底并完整,并且会对本领域的技术人员完全传达本发明的范围。其中,本发明可以作为方法或装置实施。因此,本发明可以采取完全是硬件的实施例,完全是软件的实施例或是组合了软件和硬件方面的实施例的形式。因此,以下详细描述并非出于限制的意思。
术语“由...组成”、“包括”、“包含”、“具有”、以及“其特征在于”是指可扩充的或包括在内的开放式结构,并不排除其它的、未列举的元素或方法步骤。例如,包含元素A和B的组合也理解为元素A、B和C元素的组合。
“一个”和“这个”的含义包括复数引用。“在...之内”的含义包括“在...之内”和“在...之上”。此外,除非另外声明或与此处的公开不一致,对单数的引用包括对复数的引用。
除非上下文明确做出另外的指示,术语“或”是包含性的“或”操作符,并且包括术语“和/或”。
如此处所用的短语“在一个实施例中”尽管可能,但不必要代指同一个实施例。与之类似,如此处所用的短语“在另一个实施例中”尽管可能,但也不必要代指不同的实施例。
除非上下文明确做出另外的指示,术语“基于”不是排除性的,并且规定基于未叙述的附加要素。
术语“分组”包括IP(网际协议)分组。
简言之,本发明致力于在诸如局域网(LAN)交换机、集线器、以及类似的网络接口或网络设备部分故障之后,用于最大化集群的网络连通性的系统、设备和方法。
集群中指定为集群主机的网络装置配置用于部分基于集群成员的连通性确定集群成员资格。另一网络装置配置用于交换有关其到集群主机的连通性的信息。集群主机比较所接收的信息以确定该网络装置是否具有与该集群不同的连通性。如果该网络装置具有不同的连通性,集群主机就可以拒绝给予该网络装置的集群成员资格。通过拒绝具有不同连通性的网络装置,本发明确保由该集群接收的数据可以通过实际上任何该集群的成员以基本上相等的可靠性发送。
这样,如果集群成员丧失对网络的连通性,并且至少一个集群成员仍旧保持对该网络的连通性,那么集群主机就可以迫使出了故障的成员离开该集群。如果正离开的集群成员的连通性随后又恢复了,或者如果所有的集群成员随后都失去了对该网络的连通性等,那么该集群成员可重新加入该集群。如果集群主机自身失去对网络的连通性,它可以离开该集群,并且具有最大连通性的集群成员的集合可以利用新的集群主机重新组成新的集群。
此外,如果所有的集群成员都失去了对同一网络的连通性,集群成员资格可以保持不变,而集群成员可以继续提供到剩余网络的连通性。这种方法于是确保该集群系统包含具有对相邻网络的最大连通性的成员。
示例操作环境
图1举例说明了其中运行本发明的环境的一个实施例。不必要求所有的组件以实现本发明,而是可以不偏离本发明的构思或范围进行布置和组件类型的变更。
如图中所示,集群系统100包括局域网/广域网(LAN/WAN)106和107以及集群101。集群101包括集群成员102-105。集群101与LAN/WAN 106和107通信。
集群成员102-105可以通过多个网络与LAN/WAN 106和107通信。例如,尽管未示例出,集群成员102-105与LAN/WAN 107之间可以存在多个网络连接。多个网络连接还可以进一步存在于集群成员102-105与LAN/WAN 106之间。然而,为了清楚起见,在图1中仅示例了协议网络108。协议网络108实际上包括应用于集群协议消息交换,包括其互连以及类似连接的任何网络。协议网络108可以基于机制的变化而选择,包括但不限于将网络预先配置为协议网络。协议网络108还可以基于包括服务质量、吞吐量、稳定性、速度等特征的任何变化而动态选择。此外,每个集群成员102-105都可以选择与其它集群成员102-105不同的协议网络108。
集群101典型地被配置为包括松散耦合的网络装置,该网络装置可以合作以给其它设备提供对服务、资源等的访问。在一个实施例中,集群101配置用于通过适应性地负载均衡集群成员102-105以优化消息吞吐量。
集群成员102-105可以是任何能够通过集群架构中的网络发送和接收数据分组的网络装置。在一个实施例中,集群成员102-105配置用于运行作为所接收消息分组的协议栈处理器。这种装置的集合可以包括典型地利用有线通信媒体连接的装置,诸如配置以运行作为集群装置的个人计算机、多处理器系统、基于微处理器的或可编程的用户电子产品、网络设备、网络PC、服务器等类似装置。这种装置的集合还可以包括典型地利用无线通信媒体连接的装置,诸如配置作为集群装置的蜂窝电话、智能电话、寻呼机、步话机、射频(RF)装置、红外(IR)装置、CB、结合了一个或多个前述装置的集成装置等类似装置。可选的,集群成员102-105可以是任何能够利用有线或无线通信媒体连接的装置,诸如运行作为集群装置的膝上型电脑、个人计算机、网络PC、网络设备、PDA,便携式PC、可携带计算机、以及任何其它配备以经由有线和/或无线通信媒体通信的装置。
集群成员102-105的成员可以配置成作为集群主机运行,此处集群成员102-105的余下的成员可以配置以运行作为客户端或集群成员。集群101并不限于单个集群主机,集群成员102-105中的另一个成员可以配置成作为备份集群主机运行而不偏离本发明的范围。当形成集群时并随后在该集群主机发生故障失去连通性等之后,集群成员102-105还可以动态地选举成员作为集群主机。下面结合图2进一步详细描述集群成员102-105的一个实施例。
集群主机可以从集群成员102-105内的这些具有基本上相等的连通性的集群成员中选择作为加入到该集群的第一集群成员。集群主机也可以基于集群成员102-105的最高性能成员而选择以加入该集群。然而,本发明不限制于这些机制,并且实际上任何其它的机制、机制的组合等都可以应用以选择集群主机而不偏离本发明的范围。结合图3A-3B而描述了用于选择集群主机的过程的一个实施例。
集群主机可以被配置以接受、拒绝其它网络装置作为集群成员,给集群成员分配工作,检测集群成员故障等。集群主机还可以部分基于成员到相邻网络的连通性而确定和改变集群成员资格。
此外,集群主机可以基于具有相同连通性的成员,选择成员加入到集群101。这可以致力于确保由集群101接收的数据可以由成员102-105的任何成员以基本上相等的可靠性传递。此外,通过优选具有较高连通性的成员而不是那些具有较低连通性的成员,集群主机可以出于最大化集群101的连通性的目的而改变集群101的成员资格。在一个实施例中,这种优选甚至可能导致当前集群主机的移除。
集群成员102-105可以配置用于向集群主机通信与其连通性有关的信息。当集群成员加入集群101时,当有诸如集群成员的连通性周期性改变等的事件发生时,可以将这种连通性信息提供给集群主机。无论集群成员的连通性何时改变,它都会将该改变通知集群主机,以便集群主机可以确定新的集群成员资格。由于这些通知可能由于各种原因而被延迟,集群主机可能会在不同时间从不同的集群成员接收到同一连通信改变信息。为了避免不必要的集群成员资格改变,集群主机可进一步配置用于应用连通性定时器等以延迟进行集群成员资格的更改,直至基本上已经接收到所有的通知。然而,集群主机并不受限于使用连通性定时器,而是可以应用其它机制来避免上述问题而不偏离本发明的范围。
LAN/WAN 106和107被使得能够应用任何形式的、用于从一台电子装置传递信息到另一装置的计算机可读媒体。此外,除了局域网(LAN)、广域网(WAN)、通过通用串行总线(USB)端口的直接连接、其它形式的计算机可读媒体、以及它们的任意组合之外,LAN/WAN 106和107还可包括因特网。在包括那些基于不同架构和协议的LAN的互连设置上,路由器充当LAN之间的链路,使得消息能够从一个LAN发送到另一个。同样,LAN内部的通信链路典型地包括双绞线或同轴电缆,而网络之间的通信链路可以利用模拟电话线、包括T1,T2,T3和T4的全部或部分专用数字线、综合业务数字网(ISDN)、数字用户线路(DSL)、包括卫星链路的无线链路、或对本领域的技术人员已知的其它通信链路。此外,远程计算机以及其它相关电子装置可以通过调制解调器和临时电话链路远程连接到LAN或WAN。实际上,LAN/WAN 106和107可以包括信息可以通过其在网络装置之间传播的任何通信方法。
LAN/WAN 106典型地可包括内容服务器、应用服务器等,对于驻留于LAN/WAN 107内部的另一网络装置,集群101实现对LAN/WAN 106的访问。类似的,LAN/WAN 107可包括内容服务器、应用服务器及类似装置,对于驻留于LAN/WAN 107内部的另一网络装置,集群101实现对LAN/WAN 107的访问。
图2举例说明了网络装置200的一个实施例的功能框图,网络装置200可以运行作为集群成员(包括集群主机,实际上任何集群成员都可以配置成为集群主机)。网络装置200可以包括比所示的组件更多或更少的组件。然而,所示的组件对于公开用于实践本发明的示意性实施例已经足够。
网络装置200包括处理单元212、视频显示适配器214、以及大容量存储器,所有的单元通过总线222相互通信。大容量存储器通常包括RAM 216,ROM 232,以及诸如硬盘驱动器228、磁带驱动器、光驱、和/或软驱的一个或多个永久大容量存储装置。大容量存储器存储用于控制网络装置200操作的操作系统220。可以应用任何通用操作系统。还提供了基本输入输出系统(“BIOS”)218用于控制网络装置200的低级操作。
如图2所示,网络装置200还通过网络接口单元210与因特网或诸如图1的LAN/WAN 106和107、协议网络108的一些其它通信网络通信,构建这些通信网络以与包括TCP/IP协议的各种通信协议一同使用。网络接口单元210有时称为网络接口卡“NIC”、收发信机或收发信装置。
如上所述的大容量存储器示意了一种类型的计算机可读媒体,名为计算机存储媒体。计算机存储媒体可以包括以任何方法或技术实现的用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的易失、非易失、可移动和不可移动的媒体。计算机存储媒体的例子包括RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用光盘(DVD)或其它光学存储器、磁性盒带、磁带、磁盘存储器或其它磁性存储装置、或能够用于存储所想得到的信息并能由网络装置访问的任何其它媒体。
在一个实施例中,大容量存储器存储用于实现操作系统220的程序代码和数据。大容量存储器也可以存储用于执行网络装置200的功能的附加程序代码和数据。可以加载一个或多个应用250等到大容量存储器并运行于操作系统220之上。如图中所示,集群故障排除管理器(cluster fail-over manager)242是可以运行于操作系统220之上的应用实例。
简言之,集群故障排除管理器242可以配置以在诸如图1的集群101的网络集群系统中出现网络故障之后执行致力于最大化网络连通性的动作。集群故障排除管理器242还可以配置以使网络装置200运行作为适当的集群主机、备份集群主机、或集群成员。集群故障排除管理器242可以执行与以下结合图3A-3B、4A-4E以及图5的那些描述基本上类似的动作。
尽管未示出,应用250可以包括程序代码和数据以进一步执行集群成员、集群主机等的功能,包括但不局限于路由数据分组、管理穿越集群的负载、为其它集群成员分配工作等等。
网络装置200还可以包括用于传输电子邮件的SMTP处理器应用(handler application),用于接收并处理HTTP请求的HTTP处理器应用,以及用于处理安全连接的HTTPS处理器应用。HTTPS处理器应用可以以安全的方式启动与外部应用的通信。然而,网络装置200不限于这些处理器应用,网络装置200可以应用许多其它的协议处理器应用而不偏离本发明的范围。
网络装置200还可包括用于与诸如鼠标、键盘、扫描仪、或未在图2中示出的其它输入装置的外部装置通信的输入/输出接口224。同样,网络装置200还可以包括诸如CD-ROM/DVD-ROM驱动器226和硬盘驱动器228的附加大容存储设备。除此之外,网络装置200利用硬盘驱动器228存储应用程序、数据库等等。
集群连通性表示与比较
如上所述,集群成员资格可以基于网络装置到相邻网络的连通性而确定。当a)网络装置通过电缆、LAN设备等,而不是通过路由器、网关、网络地址转换器(NAT)等,直接连接到相邻网络时;以及,b)网络装置实际上能够与对该相邻网络具有连通性的所有其它网络装置,包括其它集群成员交换数据时,则可以说该网络装置对相邻网络“具有连通性”。
由网络装置应用以确定连通性的机制可以是与实现相关的,并且是在本发明的范围之外。然而,所应用的典型的机制可以包括,但显然不限于检查连接到网络的网络装置的链路状态,定期发送回送请求(诸如ping)到连接到该网络的另一网络装置等等。
每个集群成员都可发送关于其连通性的信息到集群主机。由集群成员发送的连通性信息实际上可以包括描述网络连接的任何信息。在一个实施例中,连通性信息包括诸如{网络,活动}的连通性信息的集合,此处网络指示该连通性信息描述的网络。连通性信息可包括但不局限于网络地址、网络掩码长度(例如,10.1.2.0/24)及类似信息。连通性信息集合中的活动指示该网络装置是否具有到所识别的网络的连通性。在一个实施例中,活动为单比特值,其中一个值(例如“1”)表示对网络有连通性,而第二个值(例如“0”)表示没有连通性。
集群主机可以在诸如数据库、文本文件、文件夹等的数据仓库中存储这种连通性信息。集群主机可以将所接收到的连通性信息与其它集群成员的连通性信息相比较,以确定是否执行集群成员资格更改。集群主机可以比较来自几个网络装置的连通性信息集合,以确定一个网络装置相比较该集群内的其它网络装置是否具有更高的、基本上相同的、或是更差的连通性。
集群主机可以应用以下原则来比较连通性。集群主机可以考虑具有比该集群更高连通性的网络装置,在此:a)该网络装置针对与该集群相同的网络集合而配置,以及b)其相比该集群具有对更大数目的网络的连通性。
集群主机可以考虑具有与该集群相同的连通性的网络装置,在此:a)其针对与该集群相同的网络集合而配置,以及b)其具有到与该集群相同的网络集合的连通性。
类似的,集群主机可以考虑具有比该集群更差的连通性的网络装置,在此:a)其针对与该集群不同的网络集合而配置,或者b)其相比该集群具有对更少的网络的连通性,或者c)其具有到与该集群相同数目的网络但不是相同网络集合的连通性。
然而,本发明不限制于以上的原则,也应用其它的原则以比较网络装置之间的连通性信息而不偏离本发明的范围与精神。
在相比该集群针对不同的网络集合配置网络装置—甚至是更大数目的网络—的情况下,集群主机可以选择不接受其作为集群成员,因为可以认为其是错误配置。类似的,在网络装置具有对与该集群相同数目的网络但是对与该集群不同的网络集合的连通性的情况下,那么集群主机可以支持现有集群成员而拒绝该网络装置,以避免不必要的集群成员资格更改。
用于管理集群系统建立的示例性操作
接下来通过参考集群建立,包括网络装置可以怎样加入和离开该集群来描述本发明一般操作的一个实施例。
图3A-3B举例示出了通常显示用于集群建立过程的一个实施例的流程图。过程300A在块302处的开始块之后,开始于网络装置试图加入该集群时。在一个实施例中,这通过在协议网络之上发送“加入请求”消息完成。在一个实施例中,“加入请求”消息通过协议网络广播。“加入请求”消息可以包括识别配置该网络装置所针对配置的网络的连通性信息,并且还描述了该网络装置是否具有到这些网络的连通性。“加入请求”还可以包括验证信息。
如果存在集群主机并且其接收到该“加入请求”,其就试图验证该消息。如果集群主机确定该验证消息无效,其可以通过该协议网络发送“加入失败”消息到请求加入的网络装置。
然而,如果集群主机确定该验证消息有效,则其就会将正加入的网络装置的连通性信息与该集群有关的连通性信息相比较。如果集群主机确定加入的网络装置具有与该集群相同的连通性,集群主机就可以通过协议网络发送“加入OK”消息给请求加入的网络装置。
如果“加入OK”消息被请求加入的网络装置接收到,过程300A就流向块303,在此请求加入的网络装置被指定为集群成员(有时称为客户端或非集群主机)。
在块303处,集群成员可以随后离开该集群,并且如果其检测到集群主机不工作、如果其从集群主机接收到“退出请求”消息等尝试重新加入。在任何一种情况下,如果集群成员试图重新加入该集群,则过程返回到块302。
然而,在块302处,如果集群主机确定请求加入的系统具有比该集群更差的连通性,则集群主机可以通过协议网络发送“加入失败”消息到请求加入的网络装置,并且保持集群成员资格不变(下面结合图4A-4E更加详细的描述用于这种过程的一个实施例)。请求加入的网络装置于是可以在预先设定的时间间隔之后和/或当其连通性改变时尝试重新加入该集群。
在任何一种情况下,如果发送出加入请求消息的网络装置没有从集群主机得到“加入OK”消息或“加入失败”消息,该网络装置可以推断它是该集群的第一成员(例如,不存在集群主机),过程就流向块304。此外,如果集群主机选择机制是动态的,则过程也继续到块304。
在块304处,请求加入的网络装置在协议网络之上发送出“提议为集群主机”请求分组,提出要成为集群主机。在一个实施例中,“提议为集群主机”请求通过协议网络广播。“提议为集群主机”请求也可以包括请求加入的网络装置的连通性信息。如果请求加入的网络装置接收到“存在其它集群主机”消息,则过程返回块302,在此请求加入的网络装置试图再次加入。在已经存在另一个集群主机、已经存在提出要成为集群主机的更好的集群候选集群主机等的情况下,可能会出现“存在其它集群主机”消息。以下结合图3B更加详细的描述用于确定“更好的候选集群主机”的过程的一个实施例。
然而,如果在预先设定的时间周期之后,申请加入的网络装置没有接收到回应,则过程流向块305。在一个实施例中,该预定时间周期为大约100微秒。然而,本发明并不受限与此,而实际上可以应用任何的时间周期。
在块305,集群主机在其每个集群网络上发送广播地址解析协议(ARP)响应,通知相邻网络用于对应的集群网络地址使用的硬件地址(例如,以太网MAC地址)等。过程继续到块306,在此申请加入的网络装置现在以集群主机的能力运行。过程可以继续,直至集群主机接收到“退出请求”,在这种情况下,过程返回块302,在此网络装置可以试图重新加入该集群。
类似的,在块306,如果集群主机得到了“集群主机保持活动”消息,诸如另一集群成员可能充当集群主机的情况,过程流向判定块307。
在判定块307处,集群主机做出“集群主机保持活动”消息是否源于其自身的判断。通常,集群主机不接收其自身的保持活动消息,然而为了示例,例如,万一相邻网络上的外部路由器等被错误配置,这种情况可能会出乎意料地发生。由此,如果集群主机确定“集群主机保持活动”消息是来自其自身的,则过程返回到块306。
然而,如果在判定块307集群主机确定“集群主机保持活动”不是源于其自身,则集群主机推断有另外一个充当集群主机运行的集群主机。过程就分支到判定块308,在此集群主机试图解决集群主机竞争(“相持(tie)”)。以下结合图4A-4E进一步详细描述用于解决这种“相持中断器(tie breaker)”集群主机竞争的过程的一个实施例。如果该相持的解决有利于这个集群主机,则过程流向块309。
如果在判定块308集群主机输掉了相持中断,则过程分支到块321,在此集群主机发送“退出请求”消息到集群成员。集群主机进一步可以离开该集群。过程就接着可以返回块302,在此离开的集群主机可以尝试重新加入该集群,以试图稳定该集群等等。
在块309,集群主机发送“存在其它集群主机”消息到其它集群主机。此外,集群主机可以发送广播地址解析协议(ARP)响应或类似响应,以告知网络上的任何成员对于集群网络地址要采用什么硬件地址(诸如以太网MAC地址)。可以执行这个操作,以便解决可能发生的其它集群主机可能已经做了相同事情的问题。过程300A返回块306,在此过程如上所述继续,同时选择单个集群成员运行作为集群主机,而其它集群成员将它们自身理解为仅仅是该集群的成员,每一个都具有相同的连通性。
图3B举例说明了通常展示当如上图3A的块304中简要描述的那样,集群候选主机接收到“提议为集群主机”消息时的过程的一个实施例的流程图。
过程300B在开始块之后,开始于判定块332,在此由集群候选集群主机做出判定,看“提议为集群主机”消息是否源于其自身。如果“提议为集群主机”消息源于其自身,则过程分支到块333,在此消息被忽略。过程300B接着返回到呼叫过程以执行其它动作。
然而,如果“提议为集群主机”消息是来自另一网络装置的,则过程继续到判定块335,在此候选集群主机将其连通性与发送者的连通性相比较。在一个实施例中,这可以通过检查所接收的“提议为集群主机”消息中的连通性信息完成。然而,本发明并不受限与此,而是可由另外的消息、机制等接收连通性信息。在任何一种情况下,在判定块335,确定内容为候选集群主机是否如上所述比发送网络装置具有更高的连通性。
如果在判定块335确定候选集群主机的确具有更高的连通性,过程分支到块336,在此候选集群主机发送“存在其它集群主机”消息到其它的网络装置。然后过程退出到呼叫过程以执行其它动作。
然而,如果在判定块335,候选集群主机不具备比发送网络装置更高的连通性,则过程流向判定块338。
在判定块338处,由候选集群主机做出发送网络装置是否具有比其自身更高的连通性的判断。如果是,则过程分支到块339,在此候选集群主机放弃成为集群主机的尝试。在一个实施例中,“退出候选”集群主机部分通过进入到图3A的过程300A试图再次加入该集群。
如果发送网络装置不具备比候选集群主机更高的连通性,则过程继续到判定块340,在此候选集群主机应用系统性能分析来试图打破相持状态。系统性能可以基于包括但不限于吞吐量、负载、过程配置等的各种机制估计。然而,本发明不限于应用系统性能分析,而是实际可以应用任何其它打破相持状态的机制而不偏离本发明的范围。然而,如在过程300B中所使用的那样,如果候选集群主机不具备比发送网络装置更好的系统性能,则过程分支到块336,在此候选集群主机发送“存在其它集群主机”消息给其它网络装置。过程于是退出到呼叫过程以执行其它动作。
如果在判定块340候选集群主机不具有更好的系统性能,则过程继续到判定块341,在此候选集群主机确定发送网络装置是否具有更好的系统性能。如果发送网络装置具有更好的系统性能,则候选集群主机放弃成为集群主机的尝试。过程分支到块339,在此“退出候选”集群主机通过退出到图3A的过程300A而试图再次加入该集群。
然而,如果在判定块340发送网络装置的性能与候选集群主机的性能相同,那么过程就分支到判定块342,在此应用了另一种相持中断机制。在一个实施例中,该另一种相持中断包括将候选集群主机的网络地址与发送网络装置的相比较。如果候选集群主机的网络地址低于发送网络装置的网络地址,过程分支到块336,在此候选集群主机发送“存在其它集群主机”消息到其它网络装置。过程接着退出到呼叫过程以执行其它动作。
如果在判定块342候选集群主机的网络地址不小于发送网络装置的网络地址,过程分支到块339,在此当前的“退出候选”集群主机放弃成为集群主机的尝试。在一个实施例中,该退出候选集群主机可以通过退出过程300B,然后进入图3A的过程300A,试图再次加入该集群。
集群主机的示例性操作
在形成集群之后,集群主机可以继续监测现有集群成员的连通性,并接受具有匹配连通性的新集群成员。现在将参考图4A-4E描述这些事件是怎样处理的。
图4A举例说明了通常展示用于当集群主机接收到客户端“保持活动”消息时的处理的一个实施例的流程图。集群形成之后,集群主机监测从集群成员发送的“保持活动”消息。在一个实施例中,集群主机应用了看门狗定时器。然而,本发明并不受限与此,实际上可以应用任何机制来监测“保持活动”消息。
在任何一种情况下,只要集群主机接收到集群成员的保持活动消息就可以被认为它是“活动”的。每个集群成员还可以在其保持活动消息中包含其连通性信息。集群主机判断该连通性信息是否对所有集群成员一致并由此调整成员资格。
图4A的过程400A在开始块之后开始于判定块402,在此集群主机确定保持活动的发送者是否是其集群的成员之一。如果不是,那么过程分支到块403,在此集群主机可以发送“退出集群”请求到发送者。此外,集群主机可以丢弃来自请求退出的发送者的保持活动消息。一旦完成块403,过程就可以退出到呼叫过程以执行其它动作。
如果在判定块402保持活动的发送者是集群成员,则过程分支到判定块404,在此集群主机确定该集群成员的连通性信息是否已经改变。集群主机可能已经从先前的保持活动消息、从该集群成员的加入请求消息及类似消息存储了该集群成员的连通性信息。在任何一种情况下,集群主机将保持活动消息的相关连通性信息与其存储的信息相比较,以察看其是否已经改变。如果该集群成员的连通性信息已经改变,则过程分支到块405,否则,过程分支到块411。
在块405,集群主机更新其存储的集群成员的信息。接下来过程流向判定块406,在此做出所有当前集群成员的连通性是否一致的判断。如果连通性信息表明所有的集群成员的连通性是一致的,则过程流向判定块407;否则,过程分支到判定块409。
在判定块407,做出集群主机的连通性定时器是否在运行的判断。如果集群主机的连通性定时器没有运行,则过程继续到块411;否则过程分支到块408,在此集群主机停止该连通性定时器。接下来过程继续到块411。
在判定块409处,做出集群主机的连通性定时器是否在运行的判断。如果该连通性定时器正在运行,则过程分支到块411;否则过程移到块410,在此集群主机启动该连通性定时器。过程接着流向块411。
在块411,集群主机进入到处理与集群主机的保持活动消息相关联的信息。例如,在一个实施例中,集群主机可以部分基于应用与保持活动消息、自适应保持活动间隔等相关联的序号确定分组丢失平均数。处理的信息接着可以由集群主机存储。
接下来过程流向块412,在此集群主机可以重新设置与当前集群成员相关联的看门狗定时器。在一个实施例中,集群主机利用连通性定时器以延迟集群成员资格更改,直至集群主机已经从其集群成员接收到所有的连通性改变事件。然而,本发明并非如此受限。例如,在本发明的另外一个实施例中,集群主机能够响应集群成员连通性改变而立即进行成员资格更改。如果设备故障在一个以上的集群成员上引起了相同的连通性丢失,这个实施例可以集中于与如前面的实施例相同的集群成员资格。然而,在这种情况下集群可以经受比前面的实施例更大数量的成员资格改变。在任何一种情况下,一旦完成块412,则过程退出到呼叫过程以执行其它动作。
图4B举例说明了通常展示对于当集群主机检测到其自身的连通性中的变化时的处理的一个实施例的流程图。图4B的过程400B在开始块之后,开始于块432,在此集群主机存储了其更新后的连通性信息用于后面的比较。
接下来过程进入到判定块433,在此做出所有集群成员的连通性是否一致的判断。在一个实施例中,集群主机考虑了其更新后的连通性信息。如果连通性是一致的,则过程流向判定块434;否则,过程流向判定块436。
在判定块436处,做出集群主机的连通性定时器是否运行的判断。如果正在运行,过程退出到呼叫过程以执行其它动作。否则,过程分支到块437,在此集群主机启动该连通性定时器。过程就退出到呼叫过程以执行其它动作。
在判定块434处,作出集群主机的连通性定时器是否在运行的判断。如果没有运行,则过程退出到呼叫过程以执行其它动作。否则,过程分支到块435,在此集群主机停止该连通性定时器。一旦完成块435,过程就退出到呼叫过程以执行其它动作。
在一个实施例中,本发明利用连通性定时器来延迟集群成员资格更改,直至集群主机已经从其集群成员接收到了基本上所有的类似的连通性改变事件。然而,本发明并不受限与此。例如,在本发明的另外一个实施例中,集群主机可以响应于连通性改变而立即进行集群成员资格更改。然而,这种方法可能集中于如以上实施例相同的集群成员资格。然而,该集群可能经受比上述实施例更大数目的成员资格更改。
图4C举例说明了通常展示对于当集群主机的连通性定时器超时时的处理的一个实施例的流程图。图4C的过程400C在开始块之后,开始于判定块452,在此由集群主机做出关于其是否具有比所有集群成员更高或相等的连通性的判断。如果不是,则过程进入到块453;否则,过程分支到块455。
在块453,集群主机推断它不能够到达其它集群成员所能够到达的网络,并且因此集群主机自身不应当处于该集群中。集群主机发送“退出请求”消息到集群成员,然后离开该集群。在一个实施例中,“退出集群主机”可以通过从块454退出到图3A的过程300A而尝试重新加入该集群。该集群就可以重新形成,同时利用具有最佳连通性的网络装置作为新的集群主机。
如果在块455集群主机具有比所有集群成员更高或相同的连通性,则集群主机判断是否任何其的集群成员具有比其自身更差的连通性。如果是,则其发送退出请求到这些集群成员,强制它们离开该集群。退出的集群成员可以接着尝试重新加入。如下所述,在一个实施例中,退出的集群成员可能不能够重新加入该集群,直至其连通性至少等于集群主机的连通性。在任何一种情况下,一旦完成块455,过程就退出到呼叫过程以执行其它动作。
图4D举例说明了通常展示对于当集群主机接收到客户端(网络装置)的“加入请求”消息时的处理的一个实施例的流程图。这个“加入请求”消息可以包括从有效证书授权以及有关发送者网络装置的连通性信息中获得的鉴定证书。
图4D的过程400D在开始块之后,开始于判定块462,在此,当集群主机接收到“加入请求”消息时,其部分通过对照有效证书列表,检查该证书验证发送者网络装置的授权信息。如果集群主机没有发现匹配,则过程分支到块477,在此集群主机可以发送NAK,“加入失败”消息或类似消息,到与“加入请求”相关联的发送者网络装置以指示该加入已经失败。过程接着退出到呼叫过程以执行其它动作。
如果在判定块462集群主机没有使来自加入消息的证书与其可能持有的证书相匹配,则过程进入到判定块465。在判定块465,集群主机部分通过检查该“加入请求”消息或类似消息中的连通性信息,将其连通性与发送者网络装置的连通性相比较。集群主机可以首先在判定块465判断发送者网络装置是否具有比其更高的连通性的。如果是,则过程进入到块467,在此它推断请求加入的网络装置应当是该集群的集群主机。在块467,当前集群主机可以发送“退出请求”消息到该集群的所有现存集群成员。当前的集群主机借助可以离开该集群,然后通过退出到图3A的过程300A尝试重新加入该集群。该集群就可以重新形成,同时利用具有最佳连通性的网络装置作为新的集群主机。
然而,如果在判定块465集群主机确定发送者网络装置的连通性不大于其自身的连通性,则过程分支到判定块469。在判定块469,集群主机试图确定发送者网络装置的连通性是否等于其自身的连通性。如果不是,那么它就推断发送者不具有到现存集群成员所具有的所有网络的连通性,并且不应当位于该集群内。过程进入到块477,在此集群主机接着可以发送NAK,“加入失败”消息或类似消息到与该“加入请求”相关联的发送者网络装置,以指示该加入已经失败。一旦完成块477,过程就返回到呼叫过程以执行其它动作。
如果在判定块469,发送者网络装置的连通性等于集群主机的连通性,则过程分支到块472。在块472,集群主机部分通过使用“正在操作中”原因消息及类似消息,发送NAK或类似消息以告知网络装置等待。
接下来过程继续到块473,在此集群主机向应用等通知网络装置正试图加入该集群。这种通知是针对任何想要知道有关潜在加入到该集群的应用。例如,当IPSec是应用之一时这就可能发生。IPSec可能想要在同意让请求的网络装置加入集群之前验证该请求的网络装置。这样,过程继续到块474,在此可以利用加入请求分析为应用提供结束的机会。
过程接着继续到判定块475,在此做出任何应用是否已经拒绝了加入请求的判断。如果应用已经拒绝了加入请求,则过程分支到块477,在此集群主机可以发送可能带有拒绝的原因的NAK,“加入失败”消息或类似消息。过程接着退出到呼叫过程以执行其它动作。
如果在判定块475,基本上所有的相关应用都通过了加入请求,过程分支到块479,在此集群主机将发送者网络装置加入作为集群成员。集群主机还可以存储发送者网络装置的连通性信息。接下来过程流向块480,在此集群主机也可以发送ACK,或“加入OK”消息或类似消息。一旦完成块480,处理退出过程400D到呼叫过程以执行其它动作。
图4E举例说明了通常展示对于当集群主机接收到“集群主机保持活动”消息时的处理的一个实施例的流程图。过程400E致力于描述当两个集群成员声明为集群主机时的一种可能的“相持中断”机制。在一个实施例中,“集群主机保持活动”消息包括发送者网络装置的连通性信息、集群成员列表、自适应保持活动间隔、每个集群成员的当前工作分配设置等等。然而,本发明并不受限于这种信息,而是可以有更多或更少的信息与集群主机保持活动消息相关联而不偏离本发明范围或精神。
图4E的过程400E在当集群主机接收到“集群主机保持活动”消息时首先被进入。过程在开始块后开始于判定块482,在此做出所接收消息是否源于其自身的判断。如果是,则过程进入到块483,在此忽略所接收的保持活动消息。过程接着退出到呼叫过程以执行其它动作。
如果在判定块482确定“集群主机保持活动”消息是来自另一网络装置的,则过程分支到判定块485,在此集群主机将其连通性与发送者网络装置的连通性相比较。这可部分通过检查与所接收的消息有关的连通性信息而执行。
在判定块485,集群主机可以首先做出其是否具有比发送者网络装置更高的连通性的判断。如果是,则过程进入到块486,在此集群主机发送“存在其它集群主机”消息到其它网络装置。过程继续到块487,在此集群主机可以发送广播地址解析协议(ARP)响应等,以告知网络上的任何装置对于集群IP地址要使用的硬件地址(诸如以太网MAC地址)。过程接着退出到呼叫处理以执行其它动作。
如果在判定块485,确定集群主机不具有比发送者网络装置更高的连通性,则过程分支到判定块489,在此集群主机做出发送者网络装置是否具有比其自身更高的连通性的判断。如果是,则集群主机推断其它网络装置能够比它能到达更多的网络,并且从而应当成为集群主机。过程分支到块490,在此集群主机可以发送“退出请求”消息或类似消息到其的集群成员。此外,集群主机可以离开该集群,并通过退出块491到图3A的过程300A并试图再次加入该集群。
如果在判定块489,确定发送者网络装置不具有比集群主机更高的连通性,则过程继续到判定块492,在此集群主机就会判断它是否具有比发送者网络装置更多的集群成员。例如,这可能通过检查“集群主机保持活动”消息或类似消息中的大量集群成员而实现。在任何一种情况下,如果集群主机不具有更多的成员,则过程分支到块486,在此集群主机可以如上所述发送“存在其它集群主机”消息到其它网络装置。
然而,如果在判定块492确定集群主机没有更多的集群成员,则过程继续到判定块493,在此做出发送者网络装置在其集群内是否具有更多集群成员的判断。如果是,则集群主机推断其它网络装置应当成为集群主机。过程分支到块490,在此当前集群主机如上所述离开该集群。
然而,如果在判定块493集群主机确定其和发送者网络装置具有相同数量的集群成员,则过程进入到判定块494,在此集群主机将网络地址与发送者网络装置相比较作为可能的相持中断。然而,本发明并不限于比较网络地址,而是实际上可以应用任何其它的相持中断机制而不偏离本发明的范围。在任何一种情况下,在一个实施例中,在块494,集群主机判断它在保持活动消息在其上接收的网络上的网络地址是否小于所接收“集群主机保持活动”消息的源网络地址。如果是,则过程如上所述分支到块486;否则集群主机输掉了相持中断,并且过程分支到块490,在此集群主机如上所述通过分支到块490离开集群。
集群成员的示例性操作
在集群已经形成之后,每个非集群主机的集群成员(客户端)都可以发送保持活动消息到集群主机。在一个实施例中,保持活动消息包括非集群主机成员的连通性信息。在另外一个实施例中,保持活动消息被定期发送到集群主机。保持活动消息的频率可以基于各种机制中的任何一种确定,各种机制包括但不限于适应性地使频率基于由集群主机相关联的保持活动消息。
此外,无论它们是否检测到连通性变化,每个客户端都可以发送客户端保持活动消息。这个消息集中精力于集群主机之上的加速处理,典型地,在其能够确定新的集群成员资格之前通知其该变化。
图5根据本发明的一个实施例,举例说明了通常展示集群成员(客户端)管理与集群主机的连通性通信的过程的一个实施例的流程图。
图5的过程500在开始块之后,在当集群成员发送包含其更新后的连通性信息的保持活动消息时开始的。在一个实施例中,为计算分组丢失而应用单调递增的序号发送保持活动消息。一旦完成块502,过程退出到呼叫处理以执行其它动作。
应当理解以上所讨论的流程图示例的每个块,以及以上流程图示例中块的组合能够由计算机程序指令实现。这些程序指令可以提供给处理器以产生这样的机制,即使得在处理器之上执行的指令创建用于实现流程图中的块和各块中指定的动作的方法。计算机程序指令可以由处理器执行以促使处理器执行一系列的操作步骤,以产生计算机实现的处理过程,使得在处理器之上执行的指令提供用于实现流程图中的块和各块中指定的动作的步骤。
因此,流程图示例的各块支持用于执行指定动作的方法的组合、用于执行指定动作的步骤的组合以及用于执行指定动作的程序指令方法的组合。还应当理解的是,流程图示例的每个块以及流程图示例中块的组合能够由执行指定动作或步骤的专用基于硬件的系统、或专用硬件和计算机指令的组合实现。
以上说明、实例、以及数据提供了本发明组成的制造和使用的完整描述。由于本发明的许多实施例都可以不偏离本发明的精神与范围而构成,本发明存在于以下所附的权利要求书中。
Claims (22)
1.一种用于管理集群系统中的网络故障的网络装置,包括:
用于发送和接收信息的收发信机;
连接到所述收发信机、并被配置用于执行各种动作的处理器,这些动作包括:
接收与其他网络装置有关的连通性信息;并且
如果所述接收的连通性信息基本上不同于与所述集群系统相关的连通性信息集合,则拒绝给予所述其他网络装置集群成员资格。
2.根据权利要求1的网络装置,进一步包括:
确定与所述网络装置相关的另一连通性信息;以及
如果与所述网络装置相关的所述另一连通性信息基本上不同于与所述集群系统相关的连通性信息集合,则退出所述集群系统。
3.根据权利要求2的网络装置,其中如果与所述网络装置相关的所述另一连通性信息基本上不同,则发送退出消息到所述集群系统。
4.根据权利要求1的网络装置,其中所述接收的连通性信息进一步包括识别网络的信息以及所述其他网络装置是否具有到所述识别的网络的连通性的信息。
5.根据权利要求4的网络装置,其中所述网络的识别进一步包括网络地址和网络掩码长度的至少其中之一。
6.根据权利要求1的网络装置,其中所述处理器还被配置用于执行各种动作,这些动作进一步包括:
部分基于所述接收的连通性信息,判断所述其它网络装置是否针对与所述集群系统相同的网络集合而配置;
部分基于所述接收的连通性信息,判断所述其它网络装置是否具有对与所述集群系统相同的网络集合的连通性;以及
如果所述其它网络装置是针对不同的网络集合而不是针对所述集群系统而配置的,或者所述其它网络装置具有对不同的网络集合而不是对所述集群系统的连通性,则将所述接收的连通性信息标记为基本上不同于所述集群系统。
7.根据权利要求1的网络装置,其中拒绝给予所述其他网络装置集群成员资格还包括:
拒绝来自所述其它网络装置的加入所述集群系统的请求,以及请求所述其它网络装置退出所述集群系统的至少其中之一。
8.根据权利要求1的网络装置,其中所述处理器配置用于执行动作,进一步包括:
应用连通性定时器,以延迟对所述群集系统的成员资格进行更改。
9.根据权利要求1的网络装置,其中所述处理器配置用于执行动作,这些动作进一步包括:
接收来自第三网络装置的指示所述第三网络装置正试图运行作为所述集群系统的集群主机的消息;
如果所述网络装置具有比所述第三网络装置更高的连通性,则发送指示存在另一个集群主机的响应到所述第三网络装置;
如果所述网络装置具有与所述第三网络装置基本上相同的连通性,以及如果所述网络装置具有比所述第三网络装置更多的集群成员,则发送指示存在另一个集群主机的响应到所述第三网络装置;以及
如果所述网络装置具有与所述第三网络装置基本上相同的连通性,如果所述网络装置具有与所述第三网络装置基本上相同的集群成员,以及如果与所述网络装置相关的网络地址基本上小于与所述第三网络装置相关的网络地址,则发送指示存在另一个集群主机的响应到所述第三网络装置。
10.根据权利要求9的网络装置,其中所述处理器配置用于执行动作,这些动作进一步包括:
如果所述网络装置具有与所述第三装置基本上相同的连通性,以及如果所述网络装置具有比所述第三网络装置基本上更好的系统性能,则发送指示存在另一个集群主机的响应到所述第三网络装置。
11.一种用于管理集群系统中的网络故障的方法,包括:
接收与网络装置相关的连通性信息;以及
如果所述接收的连通性信息基本上不同于与所述集群系统相关的连通性信息集合,则拒绝给予所述网络装置集群成员资格。
12.根据权利要求11的方法,其中所述接收的连通性信息进一步包括识别网络的信息,以及所述网络装置是否具有到所述识别的网络的连通性的信息。
13.根据权利要求11的方法,其中拒绝给予所述网络装置集群成员资格进一步包括:
拒绝来自所述网络装置的加入所述集群系统的请求,以及请求所述网络装置退出所述集群系统的至少其中之一。
14.一种用于管理集群系统中的网络故障的系统,包括:
配置用于执行各种动作的网络装置,这些动作包括:
发送加入所述集群系统的请求;以及
发送与所述网络装置有关的连通性信息;以及
配置用于执行各种动作的集群主机,这些动作包括:
接收与所述网络装置有关的连通性信息;以及
如果所述接收的连通性信息基本上不同于与所述集群系统相关的连通性信息集合,则拒绝给予所述网络装置集群成员资格。
15.根据权利要求14的系统,其中所述集群主机还配置用于执行各种动作,这些动作进一步包括:
部分基于所述接收的连通性信息,判断所述网络装置是否针对与所述集群系统相同的网络集合而配置;
部分基于所述接收的连通性信息,判断所述网络装置是否具有到与所述集群系统相同的网络集合的连通性;以及
如果所述网络装置是针对不同的网络集合而不是针对所述集群系统而配置的,或者所述网络装置具有对不同的网络集合而不是对所述集群系统的连通性,则将所述接收的连通性信息标记为基本上不同于所述集群系统。
16.根据权利要求14的系统,其中拒绝给予所述网络装置集群成员资格进一步包括:
请求所述其它网络装置退出所述集群系统。
17.根据权利要求14的系统,其中所述集群主机配置用于执行动作,这些动作进一步包括:
应用连通性定时器,以延迟对所述集群系统的成员资格进行更改。
18.根据权利要求14的系统,其中所述集群主机被配置用于执行各种动作,这些动作进一步包括:
接收来自其他网络装置的指示所述其他网络装置正试图运行作为所述集群系统的集群主机的消息;
如果所述集群主机具有比所述其他装置更高的连通性,则发送指示存在另一个集群主机的响应到所述其他网络装置;
如果所述集群主机具有与所述其他网络装置基本上相同的连通性,以及如果所述集群主机具有比所述其他网络装置更多的集群成员,则发送指示存在另一个集群主机的响应到所述其他网络装置;以及
如果所述集群主机具有与所述其他网络装置基本上相同的连通性,如果所述集群主机具有与所述其他网络装置基本上相同的集群成员,以及如果与所述集群主机相关的网络地址基本上小于与所述其他网络装置相关的网络地址,则发送指示存在另一个集群主机的响应到所述其他网络装置。
19.根据权利要求14的系统,其中所述网络装置配置用于执行动作,这些动作进一步包括:
检测其连通性的改变;
更新与所述网络装置相关的连通性信息;以及
发送所述更新的连通性信息到所述集群主机。
20.根据权利要求19的系统,其中发送所述更新的连通性信息进一步包括:
在保持活动消息内发送所述更新的连通性信息,其中使单调递增序号与所述保持活动消息相关联以实现分组丢失计算。
21.一种用于管理集群系统中的故障的设备,包括:
用于接收与网络装置相关的连通性信息的装置;
用于确定所述接收的连通性信息是否基本上不同于与所述集群系统相关的连通性信息集合的装置;以及
如果所述接收的连通性信息基本上不同于与所述集群系统相关联的连通性信息集合,则应用用于拒绝给予所述网络装置集群成员资格的装置。
22.一种用于实现集群系统中的故障管理的调制数据信号,包括:
通过网络装置发送加入所述集群系统的请求;
通过所述网络装置发送与所述网络装置相关的连通性信息到集群主机;以及
如果所述接收的连通性信息基本上不同于与所述集群主机相关的连通性信息集合,则由所述集群主机发送拒绝给予所述网络装置集群成员资格的消息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/833,650 | 2004-04-28 | ||
US10/833,650 US20050268151A1 (en) | 2004-04-28 | 2004-04-28 | System and method for maximizing connectivity during network failures in a cluster system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1943206A true CN1943206A (zh) | 2007-04-04 |
Family
ID=35242034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800117387A Pending CN1943206A (zh) | 2004-04-28 | 2005-04-14 | 用于在集群系统的网络故障期间最大化连通性的系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20050268151A1 (zh) |
EP (1) | EP1741261B1 (zh) |
KR (1) | KR100810139B1 (zh) |
CN (1) | CN1943206A (zh) |
AT (1) | ATE485662T1 (zh) |
DE (1) | DE602005024248D1 (zh) |
TW (1) | TWI372535B (zh) |
WO (1) | WO2005107209A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520778A (zh) * | 2022-01-13 | 2022-05-20 | 深信服科技股份有限公司 | 一种连通性检测方法、装置、电子设备及存储介质 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7421478B1 (en) | 2002-03-07 | 2008-09-02 | Cisco Technology, Inc. | Method and apparatus for exchanging heartbeat messages and configuration information between nodes operating in a master-slave configuration |
US7587465B1 (en) * | 2002-04-22 | 2009-09-08 | Cisco Technology, Inc. | Method and apparatus for configuring nodes as masters or slaves |
US7415535B1 (en) | 2002-04-22 | 2008-08-19 | Cisco Technology, Inc. | Virtual MAC address system and method |
US7188194B1 (en) | 2002-04-22 | 2007-03-06 | Cisco Technology, Inc. | Session-based target/LUN mapping for a storage area network and associated method |
US7831736B1 (en) | 2003-02-27 | 2010-11-09 | Cisco Technology, Inc. | System and method for supporting VLANs in an iSCSI |
US7904599B1 (en) | 2003-03-28 | 2011-03-08 | Cisco Technology, Inc. | Synchronization and auditing of zone configuration data in storage-area networks |
KR100769674B1 (ko) * | 2004-12-30 | 2007-10-24 | 삼성전자주식회사 | 홈 네트워크에서 디바이스의 공개키 인증 방법 및 시스템 |
CA2619922A1 (en) * | 2005-09-14 | 2007-03-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Controlled temporary mobile network |
US8619623B2 (en) * | 2006-08-08 | 2013-12-31 | Marvell World Trade Ltd. | Ad-hoc simple configuration |
US8554827B2 (en) * | 2006-09-29 | 2013-10-08 | Qurio Holdings, Inc. | Virtual peer for a content sharing system |
US8732315B2 (en) | 2006-10-16 | 2014-05-20 | Marvell International Ltd. | Automatic ad-hoc network creation and coalescing using WiFi protected setup |
US8233456B1 (en) | 2006-10-16 | 2012-07-31 | Marvell International Ltd. | Power save mechanisms for dynamic ad-hoc networks |
US9308455B1 (en) | 2006-10-25 | 2016-04-12 | Marvell International Ltd. | System and method for gaming in an ad-hoc network |
US7886334B1 (en) | 2006-12-11 | 2011-02-08 | Qurio Holdings, Inc. | System and method for social network trust assessment |
KR100852340B1 (ko) * | 2007-02-01 | 2008-08-18 | 주식회사 대우일렉트로닉스 | 다중 홈게이트웨이로 구성된 홈네트워크 시스템의 마스터선정 방법 |
US7711980B1 (en) * | 2007-05-22 | 2010-05-04 | Hewlett-Packard Development Company, L.P. | Computer system failure management with topology-based failure impact determinations |
US8628420B2 (en) | 2007-07-03 | 2014-01-14 | Marvell World Trade Ltd. | Location aware ad-hoc gaming |
KR101017456B1 (ko) * | 2008-10-31 | 2011-02-25 | 주식회사 케이티 | 이동통신 시스템의 장애 복구시 과부하 제어 방법 및 장치 |
CN102640471B (zh) * | 2009-12-14 | 2015-04-22 | 诺基亚公司 | 多径通信的方法和装置 |
US8281071B1 (en) * | 2010-02-26 | 2012-10-02 | Symantec Corporation | Systems and methods for managing cluster node connectivity information |
CN102480512B (zh) | 2010-11-29 | 2015-08-12 | 国际商业机器公司 | 用于扩展服务器端处理能力的方法和装置 |
US10164856B2 (en) * | 2012-11-05 | 2018-12-25 | International Business Machines Corporation | Reconciliation of asymmetric topology in a clustered environment |
WO2015177924A1 (ja) * | 2014-05-23 | 2015-11-26 | 三菱電機株式会社 | 通信装置及び通信方法及びプログラム |
CN110995805B (zh) * | 2019-11-24 | 2022-02-18 | 浪潮电子信息产业股份有限公司 | 一种集群网卡的确定方法、装置、设备及可读存储介质 |
US12088737B2 (en) * | 2020-07-02 | 2024-09-10 | EMC IP Holding Company LLC | Method to establish an application level SSL certificate hierarchy between master node and capacity nodes based on hardware level certificate hierarchy |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU689904B2 (en) * | 1994-07-29 | 1998-04-09 | Motorola, Inc. | A method and system for minimizing redundant topology updates using a black-out timer |
US5999712A (en) * | 1997-10-21 | 1999-12-07 | Sun Microsystems, Inc. | Determining cluster membership in a distributed computer system |
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 |
US6006259A (en) * | 1998-11-20 | 1999-12-21 | Network Alchemy, Inc. | Method and apparatus for an internet protocol (IP) network clustering system |
US6570881B1 (en) * | 1999-01-21 | 2003-05-27 | 3Com Corporation | High-speed trunk cluster reliable load sharing system using temporary port down |
EP1075112B1 (en) * | 1999-08-06 | 2006-03-08 | International Business Machines Corporation | Address management in PNNI hierarchical networks |
US6691244B1 (en) * | 2000-03-14 | 2004-02-10 | Sun Microsystems, Inc. | System and method for comprehensive availability management in a high-availability computer system |
US6493759B1 (en) * | 2000-07-24 | 2002-12-10 | Bbnt Solutions Llc | Cluster head resignation to improve routing in mobile communication systems |
US7272636B2 (en) * | 2001-04-24 | 2007-09-18 | Sun Microsystems, Inc. | Peer group name server |
US7043550B2 (en) * | 2002-02-15 | 2006-05-09 | International Business Machines Corporation | Method for controlling group membership in a distributed multinode data processing system to assure mutually symmetric liveness status indications |
US7139925B2 (en) * | 2002-04-29 | 2006-11-21 | Sun Microsystems, Inc. | System and method for dynamic cluster adjustment to node failures in a distributed data system |
US7010717B2 (en) * | 2002-07-29 | 2006-03-07 | Hewlett-Packard Development Company, L.P. | Facility creation process for clustered servers |
US6954794B2 (en) * | 2002-10-21 | 2005-10-11 | Tekelec | Methods and systems for exchanging reachability information and for switching traffic between redundant interfaces in a network cluster |
US7468804B2 (en) * | 2003-06-12 | 2008-12-23 | Ricoh Company, Ltd. | Techniques for printer-side network cluster printing |
US20050132154A1 (en) * | 2003-10-03 | 2005-06-16 | International Business Machines Corporation | Reliable leader election in storage area network |
-
2004
- 2004-04-28 US US10/833,650 patent/US20050268151A1/en not_active Abandoned
-
2005
- 2005-04-14 CN CNA2005800117387A patent/CN1943206A/zh active Pending
- 2005-04-14 DE DE602005024248T patent/DE602005024248D1/de active Active
- 2005-04-14 EP EP05732760A patent/EP1741261B1/en not_active Not-in-force
- 2005-04-14 WO PCT/IB2005/001004 patent/WO2005107209A1/en not_active Application Discontinuation
- 2005-04-14 KR KR1020067021750A patent/KR100810139B1/ko not_active IP Right Cessation
- 2005-04-14 AT AT05732760T patent/ATE485662T1/de not_active IP Right Cessation
- 2005-04-26 TW TW094113181A patent/TWI372535B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520778A (zh) * | 2022-01-13 | 2022-05-20 | 深信服科技股份有限公司 | 一种连通性检测方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20060135898A (ko) | 2006-12-29 |
TWI372535B (en) | 2012-09-11 |
EP1741261A1 (en) | 2007-01-10 |
WO2005107209A1 (en) | 2005-11-10 |
KR100810139B1 (ko) | 2008-03-06 |
DE602005024248D1 (de) | 2010-12-02 |
TW200623713A (en) | 2006-07-01 |
EP1741261B1 (en) | 2010-10-20 |
US20050268151A1 (en) | 2005-12-01 |
ATE485662T1 (de) | 2010-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1943206A (zh) | 用于在集群系统的网络故障期间最大化连通性的系统和方法 | |
CN1638342A (zh) | 用于管理集群系统中的协议网络故障的系统和方法 | |
CN1194309C (zh) | 服务器计算机保护的装置、方法和服务器计算机装置 | |
CN1633647A (zh) | 用于管理网络中的数据传送的系统、方法和产品 | |
CN1913452A (zh) | 一种通信网络智能巡检的方法及设备 | |
CN101051951A (zh) | 一种保证服务器接入可靠性的方法及装置 | |
CN1753391A (zh) | 使用具有同步频率的时钟的可靠的消息通信 | |
CN1655552A (zh) | 管理传输控制协议(tcp)连接 | |
CN1863081A (zh) | 基于智能平台管理接口的管理系统和方法 | |
WO2006115338A1 (en) | System and method for scheduling device management | |
WO2013078823A1 (zh) | 即时消息发送方法和装置 | |
CN1251103C (zh) | 提高商务机群可服务性的方法 | |
CN1889464A (zh) | 一种实现通信接管的方法及装置 | |
CN1852158A (zh) | 一种电信网络告警的实现方法及其系统 | |
CN101051981A (zh) | 一种wlan异常快速恢复的方法及设备 | |
CN1893424A (zh) | 一种snmp协议下采用确认机制实现告警管理的方法 | |
CN1700694A (zh) | 获取会话初始协议网络节点状态的方法及系统 | |
CN1949711A (zh) | 用于发送再见消息的方法和设备 | |
CN1859423A (zh) | 一种主机和转发设备同步切换的方法 | |
CN1279718C (zh) | 逻辑链路资源的数量大于物理链路资源的远程接入服务器 | |
CN1905566A (zh) | 在网络存储业务中实现系统高可用性的方法和系统 | |
CN1917427A (zh) | 一种快速恢复门户认证环境的方法和装置 | |
CN114218004A (zh) | 基于BMC的Kubernetes集群物理节点的故障处理方法和系统 | |
CN1842997A (zh) | 终端装置、终端装置的控制方法、网络系统及其控制方法、程序及记录介质 | |
US7916630B2 (en) | Monitoring condition of network with distributed components |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070404 |