CN107079045A - 使用集群的节点识别 - Google Patents

使用集群的节点识别 Download PDF

Info

Publication number
CN107079045A
CN107079045A CN201580055904.7A CN201580055904A CN107079045A CN 107079045 A CN107079045 A CN 107079045A CN 201580055904 A CN201580055904 A CN 201580055904A CN 107079045 A CN107079045 A CN 107079045A
Authority
CN
China
Prior art keywords
node
cluster
identifier
engine
message
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
Application number
CN201580055904.7A
Other languages
English (en)
Inventor
B.霍伊普勒
D.马尔希
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107079045A publication Critical patent/CN107079045A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1068Discovery involving direct consultation or announcement among potential requesting and potential source peers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1072Discovery involving ranked list compilation of candidate peers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

在初始化阶段期间,网络的一些节点形成集群。集群中的节点与领导节点共享信息,所述领导节点知晓所述集群中的所述节点中的每个节点知道的全部节点。在增长阶段期间,随机地激活或者停用集群。所述被激活的集群的节点向随机选择的已知节点传送消息,要求所述节点与所述集群合并。被停用的集群的节点基于所接收的消息确定要加入哪个被激活的集群。在所述增长阶段结束之后,剩余的集群可以合并以形成单一的集群,并且所述单一的集群的所述领导知晓的节点的所述列表可以作为所述网络上的全部节点的列表被共享。

Description

