CN110138670B - 一种基于动态路径的负载迁移方法 - Google Patents
一种基于动态路径的负载迁移方法 Download PDFInfo
- Publication number
- CN110138670B CN110138670B CN201910364170.0A CN201910364170A CN110138670B CN 110138670 B CN110138670 B CN 110138670B CN 201910364170 A CN201910364170 A CN 201910364170A CN 110138670 B CN110138670 B CN 110138670B
- Authority
- CN
- China
- Prior art keywords
- node
- path
- nodes
- matrix
- load balancing
- 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.)
- Active
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/12—Shortest path evaluation
-
- 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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于动态路径的负载迁移方法,所述方法对于任意拓扑结构,使用Floyd算法在原拓扑环境的无向图中获取任意两点之间的最短距离矩阵D和最短路径矩阵R,并构造出连接所有节点的路径,按最短路径进行双向传递,传递两个方向的负载均衡设备的负载状态,并在各个负载均衡节点上更新相邻i个距离的负载均衡状态表,并利用动态路由协议OSPF中hello报文确保网络状态,完成对最短距离矩阵D和最短路径矩阵R的更新。通过传递的各个相邻节点的负载均衡状态,维持了算法的实时性,并基于路径和状态作为负载依据,对局部进行优化,以局部稳定延展到整体稳定,实现负载均衡。
Description
技术领域
本发明涉及一种负载均衡方法,特别涉及一种去中心化实现兄弟节点之间的负载迁移的方法。
背景技术
网络节点中负载均衡的平衡效果以及处理时间的长短,在很大程度上决定着整个网络系统的性能。随着人们在负载均衡技术方面做出的大量研究,负载均衡与集群技术进行了融合,基于多转发节点的结构,分布式与云调度中心贡献了许多各种各样的方法。例如分布式中的连接矩阵法通过等量分割数据,使得分发出来的数据长度保持相同,以全局轮询的方式实现负载均衡,结构上属于基于客户端的负载均衡结构,由一出发点设备作为发起端发送全部流量并进行优化调度,属于串联结构。云调度中心中JTangWOS提供了三层结构,分别用于监控节点,提供负载均衡策略的服务器以及处理节点群,动态负载均衡方法的形式基于权值实时调整,这种方法结构上属于基于服务器的负载均衡结构,负载均衡服务器并不是串联在线路中,由类似代理的形式,获取各个节点状态,并提供负载均衡策略。
以上两种负载均衡方法都是建立在集群结构上,都使用父子结构,即使用一个服务器直接或间接的管理出入口的所有流量,进而对下属负载均衡节点进行一定程度的把控。关于此类负载均衡方法的专利文件较多,各有其优缺点。
发明内容
本发明的目的是提供一种非传统结构的基于动态路径的负载迁移方法,该方法中的结构不同于父子结构,属于兄弟结构,不直接管理所有流量,而是从局部入手解决局部流量偏高的情况,将偏高的流量均匀到周围节点上,以实现整体的负载均衡。
本发明的目的是通过以下技术方案实现的:
一种基于动态路径的负载迁移方法,包括如下步骤:
步骤一、将负载均衡节点以无向图的形式输入,使用Floyd算法对无向图整体进行分析,得出最短距离矩阵和最短路径矩阵;
步骤二、通过最小连接矩阵构建一条联通所有点的路径;
步骤三、基于对R求在两个端点vi到vj的所有等价最短路径,选择vi和vj作为发送源,将自身负载均衡状态进行传递,并在途径节点时,在节点上更新单方向的负载均衡状态,复数更新流途经时,按照最晚到达的内容为准;
步骤四、使用邻接节点状态表R记录距离自身i距离的节点,并使用hello报文对节点进行保活探测,当出现节点无响应时视为物理结构变化,则对最短距离矩阵和最短路径矩阵进行更新,并重新对路径进行生成,返回步骤二;
步骤五、当节点j出现数据流异常时,即数据量超过阈值,将导致设备过载,于是查询邻接节点状态表内容,将过多的流量迁移到邻接节点处理;若没有出现流量超过阈值的情况则不执行任何操作;
步骤六、重复步骤二至五,直至流量发送结束。
相比于现有技术,本发明具有如下优点:
传统负载均衡的结构不管是哪一种,都会以串联或并联的形式插在客户端与服务端之间,属于父子结构,父节点管理调度子节点的流量,以便于对服务器集群整体进行管理,所以负载均衡的结构相对固定。在处理负载均衡问题时,这种结构很有效,但不是唯一的解决方案。可以跳出父子结构的框架,在兄弟节点之间进行负载均衡的实现。相对于父子结构,兄弟结构的好处是不需要一个中心来对整体进行调控,那么用于中心调度而花费的时间就消失了,这种情况下,各个下属节点就不需要等待调度中心的计算,直接接受流量。但这种方式就需要各个节点之间实现迁移调度,要求服务器之间进行对各自的探索和流量的传递,探测模块以及转发模块采用并行的模式,并行模块的处理时间会影响到实时性,但不影响迁移算法的调度,整体比传统结构省时。
本发明使用Floyd算法构建路径,并在路径上传递节点信息,使用两个方向在规划好的路径上进行信息的传递。在各个节点设备上更新其他节点状态。左方向更新流更新节点j左边所有点的信息,右方向更新流更新节点右边所有点的信息。两个信息流组合成完整的节点状态表。然后根据传递的状态,在节点出现过载时,将流量迁移到相对闲置的设备,以达成负载均衡的效果。
附图说明
图1是任意结构无向图中生成路径示意图。
图2是基于动态路径的负载迁移法的路径生成流程图。
图3是基于动态路径的负载迁移法的路径维护流程图。
图4是基于动态路径的负载迁移法数据迁移的流程图。
图5为实验设备横向对比图。
具体实施方式
下面结合附图对本发明的技术方案作进一步的说明,但并不局限于此,凡是对本发明技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的保护范围中。
本发明提供了一种基于动态路径的负载迁移方法,所述方法包括如下步骤:
步骤一、对于一个由N个节点构成的负载网络,可以构成一个具有N个节点的无向图,设赋权无向图G=[V,W],其中V={v1,v2,...,vn}为顶点集合,W=(wij)n*n为G的邻接矩阵,wij表示边(vi,vj)的权值,即vi与vj之间的传输代价,体现在vi与vj之间的网络状况以及TTL等方面。
其中,n为节点的个数;i、j大于等于1小于等于n;vi与vj表示第i个和第j个顶点。
使用Floyd算法计算最短距离矩阵D和最短路径矩阵R:
设定初值:
对任意vk∈V,更新
最终得到最短距离矩阵与最短路径矩阵:
步骤二、通过最短距离矩阵和最短路径矩阵构建一条联通所有点的路径,以深度优先的搜索策略构建两个端点vi和vj的路径,如图1所示,构建类似的路径。
步骤三、基于对R求在vi到vj的所有等价最短路径,使用设置路径的两端,在两端分别进行向另一个方向的扫描,扫描的过程中加入负载均衡依据的传递,由头部节点和尾部节点两个方向开始传递当前负载均衡器的负载状态,并在每个负载均衡器中维护一个各个负载均衡设备的状态表。如图2所示,具体步骤如下:
(1)初始化路径:
分解R(x,y)=rxy;MidP=rxy,nmu=||MidP||,NumSet=[1,num],PathSet={};
初始化路径的中间节点集PathSet:
其中,MidP=rxy为vx到vy最短路径的点集;nmu为中间点集的个数;
(2)对PathSet中每条路径Pathk进行向后搜索:
将Pathk分解成num个集合:
同时传递x到y方向负载均衡设备状态,并更新x到当前节点k之间的节点状态。
(3)对PathSet中每条路径Pathk进行向前搜索:
将Pathk分解成num个集合:
同时传递y到x方向负载均衡设备状态,并更新y到当前节点k之间的节点状态。
PathSet就是vi到vj的所有等价最短路路径集合。而负载均衡设备状态也从两个方向传递结束,任意节点k更新了x到k之间的状态,y到k之间的状态,并由两个部分组成一个完整的邻接节点状态表。
步骤四、节点k使用邻接节点状态表R(即最短路径矩阵R)记录距离自身i距离的节点,其中i可以为max(k-first,last-k),即获取路径上所有节点的状态。利用动态路由协议中的hello报文特性,使用hello报文对节点k周边距离i的节点进行保活探测。当出现节点无响应时视为物理结构变化,则对最短距离矩阵和最短路径矩阵进行更新,并使用Floyd算法重新对路径进行生成。
基于动态路径的负载迁移法的路径维护流程图如图3所示。
步骤五、当节点j出现数据流超过阈值时,节点j将判定为过载。于是启动迁移调度算法,对于接受到的流量e,节点j处理时间为td,等待时间为tw,那么将流量发送至距离节点j的距离为l的节点k上,所需时间为ts,节点k的内存占用为σk,节点k的总内存上限为σtotal,那么判定是否进行迁移的参数Q为:
其中,Y为要迁移的流量大小,Sj为节点j的邻接节点状态表,70%为节点配置的阈值。若不存在任何一个邻接节点空闲或预计传输代价大于直接处理的代价时,放弃将流量迁移。否则选择一个适合的节点(取小顶堆堆顶元素,对节点和预估值进行预判,来确定节点是否适合)进行流量转发。
基于动态路径的负载迁移法的路径维护流程图如图4所示。
步骤六、重复步骤二至步骤五,直至流量发送结束。
上面是本发明提出的算法的一种实施,但在某些步骤上,可以进行适当改变,以适应具体情况的需求。例如,在步骤一使用Floyd算法构建矩阵时,算法的时间复杂度为Q(n3),对于大量节点的网络来说,这部分会浪费较多的时间,这部分可以对算法本身进行优化。步骤二和步骤三中实现对路径的构造以及信息在路径上的传递,如果路径上节点过多将导致传递时间过长,实时性降低,于是可以对路径进行分段,以局部的最适宜代表整体的稳定。步骤五中可以加强对迁移的判断等。
本发明的方法提出了去中心化的负载均衡结构,以处理局部流量倾斜偏高的情况,将流量迁移周边的服务器处理,缓解了负载均衡倾斜的现象。由于没有了中心,由调度中心引起的处理延时问题就解决了,但由于各个服务器节点要占用了一部分资源来维持路径上负载均衡迁移模块,使得整体处理速度提高,但各个服务器处理性能稍作降低。
本发明主要处理在集群式负载均衡网络之中流量过于偏向某一集群,而将流量迁移给周围的集群设备,以达到恢复流量倾斜的状况。对于任意拓扑结构,使用Floyd算法在原拓扑环境的无向图中获取任意两点之间的最短距离矩阵D和最短路径矩阵R,并构造出连接所有节点的路径,按最短路径进行双向传递,传递两个方向的负载均衡设备的负载状态,并在各个负载均衡节点上更新相邻i个距离的负载均衡状态表,并利用动态路由协议OSPF中hello报文确保网络状态,完成对最短距离矩阵D和最短路径矩阵R的更新。通过传递的各个相邻节点的负载均衡状态,维持了算法的实时性,并基于路径和状态作为负载依据,对局部进行优化,以局部稳定延展到整体稳定,实现负载均衡。
图5所示为实验设备横向对比图,通过图内数据分析,可以清晰的看到,随着发送次数的增加,使用基于动态路径的负载迁移方法后,均衡效果更为明显。发送3次之后,优化前数据的增幅开始变大,直到发送次数为8次时,优化前结构的负载率稳定在60%~80%之间。而通过基于动态探测的负载迁移模型优化后,随着发送次数的增加,整体呈现上升趋势,但稳定在30%~50%之间,比较平稳。其中发送次数为4时出现了一个小高峰,判断为接收到了来自其他设备的数据迁移流量,故负载率提高,但仍保持在50%以下,属于正常范畴。
Claims (5)
1.一种基于动态路径的负载迁移方法,其特征在于所述方法包括如下步骤:
步骤一、将负载均衡节点以无向图的形式输入,使用Floyd算法对无向图整体进行分析,得出最短距离矩阵D和最短路径矩阵R;
步骤二、通过最短距离矩阵D和最短路径矩阵R构建一条联通所有点的路径;
步骤三、基于对R求在两个端点vi到vj的所有等价最短路径,选择两个末端节点作为发送源,将自身负载均衡状态进行传递,并在途径节点时,在节点上更新单方向的负载均衡状态,复数更新流途经时,按照最晚到达的内容为准;
步骤四、节点k使用最短路径矩阵R记录距离自身i距离的节点,其中i为max(k-first,last-k),即获取路径上所有节点的状态,并使用hello报文对节点进行保活探测,当出现节点无响应时视为物理结构变化,则对最短距离矩阵和最短路径矩阵进行更新,并重新对路径进行生成,返回步骤二;
步骤五、当节点j出现数据流异常时,即数据量超过阈值,将导致设备过载,于是查询邻接节点状态表内容,将过多的流量迁移到邻接节点处理;若没有出现流量超过阈值的情况则不执行任何操作;
步骤六、重复步骤二至五,直至流量发送结束。
2.根据权利要求1所述的基于动态路径的负载迁移方法,其特征在于所述步骤一中,无向图G=[V,W],其中V={v1,v2,...,vn}为顶点集合,W=(wij)n*n为G的邻接矩阵,wij表示边(vi,vj)的权值,即两个端点vi与vj之间的传输代价,其中,n为节点的个数;i、j大于等于1小于等于n;vi与vj表示第i个和第j个顶点。
4.根据权利要求1所述的基于动态路径的负载迁移方法,其特征在于所述步骤三的具体步骤如下:
(1)初始化路径:
分解R(x,y)=rxy;MidP=rxy,nmu=||MidP||,NumSet=[1,num],PathSet={};
初始化路径的中间节点集PathSet:
其中,MidP=rxy为vx到vy最短路径的点集;nmu为中间点集的个数;
(2)对PathSet中每条路径Pathk进行向后搜索:
将Pathk分解成num个集合:
同时传递x到y方向负载均衡设备状态,并更新x到当前节点k之间的节点状态;
(3)对PathSet中每条路径Pathk进行向前搜索:
将Pathk分解成num个集合:
同时传递y到x方向负载均衡设备状态,并更新y到当前节点k之间的节点状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910364170.0A CN110138670B (zh) | 2019-04-30 | 2019-04-30 | 一种基于动态路径的负载迁移方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910364170.0A CN110138670B (zh) | 2019-04-30 | 2019-04-30 | 一种基于动态路径的负载迁移方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110138670A CN110138670A (zh) | 2019-08-16 |
CN110138670B true CN110138670B (zh) | 2022-06-07 |
Family
ID=67575885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910364170.0A Active CN110138670B (zh) | 2019-04-30 | 2019-04-30 | 一种基于动态路径的负载迁移方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110138670B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111865791B (zh) * | 2020-07-13 | 2022-02-08 | 电子科技大学中山学院 | 一种用于动态网络的路由更新方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516620A (zh) * | 2012-06-21 | 2014-01-15 | 华为技术有限公司 | 一种vm的迁移方法、系统及服务器 |
CN104579997A (zh) * | 2013-10-28 | 2015-04-29 | 杭州华三通信技术有限公司 | 最短路径桥接网络中的转发路径确定方法及设备 |
CN104902515A (zh) * | 2015-06-08 | 2015-09-09 | 西安电子科技大学 | 一种基于负载感知的多层卫星网络路由方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100912820B1 (ko) * | 2007-11-01 | 2009-08-18 | 한국전자통신연구원 | 무선 센서 네트워크에서의 다중 경로 라우팅 방법 |
-
2019
- 2019-04-30 CN CN201910364170.0A patent/CN110138670B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516620A (zh) * | 2012-06-21 | 2014-01-15 | 华为技术有限公司 | 一种vm的迁移方法、系统及服务器 |
CN104579997A (zh) * | 2013-10-28 | 2015-04-29 | 杭州华三通信技术有限公司 | 最短路径桥接网络中的转发路径确定方法及设备 |
CN104902515A (zh) * | 2015-06-08 | 2015-09-09 | 西安电子科技大学 | 一种基于负载感知的多层卫星网络路由方法 |
Non-Patent Citations (3)
Title |
---|
Modified Floyd-Warshall Algorithm for Equal Cost;Akinniyi Ojo等;《2015 IEEE International Conference on Communication Workshop》;20150612;第346-351页 * |
一种云环境下的虚拟机负载均衡算法;江伟等;《福州大学学报》;20180831;第46卷(第4期);第451-457页 * |
基于时间触发DIMA架构的网络拓扑优化;王红春等;《西北工业大学学报》;20181231;第36卷(第6期);第1224-1231页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110138670A (zh) | 2019-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101883039B (zh) | 大规模集群系统的数据传输网络及其构建方法 | |
CN114417417B (zh) | 一种基于联邦学习的工业物联网隐私保护系统及方法 | |
Van Renesse et al. | Willow: DHT, aggregation, and publish/subscribe in one protocol | |
Luo et al. | Distributed classification in peer-to-peer networks | |
CN111314023B (zh) | 一种树型网络拓扑信息的同步方法 | |
CN108684046B (zh) | 一种基于随机学习的接入网服务功能链部署方法 | |
CN104468838B (zh) | 一种P2P网路和发布订阅模式的Web服务选择方法 | |
CN106209615B (zh) | 一种基于spfa算法计算转发路径的动态路由控制方法和系统 | |
CN110058937B (zh) | 用于调度专用处理资源的方法、设备和介质 | |
CN101729385A (zh) | 一种路径计算及建立方法、装置和系统 | |
CN105681438A (zh) | 内容中心网络中一种集中式的缓存决策策略 | |
CN111246320B (zh) | 一种云-雾弹性光网络中的深度强化学习流量疏导方法 | |
CN110138670B (zh) | 一种基于动态路径的负载迁移方法 | |
CN113228059A (zh) | 面向跨网络的表示学习算法 | |
CN106502842B (zh) | 数据恢复方法及系统 | |
CN111422078B (zh) | 一种基于区块链的电动汽车充电数据调配监测方法 | |
CN114422453B (zh) | 一种在线规划时间敏感流的方法、装置及存储介质 | |
CN112906745B (zh) | 基于边缘协同的诚信智能网络训练方法 | |
CN115499365A (zh) | 路由优化方法、装置、设备及介质 | |
CN109921991A (zh) | 一种基于Dinkelbach的SDN控制器部署方法 | |
CN114938374A (zh) | 跨协议负载均衡方法及系统 | |
CN114513816A (zh) | 一种sdn网络资源分配方法、系统及存储介质 | |
CN109450809B (zh) | 一种数据中心调度系统及方法 | |
CN116132354B (zh) | 一种无人机集群网络化传输路径优化方法及系统 | |
US20060067337A1 (en) | Methods and devices for generating a hierarchical structure for the internet |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |