首页> 中国专利> 划分节点子域归属的方法和装置

划分节点子域归属的方法和装置

摘要

本发明实施例提供一种划分节点子域归属的方法和装置。该方法包括:第一游离节点广播第一节点信息,并接收第二游离节点根据第一节点信息返回的第二节点信息,或者第二节点信息和普通节点根据第一节点信息返回的第三节点信息,第一游离节点根据第一节点信息、主节点条件和第二节点信息,确认第一游离节点为游离域主节点后,根据第二节点信息,或者第二节点信息和第三节点信息,采用分配算法,分别对第一游离节点和第二游离节点进行子域划分,获取子域划分结果,第一游离域节点广播子域划分结果。本发明实施例提供的划分节点子域归属的方法和装置,实现了单个节点进行子域分配,避免了多节点独立分配可能产生的不一致问题。

著录项

  • 公开/公告号CN103037024A

    专利类型发明专利

  • 公开/公告日2013-04-10

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN201210514667.4

  • 发明设计人 肖国栋;

    申请日2012-12-05

  • 分类号H04L29/12;H04L12/18;

  • 代理机构北京同立钧成知识产权代理有限公司;

  • 代理人刘芳

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2024-02-19 18:13:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-06-07

    专利权的转移 IPC(主分类):H04L29/12 专利号:ZL2012105146674 登记生效日:20220525 变更事项:专利权人 变更前权利人:华为技术有限公司 变更后权利人:成都华为技术有限公司 变更事项:地址 变更前权利人:518129 广东省深圳市龙岗区坂田华为总部办公楼 变更后权利人:610041 四川省成都市高新区(西区)西源大道1899号

    专利申请权、专利权的转移

  • 2016-06-29

    授权

    授权

  • 2013-05-08

    实质审查的生效 IPC(主分类):H04L29/12 申请日:20121205

    实质审查的生效

  • 2013-04-10

    公开

    公开

说明书

技术领域

本发明实施例涉及计算机网络领域,尤其涉及一种划分节点子域归属的 方法和装置。

背景技术

在大规模分布式系统中,常常会采取子域的方式,将整个分布式系统划 分成多个相对独立的子域,每个子域由若干个节点构成,子域内部各节点两 两相关,而不同子域的节点只通过不同子域的某个节点相关,从而达到降低 通信量、分担计算开销、故障隔离、方便管理等目的。

另外,在由子域构成的分布式系统中,系统初始部署以及扩容新的节点 时,需要采取某种方法,将这些节点划分到某个子域中。现有技术中一种划 分方法是各个待分配子域的节点独立计算自己应归属的子域。具体的,对于 每个待分配子域的节点,在划分节点子域归属前,该待分配子域的节点获取 节点列表信息,该节点列表信息包括待分配子域节点和已分配子域节点的信 息,采用子域分配算法,对该节点列表信息进行计算,获取该待分配子域的 节点所应归属的子域。

但是,现有的节点列表信息获取方式由于采用用户手动配置,或者, 由系统在运行时动态获取,因此,可能造成各个待分配子域的节点获取到 的节点列表信息不一致,从而造成各节点计算的分配结果不一致的问题, 进而易造成子域分配不均匀或者节点计算结果相互矛盾的问题。

发明内容

本发明实施例提供一种划分节点子域归属的方法及装置,以解决子域分 配不均匀或者节点计算结果相互矛盾的问题,保证分配结果在各节点上的一 致性。

第一方面,本发明提供一种划分节点子域归属的方法,包括:

第一游离节点广播第一节点信息,并接收第二游离节点根据所述第一节 点信息返回的第二节点信息,或者所述第二节点信息和普通节点根据所述第 一节点信息返回的第三节点信息;

所述第一游离节点根据第一节点信息、主节点条件和所述第二节点信息, 确认所述第一游离节点为游离域主节点后,根据所述第二节点信息,或者所 述第二节点信息和所述第三节点信息,采用分配算法,分别对所述第一游离 节点和所述第二游离节点进行子域划分,获取子域划分结果;

所述第一游离域节点广播所述子域划分结果。

在第一方面的第一种可能的实施方式中,所述根据所述第二节点信息, 或者所述第二节点信息和所述第三节点信息,采用分配算法,分别对所述第 一游离节点和所述第二游离节点进行子域划分,获取子域划分结果,包括:

根据所述第三节点信息,判断出当前已分配子域承载节点数量是否达到 阈值;