使用集群的节点识别
背景技术
分布式网络可以包括多种网络资源,诸如大量客户端、服务器、打印机等。这些网络资源中的每个在分布式网络中可以由节点代表。因为分布式网络通常缺少中央权威结构,并且节点可能频繁地进入和离开网络,所以识别在给定的时间在网络上可用的全部网络资源可能是困难的。确定在特定的时间在网络上可用的节点被称为资源发现。类似地,在每个节点处识别紧密连接到它的全部节点(例如,相邻节点的邻居)可能也是困难的。每个节点了解被它的相邻节点知晓的全部节点身份被称为本地泛洪。
发明内容
在本地泛洪或者资源发现算法期间,将网络的节点分成集群。初始地,每个节点可以形成其自己的集群。集群中的节点与领导节点共享信息,所述领导节点知晓该集群中的节点中的每个节点知道的全部节点。在一个或多个增长阶段期间,随机地激活或者停用集群。所述被激活的集群的节点向随机地选择的它们的集群已知的节点传送消息,要求被联系的节点的整个集群与启动所述联系的集群合并。被停用的集群基于所接收的消息确定要加入哪个被激活的集群。如果在增长阶段结束之后全部集群已合并为单一的集群,则所述资源发现问题被解决,因为所述单一的集群的领导知晓的节点的列表然后可以作为所述网络上的全部节点的列表被共享。
在一种实施方案中,由计算设备确定多个集群中的第一集群中的节点的数量大于第一门限。每个集群包括一个或多个节点,每个节点被指派给一个集群,每个节点包括识别该节点的节点标识符,每个节点包括识别该节点被指派给的集群的集群标识符,并且每个节点包括该节点知道的节点的列表。响应于确定所述第一集群中的节点的数量大于所述第一门限,由所述计算设备激活或者停用所述第一集群。在所述第一集群被激活时:由所述计算设备命令所述第一集群中的每个节点从该节点知道的节点的列表中选择第一节点;以及,由所述计算设备命令所述第一集群中的每个节点向所选择的第一节点发送消息。在所述计算设备处接收对于识别所述多个节点中的节点的请求。响应于所述请求,由所述计算设备提供与所述第一集群的节点相关联的节点的列表。
在一种实施方案中,由计算设备激活或者停用第一集群。每个集群包括一个或多个节点,每个节点被指派给一个集群,每个节点包括识别该节点的节点标识符,每个节点包括识别该节点被指派给的集群的集群标识符,并且每个节点包括该节点知道的节点的列表。在所述第一集群被激活时:由所述计算设备命令所述第一集群中的每个节点从该节点知道的节点的列表中选择第一节点;以及,由所述计算设备命令所述第一集群中的每个节点向所选择的第一节点发送消息。所述消息包括与所述第一集群相关联的集群标识符。在所述第一集群被停用时:由所述计算设备从所述第一集群中的所述节点中的一个或多个节点接收集群标识符;由所述计算设备从所接收的集群标识符中选择集群标识符;以及,由所述计算设备命令所述第一集群中的每个节点加入由所选择的集群标识符识别的集群。
提供本概要以便以简化形式介绍下面在详细说明中进一步描述的概念的选择。本概要不旨在识别所要求保护的主题的关键特征或者必要特征,其也不旨在被用于限制所要求保护的主题的范围。
附图说明
在结合附图阅读时,前述概要以及下面对说明性实施例的详细说明被更好地理解。出于对实施例进行图示的目的,附图中示出了实施例的示例构造;然而,实施例不限于所公开的具体的方法和手段。在附图中。
图1是对用于在分布式网络中发现节点的示例性环境的图示。
图2是对两个示例性集群的图示。
图3是对示例性发现引擎的图示。
图4是对用于执行初始化阶段的方法的操作流程的图示。
图5是对用于执行增长阶段的方法的操作流程的图示。
图6是对用于响应于请求而确定节点标识符的方法的操作流程的图示。
图7示出了可以在其中实施示例实施例和方面的示例性计算环境。
具体实施方式
图1是对用于在分布式网络120中发现节点115的示例性环境100的图示。环境100可以包括通过网络120进行通信的多个节点115(即,节点115a-g)和客户端设备110。网络120可以是多种网络类型,其包括公共交换电话网(PSTN)、蜂窝电话网和分组交换网(例如,互联网)。尽管在图1中示出了仅一个客户端设备110和七个节点115,但对于可以被支持的客户端设备110和节点115的数量不存在任何限制。
节点115可以代表在网络120上对于客户端设备110可用的网络资源。网络资源可以包括但不限于硬件设备,诸如打印机、扫描仪、存储设备和诸如关于图7所图示的计算设备700这样的计算设备。网络资源还可以包括例如软件应用和服务以及虚拟设备。
每个节点115可以包括节点标识符。取决于实施方案,节点标识符可以是节点115在网络120上的地址,诸如IP地址。可以使用其它类型的标识符。每个节点标识符可以与一个节点115相关联,并且可以被客户端设备110或者另一个节点115使用来与节点115连接在一起。
客户端设备110可以利用由节点115提供的一个或多个服务。例如,客户端设备110可以查看由节点115b提供的文件,以及在与节点115a相关联的打印机上打印文件。客户端设备110可以使用计算设备700被实施。尽管在图1中被单独地图示,但在一些实施方案中,客户端设备110自身可以是网络120的节点115。
如上面描述的,由于网络120的分布式性质,客户端设备110、以及节点115中的一些或全部可能不知道与网络120相关联的全部节点115。然而,客户端设备110的用户可能想要知晓是网络120的部分的全部节点115(即,网络发现)或者经由短路径连接到其的(例如直接连接到客户端设备110的邻居的)那些节点115(即,本地泛洪)。相应地,节点115中的一些或全部可以包括发现引擎130和节点列表125。出于图示的目的,仅作为节点115a的部分示出了发现引擎130和节点列表125。
与节点115相关联的节点列表125可以是节点115知道的网络120的节点115的节点标识符中的全部的列表。因此,如果节点115a知晓节点115b和节点115bc存在,但不知晓节点115d-115g存在,则节点列表125可以包括节点115b和115c的标识符,但可能不包括节点115d-g的标识符。
发现引擎130可以为每个节点115维护节点列表125。取决于实施方案,发现引擎130可以使用散播(gossip)算法增大节点115的节点列表125。在散播算法中,发现引擎130可以从节点列表125中随机地选择节点标识符。发现引擎130可以生成包括与节点115相关联的节点列表125的消息118,并且可以向由所选择的节点标识符识别的节点115发送消息118。接收消息118的所选择的节点115可以基于消息118的节点列表125更新其自身的节点列表125,并且可以用包括其自身的节点列表125的新消息118作出响应。
例如,节点115a可以具有包括节点115b、115c和115d的标识符的节点列表125。节点115b可以具有包括节点115a、115d和115e的标识符的节点列表125。在交换消息118之后,节点115a和115b两者可以具有包括节点115a、115b、115c、115d和115e的标识符的节点列表125。
在客户端设备110想要了解在网络120中可用的节点115时,客户端设备110可以向在客户端设备110知道的节点115中的任一个上执行的发现引擎130发送请求140。发现引擎130可以响应于该请求而提供节点列表125。客户端设备110可以使用所接收的节点列表125来确定哪些节点115是可用的,以及哪些节点115是直接连接到客户端设备110的。
为改进上面描述的散播算法的效率,节点115中的每个的发现引擎130可以将节点115组织成一个或多个集群。集群可以是一个或多个节点115的分组,其中,集群中的一个节点115被指定为领导,并且集群中的任何其它节点115被指定为属下。取决于实施方案,集群中的每个属下节点115可以与领导节点115共享它的节点列表125。领导节点115继而可以组合所接收的节点列表125,并且与属下节点115共享经组合的节点列表125。因此,集群中的每个节点115可以具有相同的节点列表125。通过使用集群,在实施方案中,发现引擎130可以在次中确定网络120中的全部节点115,其中,n是网络120中的节点115的数量。
领导节点115可以命令属下节点115向一个或多个节点115发送一个或多个消息118,如上面描述的那样。消息118可以包括该节点或者集群的节点列表125,并且还可以邀请接收节点(或者它们的关联的集群)加入正在发送消息的节点是其部分的集群。另外,领导节点可以命令属下节点解散(即,离开该集群),以便形成一个或多个更小的集群,或者与另一个集群合并。关于图3进一步描述了发现引擎130关于集群的操作。
图2是对两个示例集群210a和210b的图示。集群210a包括节点115a、115b和115c。集群210b包括节点115d、115g、115e和115f。在集群210a中,节点115c是领导节点,并且节点115a和115b是属下节点。在集群210b中,节点115e是领导节点,并且节点115d、115g和115f是属下节点。
图3是对示例发现引擎130的图示。发现引擎130可以包括一个或多个构件,所述一个或多个构件包括节点标识符301、节点列表125、集群标识符305、初始化引擎310、增长引擎320和合并引擎330。更多或者更少的构件可以被支持。发现引擎130的构件中的一些或者全部可以由诸如是图7的计算设备700这样的一个或多个计算设备实施。
节点标识符301可以识别发现引擎130是其部分的特定的节点115。节点标识符301可以是IP地址或者其它网络地址。节点列表125可以是发现引擎130知道的节点标识符301的列表。
集群标识符305可以识别与发现引擎130相关联的节点115是其部分的集群。在一些实施方案中,集群标识符305可以与集群的领导节点的节点标识符301相同。因此,对于集群210a,节点115a、115b和115中的每个节点的集群标识符305是节点115c的标识符,因为节点115c是集群210a的领导节点。与节点标识符301相同的集群标识符305可以指示特定的节点是集群的领导。
集群标识符305可以被设置为缺省值,以指示该节点不是集群的部分。缺省值例如可以是空(null)或者是有效的节点标识符301的范围之外的值。可以使用其它的缺省值。
初始化引擎310可以实施针对发现引擎130的初始化阶段。在初始化阶段期间,可以将网络120的节点组织成一个或多个集群。初始化阶段可以是可选的阶段,并且尽管不是严格必需的,但可以允许随后的阶段更快速和/或高效地操作。
在一些实施方案中,节点的初始化引擎310可以通过将集群标识符305设置为缺省值开始初始化阶段。缺省值可以指示节点还不是集群的部分。
初始化引擎310然后可以随机地确定是否要将自身声明为领导节点。例如,初始化引擎310可以以基于网络120中的节点的估计的或者可能的数量的概率作出所述确定。例如,节点成为集群领导的概率可以是,其中,C是由用户或者管理员选择的常数,并且n是网络120中的节点的数量。
如果节点是集群的部分(或者自身被声明为集群),则初始化引擎310可以命令集群中的全部属下节点从它们的节点列表125中随机地选择节点。在节点是集群中的仅有的节点的情况下,其可以从其自己的节点列表125中随机地选择节点。属下节点可以每个都向它们的所选择的节点的发送消息118。消息118可以包括集群标识符301,并且在一些实施方案中可以包括节点列表125。
如果节点不是集群的部分(即,未被集群化),则初始化引擎310可以命令该节点等待一个或多个消息118从其它节点中的一个节点被接收。如果该节点接收到消息,则初始化引擎310可以通过将发现引擎130的集群标识符305设置为所接收的集群标识符305来加入由与所接收的消息相关联的集群标识符305识别的集群。如果没有接收到消息,则该节点可以保持是未被集群化的。
初始化引擎310可以将上面的操作重复某个数量的迭代。例如,在一些实施方案中,初始化引擎310可以将初始化阶段的操作重复个迭代。
增长引擎320可以实施针对发现引擎130的增长阶段。在增长阶段期间,可以增大网络120的集群大小。取决于实施方案,在增长阶段的每个迭代之后,集群中的一些或者全部中的节点的数量可以被增大到某次幂或者被平方。
初始地,变量s可以由增长引擎320基于网络中的节点的数量n或者当前的集群大小设置。例如,s的值可以初始地被设置为C(log(n)),其中,C是由用户或者管理员选择的足够大的常数。
增长引擎320然后可以确定是否要解散与节点相关联的集群。在一些实施方案中,增长引擎320可以通过首先确定与集群相关联的属下节点的数量来确定是否要解散集群。例如,领导节点可以通过向每个属下节点发送消息118和对被接收的响应的数量进行计数来确定属下节点的数量。如果属下节点的总数小于s,则增长引擎320可以解散集群。增长引擎320可以通过领导节点向属下节点中的每个属下节点发送具有用于将它们的集群标识符305设置为缺省值的命令的消息来解散集群。在将集群标识符305设置为缺省值之后,节点将不再与任何集群相关联。
如果集群未被解散,则增长引擎320可以进入循环,所述循环可以重复,直到s的值超过门限为止。在循环内,增长引擎320确定与增长引擎320相关联的集群是否可以被调整大小。在一些实施方案中,如果集群中的属下的数量超过门限,则集群可以被调整大小。门限可以是2s。可以使用其它的门限。可以由领导节点如上面描述的那样确定集群中的属下节点的数量。如果集群超过门限,则增长引擎320可以将集群划分成两个或更多个例如具有大约2s的大小的近似相等大小的集群。
取决于实施方案,增长引擎320可以通过领导节点从属下节点中选择两个或更多个节点标识符301来对集群进行划分。然后可以将所选择的节点标识符在消息118中提供给属下节点。属下节点可以每个选择不大于它们自己的节点标识符301的最大的所接收的节点标识符301。每个节点可以将其集群标识符305设置为等于所选择的节点标识符301。
增长引擎320可以确定是激活还是停用与发现引擎130被与之相关联的节点相关联的集群。取决于实施方案,增长引擎320可以确定基于s的值随机地激活或者停用集群。例如,增长引擎320可以以概率激活或者停用集群。可以使用其它的方法。一般地,与被激活的集群相关联的节点可以向所选择的节点发送消息,而与被停用的集群相关联的节点可以等待从其它节点接收消息。
对于活跃的集群,领导节点的增长引擎320在第一个迭代中可以命令集群中的属下节点从它们的节点列表125中随机地选择节点,并且向所选择的节点发送具有对于加入该集群的请求的消息。消息可以包括集群标识符305和节点列表125。属下节点可以在响应中接收消息,并且消息可以包括节点列表125。
另外,在第二个迭代中,增长引擎320可以命令集群中的属下节点从它们的节点列表125中随机地选择还不是与在第一个迭代中被发送消息的节点相关联的集群的部分的节点,并且向所选择的节点发送具有对于加入与增长引擎320相关联的集群的请求的消息。可以根据在消息中接收的节点列表125确定是集群的部分的节点。
对于非活跃的集群,领导节点的增长引擎320在第一个迭代中可以命令集群中的属下节点与由被属下节点中的一个在消息中接收的集群标识符305识别的集群合并。可以由增长引擎320根据被非活跃的集群的属下节点接收的消息中的一个消息选择集群标识符305。取决于实施方案,属下节点可以通过将它的集群标识符改变为与目标集群相关联的集群标识符来与集群合并或者加入集群。与上面描述的活跃的集群类似,非活跃的集群可以在两个迭代中接收消息和与所选择的集群合并。
在两个迭代之后,增长引擎320可以将s的值设置为s1.5或者s的某个更小的多项式,并且可以返回到段落[0039]中描述的循环的开始。增长引擎320可以继续如上面描述的那样增大集群,直到s的值大于门限值为止。门限值可以是基于网络120中的节点的估计数量的。例如,门限可以是。可以使用其它的门限值。
合并引擎330可以实施针对发现引擎130的合并阶段。在合并阶段期间,可以合并在增长阶段期间增大的集群以创建单一的集群。取决于实施方案,合并引擎330可以通过命令全部属下节点向从它们的节点列表125中随机地选择的节点发送消息来开始合并阶段。合并引擎330还可以进一步命令属下节点与在被该属下节点接收的任何消息中识别的集群合并或者加入该集群。属下节点可以例如与具有最小的所接收的集群标识符305的集群合并。
合并引擎330可以将合并阶段重复两个迭代。在两个迭代已完成之后,网络120中可以仅保留一个集群。
取决于实施方案,甚至在集群已被合并之后,网络120中可能保留从未被添加到集群并且因此保持未被集群化的少量节点。为计及这样的节点,合并引擎330可以进一步将任何未被集群化的节点合并到集群中。如果与合并引擎330相关联的节点是未被集群化的(即,集群标识符305是缺省值),则合并引擎330可以从任何从节点列表125中选择的节点115请求集群标识符305。合并引擎330例如可以使用消息118请求集群标识符305。合并引擎330可以继续请求集群标识符,直到集群标识符被接收(并且节点加入关联的集群)或者在某个数量的消息已被发送之后为止。
在上面描述的各种阶段已被执行之后,一个剩余的集群中的每个节点115可以具有识别在网络上可用的全部节点的节点列表。相应地,发现引擎130可以响应于从客户端设备110接收的请求140而提供节点列表125。取决于实施方案,发现引擎130可以每当请求140被接收时执行初始化阶段、增长阶段和合并阶段中的一个或多个阶段,以确保进行请求的客户端设备110接收到最新的可用节点的列表。替换地,发现引擎130可以例如定期地(诸如每小时、每24小时等地)执行初始化阶段、增长阶段和合并阶段中的一个或多个阶段。
图4是对用于执行初始化阶段的方法400的操作流程的图示。方法400可以被与网络120相关联的多个节点115中的每个节点的发现引擎130实施。
在401处,将集群标识符设置为缺省值。节点的集群标识符305可以被发现引擎130的初始化引擎310设置。缺省值例如可以是空或者某个其它的缺省值。
在403处,作出关于是否要将与节点相关联的集群标识符设置为与节点标识符相同的随机的确定。将集群标识符设置为节点标识符可以将节点建立为集群领导。在初始化阶段期间,将集群标识符设置为节点标识符可以使该节点成为其自己的单例集群。所述确定可以被发现引擎130的初始化引擎310作出,并且可以基于网络120中的节点的数量被作出。如果集群标识符305被设置为节点标识符301,则节点是被集群化的节点,并且方法400可以在405处继续。否则,节点是未被集群化的,并且方法400可以在409处继续。
在405处,命令与集群相关联的全部节点选择节点。所述命令可以由与集群的领导节点相关联的发现引擎130的初始化引擎310提供。每个节点可以具有识别网络120中的该节点知道的全部节点的节点列表125,并且所选择的节点可以从节点列表125中被随机地选择。如可以领会到的,初始地,领导节点可以是集群中的仅有的节点,并且因此可以从其自己的节点列表中选择节点。
在407处,命令与集群相关联的节点向所选择的节点发送消息。所述命令可以由与集群的领导节点相关联的发现引擎130的初始化引擎310提供。所述消息可以包括集群的集群标识符。与对于405类似地,如果领导节点是集群中的仅有的节点,则领导节点可以发送消息。在发送消息之后,方法400可以返回到405以选择另一个要联系的节点。
在409处,可以接收一个或多个消息。所述消息可以被发现引擎130的初始化引擎310接收。每个所接收的消息可以包括集群标识符305。
在411处,将集群标识符设置为与所接收的消息相关联的集群标识符。集群标识符305可以被节点的发现引擎130的初始化引擎310设置。在多个消息被接收的情况下,初始化引擎310可以将集群标识符设置为最大的从消息中接收的集群标识符。替换地,可以随机地选择集群标识符305。在设置集群标识符之后,方法400可以在405处继续,因为关联的节点现在是被集群化的。在没有消息被节点接收的情况下,节点可以保持是未被集群化的,并且方法400可以返回到409。
取决于实施方案,可以将由操作405、407、409和411代表的循环重复预定的次数。例如,可以将操作重复次,其中,n是网络120中的节点的数量。
图5是对用于执行增长阶段的方法500的操作流程的图示。方法500可以被与网络120相关联的多个节点115中的每个领导节点的发现引擎130实施。
在501处,作出关于集群中的节点的数量是否大于第一门限的确定。所述确定可以由与集群的领导节点相关联的发现引擎130的增长引擎320作出。第一门限可以是最小集群大小,并且可以是基于值s的。值s可以由用户或者管理员选择,和/或可以是基于网络120中的节点115的总数的。如果集群中的节点115的数量超过第一门限,则方法500可以在505处继续。否则,方法500可以在503处继续。
在503处,解散集群。集群可以通过领导节点(以及全部属下节点)将其集群标识符305设置为缺省值被发现引擎130的增长引擎320解散。被解散的集群的任何节点然后可以等待从与活跃的集群相关联的节点接收消息118。
在505处,作出关于集群中的节点的数量是否大于第二门限的确定。所述确定可以由与集群的领导节点相关联的发现引擎130的增长引擎320作出。第二门限可以是最大集群大小,并且可以类似地是基于值s的。例如,第二门限可以是2s。如果集群中的节点的数量超过第二门限,则方法500可以在507处继续。否则,方法500可以在509处继续。
在507处,集群被调整大小。集群可以通过领导节点将集群的属下节点划分成两个或更多个新的集群被发现引擎130的增长引擎320调整大小。取决于实施方案,领导节点的增长引擎320可以将属下节点选择为是新的集群的领导节点,并且可以命令所选择的节点和集群中的节点的某个子集将其集群标识符305设置为所选择的节点。
在509处,确定是激活还是停用集群。所述确定可以由与集群的领导节点相关联的发现引擎130的增长引擎320作出。取决于实施方案,可以由增长引擎320例如基于值s随机地作出所述确定,诸如以概率激活它。如果集群被激活,则方法500可以在511处主动地寻求要与之合并的其它节点和集群。如果集群被停用,则方法500可以在515处被动地等待被邀请加入另一个集群。
在511处,命令与集群相关联的全部节点选择节点。所述命令可以由与集群的领导节点相关联的发现引擎130的增长引擎320提供。每个节点可以从其节点列表125中选择节点。
在513处,命令与集群相关联的节点向所选择的节点发送消息。所述命令可以由与集群的领导节点相关联的发现引擎130的增长引擎320提供。在发送消息118之后,方法500可以在519处继续。
取决于实施方案,方法500可以将操作511和513重复两个或更多个迭代。在第一个迭代之后,可以响应于被发送的消息而接收消息。每个所接收的消息可以识别与发送消息的节点相关联的集群。对于随后的迭代,可以仅选择不是在所接收的消息中被识别的集群的部分的节点。
在515处,选择所接收的消息的集群标识符。集群标识符305可以由与集群的领导节点相关联的发现引擎130的增长引擎320选择。可以从被集群的属下节点接收的全部消息中选择集群标识符305。取决于实施方案,领导节点可以选择具有最小的集群标识符305的节点。
在517处,命令每个节点将其集群标识符设置为所选择的集群标识符。可以由集群的领导节点的发现引擎130的增长引擎320命令所述节点。方法500然后可以在519处继续。
在519处,更新s的值。值s可以由发现引擎310的增长引擎320通过将其设置为s1.5并且因此基本上对s的之前的值进行平方而被更新。如上面描述的,可以在确定505处的第二门限和是激活还是停用集群时使用s的值。
在521处,确定s的值是否超过门限。所述确定可以由发现引擎130的增长引擎320作出。门限可以是。可以使用其它的门限。如果s的值不超过门限,则方法500可以返回到505。否则,方法500可以在523处开始合并阶段,其中,可以将集群中的一个或多个集群组合成单一的集群。
图6是对用于响应于请求而确定节点标识符的方法600的操作流程的图示。方法600可以被与网络120相关联的发现引擎130实施。
在601处,接收请求。该请求可以被与网络120相关联的多个节点115中的节点的发现引擎130接收。该请求可以是请求140,并且可以是对于识别位于网络120上的节点的请求。响应于该请求,发现引擎130可以开始确定在网络120上可用的节点。
在603处,初始化阶段可以开始。初始化阶段可以由发现引擎130的初始化引擎310实施。在初始化阶段期间,可以将节点115中的一些或全部指派给多个集群中的集群。取决于实施方案,节点可以通过将其集群标识符305设置为集群的领导节点的节点标识符301而被指派给集群。
在605处,增长阶段可以开始。增长阶段可以由发现引擎130的增长引擎320实施。在增长阶段期间,增长引擎320可以随机地激活或者停用多个集群中的每个集群。对于每个被激活的集群,被激活的集群的领导节点的增长引擎320可以命令属下节点中的全部向不是该集群的部分的随机选择的节点发送消息。该消息可以是对于加入该集群的请求,并且可以包括该集群的集群标识符305。
对于每个被停用的集群,被停用的集群的领导节点的增长引擎320可以命令属下节点中的全部加入由所接收的消息的集群标识符305识别的集群。每个属下节点可以通过将它们的集群标识符设置为所接收的消息的集群标识符而加入集群。在多个消息被接收的情况下,增长引擎320可以随机地选择集群标识符305,或者可以选择最高或者最低的集群标识符。
在607处,合并阶段可以开始。合并阶段可以由发现引擎130的合并引擎330实施。在合并阶段期间,集群中的全部可以合并成单一的集群。另外,可以将任何还未加入集群的节点并入集群。
在609处,响应于请求而提供节点列表。节点列表125可以由集群的领导节点的发现引擎130提供。取决于实施方案,发现引擎130可以通过领导节点请求集群中的属下节点中的每个属下节点的节点列表125而提供节点列表125。领导节点可以基于由属下节点中的每个属下节点提供的节点列表中所识别的节点更新节点列表125。
图7示出了可以在其中实施示例实施例和方面的示例性计算环境。该计算设备环境是合适的计算环境的仅一个示例,并且不旨在对用途或者功能性的范围建议任何限制。
可以使用许多其它的通用或者专用计算设备环境或者配置。可能适于使用的众所周知的计算设备、环境和/或配置的示例包括但不限于个人计算机、服务器计算机、手持型或者膝上型设备、多处理器系统、基于微处理器的系统、网络个人计算机(PC)、微型计算机、大型计算机、嵌入式系统、包括以上系统或者设备中的任一个的分布式计算环境等。
可以使用诸如是程序模块这样的被计算机执行的计算机可执行指令。一般地,程序模块包括执行特定的任务或者实施特定的抽象数据类型的例程、程序、对象、构件、数据结构等。可以使用分布式计算环境,其中,任务被通过通信网络或者其它数据传输媒介链接的远程处理设备执行。在分布式计算环境中,程序模块和其它数据可以位于包括存储器存储设备的本地和远程计算机存储介质两者中。
参考图7,用于实施本文中描述的方面的示例性系统包括诸如是计算设备700这样的计算设备。在其最基本的配置中,计算设备700典型地包括至少一个处理单元702和存储器704。取决于计算设备的精确配置和类型,存储器704可以是易失性的(诸如是随机存取存储器(RAM))、非易失性的(诸如是只读存储器(ROM)、闪存等)或者这两者的某种组合。在图7中通过虚线706图示了该最基本的配置。
计算设备700可以具有附加的特征/功能性。例如,计算设备700可以包括附加的存储装置(可移除的和/或非可移除的),所述附加的存储装置包括但不限于磁盘或者光盘或者磁带。在图7中通过可移除存储装置708和非可移除存储装置710图示了这样的附加的存储装置。
计算设备700典型地包括多种计算机可读介质。计算机可读介质可以是任何可以被设备700访问的可用介质,并且包括易失性和非易失性介质、可移除和非可移除介质两者。
计算机存储介质包括用任何用于存储诸如是计算机可读指令、数据结构、程序模块或者其它数据这样的信息的方法或者技术实施的易失性和非易失性以及可移除和非可移除介质。存储器704、可移除存储装置708和非可移除存储装置710全部是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、电可擦除程序只读存储器(EEPROM)、闪存或者其它存储器技术、CD-ROM、数字多功能盘(DVD)或者其它光学存储装置、盒式磁带、磁带、磁盘存储装置或者其它磁存储设备、或者可以用于存储期望的信息并且可以被计算设备500访问的任何其它的媒介。任何这样的计算机存储介质可以是计算设备700的部分。
计算设备700可以包含允许该设备与其它设备通信的通信连接712。计算设备700还可以具有诸如是键盘、鼠标、笔、语音输入设备、触摸输入设备等这样的输入设备714。还可以包括诸如是显示器、扬声器、打印机等这样的输出设备716。全部这些设备是本领域中众所周知的,并且不需要在这里被详尽讨论。
在实施方案中,由计算设备确定多个集群中的第一集群中的节点的数量大于第一门限。每个集群包括一个或多个节点,每个节点被指派给一个集群,每个节点包括识别该节点的节点标识符,每个节点包括识别该节点被指派给的集群的集群标识符,并且每个节点包括该节点知道的节点的列表。响应于确定第一集群中的节点的数量大于第一门限:(a)由计算设备激活或者停用第一集群,并且在第一集群被激活时,(b):由计算设备命令第一集群中的每个节点从该节点知道的节点的列表中选择第一节点;以及,由计算设备命令第一集群中的每个节点向所选择的第一节点发送消息。在计算设备处接收对于识别多个节点中的节点的请求。响应于该请求,由计算设备提供与第一集群的节点相关联的节点的列表。
实施方案可以包括以下特征中的一些或全部。可以确定第一集群中的节点的数量小于第一门限,并且响应于确定第一集群中的节点的数量小于第一门限,可以解散第一集群。激活或者停用第一集群可以包括随机地激活或者停用第一集群。步骤(b)可以进一步包括:命令第一集群中的每个节点从该节点知道的节点的列表中选择第二节点,其中,和第一节点相比,第二节点是与不同集群相关联的;以及,命令第一集群中的每个节点向所选择的第二节点发送消息。所述步骤可以进一步包括(c)在第一集群被停用时:从第一集群中的节点中的一个或多个节点接收集群标识符;从所接收的集群标识符中选择集群标识符;以及,命令第一集群中的每个节点加入由所选择的集群标识符识别的集群。可以重复步骤(a)、(b)和(c)。可以确定与第一集群相关联的节点的数量超过第二门限;并且响应于该确定,可以减少第一集群中的节点的数量。每个节点可以是与网络资源相关联的。可以使多个集群中的一个或多个集群与第一集群合并。
在实施方案中,(a)由计算设备激活或者停用第一集群。每个集群包括一个或多个节点,每个节点被指派给一个集群,每个节点包括识别该节点的节点标识符,每个节点包括识别该节点被指派给的集群的集群标识符,并且每个节点包括该节点知道的节点的列表。在第一集群被激活时(b):由计算设备命令第一集群中的每个节点从该节点知道的节点的列表中选择第一节点;以及,由计算设备命令第一集群中的每个节点向所选择的第一节点发送消息。所述消息包括与第一集群相关联的集群标识符。在第一集群被停用时(c):由计算设备从第一集群中的节点中的一个或多个节点接收集群标识符;由计算设备从所接收的集群标识符中选择集群标识符;以及,由计算设备命令第一集群中的每个节点加入由所选择的集群标识符识别的集群。
实施方案可以包括以下特征中的一些或全部特征。可以重复步骤(a)、(b)和(c)。步骤(b)可以进一步包括:命令第一集群中的每个节点从该节点知道的节点的列表中选择第二节点,其中,与第一节点相比,第二节点是与不同的集群相关联的;以及,命令第一集群中的每个节点向所选择的第二节点发送消息。可以使多个集群中的一个或多个集群与第一集群合并。节点可以包括网络资源。可以接收对于识别多个节点中的节点的请求;并且响应于该请求,可以提供与第一集群的节点相关联的节点的列表。
在实施方案中,一种系统可以包括至少一个计算设备、多个节点和发现引擎。每个节点可以包括识别该节点的节点标识符,并且每个节点可以包括该节点知道的多个节点中的节点的列表。发现引擎可以被适配成:在初始化阶段中,将多个节点中的一个或多个节点指派给多个集群中的集群,其中,每个集群包括至少一个节点,并且每个节点包括识别该节点被指派给的集群的集群标识符;以及,在增长阶段中,通过以下操作使集群中的一个或多个集群增长:随机地激活或者停用多个集群中的每个集群;对于每个被激活的集群,命令被激活的集群的每个节点向从与被激活的集群的节点相关联的节点的列表中随机地选择的节点发送消息,其中,该消息包括与被激活的集群的节点相关联的集群标识符;对于每个被停用的集群,命令被停用的集群的每个节点加入由来自所接收的消息的集群标识符识别的集群。
实施方案可以包括以下特征中的一些或全部。发现引擎可以进一步被适配成:接收对于识别多个节点中的节点的请求;以及,响应于该请求,提供与集群的节点相关联的节点的列表。被适配成将多个节点中的一个或多个节点指派给多个集群中的集群的发现引擎可以包括被适配成执行以下操作的发现引擎:对于多个节点中的每个节点:将该节点的集群标识符设置为缺省值;随机地确定是否要将集群标识符设置为等于与该节点相关联的节点标识符;以及,基于该确定将集群标识符设置为等于与该节点相关联的节点标识符。发现引擎可以进一步被适配成:在合并阶段中,合并多个集群中的一个或多个集群。所述节点可以包括网络资源。
应当理解,本文中描述的各种技术可以结合硬件构件或者软件构件或者在适当的情况下利用这两者的组合被实施。可以被使用的说明性类型的硬件构件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。当前所公开的主题的方法和装置或者其特定的方面或者部分可以采用体现在有形的介质中的程序代码(即,指令)的形式,所述有形的介质诸如是软盘、CD-ROM、硬盘驱动器或者任何其它的机器可读存储媒介,其中,在程序代码被加载到诸如是计算机这样的机器中并且被该机器执行时,该机器成为用于实践当前所公开的主题的装置。
尽管示例性实施方案可能提到在一个或多个独立的计算机系统的上下文中使用当前所公开的主题的方面,但本主题不被如此限制,而相反可以结合诸如是网络或者分布式计算环境这样的任何计算环境被实施。仍然进一步地,当前所公开的主题的方面可以用或者跨多个处理芯片或者设备被实施,并且存储装置可以类似地跨多个设备被实现。这样的设备例如可以包括个人计算机、网络服务器和手持型设备。
尽管已经用专用于结构特征和/或方法动作的语言描述了本主题,但应当理解,所附权利要求中定义的主题不必限于上面描述的具体的特征或者动作。相反,作为实施权利要求的示例形式公开了上面描述的具体的特征和动作。

