一种hp2p网络负载平衡的方法

文档序号:7799523阅读:144来源:国知局
一种hp2p网络负载平衡的方法
【专利摘要】一种HP2P网络负载平衡的方法,其包括,HP2P网络群间负载平衡的方法,通过群分裂以及群在网络地址空间的移动来实现群之间的负载转移,并通过新节点加入负载较大的群诱导群发生分裂和合并从而使得负载较大的地址空间群数目较多,负载较小的地址空间群数目较少;HP2P网络群内负载平衡的方法,通过超级节点对群内负载有效的调度,使群内负载率较低的节点找到群内负载率较高的节点。
【专利说明】一种HP2P网络负载平衡的方法
【技术领域】
[0001]本发明属于互联网计算【技术领域】,主要涉及P2P网络,尤其涉及混合层次化P2P网络(HP2P),具体是一种HP2P网络的负载平衡方法。本发明可以应用于各种基于HP2P的网络软件。
【背景技术】
[0002]近几年来,随着点对点网络技术的迅速发展,基于点对点(Peer-to-Peer,简称P2P)网络技术的软件受到了大量互联网用户的青睐。现在一些国内比较流行的网络软件比如迅雷、腾讯QQ、PPTV、酷狗音乐等都使用了 P2P网络技术。在P2P网络软件中,由于用户对资源需求的不均衡性以及网络中计算机能力的异构性,使得P2P网络中一直存在节点(P2P网络中的计算机)负载不平衡的现象。而近些年来随着P2P网络软件用户的快速增长,网络中节点负载不平衡的现象愈发明显,进而引起请求延时、网络拥塞等问题,严重影响了P2P网络的整体性能。
[0003]当前,对于P2P网络负载平衡问题的研究主要集中在结构化P2P网络领域,并且已经出现了一些比较有代表性的解决该问题的方法。比如虚拟服务器方法(VirtualServer)、多哈希选择方法(Power of Two Choices)、地址空间平衡方法(Address-SpaceBalancing)、存储文件平衡方法(Item Balancing)。其中:
[0004]虚拟服务器方法:在P2P网络中,每个物理节点虚拟化为多个虚拟服务器,每个虚拟服务器单独维护一段地址空间。每个虚拟服务器都拥有自己独立的路由表和数据对象,当需要对数据对象进行定位时,定位的过程是在虚拟服务器上发起的,而不是在实际的节点之上。当节点出现负载过重或者过轻的时候,以虚拟服务器为最小的负载迁移单位。通过一个物理节点上的虚拟节点“离开网络”,同时在另一个物理节点中,“离开”的虚拟节点重新加入网络,最后接收该虚拟节点负责的数据对象,完成负载的迁移。由于每个虚拟服务器都需要维护自身的路由表,所以这相当于一个物理节点需要维护多个路由表,这将浪费大量带宽。同时,由于一个物理节点管理了 P2P网络中的多个虚拟服务器,所以当一个物理节点加入或离开网络时,相当于有多个虚拟服务器加入或离开网络,这将大大增加网络的抖动,这将对稳定性本就较差的结构化P2P网络造成致命的影响。
[0005]多哈希选择方法:该方法假设有d>=2个众所周知的哈希函数hi O,...,hd()。当结构化P2P网络中一个节点需要向网络中增添一个资源X时,该节点将根据d个哈希函数为资源X计算d个哈希值hi (X),...,hd (x)。而后该节点将向负责在结构化P2P网络中维护这d个哈希值的节点询问它们当前的负载情况,并从这d个节点中选择一个负载最轻的节点A负责维护资源X的索引,同时另外d-Ι个节点将存放一个指向节点A的指针。同时网络中的每个节点都具有一个负载触发器,当一个节点的负载过大时,触发器事件将会被触发。触发事件选择要进行迁移的资源索引,然后把这些资源以重新加入网络的方式把资源索引转移到其他节点上。
[0006]地址空间平衡方法:该方法假设网络中的每个节点在结构化P2P网络中具有O(1gN)个潜在的ID,但是一个时间只有一个ID处于激活状态。节点根据当前整个网络的负载情况来确定自己ID来完成负载之间的迁移,从而实现P2P网络的负载平衡。
[0007]存储文件平衡方法:该方法中Ii表示一个节点i的负载,并且确定一个常数ε (0〈ε〈1)。节点i随机的在网络中选择另一个节点j,如果它们的负载满足比较式lj<e ^li,那么节点j就需要根据改变自身地址空间的方式实现负载迁移。若i=j+l,表明i是j的后继节点,这时节点j增加他的地址空间,使i的部分负载转到j。若i古j+1,节点j就把自己的地址空间转移到i_l和i之间,把原来的负载就交给j+Ι负责,然后节点j获取部分节点i的负载。对于基于洪泛查询的非结构化P2P网络,由于每个节点只维护自身所发布的资源,所以无法调节每个节点所维护的资源数目。现今对于非结构P2P网络负载平衡的研究主要集中于如何在网络中设计合理缓存机制以及如何在节点频繁加入和退出网络的情况下,仍能保证整个非结构化P2P网络保持随机图的特性。
[0008]基于洪泛的非结构P2P网络和基于分布式哈希表(DHT)的结构化P2P网络是当前P2P应用领域比较流行的P2P网络。其中,非结构化P2P网络结构较为简单,容易实现,且稳定性很高,但是其网络负载高,可扩展性较差;结构化P2P网路网络负载小,查询效率高,但是其稳定性较差。混合多层P2P网络(Hybrid Hierarchical P2P Network,简称HP2P)结合了结构化P2P和非结构化P2P各自的优点,得到了一种稳定高、查询效率高、可扩展较好的新型P2P网络。[0009]在HP2P中,网络中的节点首先按照群(Cluster)的方式进行组织,群的内部使用非结构化P2P网络中的洪泛方式进行消息传递。群内由少量超级节点和大量普通节点组成。群之间使用改进的Chord协议组织成一个结构化P2P网络。每个群在Chord上作为一个虚拟的节点存在,虚拟节点的路由表由群中的若干个超级节点共同维护。而群内普通节点与上层Chord网络的通信都需要通过这些超级节点帮忙转发。
[0010]由于HP2P网络拓扑结构的特殊性,所以当前的结构化P2P网络的负载平衡方法都无法解决HP2P网络群间负载平衡的问题。同时由于群内节点能力的异构性以及需要维护网络中其它节点发布的元数据(资源的索引),所以群内网络的负载平衡问题与传统的非结构化P2P网络负载平衡问题有很大不同。