在判断出所述当前已分配子域承载节点数量达到所述阈值时,根据所述 第二节点信息,采用所述分配算法,创建新的子域,并将所述第一游离节点 和所述第二游离节点分配到所述新的子域中,获取子域划分结果;

其中,所述当前已分配子域所承载的节点为所述普通节点。

结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实 施方式中,还包括:

在判断出当前已分配子域承载节点数量没有达到阈值时,根据所述第二 节点信息和所述第三节点信息,采用所述分配算法,将所述第一游离节点和 所述第二游离节点分配到所述当前已分配子域中,获取子域划分结果。

结合第一方面至第一方面的第二种可能的实施方式中任一所述的分节点 子域归属的方法,在第一方面的第三种可能的实施方式中,所述第一游离节 点根据第一节点信息、主节点条件和所述第二节点信息,确认所述第一游离 节点为游离域主节点,包括:

所述第一游离节点根据第一节点信息、主节点条件和所述第二节点信息, 判断所述第一游离节点是否满足所述主节点条件;

所述第一游离节点若判断出所述第一游离节点满足所述主节点条件,则 向所述第二游离节点发送主节点申请请求;

所述第一游离节点在接收到每个所述第二游离节点均发送的同意消息 时,确认所述第一游离节点为游离域主节点;

其中,所述同意消息为所述第二游离节点根据所述主节点申请请求,判 断所述第一游离节点为游离域主节点后生成的消息。

结合第一方面,在第一方面的第四种可能的实施方式中,在所述第一游 离节点根据第一节点信息、主节点条件和所述第二节点信息,确认所述第一 游离节点为游离域主节点后,所述方法还包括:

所述第一游离节点广播通知消息,所述通知消息包括游离域主节点的标 识为第一游离节点标识。

第二方面,本发明提供一种划分节点子域归属的装置,包括:

广播模块,用于广播第一节点信息;

接收模块,用于接收第二游离节点根据所述第一节点信息返回的第二节 点信息,或者所述第二节点信息和普通节点根据所述第一节点信息返回的第 三节点信息;

确认模块,用于根据第一节点信息、主节点条件和所述第二节点信息, 确认所述划分节点子域归属的装置是否为游离域主节点;

划分模块,用于在所述确认模块确认所述划分节点子域归属的装置为所 述游离域主节点时,根据所述第二节点信息,或者所述第二节点信息和所述 第三节点信息,采用分配算法,分别对所述第一游离节点和所述第二游离节 点进行子域划分,获取子域划分结果;

所述广播模块还用于广播所述子域划分结果。

在第二方面的第一种可能的实施方式中,所述划分模块包括:

第一判断单元,用于根据所述第三节点信息,判断出当前已分配子域承 载节点数量是否达到阈值;

处理单元,用于在所述第一判断单元判断出所述当前已分配子域承载节 点数量达到所述阈值时,根据所述第二节点信息,采用所述分配算法,创建 新的子域,并将所述第一游离节点和所述第二游离节点分配到所述新的子域 中,获取子域划分结果;

其中,所述当前已分配子域所承载的节点为所述普通节点。

结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实 施方式中,所述处理单元还用于在所述第一判断单元判断出当前已分配子域 承载节点数量没有达到阈值时,根据所述第二节点信息和所述第三节点信息, 采用所述分配算法,将所述第一游离节点和所述第二游离节点分配到所述当 前已分配子域中,获取子域划分结果。

结合第二方面至第二方面的第二种可能的实施方式中任一所述的分节点 子域归属的装置,在第二方面的第三种可能的实施方式中,所述确认模块包 括:

第二判断单元,用于根据第一节点信息、主节点条件和所述第二节点信 息,判断所述第一游离节点是否满足所述主节点条件;

收发单元,用于若所述第二判断单元判断出所述第一游离节点满足所述 主节点条件,则向所述第二游离节点发送主节点申请请求;

确认单元,用于在所述收发单元接收到每个所述第二游离节点均发送的 同意消息时,确认所述第一游离节点为游离域主节点;

其中,所述同意消息为所述第二游离节点根据所述主节点申请请求,判 断所述第一游离节点为游离域主节点后生成的消息。

结合第二方面,在第二方面的第四种可能的实施方式中,所述广播模块 还用于广播通知消息,所述通知消息包括游离域主节点的标识为划分节点子 域归属的装置的标识。

本发明实施例提供的划分节点子域归属的方法和装置,通过第一游离节 点广播第一节点信息,并接收第二游离节点根据第一节点信息返回的第二节 点信息,或者第二节点信息和普通节点根据第一节点信息返回的第三节点信 息,第一游离节点根据第一节点信息、主节点条件和第二节点信息,确认第 一游离节点为游离域主节点后,根据第二节点信息,或者第二节点信息和第 三节点信息,采用分配算法,分别对第一游离节点和第二游离节点进行子域 划分,获取子域划分结果,第一游离域节点广播子域划分结果。实现了在新 的系统子域划分部署的场景和系统扩容的场景下单个节点进行子域分配,避 免了多节点独立分配可能产生的不一致问题,并保证分配结果在各节点上的 一致性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下 面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在 不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明划分节点子域归属的方法实施例一的流程图;

图2为本发明划分节点子域归属的方法实施例二的流程图;

图3为本发明划分节点子域归属的方法实施例三的流程图;

图4为本发明划分节点子域归属的方法实施例四的流程图;

图5为本发明划分节点子域归属的装置实施例一的结构示意图;

图6为本发明划分节点子域归属的装置实施例二的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发 明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获 得的所有其他实施例,都属于本发明保护的范围。

图1为本发明划分节点子域归属的方法实施例一的流程图,如图1所示, 本实施例的方法可以包括:

S101、第一游离节点广播第一节点信息,并接收第二游离节点根据第一 节点信息返回的第二节点信息,或者第二节点信息和普通节点根据第一节点 信息返回的第三节点信息。

具体来说,游离节点指的是还没有划分子域的节点,即将待分配子域的 节点称为游离节点。游离域是指游离节点构成的域。普通节点指的是当前已 分配子域所承载的节点,第一游离节点或第二游离节点和普通节点的数量均 可以为多个。在新的系统子域划分部署的场景下,第一游离节点广播第一节 点信息,并接收第二游离节点根据第一节点信息返回的第二节点信息;在系 统已划分了子域,系统扩容的场景下,第一游离节点广播第一节点信息,并 接收第二节点信息和普通节点根据第一节点信息返回的第三节点信息。其中, 第一节点信息或第二节点信息随业务需求而定,要满足子域算法需要,例如 可包括节点业务处理能力、节点的标识、物理地址等信息。普通节点返回的 第三节点信息为节点自身保存的当前系统拓扑信息。

另外,优选的,在第一游离节点广播第一节点信息之前,第一游离节点 可以记录广播开始的时间,该时间用于限制广播的总时长,广播的总时长按 照实际需求提前设定。

S102、第一游离节点根据第一节点信息、主节点条件和第二节点信息, 确认第一游离节点为游离域主节点后,根据第二节点信息,或者第二节点信 息和第三节点信息,采用分配算法,分别对第一游离节点和第二游离节点进 行子域划分,获取子域划分结果。

优选的,第一游离节点根据第一节点信息、主节点条件和第二节点信息, 确认第一游离节点为游离域主节点之前,可以检查广播的总时长是否超过设 定值,如果超过则认为已经完整获取到所有游离节点或所有游离节点及当前 系统的拓扑信息,否则继续循环广播第一节点信息。

在本实施例中,需要说明的是,第一游离节点的数量可以是多个,但是 作为游离域主节点的第一游离节点的数量只为一个。

S103、第一游离域节点广播子域划分结果。

本实施例提供的划分节点子域归属的方法,通过单个游离节点确认成为 游离域主节点后,该游离域主节点采用分配算法对其他游离节点进行子域划 分,获取子域划分结果。实现了在新的系统子域划分部署的场景和系统扩容 的场景下单个节点进行子域分配,避免了多节点独立分配可能产生的不一致 问题,并保证分配结果在各节点上的一致性。

图2为本发明划分节点子域归属的方法实施例二的流程图,在上述图1 所示实施例的基础上,以系统已经有划分的子域为例,如图2所示,S102的 一种具体实现方式为:

S102a、根据第三节点信息,判断出当前已分配子域承载节点数量是否达 到阈值;若达到,执行S102b;若没有达到,则执行S102c。

其中,阈值为子域最大节点数量,该阈值根据具体业务需求不同来确定。

S102b、根据第二节点信息,采用分配算法,创建新的子域,并将第一游 离节点和第二游离节点分配到新的子域,获取子域划分结果;其中,当前已 分配子域所承载的节点为普通节点。