Claims (14)

1.一种用于在使用节点集群的分散化和分布式网络中的资源发现的方法,包括:
由计算设备确定多个集群中的第一集群中的节点的数量大于第一门限,其中,每个集群包括多个节点中的一个或多个节点,每个节点被指派给一个集群,每个节点包括识别该节点的节点标识符,每个节点包括识别该节点被指派给的集群的集群标识符,并且每个节点包括所述多个节点中的该节点知道的节点的列表;
响应于确定所述第一集群中的节点的所述数量大于所述第一门限:
(a)由所述计算设备激活或者停用所述第一集群;以及
(b)在所述第一集群被激活时:
由所述计算设备命令所述第一集群中的每个节点从该节点知道的节点的所述列表中选择第一节点,其中,所述第一节点不在所述第一集群中;以及
由所述计算设备命令所述第一集群中的每个节点向所选择的第一节点发送消息,其中,所述消息包括所述第一集群的集群标识符;
在所述计算设备处接收对于识别所述多个节点中的节点的请求;以及
响应于所述请求,由所述计算设备提供与所述第一集群的节点相关联的节点的所述列表。
2. 根据权利要求1所述的方法,进一步包括:
确定所述第一集群中的节点的所述数量小于所述第一门限;以及
响应于确定所述第一集群中的节点的所述数量小于所述第一门限,解散所述第一集群。
3.根据权利要求1所述的方法,其中,激活或者停用所述第一集群包括随机地激活或者停用所述第一集群。
4. 根据权利要求1所述的方法,其中(b)进一步包括:
命令所述第一集群中的每个节点从该节点知道的节点的所述列表中选择第二节点,其中,相比于所述第一节点,所述第二节点是与不同的集群相关联的;以及
命令所述第一集群中的每个节点向所选择的第二节点发送消息。
5.根据权利要求1所述的方法,进一步包括:
(c)在所述第一集群被停用时:
从所述第一集群中的所述节点中的一个或多个节点接收集群标识符;
从所接收的集群标识符中选择集群标识符;以及
命令所述第一集群中的每个节点加入由所选择的集群标识符识别的集群。
6.根据权利要求5所述的方法,进一步包括重复(a)、(b)和(c)。
7. 根据权利要求1所述的方法,进一步包括:
确定与所述第一集群相关联的节点的数量超过第二门限;以及
响应于所述确定,减少所述第一集群中的节点的数量。
8.根据权利要求1所述的方法,其中,每个节点是与网络资源相关联的。
9.根据权利要求1所述的方法,进一步包括:使所述多个集群中的一个或多个集群与所述第一集群合并。
10.一种用于在使用节点集群的分散化和分布式网络中的资源发现的系统,包括:
至少一个计算设备;
多个节点,其中,每个节点包括识别该节点的节点标识符,并且每个节点包括所述多个节点中的该节点知道的节点的列表;以及
发现引擎,被适配成执行以下操作:
在初始化阶段中,将所述多个节点中的一个或多个节点指派给多个集群中的集群,其中,每个集群包括至少一个节点,并且每个节点包括识别该节点被指派给的集群的集群标识符;以及
在增长阶段中,通过以下操作使所述集群中的一个或多个增长:
随机地激活或者停用所述多个集群中的每个集群;
对于每个被激活的集群,命令所述被激活的集群的每个节点向从与所述被激活的集群的该节点相关联的节点的列表中随机选择的节点发送消息,其中,所述消息包括与所述被激活的集群的该节点相关联的集群标识符;以及
对于每个被停用的集群,命令所述被停用的集群的每个节点加入由来自所接收的消息的集群标识符识别的集群。
11. 根据权利要求10所述的系统,其中,所述发现引擎进一步被适配成:
接收对于识别所述多个节点中的节点的请求;以及
响应于所述请求,提供与集群的节点相关联的节点的列表。
12.根据权利要求10所述的系统,其中,所述发现引擎被适配成将所述多个节点中的一个或多个节点指派给多个集群中的集群包括所述发现引擎被适配成:
对于所述多个节点中的每个节点:
将该节点的集群标识符设置为缺省值;
随机地确定是否要将所述集群标识符设置为等于与该节点相关联的节点标识符;以及
基于所述确定将所述集群标识符设置为等于与该节点相关联的所述节点标识符。
13.根据权利要求10所述的系统,其中,所述发现引擎进一步被适配成:
在合并阶段中,使所述多个集群中的一个或多个集群合并。
14.根据权利要求10所述的系统,其中,所述节点包括网络资源。
CN201580055904.7A 2014-10-14 2015-10-07 使用集群的节点识别 Pending CN107079045A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/513467 2014-10-14
US14/513,467 US20160105323A1 (en) 2014-10-14 2014-10-14 Node identification using clusters
PCT/US2015/054347 WO2016060899A1 (en) 2014-10-14 2015-10-07 Node identification using clusters

