CN108449269A - 基于sdn的数据中心网络负载均衡方法 - Google Patents
基于sdn的数据中心网络负载均衡方法 Download PDFInfo
- Publication number
- CN108449269A CN108449269A CN201810325360.7A CN201810325360A CN108449269A CN 108449269 A CN108449269 A CN 108449269A CN 201810325360 A CN201810325360 A CN 201810325360A CN 108449269 A CN108449269 A CN 108449269A
- Authority
- CN
- China
- Prior art keywords
- path
- network
- data center
- load
- sdn
- 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
Links
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/02—Topology update or discovery
-
- 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
- H04L45/123—Evaluation of link metrics
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及网络技术领域,特别涉及一种基于SDN的数据中心网络负载均衡方法。该方法包括:SDN控制器获取网络拓扑结构,实时的获取网络的负载情况,通过最短K路径算法找出源、目的节点间的最短路径集;然后根据实时负载设计一个跳转概率式,根据所算出的概率值,我们设计一个跳转概率阈值,当大于阈值时,路径上的数据流选择跳转到另外一条路径,如果小于则选择一条概率最大的路径。本发明在研究数据中心网络拓扑结构和流量特征的基础上,提出一种基于SDN的数据中心网络负载均衡的方法,目的在于解决因数据中心网络流量的突发性和高动态性造成的路径吞吐量过大而引起的局部拥塞,提高网络的总吞吐量和网络的利用率,并相应的减少数据的丢包率,保证网络的负载均衡。
Description
技术领域
本发明涉及数据中心网络应用技术领域,特别涉及一种基于SDN的链路负载均衡的方法。
背景技术
近年来,随着云计算、大数据和社交网络的高速发展,而数据中心作为互联网和云计算的基础支撑平台,使其成为学术界和工业界关注的热点。可以说,数据中心已成为信息技术的重要发展标志。
数据中心网络(Data Center Network,简称DCN)是指数据中心内部通过高速链路和交换机连接大量服务器的网络,它是数据传输、存储和计算的中心,集中了各种软件和关键业务的系统。如今,随着业务的发展和新技术的不断投入,数据中心发生了许多重大的变化,各种新的应用都开始在数据中心内进行部署,例如网页搜索、电子商务、微博、微信、分布式内存缓存系统Memcached和MapReduce大规模集群计算等。这些新应用的大量运用,使其内部的通信量也呈指数级增长,因此,不可避免的会造成网络发生拥塞,使得网络的性能下降,而造成这个问题的原因是因为资源分配不均匀,不能充分的利用网络资源,使得网络中链路负载不均衡。因此如何对数据中心内的流量进行有效的控制,对数据中心内部巨大的负载进行均衡并有效的利用其丰富的资源是一个亟需解决的问题。
不断扩展的数据中心的规模和大量的新应用的运用,使得将数据中心网络中巨大的负载进行均衡面临着巨大的挑战。而近年来,随着SDN这种新型架构的提出给数据中心网络的负载均衡的研究带来了新的思路和机遇。SDN,即软件定义网络,一种新兴的网络体系结构。它的核心思想是将控制和转发分离。在控制层,控制器可掌握全局网络的拓扑、节点、链路以及流信息,通过其全局掌控的功能,我们可以对网络流进行集中的管理。在数据层,交换机仅提供简单的数据转发功能,可以快速地处理匹配的数据包,适应流量日益增长的需求。两层之间采用开放的统一接口,控制器只需要通过协议标准向转发层下发规则,交换机就能快速的对数据进行处理。这种控制与转发分离的结构特点,使得对网络的流量管理更加灵活和便捷,在解决数据中心网络负载均衡问题上具有诸多的优势。
负载均衡策略能够合理高效的将流量资源进行均衡,充分利用网络的链路资源,可以提高网络的吞吐量,减少链路拥塞,同时还能减少网络传输时延。然而传统的网络架构的设计在一定程度上限制了负载均衡策略的作用,SDN架构的出现,该架构使转发和控制分离,具有集中控制的能力,控制器能够获取全网信息,能够根据链路的实时状态为数据转发路径,实现路径优化,达到负载均衡。
发明内容
针对上述问题,本发明提出一种基于SDN的数据中心网络负载均衡的方法,包括:
S1:边缘交换机接收到数据包,根据目的地址判断是否存在匹配流表项,如果存在,则直接选择转发,否则,将数据包通过Packet-in消息发送给SDN控制器,请求控制器;
S2:控制器获取网络拓扑结构,然后根据拓扑结构通过最短路径算法找出源、目的节点间最短路径集;
S3:控制器在最短路径集的基础上,选择一条负载最轻的路径作为首选路径;
S4:控制器通过获取链路的实时负载状态设计两条路径随机跳转的概率;
S5:计算路径的跳转概率,设计一个跳转阈值,如果大于给定的阈值,则选择跳转,否则选择概率最大路径;
S6:控制器给该路径上的交换机下发流表,完成转发。
优选的,数据中心网络的拓扑结构是通过控制器发送LLDP(链路层发现协议)报文感知全局网络拓扑。在最短路径算法的选取上,选取无环KSP算法,我们以跳数为权值计算出跳数最短的K条最短路径集。其中KSP算法具体的原理如下:
首先通过Dijkstra算法(迪杰斯特算法)选择一条最优路径,保存为A[1];然后以该路径的第一个点作为分叉点,分叉点之前的则为前一条最优路径与当前路径一致的部分,称之为rootpaths(根路径),将分叉点已选的最优路径的分支去掉(权值设置为无穷大),再通过Dijkstra算法计算最短路径,并将其放在临时数据结构B中,一直循环到目的节点的前一跳,循环停止,选出多条潜在的最优路径,然后对临时数据结构B中的结果进行排序,找出最优路径,将其添加到A结构数据中,保存为A[k],一轮循环结束。接下来,外循环继续,直到找到所有K条最优路径。
优选的,负载最轻的路径是指K条最短路径集中剩余带宽最大的路径,我们通过控制器向交换机发送REQUEST_STATS消息,请求获取交换机的端口统计信息和流的统计信息,交换机通过回复EventOFPFlowStatsReply和EventOFPPortStatsReply消息,控制器获取端口信息和流信息并将其保存。然后通过端口的统计信息,计算出链路的剩余带宽,再选择剩余带宽最大的路径。
优选的,根据链路的实时负载状态设计两条路径的随机概率跳转,如下:
401、概率跳转公式为(选取链路的实时负载为权值):
上式δm,n定义为从路径m跳转到路径n的概率,其中Loadm和Loadn表示路径m和路径n的实时负载。
优选的,为了充分利用网络资源,我们需要设计一个跳转阈值,只有大于阈值才跳转,在阈值的选取上,由于选取的是链路的实时负载,因此阈值的取值范围在(1/2,1)之间。当小于阈值时,由跳转概率公式可以算出概率值,选择概率最大的作为流表下发路径。
与现有技术相比,本发明的有益效果在于:
本发明提出一种数据中心网络的负载均衡的方法,首先控制器发送LLDP(链路层发现协议)报文感知全局网络拓扑,再在发现拓扑结构的基础上,以跳数为权重,找出源、目的节点之间的最短路径集,再考虑整个路径的负载情况,根据链路的实时负载设计概率跳转机制,为数据流选取合适的路径。本发明的目的在于因数据中心网络流量的突发性和高动态性造成的路径吞吐量过大而引起的局部拥塞,提高网络的总吞吐量和网络的利用率,并相应的减少数据的丢包率,保证网络的负载均衡。
附图说明
图1为本发明使用的FatTree拓扑结构图;
图2为本发明基于SDN的数据中心网络负载均衡的方法流程图。
具体实施方案
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明考虑使用FatTree数据中心网络架构,图1为FatTree拓扑结构。其架构分为3层:核心层交换机、汇聚层交换机和接入层交换机。总共有20台交换机和16台主机,其中核心层4台交换机。我们可以选择任意的主机向其他主机建立连接,作为观察对象。图2为本发明基于SDN的数据中心网络负载均衡方案流程图,具体包括以下步骤:
S1:边缘交换机接收到数据包,根据目的地址判断是否存在匹配流表项,如果存在,则直接选择转发,否则,将数据包通过Packet-in消息发送给SDN控制器,请求控制器;
S2:控制器获取网络拓扑结构,然后根据拓扑结构通过K最短路径算法找出源、目的节点间最短路径集;
首先,控制器通过发送LLDP(链路层发现协议)报文感知网络拓扑结构,然后在拓扑结构的基础上采用无环KSP算法,以跳数为权重,找出源、目的节点之间的最短K条路径,因为数据中心网络中两主机之间有很多条可达路径,如果从所有的路径中去选择最合适的路径,会造成大量的资源浪费和增加大量的计算复杂度,这种做法显然是不可取的。因此我们采用在找出K条最短路径的基础上,再结合链路的实时负载为数据流找到合适的路径。其中KSP算法具体原理如下:
首先通过Dijkstra算法(迪杰斯特算法)选择一条最优路径,保存为A[1];然后以该路径的第一个点作为分叉点,分叉点之前的则为前一条最优路径与当前路径一致的部分,称之为rootpaths(根路径),将分叉点已选的最优路径的分支去掉(权值设置为无穷大),再通过Dijkstra算法计算最短路径,并将其放在临时数据结构B中,一直循环到目的节点的前一跳,循环停止,选出多条潜在的最优路径,然后对临时数据结构B中的结果进行排序,找出最优路径,将其添加到A结构数据中,保存为A[k],一轮循环结束。接下来,外循环继续,直到找到所有K条最优路径。算法的具体伪代码如下:
该部分表示创建源、目的节点间的K最短路径,并将其排序,选出最优路径。其中nx.shortest_simple_paths表述调用Networkx里面的KSP算法,Networkx是一个Python的语言包,里面保存了KSP算法,因此直接从里面调取即可,而‘weight’权重可以自己选取。
该部分表示创建交换机之间所有K最短路径,选出最优路径。
S3:控制器在K条最短路径集的基础上,选择一条负载最轻的路径作为首选路径;
这里的负载最轻是指路径的剩余带宽最大的路径,我们通过控制器向交换机发送REQUEST_STATS消息,请求获取交换机的端口统计信息和流的统计信息,交换机通过回复EventOFPFlowStatsReply和EventOFPPortStatsReply消息,控制器获取端口信息和流信息并将其保存。具体的链路带宽的求取为:链路带宽由链路两端口的能力决定,我们通过控制器可以周期性的获取端口的统计信息,其中包括端口的接收数据包、发送数据包、接收字节数、发送字节数和端口的转发速率,我们在两个不同时间统计消息字节数之差,再除以统计时间即可获得统计的流量速率,即当前流量带宽,再用端口可达到的最大带宽减去当前流量带宽即端口的剩余带宽,也就是链路的剩余带宽。
S4:控制器通过获取链路的实时负载状态设计两条路径随机跳转的概率;
S5:计算路径的跳转概率,如果大于给定的阈值,则选择跳转,否则选择概率最大路径;
路径的概率跳转式,我们选取路径的实时负载作为权重,公式为:
我们定义δm,n为路径m跳转到路径n的概率,其中Loadm和Loadn表示路径m和路径n的实时负载。由上式我们可以得知,当分子小于零时,意味着路径m比路径n的负载轻,没有必要迁移。当分子等于零时,此时两条路径的负载情况相同,意味着没有价值去跳转。只有当分子大于零时,并且差值越大,越有跳转的价值。只有从负载重的路径跳转到负载轻的路径才是合理的选择。
因此,我们在概率跳转上设计一个跳转阈值,如果大于阈值,则选择跳转,如果小于则通过概率跳转式算出概率值,选择概率最大的路径,这样既能充分利用网络资源,也能为数据流跳转提供足够的空间。
在跳转阈值的选取上,取值过小会造成数据流频繁跳转,造成控制器开销太大,而取值太大,则会造成难以找到被选路径,引起局部拥塞。因此我们需要选择一个折中的阈值,由于是以路径的负载为权值,因此阈值的取值范围取(1/2,1)之间。
S6:控制器给该路径上的交换机下发流表,完成转发。
Claims (5)
1.一种基于SDN的数据中心网络负载均衡的方法,其特征在于:该方法包括以下步骤:
S1:边缘交换机接收到数据包,根据目的地址判断是否存在匹配流表项,如果存在,则直接选择转发,否则,将数据包通过Packet-in消息发送给SDN控制器,请求控制器;
S2:控制器获取网络拓扑结构,然后根据拓扑结构通过最短路径算法找出源、目的节点间最短路径集;
S3:控制器在最短路径集的基础上,选择一条负载最轻的路径作为首选路径;
S4:控制器通过获取链路的实时负载设计两条路径的随机跳转概率;
S5:计算路径的跳转概率,设定一个跳转阈值,如果大于给定的阈值,则选择跳转,否则选择概率最大路径;
S6:控制器给该路径上的交换机下发流表,完成路径转发。
2.根据权利要求1所述的一种基于SDN的数据中心网络负载均衡的方法,其特征在于,所述S2包括:数据中心网络的拓扑结构是通过控制器发送LLDP(链路层发现协议)报文感知全局网络拓扑,在最短路径算法选取上,我们选取无环KSP算法。
3.根据权利要求1所述的一种基于SDN的数据中心网络负载均衡的方法,其特征在于,所述S3包括:负载最轻的路径是指最短路径集中剩余带宽最大的路径,我们通过控制器向交换机发送REQUEST_STATS消息,请求获取交换机的端口统计信息和流的统计信息,交换机通过回复EventOFPFlowStatsReply和EventOFPPortStatsReply消息,控制器获取端口信息和流信息并将其保存。然后通过端口的统计信息,计算出链路的剩余带宽。
4.根据权利要求1所述的一种基于SDN的数据中心网络负载均衡的方法,其特征在于,所述S4包括:
401、概率跳转公式为(选取链路的实时负载为权值):
上式的δm,n定义为从路径m跳转到路径n的概率,其中Loadm和Loadn分别表示路径m和路径n的实时负载。
5.根据权利要求1所述的一种基于SDN的数据中心网络负载均衡方法,其特征在于,所述S5包括:跳转概率阈值的选取,因为选取的是链路负载作为权值,因此为了充分利用网络资源,阈值的取值范围在(1/2,1),当大于阈值,选择跳转。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810325360.7A CN108449269A (zh) | 2018-04-12 | 2018-04-12 | 基于sdn的数据中心网络负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810325360.7A CN108449269A (zh) | 2018-04-12 | 2018-04-12 | 基于sdn的数据中心网络负载均衡方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108449269A true CN108449269A (zh) | 2018-08-24 |
Family
ID=63199703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810325360.7A Pending CN108449269A (zh) | 2018-04-12 | 2018-04-12 | 基于sdn的数据中心网络负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108449269A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109672625A (zh) * | 2018-11-07 | 2019-04-23 | 中国科学院信息工程研究所 | 一种优化时延的低轨卫星馈电负载均衡方法及系统 |
CN109672622A (zh) * | 2019-01-26 | 2019-04-23 | 福州大学 | Sdn数据中心基于隐马尔可夫模型的多径路由选径方法 |
CN109995653A (zh) * | 2019-04-15 | 2019-07-09 | 深圳市迅雷网络技术有限公司 | 跨节点的数据传输方法、装置、系统及可读存储介质 |
CN111343093A (zh) * | 2020-02-28 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 业务数据的传输方法及装置 |
CN114024969A (zh) * | 2020-07-17 | 2022-02-08 | 华为技术有限公司 | 一种负载均衡方法、装置和系统 |
CN114448899A (zh) * | 2022-01-20 | 2022-05-06 | 天津大学 | 一种均衡数据中心网络负载的方法 |
CN116208560A (zh) * | 2023-03-03 | 2023-06-02 | 济南大学 | 针对大象流的sdn数据中心网络负载均衡方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102893268A (zh) * | 2010-05-27 | 2013-01-23 | 松下电器产业株式会社 | 总线控制装置以及向总线控制装置输出指示的控制装置 |
US20130279365A1 (en) * | 2012-04-20 | 2013-10-24 | Cisco Technology, Inc. | Distributed node migration between routing domains |
CN106411733A (zh) * | 2016-09-08 | 2017-02-15 | 重庆邮电大学 | 一种基于链路实时负载的sdn动态负载均衡调度方法 |
CN107276793A (zh) * | 2017-05-31 | 2017-10-20 | 西北工业大学 | 基于概率跳转随机游走的节点重要性度量方法 |
-
2018
- 2018-04-12 CN CN201810325360.7A patent/CN108449269A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102893268A (zh) * | 2010-05-27 | 2013-01-23 | 松下电器产业株式会社 | 总线控制装置以及向总线控制装置输出指示的控制装置 |
US20130279365A1 (en) * | 2012-04-20 | 2013-10-24 | Cisco Technology, Inc. | Distributed node migration between routing domains |
CN106411733A (zh) * | 2016-09-08 | 2017-02-15 | 重庆邮电大学 | 一种基于链路实时负载的sdn动态负载均衡调度方法 |
CN107276793A (zh) * | 2017-05-31 | 2017-10-20 | 西北工业大学 | 基于概率跳转随机游走的节点重要性度量方法 |
Non-Patent Citations (1)
Title |
---|
林川等: ""基于SDN的QoS测量与路由规划系统设计与实现"", 《东北大学学报(自然科学版)》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109672625A (zh) * | 2018-11-07 | 2019-04-23 | 中国科学院信息工程研究所 | 一种优化时延的低轨卫星馈电负载均衡方法及系统 |
CN109672622A (zh) * | 2019-01-26 | 2019-04-23 | 福州大学 | Sdn数据中心基于隐马尔可夫模型的多径路由选径方法 |
CN109672622B (zh) * | 2019-01-26 | 2021-01-29 | 福州大学 | Sdn数据中心基于隐马尔可夫模型的多径路由选径方法 |
CN109995653A (zh) * | 2019-04-15 | 2019-07-09 | 深圳市迅雷网络技术有限公司 | 跨节点的数据传输方法、装置、系统及可读存储介质 |
CN111343093A (zh) * | 2020-02-28 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 业务数据的传输方法及装置 |
CN111343093B (zh) * | 2020-02-28 | 2021-07-09 | 腾讯科技(深圳)有限公司 | 业务数据的传输方法及装置 |
CN114024969A (zh) * | 2020-07-17 | 2022-02-08 | 华为技术有限公司 | 一种负载均衡方法、装置和系统 |
CN114024969B (zh) * | 2020-07-17 | 2023-08-22 | 华为技术有限公司 | 一种负载均衡方法、装置和系统 |
CN114448899A (zh) * | 2022-01-20 | 2022-05-06 | 天津大学 | 一种均衡数据中心网络负载的方法 |
CN116208560A (zh) * | 2023-03-03 | 2023-06-02 | 济南大学 | 针对大象流的sdn数据中心网络负载均衡方法及系统 |
CN116208560B (zh) * | 2023-03-03 | 2024-04-30 | 济南大学 | 针对大象流的sdn数据中心网络负载均衡方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108449269A (zh) | 基于sdn的数据中心网络负载均衡方法 | |
CN105227481B (zh) | 基于路径开销和流调度代价最小化的sdn拥塞控制路由方法 | |
CN106411733B (zh) | 一种基于链路实时负载的sdn动态负载均衡调度方法 | |
CN104247371B (zh) | 以信息为中心的网络中的基于名称的邻居发现和多跳服务发现 | |
CN106170024B (zh) | 一种基于软件定义网络中数据处理的系统、方法和节点 | |
CN113079218A (zh) | 一种面向服务的算力网络系统、工作方法及存储介质 | |
CN107995123A (zh) | 一种基于交换机的负载均衡系统及方法 | |
CN106209669A (zh) | 面向sdn数据中心网络最大概率路径流调度方法及装置 | |
CN106789648A (zh) | 基于内容存储与网络状况的软件定义网络路由决策方法 | |
CN105357124B (zh) | 一种MapReduce带宽优化方法 | |
CN106936645B (zh) | 基于排队论的树形网络拓扑结构的优化方法 | |
CN107294852B (zh) | 一种使用拓扑分散短路径集的网络路由方法 | |
CN106254254B (zh) | 一种基于Mesh拓扑结构的片上网络通信方法 | |
CN109691037A (zh) | 用于数据中心负载均衡的方法和系统 | |
CN104883676B (zh) | 一种多无人机环境下协同安全通信方法 | |
CN108512772A (zh) | 基于服务质量的数据中心流量调度方法 | |
CN105472484B (zh) | 一种电力骨干光传输网波道均衡路由波长分配方法 | |
Ma et al. | Improved efficient routing strategy on two-layer complex networks | |
CN108259387A (zh) | 一种通过交换机构建的交换系统及其路由算法 | |
Wang et al. | Designing efficient high performance server-centric data center network architecture | |
CN105050149A (zh) | 用于解决Zigbee树型网络拥塞问题的路由方法 | |
CN105681438A (zh) | 内容中心网络中一种集中式的缓存决策策略 | |
CN107920025A (zh) | 一种面向cpu‑gpu异构片上网络的动态路由方法 | |
CN104754589B (zh) | 基于流量感知的动态组网方法 | |
CN102082732A (zh) | 一种基于虚拟路由器可迁移的虚拟网节能方法 |
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 |
Application publication date: 20180824 |
|
WD01 | Invention patent application deemed withdrawn after publication |