CN1777120A - 结构化p2p系统的分布式负载均衡方法 - Google Patents

结构化p2p系统的分布式负载均衡方法 Download PDF

Info

Publication number
CN1777120A
CN1777120A CN 200510126321 CN200510126321A CN1777120A CN 1777120 A CN1777120 A CN 1777120A CN 200510126321 CN200510126321 CN 200510126321 CN 200510126321 A CN200510126321 A CN 200510126321A CN 1777120 A CN1777120 A CN 1777120A
Authority
CN
China
Prior art keywords
load
node
structured
information
distributed
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.)
Granted
Application number
CN 200510126321
Other languages
English (en)
Other versions
CN100364279C (zh
Inventor
李振宇
谢高岗
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.)
Zhejiang Tmall Technology Co Ltd
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNB2005101263217A priority Critical patent/CN100364279C/zh
Publication of CN1777120A publication Critical patent/CN1777120A/zh
Application granted granted Critical
Publication of CN100364279C publication Critical patent/CN100364279C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及计算机网络技术领域,特别是涉及结构化P2P系统的分布式负载均衡。该方法由局部负载信息收集和负载转移两部分组成。节点根据邻居节点信息周期性地收集局部负载信息,过载节点通过启发式方法向非过载节点转移负载。该方法利用了节点在物理网络上的邻近关系,使得负载尽量在链路延迟较小的节点之间转移,节省了网络带宽;同时设法在负载转移效果和负载转移开销之间取得权衡。该方法是分布式的,能够获得理想的均衡效果,而且能够适应大规模P2P系统。

Description

结构化P2P系统的分布式负载均衡方法
技术领域
本发明涉及计算机网络技术领域,特别是涉及结构化P2P系统的分布式负载均衡。
背景技术
与非结构化P2P(Peer-to-Peer,对等)系统相比,基于DHTs(DistributedHash Tables)的结构化P2P系统在系统扩展性、查找速度等方面都有了很大的提高,这使得结构化P2P系统在最近几年得到了普遍的关注和研究(CAN,Chord,Pastry,Tapestry)。结构化P2P系统中,数据对象(dataobject)借助于哈希函数随机地分布在各个对等节点中。由于节点ID之间距离是不规则的,所以某些节点的负载可能是系统平均负载的O(logN)倍。对P2P应用的测量研究表明P2P系统中节点能力(CPU、存储空间、带宽等)差异很大,而DHTs却假设节点能力是相同的。这导致了负载不均衡问题,即节点的负载和节点的能力不相符。
副本和缓存是解决负载均衡的最直接方法,但是需要复杂的算法来维护副本和缓存内容的一致性,尤其是在动态环境下。
现有的负载均衡方法主要存在两个不足:1)负载的转移没有考虑节点之间的链路延迟,所以负载可能在链路延迟较大的节点之间转移,浪费了系统资源;2)该方法依赖于系统中固定位置的某些节点来收集负载信息和生成转移策略,这种类似于集中式的方法不仅增加了这些节点的负载,而且增加了这些节点被攻击的概率。
在动态的P2P网络中,上述不足更加明显。所以有必要设计一种分布式的负载均衡方法,这种分布式负载均衡方法不仅能够有效地均衡负载,而且要尽量减少负载转移开销,从而节省网络带宽。
发明内容
本发明利用了节点在覆盖网络上的邻居信息,并提出了一种结构化P2P系统的分布式负载均衡方法,包括基于邻居信息的局部负载信息收集方法和启发式负载转移方法,节点根据邻居节点信息周期性地收集局部负载信息,过载节点通过启发式方法向非过载节点转移负载,该方法利用了节点在物理网络上的邻近关系,所以负载能够在链路延迟较小的节点之间转移;同时兼顾了负载转移效果和负载转移开销两个相互冲突的目标。
所述的结构化P2P系统的分布式负载均衡方法,基于邻居信息的局部负载信息收集方法,使用了一种高效的泛洪机制,而且负载信息的收集只使用节点的邻居信息,简单且快速。
所述的结构化P2P系统的分布式负载均衡方法,基于邻居信息的局部负载信息收集方法,该方法的空间复杂度为O(log2 N)。
所述的结构化P2P系统的分布式负载均衡方法,启发式负载转移方法,不仅能够获得理想的负载均衡效果,而且利用了节点在物理网络上的邻近关系,降低了负载转移开销,节省了网络带宽。
所述的结构化P2P系统的分布式负载均衡方法,启发式负载转移方法,能够在负载均衡效果和负载转移开销之间取得较好的折中,而且时间复杂度为O(log2 N+log N),具有较好的扩展性,能够适应大规模P2P系统。
所述的结构化P2P系统的分布式负载均衡方法,结构化P2P系统负载均衡方法,不仅能够有效解决结构化P2P系统的负载不均衡问题,而且是完全分布式的。
具体内容叙述如下:
1.收集系统局部负载信息
本方法利用一种高效的TTL-2(Time To Live-2)泛洪机制收集系统局部负载信息。每个节点周期性地向其直接邻居节点发送TTL为2的消息,该消息内容包括源地址,TTL的值k以及时间戳ts。收到消息的节点向源节点汇报负载信息(响应消息),响应消息内容包括响应节点的地址,节点负载,节点能力以及时间戳ts;然后把k减1,如果k大于0,更新收到消息的TTL值,并把消息转发给直接邻居节点。由源节点估算与响应节点之间的链路延迟,并把负载信息以及链路延迟信息保存到链表LILoA(load information list of node A)中,该链表长度为O(log2 N),其中N为系统中节点个数。通过这个过程,源节点就完成了局部负载信息的收集。
2.启发式负载转移方法
在完成局部负载信息收集后,源节点根据收集到的信息,计算系统局部利用率,并使用启发式方法进行负载转移。负载转移方法的伪代码描述如下:
  Procedure VS_Reassignment(NodeA,LIL LILoA){1:Compute system local utilization of node A:utl_LA;2:if(utl_LA>1)3:utl_LA=1;4:k_A=(1+utl_A)/2;5:Target_Load TL_A=k_A*A’s capacity;6:if(A’s load<=TL_A)7:return;8:Removed_VS=Choose_VS_To_Remove(A,TL_A);9:Accept_Node=Choose_Node_To_Accept(Removed_VS,LILoA,k_A);10:if(Accept_Node!=nil){11:Transfer Removed_VS from node A toAccept_Node;
  12:}13:LILoA.clear();/*clear the list*/14:}