Publications (1)

Publication Number Publication Date
CN107079045A true CN107079045A (zh) 2017-08-18

Family

ID=54540169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580055904.7A Pending CN107079045A (zh) 2014-10-14 2015-10-07 使用集群的节点识别

Country Status (4)

Country Link
US (1) US20160105323A1 (zh)
EP (1) EP3207688A1 (zh)
CN (1) CN107079045A (zh)
WO (1) WO2016060899A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020238719A1 (zh) * 2019-05-29 2020-12-03 阿里巴巴集团控股有限公司 通信链路的建立方法及装置,节点标识确定方法及装置
CN114553864A (zh) * 2020-11-19 2022-05-27 富士通株式会社 网络节点聚类方法、系统及计算机可读存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170034252A1 (en) * 2015-07-31 2017-02-02 Fuhu, Inc. Masterless websocket server system
US10533965B2 (en) 2016-04-19 2020-01-14 Industrial Scientific Corporation Combustible gas sensing element with cantilever support
AU2017252615A1 (en) 2016-04-19 2018-10-25 Industrial Scientific Corporation Worker safety system
CN105975212A (zh) * 2016-04-29 2016-09-28 深圳市永兴元科技有限公司 分布式数据系统失效检测处理方法及装置
US11729060B2 (en) * 2018-02-22 2023-08-15 Telefonaktiebolaget Lm Ericsson (Publ) Methods and nodes for cluster formation
US20200252336A1 (en) * 2019-01-31 2020-08-06 Dell Products L.P. Switching fabric configuration and management system
US10938897B2 (en) * 2019-01-31 2021-03-02 EMC IP Holding Company LLC Extended group service changes
US11246187B2 (en) 2019-05-30 2022-02-08 Industrial Scientific Corporation Worker safety system with scan mode
US11321206B2 (en) * 2020-01-22 2022-05-03 EMC IP Holding Company LLC Cluster feature activation and update system
JP2022088762A (ja) * 2020-12-03 2022-06-15 富士通株式会社 情報処理装置およびジョブスケジューリング方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010100554A1 (en) * 2009-03-05 2010-09-10 Chess Synchronization of broadcast-only wireless networks
CN102025550A (zh) * 2010-12-20 2011-04-20 中兴通讯股份有限公司 一种分布式集群中数据管理的系统和方法
CN102999571A (zh) * 2012-11-09 2013-03-27 深圳市宜搜科技发展有限公司 一种集群中单机多节点的实现方法
CN103078880A (zh) * 2011-10-25 2013-05-01 中国移动通信集团公司 基于多个内容分发网络的内容信息处理方法、系统和设备
CN103207814A (zh) * 2012-12-27 2013-07-17 北京仿真中心 一种去中心化的跨集群资源管理与任务调度系统与调度方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197565B2 (en) * 2001-01-22 2007-03-27 Sun Microsystems, Inc. System and method of using a pipe advertisement for a peer-to-peer network entity in peer-to-peer presence detection
US8055735B2 (en) * 2007-10-30 2011-11-08 Hewlett-Packard Development Company, L.P. Method and system for forming a cluster of networked nodes
US9575809B2 (en) * 2012-01-10 2017-02-21 Microsoft Technology Licensing, Llc Distributed stochastic clustering for automated formation of connected networks of agents
US10394611B2 (en) * 2012-11-26 2019-08-27 Amazon Technologies, Inc. Scaling computing clusters in a distributed computing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010100554A1 (en) * 2009-03-05 2010-09-10 Chess Synchronization of broadcast-only wireless networks
CN102025550A (zh) * 2010-12-20 2011-04-20 中兴通讯股份有限公司 一种分布式集群中数据管理的系统和方法
CN103078880A (zh) * 2011-10-25 2013-05-01 中国移动通信集团公司 基于多个内容分发网络的内容信息处理方法、系统和设备
CN102999571A (zh) * 2012-11-09 2013-03-27 深圳市宜搜科技发展有限公司 一种集群中单机多节点的实现方法
CN103207814A (zh) * 2012-12-27 2013-07-17 北京仿真中心 一种去中心化的跨集群资源管理与任务调度系统与调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHING LAW.ETC: "An O(log n) Randomized Resource Discovery Algorithm", 《URL:HTTP://CITESEERX.IST.PSU.EDU/VIEWDOC/DOWNLOAD? DOI=1 0.1.1.61.6847&REP=REP1&TYPE=PDF》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020238719A1 (zh) * 2019-05-29 2020-12-03 阿里巴巴集团控股有限公司 通信链路的建立方法及装置,节点标识确定方法及装置
CN114553864A (zh) * 2020-11-19 2022-05-27 富士通株式会社 网络节点聚类方法、系统及计算机可读存储介质

