CN108366015B - 用于软件定义网络的路由计算方法 - Google Patents
用于软件定义网络的路由计算方法 Download PDFInfo
- Publication number
- CN108366015B CN108366015B CN201810508067.4A CN201810508067A CN108366015B CN 108366015 B CN108366015 B CN 108366015B CN 201810508067 A CN201810508067 A CN 201810508067A CN 108366015 B CN108366015 B CN 108366015B
- Authority
- CN
- China
- Prior art keywords
- path
- paths
- network
- routing
- algorithm
- 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
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- 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/14—Routing performance; Theoretical aspects
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种用于软件定义网络的路由计算方法,包括获取当前软件定义网络的网络参数和网络状态;当数据流到达路由节点时,识别到达的数据流的类型;选择相应的最短路径算法计算数据流的路由路径。本发明提供的这种用于软件定义网络的路由计算方法,综合考虑网络的各项属性和参数,因此本发明方法考虑因素全面,在有效给出数据流的路由路径的同时有效缓解网络拥塞,而且本发明方法简单可靠。
Description
技术领域
本发明具体涉及一种用于软件定义网络的路由计算方法。
背景技术
随着互联网的发展和各种新型业务的爆炸式增长,人们对现实网络的需求也不断地提升,这对网络的可承载能力提出了极大的挑战。传统的IP网络架构存在安全性、移动性、可管理性、可扩展性等各种各样的问题。对此,社会各界纷纷开始了对未来网络体系结构的研究。其中,最具有前景的是软件定义网络(SDN)/OpenFlow,它是由斯坦福大学提出的应用于未来网络的体系架构,受到了产业界和学术界的一致认可。
软件定义网络由控制器、交换机和通讯协议组成,它将网络控制平面和数据平面分离,控制器与交换机通过安全通道进行通讯。控制器具有全局的逻辑视图,交换机变成了简单的转发工具,实现网络逻辑集中控制和可编程性。OpenFlow是目前主流通讯协议,在SDN网络中通过匹配流表来获得对数据包的操作。
目前,学术界和产业界也对SDN网络中的路由策略极为关注,并为此做了大量的研究。有一种关于链路关键性的路由计算方法,它通过链路的期望平均负载来判断链路的关键性,然后映射为链路的权值并为路由选择提供数据依据,从而实现对网络流量的负载均衡。或者,根据媒体生产网络中的网络流量可以预测的特点,通过带宽预留的方式达到提高资源利用率和节约成本的目的。也有文献引入了“虚拟时延”的概念,提出了VL-EDF(Virtual Latency Earliest Deadline First Algorithm)队列调度算法,它可以很好地服务于时延敏感的数据;同时也提出了时延不敏感数据流调度算法LBFS(Latency BasedFlow Scheduling Algorithm),其可以对交接节点端口进行监测,在端口流量负载超过设定阈值时,将对应链路上时延不敏感的数据流切换到轻载链路上。或者,利用控制器掌握全局逻辑视图的优势,当网络中存在拥塞链路时,把发生拥塞的链路从网络拓扑中删除,然后从拥塞链路中选择一条或多条转移开销最小的数据流,在剩余的拓扑中从数据入口进行重路由,以此解决网络拥塞的问题。
但是,目前的大多数已有路径选择算法只考虑了链路的利用率、带宽或者时延中的某一个因素。正是由于其考虑的影响因素极为简单,因此该类模型在实际应用中效果较差,已经不再适用于现今的网络状况。
发明内容
本发明的目的在于提供一种考虑因素全面且简单可靠的用于软件定义网络的路由计算方法。
本发明提供的这种用于软件定义网络的路由计算方法,包括如下步骤:
S1.获取当前软件定义网络的网络参数和网络状态;
S2.当数据流到达路由节点时,识别到达的数据流的类型;
S3.根据步骤S2识别的数据流类型,选择相应的最短路径算法计算数据流的路由路径。
步骤S2所述的数据流的类型,具体为流媒体流和非流媒体流。
步骤S3所述的根据数据流类型选择相应的最短路径算法计算数据流的路由路径,具体为采用如下规则进行选择:
若数据流为非流媒体流,则采用Dijsktra算法计算最短的路由路径;
若数据流为流媒体流,则采用流媒体QoS路由算法计算最短的路由路径。
所述的流媒体QoS路由算法,具体包括如下步骤:
A.获取所有从源路由到目的路由之间的所有路径,并统计路径的数量;
B.根据步骤A得到的路径的数量,采用如下规则进行判断:
若路径数量为0,则返回空值;
若路径数量为1,则直接返回该路径作为最终的路由路径;
若路径数量大于1,则判断所有路径是否满足QoS参数要求,删去不符合要求的路径;在删去不符合要求的路径后,若路径数量为0,则采用Dijsktra算法计算最短的路由路径;在删去不符合要求的路径后,若路径数量为1,则直接返回该路径作为最终的路由路径;在删去不符合要求的路径后,若路径数量大于1,则计算全部路径的权值,并返回权值最大的路径作为最终的路由路径。
所述的计算路径的权值,具体为采用如下算式计算权值:
W(p)=α×E(xΔ)-β×D(xΔ)-γ×B(xΔ)
式中p为路径,其中α、β和γ为权值参数,α>β>γ且α+β+γ=1;E(p)为路径p的剩余带宽,E(path)为所选路径的带宽;max{}为取最大值函数,min{}为去最小值函数,D(p)为路径p的总时延,D(path)为所选路径的时延;B(p)为路径p的节点缓冲区大小,B(path)为所选路径的缓冲区。
本发明提供的这种用于软件定义网络的路由计算方法,综合考虑网络的各项属性和参数,因此本发明方法考虑因素全面,在有效给出数据流的路由路径的同时有效缓解网络拥塞,而且本发明方法简单可靠。
附图说明
图1为本发明方法的方法流程图。
图2为本发明方法的流媒体的性能参数图。
图3为本发明实施例的拓扑结构示意图。
图4为本发明实施例的路径负载变化情况示意图。
图5为本发明实施例在拥塞路径的路径负载对比示意图。
图6为本发明实施例的链路利用率的变换情况示意图。
图7为本发明实施例的丢包率对比情况示意图。
具体实施方式
如图1所示为本发明方法的方法流程图:本发明提供的这种用于软件定义网络的路由计算方法,包括如下步骤:
S1.获取当前软件定义网络的网络参数和网络状态;
S2.当数据流到达路由节点时,识别到达的数据流的类型为流媒体流或非流媒体流;
S3.根据步骤S2识别的数据流类型,选择相应的最短路径算法计算数据流的路由路径;具体为采用如下规则进行选择:
若数据流为非流媒体流,则采用Dijsktra算法计算最短的路由路径;
若数据流为流媒体流,则采用流媒体QoS路由算法计算最短的路由路径;具体包括如下步骤:
A.获取所有从源路由到目的路由之间的所有路径,并统计路径的数量;
B.根据步骤A得到的路径的数量,采用如下规则进行判断:
若路径数量为0,则返回空值;
若路径数量为1,则直接返回该路径作为最终的路由路径;
若路径数量大于1,则判断所有路径是否满足QoS参数要求,删去不符合要求的路径;在删去不符合要求的路径后,若路径数量为0,则采用Dijsktra算法计算最短的路由路径;在删去不符合要求的路径后,若路径数量为1,则直接返回该路径作为最终的路由路径;在删去不符合要求的路径后,若路径数量大于1,则计算全部路径的权值,并返回权值最大的路径作为最终的路由路径;具体为采用如下算式计算权值:
W(p)=α×E(xΔ)-β×D(xΔ)-γ×B(xΔ)
式中p为路径,其中α、β和γ为权值参数,α>β>γ且α+β+γ=1;E(p)为路径p的剩余带宽,E(path)为所选路径的带宽;max{}为取最大值函数,min{}为去最小值函数,D(p)为路径p的总时延,D(path)为所选路径的时延;B(p)为路径p的节点缓冲区大小,B(path)为所选路径的缓冲区。
上述的权值计算公式的来源如下:
如图3所示,先定义如下变量:Ai(t)为节点i在t事件流的标示,α(t)为流通过路由节点的到达曲线,αi,j(t)为在路由节点i中流j的到达曲线,S(t)为流通过路由节点的服务曲线,Qi为节点i中的队列长度上界,Di为节点i中网络时延上界,Bi为节点i中的有效带宽上界,R为路由服务速率,Ti为节点i服务的最大时延,t为服务时间,sup{}为最小上界,inf{}为最大下界,M为最大报文长度,p为峰值速率,r为平均速率,b为桶深。
假设一个被到达曲线T-SPEC(M,p,r,b)所限的流媒体流经过系统s,系统s的服务曲线保证延迟速率函数β=βR,T,若R≥r,即服务速率大于等于业务流的平均速率,从图3中可以看到α和β垂直方向的最大距离,可以得到积压上界如下式所示:
Bmax=max[α(T),α(s)-β(s)]
通过最小加代数计算,可以得到流媒体流需要的缓冲区大小为:
需要的有效带宽是分别在r、线段QA、QB的斜率中取最大值,表示为:
其中D为质量保证的最大时延,(x)+表示函数max{0,x};
资源的预留由一个连接建立进行来完成。在路径上的节点n所给分配该流媒体连接速率为Rn,且Rn≥r,服务曲线为βR,T,整条路径给该流媒体流的速率延迟函数中的速率R和延时T分别为:
C和D分别表示路由与理论中的流媒体相比的有关速率和无关速率的时延偏差,所以C和D的值由路由策略决定。又由于经过N个节点后,流媒体有关总速率的时延偏差Ctot和流媒体无关总数率的时延偏差Dtot分别为:
根据上述算式可以得到:
为选出最为适合的路径,需要对剩余带宽、时延、丢包率等网络链路性能指标进行全面考量。为使得性能指标间具有可比性,即对性能指标进行归一化,使得性能指标处于同一量级,实现综合考量。本发明采取min-max(Min-Max Normalization)标准化:
式中min为x的取值的最小值,max为x的取值的最大值。
以下结合一个实施例对本发明方法与现有的Dijsktra---192.168.253.3)上安装Floodlight控制器作为控制层设备。再在物理主机上安装virtualbox虚拟机(地址为192.168.56.101),再在virtualbox上安装mininet网络仿真软件,用来构建网络拓扑。控制层和交换层物理主机上运行的环境为Ubuntu16:04STLi386.在mininet上使用iperf网络性能测试工具发送UDP数据包。实验拓扑图如图3所示,初始化带宽如下表1所列:
表1链路带宽(Mbits)示意表
带宽 | 链路 |
20 | S<sub>1</sub>-S<sub>5</sub>,S<sub>5</sub>-S<sub>4</sub>,S<sub>4</sub>-S<sub>3</sub> |
5 | S<sub>1</sub>-S<sub>3</sub>,S<sub>1</sub>-S<sub>2</sub>,S<sub>2</sub>-S<sub>3</sub> |
根据实验拓扑图,设置业务流最小带宽约束为6Mbit,利用iperf网络性能工具进行发送UDP报文测试,验证方法有效性,步骤如下:
1.mininet连接最短路算法的Floodlight控制器,通过mininet的xterm命令打开H1和H3的虚拟终端,以H1为iperf客户端,H3为iperf服务端,H1通过如下命令向H3发送UDP报文:
iperf -c 10.0.0.3 -S 0x10 -u -i 5 -t 30 -b 6M
通过Floodlight控制器的UI界面查看交换机的流表项可知,业务流的传输路径为S1-S3,并未考虑链路的任何代价,只进行最短路由。
2.启动添加了本发明方法的Floodlight控制器,首先需要在Floodlight.modules配置参数后添加QoSRouting模块名以让模块在Floodlight启动时必须装载,然后再次运行Ant命令重新编译版本,最后执行Floodlight.sh启动Floodlight控制器。通过mininet的xterm命令打开H1和H3的虚拟终端,以H1为iperf客户端,H3为iperf服务端,H1通过上面相同的命令向H3发送UDP报文。由最小路径算法可知,UDP数据流以S1-S3为主路径传输,路径S1-S2-S3和S1-S5-S4-S3作为可用路径。实验按照一般数据中心链路容量进行一定等比例的缩小来进行设置,放大后依然符合真实网络情况。
为了验证路由优化选路方法的有效性,实验拟采用路径负载、链路利用率和丢包率作为对比参数并与floodlight系统中自带的dijkstra算法进行比较分析。
(a)路径负载首先,为了验证算法对网络中链路拥塞的有效性,对主路径S1-S3和可用路径S1-S2-S3,S1-S5-S4-S3进行了考察,如图4所示。实验开始后,主路径S1-S3的负载一直增大,到达最高95.5%,超过设置的90%门限值,表明该路径发生了拥塞,启动路由优化选路算法,把该路径上的一部分流量分配到可用路径S1-S2-S3,S1-S5-S4-S3上,但是主路径S1-S3的拥塞并没有立刻得到缓解,原因是拥塞链路上转移的流的数目和大小未能使路径S1-S3的负载降低到门限值一下。随着数据流的不断转移,在第7秒以后,路径S1-S3的负载最后稳定在78%左右就不再变化,缓解了路径S1-S3的拥塞问题,使其负载一直低于门限值。
同时,为了分析2种算法缓解拥塞路径的性能,对比了2种算法针对拥塞路径S1-S3的负载变化情况。如图5所示。从图5中可以看出,路由优化选路算法在第5秒时使得路径S1-S3明显舒缓,路径负载从95%降低到85%,最终稳定在82%左右;dijkstra算法拥塞路径负载下降比较缓慢,最后稳定在87%左右。本发明的路由优化选路算法能够有效地缓解网络拥塞,同时算法性能更加稳定,不会造成新的网络拥塞,使得网络性能得到明显的改善。
(b)链路利用率为了分析两种算法缓解拥塞路径的性能,图6对比了两种算法链路利用率的变化情况。由图6可知,路由优化选路算法链路利用率平均为79%,dijkstra算法链路利用率在68%左右。而且dijkstra算法在第9秒时网络性能恶化,这是因为数据包失序和丢失而导致的。而本发明提出的路由优化选路算法充分利用了网络的空闲资源,因此网络的链路利用率比较高且相对稳定。
(c)丢包率由图7可以看出,随着数据流量的变大,两种算法的丢包率都在不同程度的上升。但是都小于0.1%,在满足网络稳定性范围之内。其中,当流量为350M到400M时,dijkstra算法的丢包率增长速度比路由优化选路算法更快,这是由数据包失序问题导致的。所以本发明的路由优化选路方法比dijkstra算法更好、更稳当。
Claims (1)
1.一种用于软件定义网络的路由计算方法,包括如下步骤:
S1.获取当前软件定义网络的网络参数和网络状态;
S2.当数据流到达路由节点时,识别到达的数据流的类型;数据流的类型,具体为流媒体流和非流媒体流;
S3.根据步骤S2识别的数据流类型,选择相应的最短路径算法计算数据流的路由路径;具体为采用如下规则进行选择:
若数据流为非流媒体流,则采用Dijsktra算法计算最短的路由路径;
若数据流为流媒体流,则采用流媒体QoS路由算法计算最短的路由路径;具体包括如下步骤:
A.获取所有从源路由到目的路由之间的所有路径,并统计路径的数量;
B.根据步骤A得到的路径的数量,采用如下规则进行判断:
若路径数量为0,则返回空值;
若路径数量为1,则直接返回该路径作为最终的路由路径;
若路径数量大于1,则判断所有路径是否满足QoS参数要求,删去不符合要求的路径;在删去不符合要求的路径后,若路径数量为0,则采用Dijsktra算法计算最短的路由路径;在删去不符合要求的路径后,若路径数量为1,则直接返回该路径作为最终的路由路径;在删去不符合要求的路径后,若路径数量大于1,则计算全部路径的权值,并返回权值最大的路径作为最终的路由路径;具体为采用如下算式计算权值:
W(p)=α×E(xΔ)-β×D(xΔ)-γ×B(xΔ)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810508067.4A CN108366015B (zh) | 2018-05-24 | 2018-05-24 | 用于软件定义网络的路由计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810508067.4A CN108366015B (zh) | 2018-05-24 | 2018-05-24 | 用于软件定义网络的路由计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108366015A CN108366015A (zh) | 2018-08-03 |
CN108366015B true CN108366015B (zh) | 2021-04-13 |
Family
ID=63012428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810508067.4A Active CN108366015B (zh) | 2018-05-24 | 2018-05-24 | 用于软件定义网络的路由计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108366015B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112838990B (zh) * | 2021-01-18 | 2023-05-23 | 北京工业大学 | 大规模软件定义网络的负载均衡方法 |
CN113225672B (zh) * | 2021-04-22 | 2022-01-28 | 湖南师范大学 | 一种支持移动用户的基站选择方法 |
CN114079562B (zh) * | 2021-11-18 | 2023-11-24 | 北京京航计算通讯研究所 | 基于门限秘密共享的软件定义网络数据安全传输方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2344395A1 (en) * | 2000-04-18 | 2001-10-18 | Nec Corporation | Qos-based shortest path routing for a hierarchical communication network |
CN104168191A (zh) * | 2014-08-31 | 2014-11-26 | 西安电子科技大学 | 大规模软件定义网络中满足多约束参数的路由方法 |
CN104468352A (zh) * | 2014-12-26 | 2015-03-25 | 深圳市新格林耐特通信技术有限公司 | 基于sdn的特殊流量qos保障方法 |
CN104994033A (zh) * | 2015-05-13 | 2015-10-21 | 南京航空航天大学 | 一种资源动态管理的SDN网络QoS保障方法 |
CN105357068A (zh) * | 2015-11-03 | 2016-02-24 | 华中科技大学 | 一种面向应用QoS保障的OpenFlow网络流量控制方法 |
CN105721302A (zh) * | 2016-03-31 | 2016-06-29 | 重庆邮电大学 | 一种软件定义网络路由选择方法 |
CN107276898A (zh) * | 2017-08-02 | 2017-10-20 | 桂林电子科技大学 | 一种基于fpga的最短路由实现方法 |
-
2018
- 2018-05-24 CN CN201810508067.4A patent/CN108366015B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2344395A1 (en) * | 2000-04-18 | 2001-10-18 | Nec Corporation | Qos-based shortest path routing for a hierarchical communication network |
CN104168191A (zh) * | 2014-08-31 | 2014-11-26 | 西安电子科技大学 | 大规模软件定义网络中满足多约束参数的路由方法 |
CN104468352A (zh) * | 2014-12-26 | 2015-03-25 | 深圳市新格林耐特通信技术有限公司 | 基于sdn的特殊流量qos保障方法 |
CN104994033A (zh) * | 2015-05-13 | 2015-10-21 | 南京航空航天大学 | 一种资源动态管理的SDN网络QoS保障方法 |
CN105357068A (zh) * | 2015-11-03 | 2016-02-24 | 华中科技大学 | 一种面向应用QoS保障的OpenFlow网络流量控制方法 |
CN105721302A (zh) * | 2016-03-31 | 2016-06-29 | 重庆邮电大学 | 一种软件定义网络路由选择方法 |
CN107276898A (zh) * | 2017-08-02 | 2017-10-20 | 桂林电子科技大学 | 一种基于fpga的最短路由实现方法 |
Non-Patent Citations (5)
Title |
---|
A Box-Covering-Based Routing Algorithm for Large-Scale SDNs;zhang lianming et al;《IEEE Access》;20170315;全文 * |
QLB: QoS routing algorithm for Software-Defined Networking;Piyawit Tantisarkhornkhet et al;《2016 International Symposium on Intelligent Signal Processing and Communication Systems (ISPACS)》;20161027;全文 * |
动态路由优化中的最短路径并行计算方法研究进展;杨忠明等;《微计算机应用》;20100815;全文 * |
多路径QoS路由算法研究;李峰;《中国优秀硕士论文全文数据库》;20041215;全文 * |
软件定义网络架构下的动态自适应负载均衡策略研究;曹傧等;《重庆邮电大学学报(自然科学版)》;20150815;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108366015A (zh) | 2018-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10673741B2 (en) | Control device discovery in networks having separate control and forwarding devices | |
EP3186932B1 (en) | Path selection in hybrid networks | |
CN105471764B (zh) | 一种SDN网络中端到端QoS保障的方法 | |
US9049131B2 (en) | Network system and load balancing method | |
CN108366015B (zh) | 用于软件定义网络的路由计算方法 | |
WO2019011338A1 (zh) | 一种最短路径确定方法及控制器 | |
CN104994033A (zh) | 一种资源动态管理的SDN网络QoS保障方法 | |
CN108206790B (zh) | 一种基于网络切片的sdn联合路由选择及资源分配方法 | |
WO2000024164A1 (en) | Method and apparatus for network control | |
CN108476175B (zh) | 使用对偶变量的传送sdn流量工程方法与系统 | |
CN114666280A (zh) | 基于时间敏感软件定义网络的工业互联网时延优化方法 | |
Seliuchenko et al. | Enhanced multi-commodity flow model for QoS-aware routing in SDN | |
Hassan et al. | Random early detection-quadratic linear: an enhanced active queue management algorithm | |
CN109286563B (zh) | 一种数据传输的控制方法和装置 | |
CN106105282B (zh) | 利用链路缓冲区状态进行流量工程的系统和方法 | |
CN108712336A (zh) | 一种提高无标度网络传输容量的局部信息动态路由算法 | |
CN112615750A (zh) | 一种基于sdn的骨干网流量粒度调整系统和方法 | |
WO2015135284A1 (zh) | 数据流转发的控制方法及系统、计算机存储介质 | |
JP4553314B2 (ja) | オーバーレイネットワークにおける通信経路決定方法および通信経路決定システム | |
CN109067646A (zh) | 一种在流表容量受限时的sdn网络流量优化方案 | |
CN104753751B (zh) | 一种动态确定虚拟网络的方法及系统 | |
RU2530279C1 (ru) | Способ автоматического адаптивного управления сетевыми потоками в программно-конфигурируемых сетях | |
CN107809393A (zh) | 一种基于sdn网络的链路负载均衡算法及装置 | |
Zhang et al. | Adaptive fast TCP | |
Ruelas et al. | Implementation of neural switch using OpenFlow as load balancing method in data center |
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 |