在上面的伪代码中,当系统局部利用率utl_LA大于1时,置utl_LA为1,这可以加快负载均衡速度,提高负载均衡质量。函数Choose_VS_To_Remove和Choose_Node_To_Accept用于生成转移策略。如何从过载节点转移虚拟服务器给非过载节点使得负载均衡达到最优(即最小化最大节点利用率)是NP完全问题,本发明设计了一种高效的启发式方法来选择需要删除的虚拟服务器以及接收该虚拟服务器的物理节点。伪代码描述如下:
 Procedure    Choose_VS_To_Remove(Node A,Target_Load TL_A){1:Removed_VS=nil;2:for each VS of node A do{/*VS is short for Virtualserver*/3:if(A’s load-VS’s load)≤TL_A){4:if(Removed_VS==nil)‖(VS’s load<Removed_VS’s load))5:Removed_VS=VS;6:}7:}/*end of for each VS...*/9:if(Removed_VS==nil){10:Set Removed_VS as the virtual server which hasthe heaviest load;11:}12:return Removed_VS;13:}Procedure Choose_Node_To_Accept(Virtual_server
Figure A20051012632100081
在函数Choose_VS_To_Remove中,当不存在一个虚拟服务器使节点A变为非过载节点时,选择负载最大的虚拟服务器转移。在函数Choose_Node_To_Accept中,utli指节点i接收虚拟服务器后的利用率,而latA-i指节点A和节点i之间的链路延迟.算法首先保证接收节点在接收虚拟服务器后不会成为过载节点,然后通过调整参数r和s在负载均衡效果和节点间的链路延迟之间取得折中。在等式p=r×utl_imp+s×lat_imp中r和s均为非负数,若r>s,则更注重负载均衡的效果;而如果r<s,则更注重在链路延迟较小的节点转移负载。
上述负载转移方法利用了节点在物理网络上的邻近关系,通过调整参数r和s在负载均衡效果和节点间的链路延迟之间取得折中,可在负载均衡效果和负载转移开销之间权衡。算法时间复杂度为O(log2 N+log N),N为系统中节点数目。这说明该方法具有较好的扩展性,能够适应大规模P2P系统。
附图说明
图1是本方法的负载均衡效果图。
图2是调整方法参数时负载均衡效果和负载转移开销累积分布图。
图3是调整系统利用率时负载均衡效果图。
图4是结构化P2P系统的分布式负载均衡方法的流程图。
具体实施方式
图1是本方法的负载均衡效果图,(a)负载均衡前,(b)负载均衡后。可以看出,在负载均衡之前,负载的分布很不均匀:大量的节点过载(即节点负载大于节点能力)。而负载均衡后,节点的负载和节点的能力基本上成正比例关系,这也是负载均衡的目的。所以分布式负载均衡方法能够获得理想的负载均衡效果。
图2是系统利用率为0.81时,调整方法参数的负载均衡效果图。(a)负载均衡效果,,(b)被转移的负载的累积分布。图中纵坐标是99.5百分位节点利用率。从图3可以看出,通过调整方法参数,分布式负载均衡方法能够在负载均衡效果和负载转移开销之间取得权衡。同时可以看出r=s=1时权衡效果最理想。进一步的计算得出,当r=s=1时,该方法能够节省23%以上的网络带宽。
图3是调整系统利用率时的负载均衡效果图,其中方法参数为r=s=1。可以看出,第99.5百分位节点利用率随着系统利用率的增加呈线性增长趋势。但在各种利用率下,经过几个周期后,第99.5百分位节点利用率都小于1.0。这说明分布式负载均衡方法在各种利用率下都能获得理想的负载均衡效果。
图4的结构化P2P系统的分布式负载均衡方法,其步骤如下:
步骤S1,节点A收集局部负载信息,收集到信息的节点集合为S;
步骤S2,节点A根据收集到的负载信息,计算系统局部利用率;
步骤S3,判断节点A是否为过载节点,如果不是,则返回;否则继续执行;
步骤S4,根据函数Choose_VS_To_Remov选择需要转移的虚拟服务器Removed_VS;
步骤S5,根据函数Choose_Node_To_Accept选择接收Removed_VS的节点Accept_Node,如果Accept_Node为空,则返回;否则继续执行;
步骤S6,节点A向节点Accept_Node转移虚拟服务器Accept_Node,方法结束。

Claims (7)

1.一种结构化P2P系统的分布式负载均衡方法,包括基于邻居信息的局部负载信息收集方法和启发式负载转移方法,节点根据邻居节点信息周期性地收集局部负载信息,过载节点通过启发式方法向非过载节点转移负载,该方法利用了节点在物理网络上的邻近关系,所以负载能够在链路延迟较小的节点之间转移;同时兼顾了负载转移效果和负载转移开销两个相互冲突的目标。
2.根据权利要求1所述的结构化P2P系统的分布式负载均衡方法,其特征在于,基于邻居信息的局部负载信息收集方法,使用了一种高效的泛洪机制,而且负载信息的收集只使用节点的邻居信息,简单且快速。
3.根据权利要求1或2所述的结构化P2P系统的分布式负载均衡方法,其特征在于,基于邻居信息的局部负载信息收集方法,该方法的空间复杂度为O(log2N)。
4.根据权利要求1所述的结构化P2P系统的分布式负载均衡方法,其特征在于,启发式负载转移方法,不仅能够获得理想的负载均衡效果,而且利用了节点在物理网络上的邻近关系,降低了负载转移开销,节省了网络带宽。
5.根据权利要求1或4所述的结构化P2P系统的分布式负载均衡方法,其特征在于,启发式负载转移方法,能够在负载均衡效果和负载转移开销之间取得较好的折中,而且时间复杂度为O(log2N+logN),具有较好的扩展性,能够适应大规模P2P系统。
6.根据权利要求1所述的结构化P2P系统的分布式负载均衡方法,其特征在于,结构化P2P系统负载均衡方法,不仅能够有效解决结构化P2P系统的负载不均衡问题,而且是完全分布式的。
7.根据权利要求1所述的结构化P2P系统的分布式负载均衡方法,其步骤如下:
步骤S1,节点A收集局部负载信息,收集到信息的节点集合为S;
步骤S2,节点A根据收集到的负载信息,计算系统局部利用率;
步骤S3,判断节点A是否为过载节点,如果不是,则返回;否则继续执行;
步骤S4,根据函数Choose_VS_To_Remov选择需要转移的虚拟服务器Removed_VS;
步骤S5,根据函数Choose_Node_To_Accept选择接收Removed_VS的节点Accept_Node,如果Accept_Node为空,则返回;否则继续执行;
步骤S6,节点A向节点Accept_Node转移虚拟服务器Accept_Node,方法结束。
CNB2005101263217A 2005-12-07 2005-12-07 结构化p2p系统的分布式负载均衡方法 Active CN100364279C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101263217A CN100364279C (zh) 2005-12-07 2005-12-07 结构化p2p系统的分布式负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101263217A CN100364279C (zh) 2005-12-07 2005-12-07 结构化p2p系统的分布式负载均衡方法

Publications (2)

Publication Number Publication Date
CN1777120A true CN1777120A (zh) 2006-05-24
CN100364279C CN100364279C (zh) 2008-01-23

Family

ID=36766439

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101263217A Active CN100364279C (zh) 2005-12-07 2005-12-07 结构化p2p系统的分布式负载均衡方法

Country Status (1)

Country Link
CN (1) CN100364279C (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100456702C (zh) * 2006-09-27 2009-01-28 北京航空航天大学 网络资源负载均衡方法
CN101753534A (zh) * 2008-12-10 2010-06-23 徐文祥 基于集群服务器的分区自适应网络系统及其构建方法
WO2010072085A1 (zh) * 2008-12-25 2010-07-01 华为技术有限公司 分布式系统的业务数据管理方法、装置及分布式系统
CN101789960A (zh) * 2009-12-31 2010-07-28 中国人民解放军国防科学技术大学 邻居会话负载处理方法及装置
CN101883113A (zh) * 2010-06-25 2010-11-10 中兴通讯股份有限公司 一种实现重叠网络负载均衡的方法和物理节点
CN101895474A (zh) * 2010-07-29 2010-11-24 江苏大学 一种基于信息扩散的p2p网络路由控制方法
US7848355B2 (en) 2008-10-30 2010-12-07 International Business Machines Corporation Resource allocation in peer-to-peer streaming
CN101414962B (zh) * 2007-10-19 2011-01-05 华为技术有限公司 实现负载均衡的方法和节点
CN101325552B (zh) * 2008-08-01 2011-03-30 杭州华三通信技术有限公司 访问请求的三角转发方法和glb服务器
CN101202746B (zh) * 2006-12-15 2011-04-20 华为技术有限公司 节点标识符生成方法及负载均衡方法及装置
CN102158559A (zh) * 2011-04-18 2011-08-17 浙江工业大学 一种基于p2p网络的负载均衡的方法
CN101808079B (zh) * 2009-02-12 2013-10-02 华为技术有限公司 一种确定直接邻居节点的方法、服务器和客户端
CN106487823A (zh) * 2015-08-24 2017-03-08 上海斐讯数据通信技术有限公司 一种基于sdn架构的文件传输方法及系统
CN107506500A (zh) * 2017-10-09 2017-12-22 郑州云海信息技术有限公司 一种数据迁移的控制方法及相关装置
CN111857946A (zh) * 2019-04-26 2020-10-30 慧与发展有限责任合伙企业 基于位置的虚拟化工作负载放置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1177437C (zh) * 2002-05-24 2004-11-24 华为技术有限公司 实现快速转发并支持负载分担的方法
CN100411401C (zh) * 2002-12-31 2008-08-13 联想(北京)有限公司 网络设备自适应负载均衡的方法
CN1311665C (zh) * 2003-07-01 2007-04-18 株式会社日立制作所 具有多个分布式回归代理的移动IPv6网络及其负载平衡方法
US7962914B2 (en) * 2003-11-25 2011-06-14 Emc Corporation Method and apparatus for load balancing of distributed processing units based on performance metrics

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100456702C (zh) * 2006-09-27 2009-01-28 北京航空航天大学 网络资源负载均衡方法
CN101202746B (zh) * 2006-12-15 2011-04-20 华为技术有限公司 节点标识符生成方法及负载均衡方法及装置
CN101414962B (zh) * 2007-10-19 2011-01-05 华为技术有限公司 实现负载均衡的方法和节点
CN101325552B (zh) * 2008-08-01 2011-03-30 杭州华三通信技术有限公司 访问请求的三角转发方法和glb服务器
US7848355B2 (en) 2008-10-30 2010-12-07 International Business Machines Corporation Resource allocation in peer-to-peer streaming
CN101753534A (zh) * 2008-12-10 2010-06-23 徐文祥 基于集群服务器的分区自适应网络系统及其构建方法
WO2010072085A1 (zh) * 2008-12-25 2010-07-01 华为技术有限公司 分布式系统的业务数据管理方法、装置及分布式系统
CN101808079B (zh) * 2009-02-12 2013-10-02 华为技术有限公司 一种确定直接邻居节点的方法、服务器和客户端
CN101789960A (zh) * 2009-12-31 2010-07-28 中国人民解放军国防科学技术大学 邻居会话负载处理方法及装置
CN101789960B (zh) * 2009-12-31 2013-10-09 中国人民解放军国防科学技术大学 邻居会话负载处理方法及装置
CN101883113B (zh) * 2010-06-25 2014-08-20 中兴通讯股份有限公司 一种实现重叠网络负载均衡的方法和物理节点
CN101883113A (zh) * 2010-06-25 2010-11-10 中兴通讯股份有限公司 一种实现重叠网络负载均衡的方法和物理节点
CN101895474A (zh) * 2010-07-29 2010-11-24 江苏大学 一种基于信息扩散的p2p网络路由控制方法
CN101895474B (zh) * 2010-07-29 2012-12-19 江苏大学 一种基于信息扩散的p2p网络路由控制方法
CN102158559A (zh) * 2011-04-18 2011-08-17 浙江工业大学 一种基于p2p网络的负载均衡的方法
CN102158559B (zh) * 2011-04-18 2016-05-18 浙江工业大学 一种基于p2p网络的负载均衡的方法
CN106487823A (zh) * 2015-08-24 2017-03-08 上海斐讯数据通信技术有限公司 一种基于sdn架构的文件传输方法及系统
CN107506500A (zh) * 2017-10-09 2017-12-22 郑州云海信息技术有限公司 一种数据迁移的控制方法及相关装置
CN111857946A (zh) * 2019-04-26 2020-10-30 慧与发展有限责任合伙企业 基于位置的虚拟化工作负载放置
CN111857946B (zh) * 2019-04-26 2023-11-28 慧与发展有限责任合伙企业 基于位置的虚拟化工作负载放置

Also Published As

Publication number Publication date
CN100364279C (zh) 2008-01-23

Similar Documents

Publication Publication Date Title
CN1777120A (zh) 结构化p2p系统的分布式负载均衡方法
CN108551474B (zh) 一种服务器集群的负载均衡方法
CN101764835B (zh) 基于MapReduce编程架构的任务分配方法及装置
CN103595805A (zh) 一种基于分布式集群的数据放置方法
EP2036347B1 (en) Admission control for performance aware peer-to-peer video-on-demand
JP2008027442A (ja) サブタスク・プロセッサの分散スケジューリング
CN104969213A (zh) 用于低延迟数据存取的数据流分割
CN101061469A (zh) 分布式请求选路
CN1858734A (zh) 一种数据存储及搜索方法
CN106936925A (zh) 负载均衡方法和系统
CN108089918B (zh) 一种面向异构服务器结构的图计算负载均衡方法
CN111901170A (zh) 可靠性感知的服务功能链备份保护方法
Xu et al. Effective load balancing in p2p systems
CN113382074A (zh) 一种基于动态反馈的微服务负载均衡优化方法
CN111526208A (zh) 一种基于微服务的高并发云平台文件传输优化方法
CN101729582B (zh) 分布式存储的管理方法、装置及系统
CN101465875A (zh) 一种基于网络定位的负载均衡算法
CN101465753B (zh) P2p系统组管理方法及其装置和系统
CN109981794B (zh) 基于区块链节点网络的处理方法、装置及电子设备
CN101079897A (zh) 一种便于存储节点数量扩增的并行存储系统构造方法
CN103281395B (zh) 一种基于客户端数量的数据片均分选择系统及方法
CN114866558B (zh) 基于数字服务技术的区块链认证平台与方法
Ye et al. Peer-to-peer replication with preferences
CN116489096A (zh) 一种网关负载均衡算法优化方法
JP3645135B2 (ja) 並列多目標追尾装置

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
ASS Succession or assignment of patent right

Owner name: ALIBABA GROUP HOLDING LTD.

Free format text: FORMER OWNER: INSTITUTE OF COMPUTING TECHNOLOGY HINESE ACADEMY OF SCIENCES

Effective date: 20130104

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100080 HAIDIAN, BEIJING TO: 310099 HANGZHOU, ZHEJIANG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20130104

Address after: 310099 A building, West Lake international science and technology building, No. 19 Wen two road, 391, Zhejiang, Hangzhou, Xihu District, China

Patentee after: Alibaba (China) Co., Ltd.

Address before: 100080 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

TR01 Transfer of patent right

Effective date of registration: 20210226

Address after: Room 507, 5 / F, building 3, 969 Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province

Patentee after: ZHEJIANG TMALL TECHNOLOGY Co.,Ltd.

Address before: 19 / F, building a, Xihu international science and technology building, 391 Wener Road, Xihu District, Hangzhou City, Zhejiang Province, 310099

Patentee before: Alibaba (China) Co.,Ltd.

TR01 Transfer of patent right