Also Published As

Publication number Publication date
EP3207688A1 (en) 2017-08-23
US20160105323A1 (en) 2016-04-14
WO2016060899A1 (en) 2016-04-21

Similar Documents

Publication Publication Date Title
CN107079045A (zh) 使用集群的节点识别
CN109165945B (zh) 代表节点设备选举方法、装置、计算机设备及存储介质
US20200364608A1 (en) Communicating in a federated learning environment
US11422980B2 (en) Policy-based selection and configuration of target site resources for data replication
CN103999031B (zh) 云服务器的虚拟私有存储阵列服务
CN109684092B (zh) 资源分配方法及装置
CN109565515A (zh) 分布式资源管理系统中的动态租户结构调整的系统、设备和过程
US20180063055A1 (en) Repartitioning a topic in a publish-subscribe message system
US20130060834A1 (en) Distributed messaging system connectivity and resource management
JP2010044552A (ja) リクエスト処理方法及び計算機システム
JP7234479B2 (ja) ストレージアドレスの決定に関してマルチレベルハッシュ関数を用いるオブジェクトストレージシステム
JP2014501408A (ja) ペルソナベースのアプリケーションエクスペリエンスの提供
US11941260B2 (en) Software filtered memory devices in computing systems
JP2020524869A (ja) 仮想マシン管理
US10715472B2 (en) System and method for unit-of-order routing
US9229762B2 (en) Host providing system and host providing method
US20230222468A1 (en) System and method for deployment level management of subscription based solutions
US10430441B1 (en) Tagging resources of a remote computing service based on locality
US20230224216A1 (en) System and method for subscription limitation enforcement in distributed system
CN114884962A (zh) 负载均衡方法及装置和电子设备
US10749921B2 (en) Techniques for warming up a node in a distributed data store
US10193790B2 (en) Systems and methods for an intelligent, distributed, autonomous, and scalable resource discovery, management, and stitching
KR101654969B1 (ko) 가상화 클러스터 환경에서 네임 노드를 할당하는 방법 및 장치
Birke et al. Power of redundancy: Designing partial replication for multi-tier applications
US9942314B2 (en) System and method for optimizing web service availability with a node group agreement protocol

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170818