S102c、根据第二节点信息和第三节点信息,采用分配算法,将第一游离 节点和第二游离节点分配到当前已分配子域中,获取子域划分结果。

在本实施例中,所采用的分配算法根据不同的业务需求进行不同设定, 例如按子域节点数量均衡优先、子域负载均衡优先等,此处不做限制。

进一步的,在S102中该第一游离节点根据第一节点信息、主节点条件和 该第二节点信息,确认该第一游离节点为游离域主节点的一种具体实现方式 为:

S102d、第一游离节点根据第一节点信息、主节点条件和第二节点信息, 判断第一游离节点是否满足主节点条件。

其中,主节点条件可根据具体业务需求进行设定,例如选择节点业务处 理能力最强的节点或节点号(或者节点编号)最小的节点成为主节点。其中, 每个节点对应一个唯一的节点号。该节点号可以用数字来表示。

S102e、第一游离节点若判断出第一游离节点满足主节点条件,则向第二 游离节点发送主节点申请请求。

S102f、第一游离节点在接收到每个第二游离节点均发送的同意消息时, 确认第一游离节点为游离域主节点。

其中,同意消息为第二游离节点根据主节点申请请求,判断第一游离 节点为游离域主节点后生成的消息。该主节点申请请求中包含的参数需要 满足选主算法的要求,随具体业务场景而定,例如参数可能包括节点号、处 理能力、物理位置等。在确认第一游离节点为游离域主节点之后,第一游离 节点广播通知消息,通知消息包括游离域主节点的标识为第一游离节点标识。

下面采用两个具体的实施例,对上述所示方法实施例的技术方案进行详 细说明。

图3为本发明划分节点子域归属的方法实施例三的流程图,本实施例提 供的是在新的系统子域划分部署的场景下划分节点子域归属的方法,如图3 所示,本实施例的方法可以包括:

S201、第一游离节点记录广播开始的时间,该时间用于限制广播的总时 长,广播的总时长按照实际需求提前设定。

S202、第一游离节点广播第一节点信息。

S203、第二游离节点接收到第一节点信息后,回复自身第二节点信息。

其中,第一节点信息或第二节点信息随业务需求而定,要满足子域算法 需要,例如可包括节点业务处理能力、节点的标识、物理地址等信息。

S204、第一游离节点检查广播总时长是否超过设定值,并检查出广播总 时长查过该设定值时,第一游离节点根据第一节点信息、主节点条件和第二 节点信息,判断第一游离节点是否满足主节点条件。

在本实施例中,如果超过则认为已经完整获取到所有游离节点的第二节 点信息,否则继续循环广播第一节点信息。主节点条件可根据具体业务需求 进行设定,例如选择节点业务处理能力最强的节点或节点号最小的节点成为 主节点。

S205、第一游离节点若判断出第一游离节点满足主节点条件,则向第二 游离节点发送主节点申请请求。

S206、第二游离节点检查第一游离节点申请请求是否满足条件,若满足 则向第一游离节点发送同意消息。

在本实施例中,需要说明的是,条件判断的算法需要与主节点选取算法 保持一致,例如,如果在业务场景中,以最小节点编号作为主节点条件,则 第二游离节点判断第一游离节点的节点编号是否比自己的编号小,如果小则 返回同意消息,否则返回反对消息。还需要说明的是,若不满足则返回反对 消息,返回反对消息时,则本次选游离域主节点失败,此时第一游离节点继 续广播第一节点信息,等待一个周期后,如果发现游离域还没有产生游离域 主节点,则其再次启动选游离域主节点过程。

S207、第一游离节点在接收到每个第二游离节点均发送的同意消息时, 确认第一游离节点为游离域主节点。

其中,同意消息为第二游离节点根据主节点申请请求,判断第一游离节 点为游离域主节点后生成的消息。

S208、第一游离节点广播通知消息,该通知消息包括游离域主节点的标 识为第一游离节点标识。

在本实施例中,第一游离节点确认其为游离域主节点之后,如果收到其 他第二游离节点广播的节点消息,直接将其加入自己的管理范围。

S209、第一游离节点采用分配算法,对第一游离节点和第二游离节点进 行子域划分,获取子域划分结果。

其中,所采用的分配算法根据不同的业务需求进行不同设定,例如按子 域节点数量均衡优先、子域负载均衡优先等,此处不做限制。

