CN1980169B - 用于在分布拓扑活性系统中提高群集唤起的方法 - Google Patents
用于在分布拓扑活性系统中提高群集唤起的方法 Download PDFInfo
- Publication number
- CN1980169B CN1980169B CN2006101631266A CN200610163126A CN1980169B CN 1980169 B CN1980169 B CN 1980169B CN 2006101631266 A CN2006101631266 A CN 2006101631266A CN 200610163126 A CN200610163126 A CN 200610163126A CN 1980169 B CN1980169 B CN 1980169B
- Authority
- CN
- China
- Prior art keywords
- node
- message
- nodes
- described message
- data processing
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/46—Cluster building
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
提供用于在具有多个节点的分布数据处理环境中建立群集的方法。基于节点的等级来选择为了群集形成的目的发送消息的频率。较高等级的节点比较低等级的节点更加频繁地发送这种消息。因此较低等级的节点被提供有加入群集的机会,而不用首先发送它们自己的消息来完成加入。
Description
技术领域
本发明总体涉及分布计算机网络,更具体地说,涉及用于在网络内唤起(bring up)节点群集而不必因为与大量数据处理节点的活性(liveness)和连接性状态有关的通信量(traffic)而阻塞系统的方法。
背景技术
在分布系统中,在初始化阶段期间,节点可能不知道可能存在什么样的其他节点和什么样的其他节点在进行运行。节点可能通过交换发现消息而彼此发现,然后最终达到所有“就绪(up)”的节点彼此知道的状态。但是在带有大量节点的系统上,这样的消息交换可能将巨大的消息通信量引入到网络中,其可能导致缓慢的发现过程。虽然当仅仅存在几个节点时可以相对容易地解决所产生的问题,但是当存在大量节点(例如1000)时,缺乏关于分布网络中其他节点状态的信息导致交换消息的大量,这可能拖延(stall)在系统中的信息通信量。而且,该问题随着节点数量N呈指数增长。当今所提出的解决该问题的方法注重减少消息通信量,而且提供更加有秩序的唤起(发现)过程。
其他方法已经触及了类似问题但是没有方法包括本发明的要素。例如,美国专利No.6,026,073讨论节点等级但是仅仅是为了确定“恢复路径”的目的。还没有提到使用等级来控制消息频率。
公开的美国专利申请2003/0005086A1还示出了使用节点等级的概念,但是其不具有处理争用(contention)的方法也不具有多个“主管”。为了完全不同的目的使用等级。
美国专利No.6,606,362也提及等级的概念,但是仅仅将级别分配给信号源以允许信号接收者从几个源中进行选择。
公开的美国专利申请2004/0146064A1响应于减少消息争用量而使用随机延迟。这与使用等级的教导相反。
公开的美国专利申请2004/0205148A1不使用等级的概念,而且不涉及唤起节点以进入群集的问题。此外,其假设群集预先存在,而且涉及与节点故障相关的问题。
公开的美国专利申请2005/0054346A1基本上与本发明是无关的,而仅仅通过根据服务类型来给予消息优先级和根据服务质量给予路径优先级的概念而与本发明有一些联系。
公开的美国专利申请2005/0071473显示出描述了用于根据优先级值和可能还有作为联系破坏器(tie-breaker)的全局标识符来选择有限数量的备用子网消息的方法。
美国专利No.6,941,350显示出描述了用于在初始化期间选择主网络管理者,但是不使用节点等级而是将优先级分配给子网来控制消息拥塞的方法。
外国专利文件AUS920000632显示出描述了其中根据优先级来对节点进行评级,而且进行消息交换以查明给定节点是否应该是网络管理者的方案。但是没有提及根据任何优先级或者等级来改变频率。
发明内容
根据本发明,提供用于在具有多个节点的分布数据处理环境中建立群集的方法。在其最全面的实施方式中,该方法包括步骤:将请求群集形成的消息从该多个节点发送到该环境中的其他节点。根据节点等级来选择发送这些(群集形成)消息的频率,其中较高等级的节点更加经常地发送这些消息,因此将加入群集的机会提供给较低等级的节点而不用使得它们作为加入群集的请求者进行动作。本发明最好还使用以下面的方式控制这种消息之间的周期的功能:具有较高等级的节点具有较大频率(或者等效地,较短的周期)。在本发明中,确定所选择的等级的函数是单调函数,其自变量是分配给节点的(IP)地址。还将可以用于精细调谐目的的几个参数提供给该函数。
在本发明的一个具体实施方式中,使得参照上述内容的方法动态可调。具体地说,提供这样的机制,其中从带有较低IP地址(也就是较低等级)的节点接收“PROCLAIM”(也就是,初始群集形成“邀请”)的节点通过将其与给定因数P(O<P<1)相乘来减小PROCLAIM消息之间的间隔。
在本发明的另一种实施方式中,在上述的主要方法中,提供这样的机制,其中获得PROCLAIM消息的节点不立即用消息进行响应,而是等待来自具有甚至更高IP地址的节点的PROCLAIM消息一预定时间间隔。在该时间段结束时,该节点对带有最高IP地址的节点进行响应。因此,通过消除对较低等级节点的响应来减少网络通信量的对应流量和响应。
因此,提供用于分布系统中群集唤起的方法,其中节点能够用网络上所发送的减少数量的消息来快速将它们所有的对等方进行定位。在初始化期间,每个节点开始不知道其他对等方是否就绪。唤起过程的目的是允许每个节点知道就绪的所有节点。
该方法涉及对所有节点进行评级,其中带有最高等级(在本优选实施中最高等级的IP地址)的节点变为“组领导”。在网络上发送消息以广告作为变为组领导的候选者的节点的存在。发送这种消息的频率与发送者的等级值相关。对消息发送的频率进行控制减小了网络上的负载,并且提供更加有序和快速地唤起。
因此,本发明的目的是在多节点数据处理网络中在系统唤起期间减少消息通信流量。
本发明的再一目的是以更加快速和更加可靠的方式唤起多节点分布处理系统。
本发明的再一目的是动态调节消息发送频率。
本发明的再一目的是在多节点数据处理网络中在系统唤起期间使得所有节点更加迅速地转变到稳定状态。
本发明的再一目的是避免发送不必要的消息。
本发明的再一目的是在群集形成过程中,避免将消息发送到对发送节点来说不可能使用的节点。
本发明的再一目的是促进带有数据处理网络的群集的形成。
最后,但不限于此,本发明的目的是促进对大规模数据处理网络的使用。
本发明的各种实施方式所满足的上面所列出的所期望的目的不意味着暗示或者建议任何或者所有的这些目的在本发明的更加普通的实施方式中,或者在其任何更加具体的实施方式中,是分别或者共同地作为根本特征呈现的。
附图说明
在权利要求书中具体指出和权利要求了作为本发明的主体内容。但是,对于实施的组织和方法来说,通过结合附图参照下面描述,将可以最好地理解本发明及其进一步的目的和优点,其中:
图1示出了消息发送期间相对于节点等级的图,其提供对这两个变量之间的所期望的变化的实质的大致说明;
图2示出了在没有本发明的网络启动中释放一阵(群集形成)消息时的一个瞬象的框图;和
图3示出了在所发送的(群集形成)消息数量改进时的一个瞬象的框图。
具体实施方式
虽然将本方法实施为RSCT(可靠可升级群集技术)拓扑服务的一部分,但是,其同样还可以应用于其他分布子系统的系统。
适配器和节点活性确定处于任何高度可用的分布群集系统的核心。为了提供高度可用的服务,群集系统必须能够确定在系统中的哪个节点、网络和网络适配器正在工作。而且如果可能的群集软件和应用程序必须通过将重要资源转移到其他部件而从故障中恢复,则必须检测在任何这种部件中的故障并且发送到较高层的软件子系统。
常常通过使用在分布系统的每个节点中运行的看守程序(daemon)进程来进行对节点、网络和网络适配器活性的确定。看守程序运行分布协议并且交换通过系统中的不同网络路径强制的活性消息。如果在预定间隔内没有接收到这种活性消息,则假设发送节点或者网络适配器没有与其他节点或者适配器进行工作(“死的”)。
心跳(heartbeat)协议
为了解释该机制,以及在拓扑服务中如何对其进行使用,稍稍详细地解释子系统中的适配器成员资格(“心跳”)协议。为了监视每个网络中适配器的健康和连接性,网络中的所有适配器都必须试图形成“适配器成员资格组”(AMG),其是包含能够在网络中彼此通信的所有网络适配器的组。在AMG中的适配器监视彼此的“活性”。当形成AMG时,所有组成员接收到标识AMG的“AMG ID”。将出现故障的适配器从组中驱除,而邀请被加电的新适配器加入组。在两种情况中,形成带有新AMG ID的新AMG。每个AMG具有作为组领导(GL)的一个成员,而所有成员都知道谁是GL。注意,可能具有多个网络适配器的给定节点可以属于几个AMG,每个用于其网络适配器的每一个。
每个AMG具有ID,其包括在所有协议消息中。由GL标识(选择为其IP(因特网协议)地址)和实例号码(选择为当AMG形成时的时间标记)组成组ID。AMG的每个成员还具有ID,其由成员标识(选择为其IP地址)和实例号码(选择为当开始看守程序时或者当重新初始化适配器时的时间标记)组成。为了本发明的目的,IP地址是给定的输入。其是之前由系统管理员所确定的参数。本发明对该地址没有要求。但是,其应该是唯一的。
为了确定在每个网络中存活的适配器组,在每个网络中运行适配器成员资格协议。使用UDP/IP来发送该协议的消息。存活的适配器形成AMG,其中以虚拟环形拓扑来组织成员。为了确保所有组成员都存活,每个成员周期性地发送“HEART BEAT”消息给其“下游邻居”,而且监视来自其“上游邻居”的“HAERTBEAT”消息。当适配器出现故障或者当新适配器变为可以工作时运行协议。这种协议的目的是保证成员资格组在所有时刻包含(而且只包含)在网络(而且只在属于该群集的那些网络)中的可以彼此通信的适配器。
除了GL以外,每个组最好具有“戴冠王子(Crown Prince)”(备用组领导节点)。组领导负责协调组协议,而戴冠王子负责在组领导适配器出现故障时接管组领导资格。通过预定的视频优先级/等级规则来确定对组领导和戴冠王子的选择,以及在环中适配器的位置,其最好被选择为适配器的IP地址。在启动和重新配置时由所有节点读取的配置文件中包含每个网络中所有可能的适配器的列表。
加入协议
为了吸引新成员到组中,在每个组中的组领导(GL)周期性地发送“PROCLAIM”消息给在适配器配置中但是当前不属于组的适配器。仅仅将消息发送到具有比发送者的IP地址低的IP地址(较低的等级,即较高的“等级值”)的适配器。
为了在大量节点是群集的一部分时提供更好的效率,可以通过广播来发送“PROCLAIM”消息,其避免了GL发送消息给每个独立节点的需要。使用广播的副作用时消息可能到达带有比发送者更高的IP地址的节点。最好忽略来自带有较低IP地址(较低等级)的节点的这种“PROCLAIM”消息。
不是组领导的所有适配器忽略“PROCLAIM”消息。从较高优先级(较高IP地址)节点接收“PROCLAIM”消息的GL节点代表其组用“JOIN”消息进行响应。该消息包含“加入组”的成员资格列表。因此“PROCLAIM”通常只从较高等级的节点被接受。最好忽略来自较低等级的节点的这种消息。
从GL2接收到“JOIN”消息的节点GL1将试图形成包含之前成员和加入组中的所有成员的新组。然后GL1发送“PTC”(“准备承诺”)消息给包括GL2的、新组的所有成员。
接收“PTC”消息的节点以“PTC ACK”消息进行回应。从其接收到“PTC ACK”消息的所有节点都包括在新组中。组领导(GL1)发送“COMMIT”消息给所有新组成员,该消息包含整个组成员资格列表。
接收到“COMMIT”消息标志着转变为新组,其现在包含老成员和加入成员。在接收到该消息后,组成员开始发送“HEART BEAT”消息到其(可能新的)下游邻居,而且开始监视来自其(可能新的)上游邻居的“HAERT BEAT”消息。“PTC”和“COMMIT”消息都需要确认以确保它们被接收。如果没有接收到确认,则进行有限次数的重试。在已经穷尽了所有重试之后如果还没有接收到确认,则导致不将对应的适配器包括在新组中。如果在“PTC ACK”消息的所有重试之后,看守程序没能接收到“COMMIT”消息,则本地适配器放弃形成新组,而将其自己重新初始化到单一(singleton)的组。仅仅在其中GL在发送“PTC”和“COMMIT”消息之间的短窗口中出现故障的相对稀少的情况下才发生这种现象。
当初始化拓扑服务看守程序时,其在其适配器的每一个中形成(节点为GL的)单一适配器组。然后该节点开始发送和接收“PROCLAIM”消息。
死亡协议
节点或者适配器将监视来自其“上游邻居”(在组中具有组成员中下一个最高IP地址的适配器)的“HEART BEAT”消息。当在某预定时间段中没有接收到“HEART BEAT”消息时,假设“上游邻居”已经发生故障。然后将“DEATH”消息发送到组领导,请求形成新组。
当接收到“DEATH”消息时,组领导试图形成包含当前组中除了被检测为发生故障的适配器之外的所有适配器的新组。组领导发送“PTC”消息给新组的所有成员。然后协议遵从与上述用于加入协议相同的顺序操作。
在发送“DEATH”消息之后,非GL看守程序希望迅速接收“PTC”消息(同时GL节点发送“DEATH”消息给自己)。尝试一些重试,但是如果接收到“PTC”消息,则意味着GL适配器(或者其主机节点)死亡并且“戴冠王子”也死亡了,因此不能接管组领导资格。在这种情况中,适配器重新将自己初始化到单一组并且发送“DISSOLVE”消息,邀请所有组成员做相同的操作。这就是允许组的所有成员发现GL和戴冠王子成员同时死亡的机制。
节点可到达性(reachability)
节点可到达性协议用于允许对可以从本地节点到达的(因此被认为是存活的)一组节点进行计算。由于可以不将所有的节点都连接到相同的网络,所以可以只通过一系列的多个网络中继段(hop)来到达某些节点。只有当考虑关于所有网络甚至包括那些不跨越所有节点的网络的信息时才计算节点可到达性。
为了计算节点可到达性,使用最终协定协议:当网络拓扑停止变化时,将每个网络处的可到达性信息传播到所有网络,最终所有节点具有关于所有网络的一致信息。然后每个节点能够独立地计算可到达的节点的组,并且能够得出一致的结果。
周期性地,并且直到某些停止条件指令看守程序停止这样做为止,节点发送下面消息:
(a)从所有组成员发送“Node Connectivity Message(节点连接性消息)”
(NCM)到GL(组领导)。用于给定网络的NCM包含用于该网络的AMGID和所有用于被禁止的本地适配器的“disabled AMG Ids(被禁止的AMG标识)”。节点发送NCM到本地适配器所属于的组的每个GL。
GL将来自NCM的所有信息存储在“Node Connectivity Table(节点连接性表)”(NCT)中。NCT存储全局网络拓扑(的本地视图(localview)),并且包含用于系统中每个节点和网络适配器的AMG ID。假设具有相同AMG ID的任两个节点通过相同的网络彼此连接。
(b)从每个GL发送“Group Connectivity Message(组连接性消息)”
(GCM)到所有组成员。GCM包含AMG ID和属于该AMG的节点的列表。而且,对于这些节点的每一个,包括所有(在其他网络中的)“disabledAMG Ids”的列表。从GL的NCT中提取需要发送GCM的信息。
接收到GCM的节点用消息中的信息来更新其自己的NCT。如果接收到GCM的看守程序确定存在有本地适配器所属于的某些组,其成员将不会已经接收到该GCM,则看守程序将GCM转发到这些组。目的就是将GCM传播到系统中所有的节点,甚至包括那些不直接连接到GCM所源于的网络的节点。
注意,在NCM和GCM中所发送的信息是发送者的NCT的子集。
稳定/不稳定AMG
为了防止诸如在所有“PTC ACK”(准备承诺确认)之后缺少“COMMIT”消息、或者GL和戴冠王子同时发生故障所导致的那些“panic(恐慌)”之类的协议的“panic”动作使得主节点的可到达性波动,在本发明中使用“稳定”和“不稳定”AMG的概念。稳定的AMG是已经实现了某种稳定状态的那些AMG,而不稳定AMG是还可能发生成员资格变化的那些AMG。
在初始化时,由于期望适配器在更大的组中加入其他的对等方,所以单一AMG以不稳定状态开始。在成员资格变化停止发生的不活跃期间之后发生变化到稳定组的改变。一旦组稳定了,则其保持稳定直到迫使适配器(诸如因为“panic”动作)重新将自己初始化为止。
AMG稳定性关联于NCT,并且关联于将NCM和GCM进行发送以防止不必要的节点可到达性波动,不将关于不稳定组的信息在NCM和GCM中发送。这有效地去除了对不稳定组计算节点可到达性,并且具有从上面的软件层中消除对某些临时成员资格变化的认知的有益效果。
用于发送PROCLAIM消息的改进方法
当在大致相同的时间开启所有节点时,每个节点周期性地发送“PROCLAIM”消息的较老的方法可能导致巨大的网络通信量和CPU(中央处理单元)负载的增加。此外,由于节点可能响应于来自对等方的“PROCLAIM”消息,而该对等方自己可能从带有更高IP(因特网协议)地址的节点接收“PROCLAIM”消息,等等,所以AMG形成趋于混乱。一些小的组可以在它们最终被合并到较大的组之前形成。最终,形成包括群集的所有成员的单个AMG。但是用于形成单个AMG的时间可能不是最优化的,这是因为:
(a)大量“PROCLAIM”消息所导致的网络负载;
(b)多个“PROCALIM”消息所产生的CPU负载;
(c)形成较小AMG的节点所产生的开销,仅仅使得它们的AMG被带
有较高ID地址的节点所“吸收”;和
(d)节点用“JOIN”消息对“PROCLAIM”消息进行响应,但是然后因为GL自己用带有较高IP地址的消息对来自节点的“PROCLAIM”消息进行响应所以拒绝了“JOIN”消息的情况。
为了应对上面的问题,引入了根据所有节点的IP地址将它们进行评级的方法。将带有最高IP地址的节点分配等级1(“最高等级”),而将带有N个节点的最低IP地址(“最低等级”)的节点分配等级N。定义“等级小数”,其中最高IP地址具有值1/N,而最低IP地址具有值1。较高等级的节点(较低等级值)更加频繁地发送“PROCLAIM”消,而对于较低等级的节点情况正相反。此外,允许多至(由给定“等级小数”所限定的)阈值的较高等级节点在刚刚将它们初始化时就发送“PROCLAIM”消息,而剩余的节点必须等待“PROCLAIM”循环。
例如,可以使用下面公式来计算在发送“PROCLAIM”消息之间所使用的间隔:
K(F+(1-F)R(1/X)),
其中:
K是常数——较高的值导致较不频繁的“PROCLAIM”消息,因此以较慢的群集形成为代价产生较少的网络通信量;
F是小数,其控制较高等级的节点应该发送“PROCLAIM”消息的速度。较低的值产生较快的速度,其导致较快的群集形成,但是,有较高的网络通信量;
R是上述定义的“等级小数”;以及
X是因数,可以用于在等级小数值增加时更加快速地增加“PROCLAIM”消息之间的间隔。X的较高值放大这种效应。X值为1给出随等级的周期的线性变化。
注意,在上面公式中所提供的函数虽然是有用的和优选的,但是其并不必须采用所示的形式。任何单调函数都可以等效地工作。在本发明的优选实施方式中,设K的有用值为大约10秒、F的有用值大约是0.1而X的有用值大约是2。如说明书中的其他地方所描述的,R不是常数。
用上述的机制,较低等级节点在发送“PROCLAIM”消息时具有初始延迟,然后应该(与其中所有节点都以相同的频率发送消息的方案相比)较不频繁地发送该消息。较低等级的节点很最终可能在其发送任何“PROCLAIM”消息之前接收到“PROCLAIM”消息,这满足了实现较少网络通信量和更加有序地唤起群集的目的。
图1中示出了在给定节点发送消息之间的时间段和分配给该节点的等级之间的关系。注意,该时间段与发送频率成反比。图1中所示的消息发送周期与节点等级之间的图。该图示是大致的情况,而且仅仅被提供用于图示的目的。但是,该图也示出了这样的概念:具有如上面提供的函数所分配的较高等级的节点将趋于在群集形成期间具有发送消息的较短的周期(较高的频率)。相反地,具有较低等级的节点将趋于具有发送消息的较长周期(较低频率)。
图2示出了在不使用本发明的情况下在系统唤起操作期间可能发生的消息发送的潜在不协调现象(cacophony)。特别是,人们会注意到这样的事实,较低等级的节点可能与较高等级的节点等同地涉及在群集形成时的开始企图。这里应该注意,并且对于图3也一样,为了图示的目的仅仅示出了少量节点。实际上,当节点数量大时本发明是最有用的。节点数量越多,本发明会变得越有用。为了理解的目的,读者应该想象由存在一千个节点的情况所导致的链路网络。特别参照图3,应该注意,主要从较高等级的节点产生消息发送。
注意,因为节点可能不可以操作,所以从网络通信量的角度来说,只有带有最高IP地址的节点才发送“PROCLAIM”消息虽然是简单和最佳的,但是却是不实际的,其能够导致群集的剩余成员不能形成单个AMG。本发明的方法产生作为带有所有节点的单个组的“最终结果”,而且该组具有单个组领导(GL)。
使用所接收的PROCLAIM消息作为反馈信息
由节点“A”从较低IP地址接收来的“PROCLAIM”消息(这在它们被广播的情况下才应该发生)是正在初始化带有较低IP地址的节点,而且它们某种程度上还没有从节点“A”、节点“A”的GL、或者带有比节点“A”更高的IP地址的另一个节点得到“PROCLAIM”消息的标志。假设节点“A”是GL,其能够用于其自己的立即“PROCLAIM”消息对该消息进行响应,但是这可能产生显著的网络通信量,特别是如果(1)带有低IP地址的几个节点正好也发送“PROCLAIM”消息而且(2)几个节点正好接收到该“PROCLAIM”消息的情况。
这里引入这样的机制,其中从带有较低IP地址的节点接收到“PROCLAIM”消息的节点通过将其在“PROCLAIM”消息之间的间隔乘以给定因数(0<P<1)来减少该间隔。这导致更快地发送随后的“PROCLAIM”消息(因此将“PROCLAIM”所源于的、带有较低IP地址的节点作为目标),同时还允许在从带有较低IP地址的节点接收随后的“PROCLAIM”消息的情况中的某些批处理(batching)。当最终发送“PROCLAIM”消息时,将间隔复位到“原始”值。
这种机制产生甚至更快的群集“PROCLAIM”以更加迅速地到达它们的目标。
PROCLAIM“拍卖”
由于通常大致在相同的时间对几个节点进行初始化,所以大量“PROCLAIM”消息可能流过网络。可能发生这样的情况,节点可能从节点“A”得到“PROCLAIM”消息并且加入带有它的AMG,同时节点“A”其自己可能加入节点“B”作为GL的组。这里引入一种机制,其中得到“PROCLAIM”消息的节点不立即用“JOIN”消息进行响应,而是在间隔期间等待来自带有甚至更高IP地址的节点的“PROCLAIM”消息。在该时间段结束时,节点用最高IP地址对节点进行响应。
当“PROCLAIM”消息的发送者具有比给定值小的等级小数(上面定义的R变量)时将“拍卖周期”短路。
无论什么时候收到“PROCLAIM”消息,都由下述过程实施该机制:
如果发送者的R值小于阈值,则:
用“JOIN”消息对“PROCLAIM”消息进行响应;
取消“拍卖定时器”;
如果已经存储了之前的“PROCLAIM”消息,则:
丢弃之前的“PROCLAIM”消息;
否则
如果没有设置“拍卖定时器”,则设置“拍卖定时器”
如果已经存储了之前的“PROCLAIM”消息,
如果消息的发送者具有更高的等级则
丢弃之前所接收的“PROCLAIM”消息;
存储消息的拷贝,包括发送者的等级值;
否则丢弃新消息;
否则存储消息的拷贝,包括发送者的等级值。
当“拍卖”定时器过期时
检索所存储的“PROCLAIM”消息;
用“JOIN”消息对“PROCLAIM”消息进行响应;
丢弃所存储的“PROCLAIM”消息。
Claims (9)
1.一种用于在具有多个节点的分布数据处理环境中建立群集的方法,所述方法包括步骤:
从多个节点发送请求群集形成的消息到该环境中的其他节点,所述消息被发送的频率基于发送所述消息的节点等级R′进行选择,其中较高等级节点更频繁地发送所述消息,而较低等级的节点被提供有加入群集的机会而不必使得它们自己充当加入群集的请求者。
2.根据权利要求1所述的方法,其中,将所述消息引导至被标识为组领导的节点。
3.根据权利要求1所述的方法,其中,请求群集形成的所述消息包括PROCLAIM、JOIN、PREPARE TO COMMIT和COMMIT消息。
4.根据权利要求1所述的方法,其中,根据发送所述消息的节点地址来确定所述节点等级。
5.根据权利要求4所述的方法,其中,所述发送所述消息的节点地址是其因特网协议地址。
6.根据权利要求4所述的方法,其中,用于在带有N个节点的环境中将评级为1的等级分配给带有最高地址的节点,而将评级为N的等级分配给带有最低地址的节点,还根据地址顺序将其他节点的等级分配为1和N之间的数字。
7.根据权利要求6所述的方法,其中,通过下面公式确定发送所述消息之间所使用的间隔:
K(F+(1-F)R(1/X)),
其中,K是常数;F是控制较高等级的节点应该发送所述消息的速度的小数;R是1/R′;而X是用于更加迅速地增加所述消息之间的间隔的因数。
8.根据权利要求1所述的方法,其中接收所述消息的节点等待两个或者多个这种消息的达到,并且对带有较高等级的节点进行响应。
9.一种数据处理节点的互连网络,包括:
发送请求群集形成的消息到该互连网络中分布数据处理环境中的其他数据处理节点的多个数据处理节点,所述消息被发送的频率基于发送请求群集形成的消息的数据处理节点等级进行选择,其中较高等级的数据处理节点更频繁地发送所述消息,而较低等级的数据处理节点被提供有加入群集的机会而不必使得它们自己充当加入群集的请求者。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/290,032 US7480281B2 (en) | 2005-11-30 | 2005-11-30 | Method for improving cluster bring-up in a distributed topology liveness system |
US11/290,032 | 2005-11-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1980169A CN1980169A (zh) | 2007-06-13 |
CN1980169B true CN1980169B (zh) | 2010-12-01 |
Family
ID=38087432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101631266A Expired - Fee Related CN1980169B (zh) | 2005-11-30 | 2006-11-30 | 用于在分布拓扑活性系统中提高群集唤起的方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7480281B2 (zh) |
CN (1) | CN1980169B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100667283B1 (ko) * | 2005-02-01 | 2007-01-12 | 삼성전자주식회사 | 애드혹 망 및 인프라스트럭처 망을 연결하는 게이트웨이,상기 게이트웨이를 이용하는 서비스제공자 등록방법, 및탐색방법. |
ATE525875T1 (de) * | 2008-11-04 | 2011-10-15 | Htc Corp | Verfahren zur verbesserung der aufwärtsstreckenübertragung in einem drahtlosen kommunikationssystem |
WO2010071882A2 (en) * | 2008-12-19 | 2010-06-24 | Watchguard Technologies, Inc. | Cluster architecture for network security processing |
US9207987B2 (en) * | 2010-01-15 | 2015-12-08 | Oracle International Corporation | Dispersion dependency in oracle clusterware |
US20110179173A1 (en) * | 2010-01-15 | 2011-07-21 | Carol Colrain | Conditional dependency in a computing cluster |
US8949425B2 (en) * | 2010-01-15 | 2015-02-03 | Oracle International Corporation | “Local resource” type as a way to automate management of infrastructure resources in oracle clusterware |
US9098334B2 (en) * | 2010-01-15 | 2015-08-04 | Oracle International Corporation | Special values in oracle clusterware resource profiles |
US9069619B2 (en) * | 2010-01-15 | 2015-06-30 | Oracle International Corporation | Self-testable HA framework library infrastructure |
ES2618217T3 (es) * | 2012-03-02 | 2017-06-21 | Lsis Co., Ltd. | Dispositivo de comunicación y procedimiento de comunicación |
US20140006568A1 (en) * | 2012-06-28 | 2014-01-02 | Alcatel-Lucent Canada, Inc. | Prioritization based on ip pool and subnet by dhcp |
US8868784B2 (en) * | 2012-06-28 | 2014-10-21 | Alcatel Lucent | Sticky IP prioritization based on IP pool and subnet by DHCP |
US10523619B2 (en) | 2013-12-20 | 2019-12-31 | Rovio Entertainment Ltd. | Stateless message routing |
EP2887589A1 (en) * | 2013-12-20 | 2015-06-24 | Rovio Entertainment Ltd | Stateless message routing |
US10362452B2 (en) * | 2014-11-26 | 2019-07-23 | Nec Corporation | Mechanism for quick connection in wireless peer to peer networks |
US10892940B2 (en) * | 2017-07-21 | 2021-01-12 | Cisco Technology, Inc. | Scalable statistics and analytics mechanisms in cloud networking |
EP3887949A1 (en) * | 2018-11-27 | 2021-10-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Automatic and dynamic adaptation of grouping in a data processing system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026073A (en) * | 1995-08-07 | 2000-02-15 | British Telecommunications Public Limited Company | Route finding in communications networks |
US6606362B1 (en) * | 1999-06-29 | 2003-08-12 | Nortel Networks Limited | Synchronization in a telecommunications network |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5943014A (en) * | 1996-06-06 | 1999-08-24 | Qualcom Incorporated | Using a signal with increased power for determining the position of a mobile subscriber in a CDMA cellular telephone system |
US6711409B1 (en) * | 1999-12-15 | 2004-03-23 | Bbnt Solutions Llc | Node belonging to multiple clusters in an ad hoc wireless network |
US6493759B1 (en) * | 2000-07-24 | 2002-12-10 | Bbnt Solutions Llc | Cluster head resignation to improve routing in mobile communication systems |
US6941350B1 (en) | 2000-10-19 | 2005-09-06 | International Business Machines Corporation | Method and apparatus for reliably choosing a master network manager during initialization of a network computing system |
US6813631B2 (en) | 2000-12-15 | 2004-11-02 | Honeywell International Inc. | Automatic self configuration of client-supervisory nodes |
EP1368932A1 (en) * | 2001-03-13 | 2003-12-10 | BRITISH TELECOMMUNICATIONS public limited company | Communications network |
US7764617B2 (en) * | 2002-04-29 | 2010-07-27 | Harris Corporation | Mobile ad-hoc network and methods for performing functions therein based upon weighted quality of service metrics |
US7382739B2 (en) | 2003-01-21 | 2008-06-03 | Teknovus, Inc. | Method and apparatus for discovering remote nodes in an ethernet passive optical network |
KR100553920B1 (ko) | 2003-02-13 | 2006-02-24 | 인터내셔널 비지네스 머신즈 코포레이션 | 컴퓨터 클러스터 운영 방법 |
US7142866B2 (en) | 2003-09-09 | 2006-11-28 | Harris Corporation | Load leveling in mobile ad-hoc networks to support end-to-end delay reduction, QoS and energy leveling |
US20050071473A1 (en) | 2003-09-30 | 2005-03-31 | Rosenstock Harold N. | Method and apparatus for limiting standby subnet managers |
US20070291772A1 (en) * | 2004-09-29 | 2007-12-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Installing A New View Of A Cluster Membership |
US7894372B2 (en) * | 2005-05-31 | 2011-02-22 | Iac Search & Media, Inc. | Topology-centric resource management for large scale service clusters |
-
2005
- 2005-11-30 US US11/290,032 patent/US7480281B2/en not_active Expired - Fee Related
-
2006
- 2006-11-30 CN CN2006101631266A patent/CN1980169B/zh not_active Expired - Fee Related
-
2009
- 2009-01-16 US US12/354,890 patent/US8189461B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026073A (en) * | 1995-08-07 | 2000-02-15 | British Telecommunications Public Limited Company | Route finding in communications networks |
US6606362B1 (en) * | 1999-06-29 | 2003-08-12 | Nortel Networks Limited | Synchronization in a telecommunications network |
Also Published As
Publication number | Publication date |
---|---|
US20070121667A1 (en) | 2007-05-31 |
US7480281B2 (en) | 2009-01-20 |
CN1980169A (zh) | 2007-06-13 |
US8189461B2 (en) | 2012-05-29 |
US20090129397A1 (en) | 2009-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1980169B (zh) | 用于在分布拓扑活性系统中提高群集唤起的方法 | |
CN101133622B (zh) | 划分节点的工作负荷 | |
CN100334866C (zh) | 一种实现网关动态负载分担和备份的方法 | |
CN101577679B (zh) | 实现指定路由器之间组播业务分担的状态管理方法和装置 | |
CN111638957B (zh) | 一种集群共享式公有云负载均衡的实现方法 | |
EP2226969A1 (en) | Broadcast messaging in a peer to peer overlay network | |
US9071612B2 (en) | Service providing system | |
WO2008138255A1 (fr) | Procédé de traitement d'acheminement, processeur d'acheminement et routeur | |
KR20090069312A (ko) | 리소스 공급을 위한 방법, 시스템, 및 에지 서버 | |
CN101202746B (zh) | 节点标识符生成方法及负载均衡方法及装置 | |
KR20090114917A (ko) | 피투피 네트워크 시스템 및 그의 지역 기반 운용 방법 | |
WO2018121201A1 (zh) | 分布式集群服务结构及节点协同方法和装置、终端及介质 | |
CN102035861A (zh) | 一种单跳分布式哈希表叠加网络的负载均衡方法和系统 | |
US20080062958A1 (en) | Method And Protocol For Managing Devices In A Personal Area Network | |
CN101052006B (zh) | 报文上送的方法及实现该方法的接口板及路由器 | |
CN101237400A (zh) | 网络附加存储服务的迁移方法及网络附加存储节点 | |
CN107925684A (zh) | 主从型网络的ip地址分配方法、装置及系统 | |
JP2007524325A (ja) | 投票を活用した無停止サービスシステム及びそのシステムにおける情報更新及び提供方法 | |
EP2472416B1 (en) | Data query system and constructing method thereof and corresponding data query method | |
CN111367658B (zh) | 一种直播服务系统及进程管理方法 | |
Famaey et al. | A latency-aware algorithm for dynamic service placement in large-scale overlays | |
US6012092A (en) | Method and system for managing multi-user data flows in environments having minimal bandwidth and computational resources | |
WO2015029321A1 (ja) | 通信システム、制御装置、通信方法および記憶媒体 | |
JP2743890B2 (ja) | ネットワーク管理方法 | |
CN1272723C (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: 20101201 Termination date: 20181130 |
|
CF01 | Termination of patent right due to non-payment of annual fee |