【发明内容】

[0011]为了解决上述问题,本发明提供一种HP2P网络负载平衡的方法,其特征在于:其包括,
[0012]HP2P网络群间负载平衡的方法,通过群分裂以及群在网络地址空间的移动来实现群之间的负载转移,并通过新节点加入负载较大的群诱导群发生分裂和合并,使负载较大的地址空间群数目增多,负载较小的地址空间群数目减少,其中负载定义为该群中节点单位时间所需要处理消息的平均数目;
[0013]HP2P网络群内负载平衡的方法,通过超级节点对群内负载有效的调度,使群内负载率较低的节点找到群内负载率较高的节点,其中根据HP2P网络特性,负载近似定义为群内节点所需要维护的元数据数目,负载率定义为负载与节点能力的比值,且所述元数据为资源的索引。
[0014]在上述技术问题的基础上,所述HP2P网络群间负载平衡的方法包括:[0015]步骤(Al)群A的超级节点S随机地向周围k.1g2N个群发送群负载请求消息,获取所述k.1g2N个群的负载信息,并通过计算这k.1g2N个群的负载平均值来估算出当前整个HP2P网络的群平均负载Loadavg,其中k是一个在区间[l,N/log2N]取值的整数,N为网络中群的数目;
[0016]步骤(A2)如果群A当前负载Load〉Y.Loadavg,且群分裂成的两个小群中节点数目均大于HP2P网络群节点数目下限,则将该群分裂成两个群,其中Y是一个大于I的实数,HP2P网络群间负载平衡方法本次执行结束;否则转至步骤(A3);
[0017]步骤(A3)构建HP2P网络的Chord环,群A向其前驱群和后继群发送负载请求消息,从而获取前驱群和后继群的当前负载情况,其中前驱群为HP2P网络Chord环中离群A最近的前一个群,后继群为HP2P网络Chord环中离群A最近的后一个群;
[0018]步骤(A4)如果群A当前负载Load>Loadavg则转至步骤(A5),如果Load〈Loadavg则转至步骤(AS);否则HP2P网络群间负载平衡方法本次执行结束;
[0019]步骤(A5)如果群A负载Load≥Loadlight/ (1-2.β ),则表示群A能将部分负载转移到邻居群从而将自身负载降低β,其中β是一个在区间(0,0.5)取值的实数,并转至步骤(Α6);否则转至步骤(AS);其中Loadlight为该群的前驱群和后继群中负载较小的群的负载;
[0020]步骤(Α6)如果Loadlight为群A的前驱群的负载,则群A通知其前驱群沿着Chord环顺时针移动,移动的地址空间长度为(Load-Loadlight) XLength/(2XLoad),并将相应的元数据转移到前驱群中,HP2P网络群间负载平衡方法本次执行结束,其中Length为群A在Chord环中所维护的地址空间长度;否则转至步骤(A7);
[0021 ] 步骤(A7) Loadlight为群A的后继群的负载,则该群沿着Chord环逆时针移动,移动的地址空间长度为(Load-Loadlight) XLength/(2XLoad),并将相应的元数据转移到后继群中,而后HP2P网络群间负载平衡方法本次执行结束;
[0022]步骤(A8)如果Load ( (1-2.β ).Loadheavy,则表示群A能从邻居群获取部分负载从而将邻居群负载下降β,其中Loadteavy为该群的前驱群和后继群中负载较重群的负载,β是一个在区间(0,0.5)取值的实数,转至步骤(Α9);否则ΗΡ2Ρ网络群间负载平衡方法本次执行结束;
[0023]步骤(Α9)如果Loadteavy为群A的前驱群的负载,则群A通知其前驱群沿着Chord环逆时针移动,移动的地址空间长度为(Loadheavy-Load) X Lengthpredecessor/ (2 X Loadheavy),并从前驱群获取相应的元数据,其中Lengthpral_s为前驱群在Chord环中所维护的地址空间长度,而后HP2P网络群间负载平衡方法本次执行结束;否则转至步骤(AlO);
[0024]步骤(AlO) Loadheavy为群A的后继群的负载,则群A沿着Chord环顺时针移动,移动的地址空间长度为(Loadhravy-Load) XLengthsuccessor/ (2XLoadhffiivy),并从后继群获取相应的元数据,其中Lengthsueeesstff为后继群在Chord环中所维护的地址空间长度,此时HP2P网络群间负载平衡方法本次执行结束。
[0025]在上述技术问题的基础上,在节点加入网络过程中,节点从k Qog2N个群中选择一个负载最大群进行加入,其中k与步骤(Al)中所涉及的参数k为同一参数,N为HP2P网络中群的数目;WHP2P网络群间负载平衡方法步骤(Al)可知,每个群的超级节点都具有其它k.1g2N个群的负载信息,所以超级节点可以从k.1g2N群中选择负载最大的群用于新节点加入的过程并不会带来其它额外的开销。
[0026]在上述技术问题的基础上,所述HP2P网络群内负载平衡的方法包括普通节点群内负载平衡方法与超级节点群内负载平衡方法。
[0027]HP2P网络群内负载平衡的方法中的超级节点需要维护一个哈希表如图2和一个有序链表如图3。其中,有序链表具有五个数据项分别为负载率、需移动元数据量、消息时间戳、节点ID、指向链表下一个节点的指针,哈希表的键为节点的ID,值有两个数据项分别为消息的时间戳和节点ID所对应链表节点的地址。
[0028]在上述技术问题的基础上,所述群内普通节点负载平衡方法包括:
[0029]步骤(BI)普通节点从超级节点处获取该群当前的平均负载率;^ ;
[0030]步骤(B2)如果节点的负载率则认为节点负载率较高,此时该节点将向群中超级节点通报自身的负载率以及所需要向群内其它节点转移的元数据数目为(rate - rate).capacity ?然后普通节点群内负载平衡方法本次执行结束,其中capacity为该节点的能力,α为区间(1,2)之间的一个实数;否则转至步骤(Β3)。
[0031]步骤(Β3)如果节点的负载率,则认为该节点负载率较低;此时,该节点向群中超级节点通报自身的负载率以及可以从群内其它节点接收的最大元数据数目(/.We — mie).ca/x/a'(v ,其中capacity为该节点的能力,普通节点群内负载平衡方法本次执行结束。
[0032]在上述技术问题的基础上,所述超级节点平衡方法包括:超级节点建立哈希列表与有序链表,所述哈希表的键为节点的ID,值有两个项分别为消息的时间戳和节点ID所对应链表节点的地址,所述有序链表包括分别为负载率、需移动元数据量、消息时间戳、节点ID、指向链表下一个节点的指针五个数据项;当超级节点S接收到群内负载率较高的节点A请求转移元数据的消息时:步骤(Cl)如果节点A负载率较高的消息已经存在于哈希表中且时间戳没有过期,则更新哈希表中的相应的时间戳以及有序链表中节点A的负载率、需要移动数据量,并在有序链表中根据节点A当前的负载率按照负载率从高到低的顺序将该链节点移动到有序链表的合适位置,超级节点群内负载平衡方法本次执行结束;否则转至步骤(C2);
[0033]步骤(C2)如果节点A负载率较高的消息已经存在于哈希表中但是时间戳已经过期,则首先在哈希表中删除这条记录,并在哈希表以及有序链表的相应位置创建一条新记录,超级节点群内负载平衡方法本次执行结束;否则转至步骤(C3);
[0034]步骤(C3)由于哈希表中不存在节点A所对应的记录,所以在哈希表以及有序链表的相应位置创建这一条记录,超级节点群内负载平衡方法本次执行结束;
[0035]当超级节点S接收到群内负载率较低的节点B的请求转移元数据的消息时:
[0036]步骤(Dl)超级节点S获取节点B所能接收的元数据数目N ;
[0037] 步骤(D2)若有序链表不为空,则超级节点S从有序链表中取出第一个节点C,获取节点C的节点负载率rate。和所需要转移的元数据数目M,转至步骤(D3);否则说明本群暂时没有负载率过高的节点,超级节点群内负载平衡方法本次执行结束;
[0038]步骤(D3)如果M>N,则超级节点通知节点C将N个元数据转移给节点B,并更新节点C的负载率为rmec = ratec - (raiec - rate).N/ M ?如果mret..>a*rate,则根据节点C的最
新负载率更新其在有序链表中的位置,否则将节点C在哈希表和有序链表中删除,其中α为区间(1,2)之间的一个实数,超级节点群内负载平衡方法本次执行结束;否则转至步骤(D4);
[0039]步骤(D4)超级节点通知节点C将M个元数据转移给节点B,并将节点C从哈希表和有序链表中删除,将N更新为N=N-M,并转至步骤(D2)。
[0040]与现有技术相比,本发明解决了 ΗΡ2Ρ网络群间和群内负载不平衡的技术问。
【专利附图】

【附图说明】
[0041]图1ΗΡ2Ρ网络负载平衡方法整体流程图;
[0042]图2ΗΡ2Ρ网络群内负载平衡方法中超级节点所维护的哈希表;
[0043]图3ΗΡ2Ρ网络群内负载平衡方法中超级节点所维护的有序链表;
[0044]图4ΗΡ2Ρ网络群间负载平衡方法流程图;
[0045]图5ΗΡ2Ρ网络群内负载平衡方法中普通节点的流程图;
[0046]图6ΗΡ2Ρ网络群内负载平衡方法中超级节点的流程图;
[0047]图7不同网络规模下最大负载群的负载与平均负载比值;
[0048]图8不同网络规模下的群负载相对标准差;
[0049]图9不同数目元数据下最大负载群的负载与平均负载比值;
[0050]图10不同数目元数据下的群负载相对标准差;
[0051]图11不同节点资源请求率下的最大负载群的负载与平均负载比值;
[0052]图12不同节点资源请求率下的群负载相对标准差;
[0053]图13网络规模保持不变时负载最大群的负载与群平均负载的比值和β、Y的关系;
[0054]图14网络规模保持不变时群负载相对标准差和β、Y的关系;
[0055]图15网络规模保持不变时群间负载平衡方法中元数据移动量和β、Y的关系;
[0056]图16网络规模减小时负载最大群的负载与群平均负载的比值和β、Y的关系;
[0057]图17网络规模减小时群负载相对标准差和β、Y的关系;
[0058]图18网络规模减小时群间负载平衡方法中元数据移动量和β、Y的关系;
[0059]图19网络规模增大时负载最大群的负载与群平均负载的比值和β、Y的关系;
[0060] 图20网络规模增大时群负载相对标准差和β、Y的关系;
[0061]图21网络规模增大时群间负载平衡方法中元数据移动量和β、Y的关系;
[0062]图22不同网络规模下群内负载率最大节点的负载率与群内平均负载率比值;
[0063]图23不同网络规模下群内负载率相对标准差;
[0064]图24不同数目元数据下群内负载率最大节点的负载率与群内平均负载率比值;
[0065]图25不同数目元数据下群内负载率相对标准差;
[0066]图26群内负载率最大节点的负载率与群内平均负载率的比值与α的关系;
[0067]图27群内负载率相对标准差与α的关系;
[0068]图28群内负载平衡方法中元数据移动数目与α的关系。【具体实施方式】
[0069]A.HP2P群间负载平衡方法【具体实施方式】
[0070]参见图4,本发明中HP2P网络群间负载平衡方法具体实现步骤如下:
[0071](Al)群A中超级节点S通过消息夹带的办法从群内普通节点周期性向其发送的保活消息中获取该节点的当前负载,所以超级节点S可以很容易的获取该群内所有节点的当前负载,并以此计算出当前群A的平均负载Load。
[0072](A2)超级节点S随机地向周围k.1g2N个群获取这些群的负载Load1, Load2,…


,Loadk.1()g2N。通过计算
【权利要求】
1.一种HP2P网络负载平衡的方法,其特征在于:其包括, HP2P网络群间负载平衡的方法,通过群分裂以及群在网络地址空间的移动来实现群之间的负载转移,并通过新节点加入负载较大的群诱导群发生分裂和合并,使负载较大的地址空间群数目增多,负载较小的地址空间群数目减少,其中负载定义为该群中节点单位时间所需要处理消息的平均数目; HP2P网络群内负载平衡的方法,通过超级节点对群内负载有效的调度,使群内负载率较低的节点找到群内负载率较高的节点,其中根据HP2P网络特性,负载近似定义为群内节点所需要维护的元数据数目,负载率定义为负载与节点能力的比值,且所述元数据为资源的索引。
2.如权利要求1所述的一种HP2P网络群间负载平衡的方法,其特征在于:所述HP2P网络群间负载平衡的方法包括: 步骤(Al)群A的超级节点S随机地向周围k.1g2N个群发送群负载请求消息,获取所述k.1g2N个群的负载信息,并通过计算这k.1g2N个群的负载平均值来估算出当前整个HP2P网络的群平均负载Loadavg,其中k是一个在区间[l,N/log2N]取值的整数,N为网络中群的数目; 步骤(A2)若群A当前负载Load〉Y.Loadavg,且群分裂成的两个小群中节点数目均大于HP2P网络群节点数目下限,则将该群分裂成两个群,其中Y是一个大于I的实数,HP2P网络群间负载平衡的方法 本次执行结束;否则转至步骤(A3); 步骤(A3)构建HP2P网络中Chord环,群A向其前驱群和后继群发送负载请求消息,从而获取前驱群和后继群的当前负载情况,其中前驱群为HP2P网络Chord环中离群A最近的前一个群,后继群为HP2P网络Chord环中离群A最近的后一个群; 步骤(A4)如果群A当前负载Load>Loadavg则转至步骤(A5),如果Load〈Loadavg则转至步骤(AS);否则HP2P网络群间负载平衡的方法执行结束; 步骤(A5)如果群A负载Load≥Loadlight/(1-2.β ),则将自身负载降低β,其中β是一个在区间(0,0.5)取值的实数,并转至步骤(Α6);否则转至步骤(AS);其中LoadlightS该群的前驱群和后继群中负载较小的群的负载; 步骤(Α6)如果Loadlight为群A的前驱群的负载,则群A通知其前驱群沿着Chord环顺时针移动,移动的地址空间长度为(Load-Loadlight) XLength/(2XLoad),并将相应的元数据转移到前驱群中,HP2P网络群间负载平衡的方法本次执行结束,其中Length为群A在Chord环中所维护的地址空间长度;否则转至步骤(A7); 步骤(A7) Loadlight为群A的后继群的负载,则该群沿着Chord环逆时针移动,移动的地址空间长度为(Load-Loadlight) XLength/(2XLoad),并将相应的元数据转移到后继群中,而后HP2P网络群间负载平衡的方法本次执行结束; 步骤(A8)如果Load ( (1_2.β ).Loadheavy,并转至步骤(Α9);其中Loadheavy为该群的前驱群和后继群中负载较重群的负载,β是一个在区间(0,0.5)取值的实数,否则ΗΡ2Ρ网络群间负载平衡方法执行结束; 步骤(Α9)如果Loadhravy为群A的前驱群的负载,则群A通知其前驱群沿着Chord环逆时针移动,移动的地址空间长度为(Loadheavy-Load) X Lengthpredecessor/ (2 X Loadheavy),并从前驱群获取相应的元数据,其中Lengthpral_s为前驱群在Chord环中所维护的地址空间长度,而后HP2P网络群间负载平衡方法本次执行结束;否则转至步骤(AlO); 步骤(AlO) Loadheavy为群A的后继群的负载,则群A沿着Chord环顺时针移动,移动的地址空间长度为(Loadheavy-Load) X LengthsucxessOT/(2 X Loadheavy),并从后继群获取相应的元数据,其中LengthsucxessOT为后继群在Chord环中所维护的地址空间长度,此时HP2P网络群间负载平衡方法执行结束。
3.如权利要求2所述的一种HP2P网络群间负载平衡的方法,其特征在于:为了进一步HP2P网络群间负载的均衡性,在节点加入网络过程中,节点从k.1g2N个群中选择一个负载最大群进行加入,其中k与步骤(Al)中所涉及的参数k为同一参数,N为HP2P网络中群的数目。
4.如权利要求1所述的一种HP2P网络负载平衡的方法,其特征在于:所述HP2P网络群内负载平衡的方法包括普通节点群内负载平衡方法与超级节点群内负载平衡方法。
5.如权利要求4所述的一种HP2P网络群内负载平衡的方法,其特征在于:所述普通节点群内负载平衡方法包括: 步骤(BI)普通节点从超级节点处获取该群当前的平均负载率 步骤(B2)如果节点的负载率mte>cr.—,则认为节点负载率较高,此时该节点将向群中超级节点通报自身的负载率以及所需要向群内其它节点转移的元数据数目为(ra/e-,然后普通节点群内负载平衡方法本次执行结束,其中capacity为该节点的能力,α为区间(1,2)之间的一个实数;否则转至步骤(Β3); 步骤(Β3)如果节点的负载率,则认为该节点负载率较低;此时,该节点向群中超级节点通报自身的负载率以及可以从群内其它节点接收的最大元数据数目(rate--rate) capacity,其中capacity为该节点的能力,普通节点群内负载平衡方法本次执行结束。
6.如权利要求4所述的一种HP2P网络群内负载平衡的方法,其特征在于:所述超级节点平衡方法包括:超级节点需要建立哈希列表与有序链表,所述哈希表的键为节点的ID,值有两个项分别为消息的时间戳和节点ID所对应链表节点的地址,所述有序链表包括分别为负载率、需移动元数据量、消息时间戳、节点ID、指向链表下一个节点的指针五个数据项;当超级节点S接收到群内负载率较高的节点A的请求转移元数据的消息时: 步骤(Cl)如果节点A负载率较高的消息已经存在于哈希表中且时间戳没有过期,则更新哈希表中的相应的时间戳以及有序链表中节点A的负载率、需要移动数据量,并在有序链表中根据节点A当前的负载率按照负载率从高到低的顺序将该链节点移动到有序链表的合适位置,超级节点群内负载平衡方法本次执行结束;否则转至步骤(C2); 步骤(C2)如果节点A负载率较高的消息已经存在于哈希表中但是时间戳已经过期,则首先在哈希表中删除这条记录,并在哈希表以及有序链表的相应位置创建一条新记录,超级节点群内负载平衡方法本次执行结束;否则转至步骤(C3); 步骤(C3)由于在哈希表中不存在节点A所对应的记录,所以在哈希表以及有序链表的相应位置创建这一条记录,超级节点群内负载平衡方法本次执行结束; 当超级节点S接收到群内负载率较低的节点B的请求转移元数据的消息时:步骤(Dl)超级节点S获取节点B所能接收的元数据数目N ; 步骤(D2)若有序链表不为空,则超级节点S从有序链表中取出第一个节点C,获取节点C的节点负载率rate。和所需要转移的元数据数目M,转至步骤(D3);否则超级节点群内负载平衡方法执行结束; 步骤(D3)如果M>N,则超级节点通知节点C将N个元数据转移给节点B,并更新节点C的负载率为 ratec - mtec -(raiec - rate).N/ M , M 的值修改为 M=M-N,如果 raiec.> a.rate ,则根据节点C的最新负载率更新其在有序链表中的位置,否则将节点C在哈希表和有序链表中删除,超级节点群内负载平衡方法本次执行结束;否则转至步骤(D4); 步骤(D4)超级节点通知节点C将M个元数据转移给节点B,并将节点C从哈希表和有序链表中删除,将N更新为N=N-M,并转至步骤(D2)。
【文档编号】H04L12/803GK103916327SQ201410106285
【公开日】2014年7月9日 申请日期:2014年3月21日 优先权日:2014年3月21日
【发明者】段振华, 郭建根, 王小兵, 田聪, 张南, 黄伯虎 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1