S210、第一游离节点广播子域划分结果。

S211、第二游离节点收到子域划分结果后,要对子域划分结果进行子域 分配合理性检查,若检查通过,则向第一游离节点发送同意消息; 在本实施例中,第二游离节点检查自身是否被合理分配,检查算法随具 体业务需求设定,例如检查自身被分配的子域的节点数量是否超过阈值或者 检查自身是否被分配到某个子域。若检查不通过,则向第一游离节点发送不 同意消息。

S212、第一游离节点若收到所有第二游离节点返回的同意消息,则广播 确认消息;

在本实施例中,还需要说明的是,若收到有的第二游离节点返回反对消 息或者返回超时,则本次分配失败,等待一段时间后游离域再次选主节点并 再次进行子域划分。

S213、第二游离节点收到第一游离节点发送的确认消息后,记录子域划 分结果,子域划分结束。

图4为本发明划分节点子域归属的方法实施例四的流程图,本实施例与 图3所示实施例的区别在于场景不同,本实施提供的是在系统扩容的场景下 划分节点子域归属的方法,如图4所示,本实施例的方法可以包括:

S301、第一游离节点记录广播开始的时间,该时间用于限制广播的总时 长,广播的总时长按照实际需求提前设定。

S302、第一游离节点广播第一节点信息。

S303、第二游离节点接收到第一节点信息后,回复自身第二节点信息。

其中,第一节点信息或第二节点信息随业务需求而定,要满足子域算法 需要,例如可包括节点业务处理能力、节点的标识、物理地址等信息。

S304、普通节点接收到第一节点信息后,回复自身第三节点信息。

其中,普通节点返回的第三节点信息为节点自身保存的当前系统拓扑信 息。

S305、第一游离节点检查广播总时长是否超过设定值,并检查出广播总 时长查过该设定值时,第一游离节点根据第一节点信息、主节点条件和第二 节点信息,判断第一游离节点是否满足主节点条件。

在本实施例中,如果超过则认为已经完整获取到所有游离节点的第二节 点信息,否则继续循环广播第一节点信息。其中,主节点条件可根据具体业 务需求进行设定,例如选择节点业务处理能力最强的节点或节点号最小的节 点成为主节点。

S306、第一游离节点若判断出第一游离节点满足主节点条件,则向第二 游离节点发送主节点申请请求。

S307、第二游离节点检查第一游离节点申请请求是否满足条件,若满足 则向第一游离节点发送同意消息。

在本实施例中,还需要说明的是,若不满足则返回反对消息,返回反对 消息时,则本次选游离域主节点失败,此时第一游离节点继续广播第一节点 信息,等待一个周期后,如果发现游离域还没有产生游离域主节点,则其再 次启动选游离域主节点过程。

S308、第一游离节点在接收到每个第二游离节点均发送的同意消息时, 确认第一游离节点为游离域主节点。

其中,同意消息为第二游离节点根据主节点申请请求,判断第一游离节 点为游离域主节点后生成的消息。

S309、第一游离节点广播通知消息,该通知消息包括游离域主节点的标 识为第一游离节点标识。

在本实施例中,第一游离节点确认其为游离域主节点之后,如果收到其 他第二游离节点广播的节点消息,直接将其加入自己的管理范围,第一游离 节点广播通知消息,通知消息包括游离域主节点的标识为第一游离节点标识。

S310、第一游离节点根据第三节点信息,判断出当前已分配子域承载节 点数量是否达到阈值,若达到,则根据第二节点信息和第三节点信息,采用 分配算法,将第一游离节点和第二游离节点分配到当前已分配子域中,获取 子域划分结果;若没有达到,根据第二节点信息,采用分配算法,创建新的 子域,并将第一游离节点和第二游离节点分配到新的子域,获取子域划分结 果。

其中,所采用的分配算法根据不同的业务需求进行不同设定,例如按子 域节点数量均衡优先、子域负载均衡优先等,此处不做限制。

S311、第一游离节点广播子域划分结果。

S312、第二游离节点收到子域划分结果后,要对子域划分结果进行子域 分配合理性检查,若检查通过,则向第一游离节点发送同意消息;

在本实施例中,第二游离节点检查自身是否被合理分配,检查算法随具 体业务需求设定。若检查不通过,则向第一游离节点发送不同意消息。

S313、普通节点收到子域划分结果后,要对子域划分结果进行子域分配 合理性检查,若检查通过,则向第一游离节点发送同意消息;

在本实施例中,普通节点检查自身是否被合理分配,检查算法随具体业 务需求设定。若检查不通过,则向第一游离节点发送不同意消息。

S314、第一游离节点若收到所有第二游离节点和普通节点返回的同意消 息,则广播确认消息;

在本实施例中,还需要说明的是,若收到有的第二游离节点和普通节点 返回反对消息或者返回超时,则本次分配失败,等待一段时间后游离域再次 选主节点并再次进行子域划分。

S315、第二游离节点和普通节点收到成为主节点的第一游离节点发送的 确认消息后,记录子域划分结果,子域划分结束。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步 骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可 读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而 前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码 的介质。

图5为本发明划分节点子域归属的装置实施例一的结构示意图,如图5 所示,本实施例的装置具体为上述的第一游离节点,则该装置可以包括:广 播模块11、接收模块12、确认模块13和划分模块14,其中,

广播模块11用于广播第一节点信息。

接收模块12用于接收第二游离节点根据第一节点信息返回的第二节点 信息,或者第二节点信息和普通节点根据第一节点信息返回的第三节点信息。

确认模块13用于根据第一节点信息、主节点条件和第二节点信息,确认 划分节点子域归属的装置是否为游离域主节点。

划分模块14用于在确认模块确认划分节点子域归属的装置为游离域主 节点时,根据第二节点信息,或者第二节点信息和第三节点信息,采用分配 算法,分别对第一游离节点和第二游离节点进行子域划分,获取子域划分结 果。

广播模块11还用于广播子域划分结果。

本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实 现原理类似,此处不再赘述。

本实施例提供的划分节点子域归属的装置,通过广播模块广播第一节点 信息。接收模块接收第二游离节点根据第一节点信息返回的第二节点信息, 或者第二节点信息和普通节点根据第一节点信息返回的第三节点信息。确认 模块根据第一节点信息、主节点条件和第二节点信息,确认划分节点子域归 属的装置是否为游离域主节点。划分模块在确认模块确认划分节点子域归属 的装置为游离域主节点时,根据第二节点信息,或者第二节点信息和第三节 点信息,采用分配算法,分别对第一游离节点和第二游离节点进行子域划分, 获取子域划分结果,广播模块再广播子域划分结果。实现了在新的系统子域 划分部署的场景和系统扩容的场景下单个节点进行子域分配,避免了多节点 独立分配可能产生的不一致问题,并保证分配结果在各节点上的一致性。

图6为本发明划分节点子域归属的装置实施例二的结构示意图,如图6 所示,本实施例的装置在图5所示装置结构的基础上,进一步地,划分模块 14可以包括:第一判断单元141和处理单元142。

第一判断单元141用于根据第三节点信息,判断出当前已分配子域承载 节点数量是否达到阈值。

处理单元142用于在第一判断单元判断出当前已分配子域承载节点数量 达到阈值时,根据第二节点信息,采用分配算法,创建新的子域,并将第一 游离节点和第二游离节点分配到新的子域中,获取子域划分结果。其中,当 前已分配子域所承载的节点为普通节点。

处理单元142还用于在第一判断单元判断出当前已分配子域承载节点数 量没有达到阈值时,根据第二节点信息和第三节点信息,采用分配算法,将 第一游离节点和第二游离节点分配到当前已分配子域中,获取子域划分结果。

在上述装置结构的基础上,如图6所示,进一步地,本实施例的装置中 确认模块13还可包括第二判断单元131、收发单元132和确认单元133,其 中,

第二判断单元131用于根据第一节点信息、主节点条件和第二节点信息, 判断第一游离节点是否满足主节点条件。

收发单元132用于若第二判断单元判断出第一游离节点满足主节点条 件,则向第二游离节点发送主节点申请请求。

确认单元133用于在收发单元接收到每个第二游离节点均发送的同意消 息时,确认第一游离节点为游离域主节点。

其中,同意消息为第二游离节点根据主节点申请请求,判断第一游离节 点为游离域主节点后生成的消息。

优选的,广播模块11还用于广播通知消息,该通知消息包括游离域主节 点的标识为划分节点子域归属的装置的标识。

本实施例的装置,可以用于执行图2所示方法实施例的技术方案,其实 现原理类似,此处不再赘述。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对 其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并 不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号