一种基于QoS和动态负载均衡的路由策略

2016-02-27 02:01沈苏彬
计算机技术与发展 2016年11期
关键词:包率数据流路由

孙 杰,李 莉,沈苏彬

(南京邮电大学 计算机学院、软件学院,江苏 南京 210003)

一种基于QoS和动态负载均衡的路由策略

孙 杰,李 莉,沈苏彬

(南京邮电大学 计算机学院、软件学院,江苏 南京 210003)

为了提高SDN网络负载均衡调度的针对性和准确性,设计了SAS(Scheduling According to Stickiness )算法。该算法提出了链路粘值的概念,用链路粘值预估调度对流性能影响的大小,通过优先调度粘值低的流来减小调度对流性能的影响,达到优化调度的目的。在重路由过程中,该算法兼顾了流的QoS需求,并用近似算法进行多QoS约束的最优路径选择。基于Floodlight开源控制平台设计和实现了相应的原型系统,并根据负载均衡效果和负载均衡生成流的QoS两个测试目标,设计和实现了测试的方案。实验测试结果表明,在不同QoS需求的数据流竞争网络资源、导致网络负载偏离均衡状态的情况下,相较DLB、LABERIO机制,提出的技术方案在提高带宽利用率的同时可以兼顾分组流的QoS需求,并且可以降低对流性能的影响。

软件定义网络;路由策略;动态负载均衡;链路粘值

0 引 言

随着大量的网络设备和服务的出现,SDN(Software-Defined Networking)[1]网络也慢慢成为一个新的研究热点。与传统的分布式IP网络的不同之处在于它对控制平面与转发平面的分离。SDN网络是一种不需要控制逻辑和数据转发功能紧耦合在网络设备上,控制器利用控制-转发接口[2]对数据平面的交换机进行集中式控制的新型网络体系结构。SDN交换机以提取并解析分组头域,逐级与流表项进行匹配,按照其中指定的动作进行处理和转发的通信模式,可以灵活地实现节点的数据传输。新型网络业务被广泛应用,网络业务类型不断增加,网络拥堵越来越严重。实现负载均衡可以优化利用网络资源,提高网络资源的使用率。研究SDN网络负载均衡解决方案具有很大的实用价值。

已有一些经典的SDN网络负载均衡解决方案。比如,文献[3]中提出的负载均衡模型,考虑到网络拥塞和服务器负载,使用平均响应时间和网络最新状态,为网络应用的请求合理分配。文献[4]中提出了一种支持多服务的OpenFlow负载均衡,对于不同的服务有不同的控制器用于处理,不同的控制器的负载均衡算法选择可以是不同的。文献[5]中提出了基于通配符匹配的负载均衡算法,以发起请求的客户端IP地址作为通配符前缀,接着用规则集来控制交换机,从而减少控制器进行干预的次数,降低了平均请求延迟。

文中认为不同类型的流其QoS受调度的影响程度不尽相同。网络中的数据流有时延敏感的小数据流和吞吐量敏感的大数据流[6]。在网络负载不均衡程度超过一定值时,在同样都能起到均衡负载的情况下,调度前一种对QoS的影响要远大于后一种,所以应该选择后者调度。文中提出的调度策略不仅考虑到传统流的分类,而且考虑到调度可能对流的QoS性能指标产生的影响大小,因此更有针对性。这里将所引入的流的适合调度值借用了一个物理学中的概念-链路粘值(stickness)来表述,并使用改进的动态负载均衡算法更新链路粘值。

算法通过北向接口完成对流链路粘度的初始区分,这个过程其实是获取业务对流链路粘度的需求过程。在改进的动态负载均衡算法更新下,多次被调度的流的链路粘值会不断增大,对调度的拒绝程度越来越高。这时,即使是初始的链路粘值很高的流,也会被合理地调度到。在动态重路由的过程中,算法兼顾了流的QoS需求,为流寻找一条有足够资源、能满足QoS要求的可行路径。对于这种具有NP难度的多目标选路问题,文中选择了一种现有的带多约束的最优路径算法-Iwata[7],作为一个具体的计算方案。带着这样的目的,理论上便可以在满足流QoS需求的同时,保证动态负载均衡调度的针对性和准确性。

1 相关技术分析

相较于传统网络中的负载均衡策略,在SDN网络中主流的支持负载均衡机制都基于SDN控制器的全局视野。SDN控制器对网络状态进行检测,利用根据链路负载的实时状态对影响负载均衡的最大流进行调度的负载均衡策略。该策略的代表算法为LABERIO[8]。SDN控制器查询链路负载的状态作为动态负载均衡的选路依据,每次都使用贪心策略选取当前空闲带宽最大的链路。该策略的代表算法为DLB[9]。

在算法LABERIO中,考虑到仅仅依靠SDN网络的初始路由计算,即使在刚开始满足负载均衡的需求,也会随着网络的变化变得不再满足,并不能保证传输数据过程中的网络动态负载均衡。为此,需要对SDN网络的状态进行周期更新,实时监控网络负载均衡程度,对负载过重的链路上的流量进行调度,以使网络实现动态负载均衡。对负载过重的链路上的流量进行调度时,优先对网络中负载均衡影响最大的流进行调度。但是这种算法忽略了流对QoS的要求,可能会使有些流因为调度而导致时延过大。算法对那些时延敏感的流并不合适。

在算法DLB中,将流作为更小的单元,采用了深度优先的算法,开始从源节点向上传输到高层次的节点直到第一层节点,然后继续往下转发目的节点。在每一跳DLB算法用贪心策略来选择更大的空闲带宽的链路。DLB算法在SDN网络有着比传统负载均衡算法更好的性能。但贪心路由决策没考虑整个网络的负载分布,由算法选出的源节点到目的节点的路径可能并不合适。

上述介绍的机制都是基于SDN网络的动态重路由机制[8]并已验证其有效性。同样是通过动态的重路由机制解决SDN网络中的负载均衡问题,文中采用的算法更多关注了调度对流的性能所造成的影响。显而易见,参照测算出的重路由对流产生的影响信息,尽量选择影响小的流进行重路由,比仅在初始设定流的优先级更有针对性和准确性。SAS算法中用链路粘值作为流拒绝重路由程度的量化的值。动态地测算流的链路粘值,并按照链路粘值来对流进行调度,能较好地解决SDN网络中的动态负载均衡问题。

2 问题分析与方案设计

2.1 动态负载均衡的路由方案

在介绍基于QoS和动态负载均衡的路由方案之前,这里先定义一个负载均衡参数ε(t),用来描述在t时刻全网负载均衡的程度。ε(t)值越趋近于0表示全网链路的负载越均衡,ε(t)值越大表示全网的负载越不均衡。ε(t)值的计算如式(1)所示。

(1)

(2)

(3)

其中,Bt表示在t时刻链路l:[il,jl,CAPl]上已传输的总byte。每条链路上的Bt值都可以通过SDN数据统计机制来获取。

这里需要设置一个负载均衡阈值ε*。ε*值的设置依据是不同ε*值会导致不同网络吞吐量,研究吞吐量与ε*的变化关系并选取使得网络吞吐量最大的ε值作为ε*。当ε(t)在t时刻大于ε*(即网络负载不均衡程度超出预设值时),触发联合路由方案启动负载均衡调度。控制器将找到占据在最拥堵链路上且链路粘值最小的流,将其移动到其他可用的路径上。这里的可用路径需要满足两个条件:路径是包含首尾节点的通路;路径上的所有链路可以满足流f所属类型c的QoS需求(即满足式(5))。在计算出所有可用路径的集合后,选择其中负载最小的路径作为流f的替换路径。如果没有可替换的路径表明流f对当前链路的依赖程度(即粘值)高出了预期,则为流f增加一个定值s作为新的sf再重新执行启动负载均衡的调度。基于QoS和动态负载均衡的路由方案步骤的具体描述如下:

步骤1:控制器不断检测网络的负载均衡状态,每隔ns计算一次网络的负载均衡参数ε(t)值。如果ε(t)大于阈值ε*,执行步骤2,否则继续执行步骤1。

步骤2:找出负载最大的链路,即loadij(t)值最大的链路l:[il,jl,CAPl]。执行步骤3。

步骤3:找出链路l:[il,jl,CAPl]承载的所有流中链路粘值sf最小的流f。执行步骤4。

步骤4:找出所有流f的可用替代路径pf集合。路径pf的首节点为ni、尾节点为nj(即为ni→nm→nj序列),pf满足式(2)。如果pf集合不为空则执行步骤5,否则执行步骤7。

步骤5:选择pf集合中负载最小的路径min(pf)(如果有多个负载最小的路径,则选择其中剩余带宽最大的路径)作为流f的替代路径。执行步骤6。

步骤6:删除链路l:[il,jl,CAPl]上f的表项。安装min(pf)上f的流表项,建立并关联相应计量表项。执行步骤7。

步骤7:更新流f的链路粘值sf。如果流f迁移成功,执行2.3中的流f链路粘值更新策略,未成功则sf加上一个常数值s作为新的sf。继续执行步骤1。至此,联合路由选择的一个周期结束。

基于QoS和动态负载均衡的路由算法依据网络当前的负载均衡状态对过载链路进行动态的流调度,通过数据流的链路粘值来描述数据流对流调度的拒绝程度,进而得到应当对哪条流进行调度。因此算法的时间复杂度直接取决于链路个数nl和数据流的个数nf,为O(nl*nf)。

2.2 基于QoS约束的选路策略

在SDN网络这种基于流的网络架构中,可以区分并保证每一个业务流的服务质量,完成最细粒度的服务质量保证。而SDN网络拥有的网络全局视野更能够满足业务流对链路的需求。边界交换机将数据流分类后,要为数据流分配能够满足数据流相应需求的路径。数据流f可以用源节点sf、目的节点df、服务类别cf这三个属性来表示(f:[sf,df,cf],sf∈N,df∈N,cf∈C)。其中,C代表所有服务类别的集合。服务类别包含的参数包括数据速率rc、丢包率pc、时延tc和用来为动态负载路由算法服务的初始链路粘度sc(c:[rc,pc,tc,sc])。这里借用了粘值(Stickiness)的物理学概念。物理学中的粘值[10]是指流体的内摩擦表现出的宏观属性,这里的粘值表示服务类别c的数据流f对当前的链路的依赖性或者称为数据流对重路由的排斥程度。这个变量的定义将在2.3小节加以具体描述。

(4)

路由选择需要考虑链路能否满足数据流所属类型的QoS值。当网络中增加一个新流f(流所属类别的属性为rnew,pnew,tnew和snew)。流f流经的所有链路l都需要满足式(5)~(7)。

(5)

(6)

(7)

其中,fl表示在链路l上承载所有的流集合;nf表示流f流经的所有的交换机集合;CAPl表示链路l的最大容量;pfsrc,pfdst分别表示在流f转发路径的起始交换机fsrc和目的交换机fdst上已接收到的流f包的总数。

常规的网络时延包含处理时延、排队时延、传输时延、传播时延。这里的tl不仅仅包含链路时延,文献[12]将传输时延和传播时延合起来作为链路时延(例如ns2仿真器)。这里的tl不仅包含传输时延和传播时延,还包含了跟控制器的交互。因此,在式(7)中大于号右边减去了节点ni和控制器交互的时延dc_ni。

为了方便计算tl,文中提出了用于SDN交换机的服务质量监测机制,即一种基于OpenFlow协议实现的链路时延测算机制。在LLDP(LinkLayerDiscoveryProtocol[13],链路层发现协议)分组基础上进行改进,采用链路时延监测分组(LinkDelayDiscoveryPacket,LDDP)来监测链路l从链路源节点nlsrc(nlsrc∈N)接受到分组到链路l目的节点nldst(nldst∈N)接受到分组的时延。LLDP是IEEE定义的一种链路层协议,被大部分网络设备所支持,一些OpenFlow控制器利用该协议实现网络拓扑的发现功能。

而LDDP分组通过控制器发出分组到链路l的端节点。LDDP分组内容包括链路l的源节点mac地址maclsrc、链路l的源节点端口portlsrc、控制器在nlsrc处理此LDDP分组时的时刻tlsrc(LDDP:[maclsrc,portlsrc,tlsrc])。LDDP分组发出后其中的动作字段为转发到节点的指定端口。LDDP分组从节点nlsrc的端口转发出去,对端节点nldst将会收到传入的LDDP分组,但它并不能识别这个LDDP分组,只当普通数据报文处理,此LDDP分组将被交换机封装成Packet-In消息发送到控制器中。控制器将LDDP分组中的maclsrc和tlsrc消息记录下来,根据maclsrc和当前节点mac标记出链路l,根据当前系统时刻tldst、l源节点处理时刻tlsrc即可求出链路l的时延t1,其值如式(8)所示。

tl=tldst-tlsrc

(8)

文中对控制器c与节点ni间的时延dc_ni(包括控制器处理发送OpenFlow请求到控制器接收OpenFlow响应之间的时延)的计算,这里的OpenFlow请求和响应,文中使用的是特征请求消息和特性响应消息。在控制器向将节点ni发送特征请求消息时记录下当前时刻tc_ni,当控制器接收到相应节点的特性响应消息时记录下时刻tni_c。如此,dc_ni的值通过式(9)得出。将式(8)和式(9)带入式(7),即可完成对路径是否满足流时延要求的判断。

(9)

因此,在进行重路由之前需要先选取全网所有满足式(5)~(7)的链路。选出的链路信息用来为动态负载均衡重路由选取提供拓扑结构。

当新的流需要进行重路由时,它需要的路径不仅要满足2.1节的替换路径的要求,还需要满足式(5)~(7)对链路的要求。这种多目标的选路策略是有NP难度的,因此文中采用了一种现有的带多约束条件的QoS路由算法-Iwata[7],作为一种具体的计算方案。Iwata算法先以一个QoS度量为关键字来计算最短路径,然后检测该路径是否满足其他QoS度量;如不满足,则选取另一QoS度量来计算最短路径,同样检测该路径是否满足剩余的QoS度量;如此反复直到找到一条满足所有QoS度量的可行路径。

2.3 分组流的链路粘值更新策略

为了使得网络达到动态负载均衡状态,需要解决两个问题:网络链路过载发生的检测和检测到过载发生后的处理。这两个问题已在2.1小节解答了。一旦链路发生过载,应对链路上的哪个流重路由,使网络状态恢复负载均衡。需要对不同的流进行区分,不同的流可以简单分为对吞吐量敏感的流和对延时敏感的流。考虑到延时敏感流传输时间相对较短,改变其路径很可能会增加延迟和开销,因此应迁移非延时敏感流[14]。利用概念粘值,链路粘值sf表示数据流f对迁移的拒绝程度。而前面提到的不同的流(吞吐量敏感的流和对延时敏感的流)对更改路径的成本高低,都可以简单地用对迁移的拒绝程度高或低即链路粘值sf来表示。计算链路粘值如式(10)所示。

(10)

其中,sfl表示f最近一次sf值;ufl表示最近一次迁移对数据流的影响值。

通过式(10)可以看出,如果数据流f从未迁移过,它会有一个初始值sc。这个值路由模块执行时为数据流区分的服务类型c所包含的属性sc。这个sc其实就是控制器根据分类机制为数据流f设置的初始粘值。考虑到网络的动态性,那些被迁移的流的链路粘值只有根据迁移对流的影响值来动态更新,才能保证sf的准确性。并且式中sf的计算过程实际为一个迭代过程,每一次迁移的影响值都会被考虑在内。这样就保证了一些初始粘值较小或者每次的迁移影响值较小的流,不会被频繁调度,保证了流调度的合理性。式(10)中影响值ufl可以通过对SDN数据统计信息的计算来完成。ufl的值如式(11)所示。

ufl=α*dfl+β*bfl

(11)

其中,dfl表示最近一次迁移流f丢包率的变化程度;bfl表示最近一次迁移流f传输带宽的变化程度;α和β分别表示dfl、bfl在影响值ufl中所占的比例。

dfl,bfl分别通过式(12)和式(13)计算获得。

(12)

(13)

其中,pt1表示t1时刻流f的总丢包数;bt1表示t1时刻流f的已传输的总byte。

控制器在流迁移前隔ms读取一次链路的统计信息,在流迁移后隔ns读取一次链路的统计信息。两次统计信息的比值准确反映了链路迁移对流f的丢包率和带宽影响。

控制器记录并更新每条流的最新的链路粘值。当SDN网络发生过载时,控制器对比过载链路上所承载的流的链路粘值并决定对哪条流进行流调度。关于根据链路粘值进行流调度以及调度后的路由策略已在2.1小节说明了。

由上可知,SAS是一种基于QoS和动态负载均衡的路由策略,所以在实验部分需要使用不同类别流传输对动态负载均衡的实现进行功能测试,使用不同的传输速率对使用SAS机制后的带宽、丢包率、抖动变化进行性能分析。

3 实验搭建及性能分析

实验对SAS算法系统软件进行测试,测试环境如图1所示。在源末主机上部署iperf发包工具,模拟端到端的不同业务流的传输环境。在两种业务流传输情况下分别执行LABERIO、DLB以及文中的SAS系统,统计各机制运行过程中带宽、丢包率、抖动等性能指标来进行比较。

3.1 实验环境搭建

搭建SDN实验网络。首先在一台DELL服务器上部署最新版本floodlight控制器,作为控制层设备。其次,由于目前OpenFlow物理交换机价格昂贵,文中选用一款开源的OpenFlow软件交换机OVS安装在三台DELL台式机上作为数据层转发设备。交换机和控制器的主机系统均为32位Ubuntu 12.04,而通信的主机节点均为Windows7系统。

图1 测试网络拓扑图

实验中,三台OVS软件换机分别与控制器相连受控制器控制。文中将控制器IP地址设置为192.168.0.150,交换器控制端口IP地址分别设置为192.168.0.151,192.168.0.152和192.168.0.153。将通信主机与三台交换机中的任意一台相连,通信主机分别运行数据传输的客户端和服务器端(文中是用iperf发包工具)用于发送和请求数据分组。设置负载均衡阈值ε*为1%,粘值增量常数s为1。

3.2 实验性能评估指标

文中使用平均带宽利用率、平均丢包率和平均抖动等性能指标对负载均衡算法的性能进行评估。

(1)平均带宽利用率。

指定带宽arf是指由客户机发送流的带宽,而实际带宽rrf是指服务器实际获取的流带宽。由于传输期间可能发生网络拥塞将导致分组丢失,从而服务器接收的实际带宽小于或等于由客户机发送的指定带宽。平均带宽利用率α是指每条流实际获得的带宽与其所指定带宽的比值的平均值。

(14)

平均带宽利用率反映了网络的均衡程度,利用率越高说明网络的负载越均衡。

(2)平均丢包率百分比。

由SDN统计机制获得每条流的丢包信息,丢包数与传输指定的数目的比值就是这条流的丢包率。平均丢包率百分比β是指所有流的丢包率的平均值,如式(7)所示。平均丢包率百分比越大说明网络拥塞程度越高,流的QoS传输效果越差。

(15)

(3)平均抖动。

根据iperf客户端工具输出的测试报告,得到每个流的抖动jf。平均丢包率百分比γ是指所有流的抖动的平均值。平均抖动越大则说明流的QoS传输效果越差。

(16)

3.3 实验结果分析

图2是在不同业务流传输时,三项机制的平均带宽利用率比较。

图2 多业务流时不同机制对平均带宽利用率的影响

从图中可以看到,随着流量负荷增加,三种算法的平均带宽利用率在逐步下降。SAS算法在平均带宽利用率上表现一般。甚至在高流量负荷时,比LABERIO表现要差。尤其在客户端发送速率增加至6 Mbps后,利用率平均低了3%左右。因为在重负荷之下,LABERIO算法这种优先对网络中占用带宽最多的流进行调度的机制,虽然忽略了流对QoS的要求,但负载均衡效果更好。在重负荷之下DBL算法的单跳最优策略更容易引发网络的局部拥塞,增大了报文的丢包率,降低了数据流的带宽利用率,而SAS算法在考虑全局路径负载情况后做出的选路降低了发生拥塞的概率,相比于DBL有更高的带宽利用率。

随着数据传输速率的增加,网络动态的调整,重新寻找满足流QoS要求的可行路径。相较于DLB、LABERIO机制,SAS算法使用了测算流QoS变化的负载均衡改进策略,优势在于提高了流的负载均衡调度的针对性和准确性。

SAS通过改进的动态负载均衡算法,按链路粘值为流进行调度。链路粘值考虑到了丢包率的影响,优先调度对丢包率影响较小的流。由于SAS是多目标的计算综合最优结果的算法,SAS相比LABERIO这种单纯考虑负载均衡效果的算法,SAS会在负载均衡调度时考虑到调度对流丢包率的影响,优先调度丢包率影响较小的流而不是对负载均衡影响最大的流,因此会产生更低的网络丢包率。作为代价,SAS算法在平均带宽利用率上表现一般,甚至在高流量负荷时,比LABERIO表现要差。

图3给出了3种算法的平均丢包率的实验结果。

图3 多业务流时不同机制对平均丢包率的影响

从平均丢包率随流量负荷变化而变化的情况看,SAS平均丢包率最低,LABERIO平均丢包率低于DLB。整体上LABERIO好于DLB,这归功于全局选路降低了拥塞出现的概率,减少了需经过拥塞路径才能递交的报文。SAS丢包率的变化趋势跟其他算法一致,在具体数值上小了几个百分点。当客户端发送速率达到9 Mbps时,三种算法的平均丢包率都超过了50%,这也说明当网络流量负荷较高时,网络中各链路都较为拥堵,报文在交换机中丢包率会更高。SAS算法在平均丢包率上表现相对较好,但在高流量负荷时丢包率同样很高。跟现有方案相比,SAS在丢包率表现上有一定程度的改进。

图4给出了三种算法平均抖动的实验结果。

图4 多业务流时不同机制对平均抖动的影响

从整个曲线上看,SAS处在最下方,LABERIO处在DLB的下方。SAS在平均抖动上性能要优于LABERIO和DLB。曲线开始的一段时间内,抖动呈上升趋势,这是因为数据流刚刚开始产生,网络中同时传输的数据流还未达到最大值,只有部分链路上有流量经过。当传输的数据流达到4 Mpbs时,抖动也基本达到峰值,这之后的变化幅度相对更小。

从图4中的抖动变化能够看出LABERIO平均抖动性能优于DLB,相对于DLB流量分布更为均匀,网络中的流量分配更为均衡。而LABERIO是对网络中影响负载均衡的最大流进行调度,当调度到时延敏感的数据流时,肯定会出现流的抖动波动较大的现象。SAS按流调度对流受调度影响的历史信息进行流调度,优先对受调度影响较小的流。因此,会产生更低的平均抖动。在具体数值上,LABERIO和DLB虽然比文中方案在数值上高了零点几毫秒,但数据的变化趋势相似,SAS的表现相对较好。跟现有方案相比,SAS在抖动表现上有一定程度的改进。

4 结束语

文中从调度会对流QoS产生影响的角度,尽可能利用流的调度受影响的历史信息,提出了一种基于QoS和动态负载均衡的路由策略SAS。在floodlight控制器平台上编写实现SAS算法并与DLB、LABERIO进行对比。统计各项性能指标可以看出,SAS算法按照流的链路粘值进行调度,可以保证在满足不同业务流QoS需求的同时,有效提高带宽利用率,产生较低的抖动和丢包率,提高SDN网络路由转发的效率。

[1] Open Networking Foundation.Software-defined networking:the new norm for networks[EB/OL].2012.https://www.opennetworking.org/sdn-resources/sdn-library/whitepapers.

[2] 沈苏彬.软件定义联网的建模与分析[J].南京邮电大学学报:自然科学版,2014,34(3):1-9.

[3] 张园园.利用openflow技术实现网络负载均衡[D/OL].[2010-12-09].http://www.paper.edu.cn/releasepaper/content/201012-258.

[4] Handigol N,Seetharaman S,Flajslik M,et al.Plug-n-Serve:load-balancing web traffic using OpenFlow[J].ACM Sigcomm Demo,2009,4(5):6.

[5] Koerner M, Kao O. Multiple service load-balancing with OpenFlow[C]//IEEE international conference on high performance switching & routing.[s.l.]:IEEE,2012:210-214.

[6] Benson T,Akella A,Maltz D A.Network traffic characteristics of data centers in the wild[C]//Proceedings of the 10th ACM SIGCOMM conference on Internet measurement.[s.l.]:ACM,2010:267-280.

[7] Fujita N,Iwata A.Adaptive and efficient multiple path pre-computation for QoS routing protocols[C]//Global telecommunications conference.[s.l.]:IEEE,2001:2215-2219.

[8] Long H,Shen Y,Guo M,et al.LABERIO:dynamic load-balanced routing in OpenFlow-enabled networks[C]//IEEE 27th international conference on advanced information networking and applications.[s.l.]:IEEE,2013:290-297.

[9] Li Y,Pan D.OpenFlow based load balancing for Fat-Tree networks with multipath support[C]//Proceedings of 12th IEEE international conference on communications.Budapest,Hungary:IEEE,2013:1-5.

[10] Kovtun P K,Son D T,Starinets A O.Viscosity in strongly interacting quantum field theories from black hole physics[J].Physical Review Letters,2005,94(11):111601.

[11] Open Networking Foundation.OpenFlow switch specification,version1.3[EB/OL].2012.https://www.opennetworking.org/images/stories/downloads/specification/openflow-spec-v1.3.0.pdf.

[12] Issariyakul T, Hossain E. Introduction to network simulator NS2[M].[s.l.]:Springer-Verlag,2012.

[13] Surhone L M,Tennoe M T,Henssonow S F,et al.Link layer discovery protocol[M].[s.l.]:Betascript Publishing,2010.

[14] 樊自甫,伍春玲,王金红.基于SDN架构的数据中心网络路由算法需求分析[J].电信科学,2015,31(2):36-45.

A Routing Strategy Based on QoS and Dynamic Load Balancing

SUN Jie,LI Li,SHEN Su-bin

(School of Computer Science & Technology,School of Software,Nanjing University of Posts and Telecommunications,Nanjing 210003,China)

In order to improve pertinence and accuracy of network load balancing scheduling for SDN (Software-Defined Networking),a SAS algorithm is designed.This algorithm puts forward the concept of link stickiness,and applies link stickiness to estimate the impacts of scheduling on flow performance,by preferentially scheduling flow with low stickiness to reduce the impacts of scheduling on flow performance,so as to achieve the purpose of optimized scheduling.In the process of re-routing,it takes QoS needs of flow into consideration,and applies approximation algorithm to calculate the optimal route under multi-QoS constraints.Then a prototype system is designed and implemented based on Floodlight,an open control platform.Aiming at two test targets,including the load_balancing effect and its generated flows’ QoS,the test approach is designed and implemented.Experimental test results show that in case of different QoS requirement flows competing for limited network resources and resulting in network load deviations from the balance state,compared with DLB and LABERIO,the technology approach proposed can improve the bandwidth utilization while fulfilling the requirements of QoS on flow,and reduce the influence on flow’s performance.

Software-Defined Networking;routing strategy;dynamic load balancing;link stickness

2016-01-18

2016-05-10

时间:2016-10-24

江苏省未来网络前瞻性研究资助项目(BY2013095-1-08)

孙 杰(1990-),男,硕士研究生,研究方向为计算机应用技术;沈苏彬,博士生导师,研究方向为计算网络、下一代电信网及网络安全。

http://www.cnki.net/kcms/detail/61.1450.TP.20161024.1113.028.html

TP392

A

1673-629X(2016)11-0188-07

10.3969/j.issn.1673-629X.2016.11.041

猜你喜欢
包率数据流路由
支持向量机的船舶网络丢包率预测数学模型
一种基于喷泉码的异构网络发包算法*
电磁线叠包率控制工艺研究
汽车维修数据流基础(上)
汽车维修数据流基础(下)
铁路数据网路由汇聚引发的路由迭代问题研究
探究路由与环路的问题
基于预期延迟值的扩散转发路由算法
TCN 协议分析装置丢包率研究
基于数据流聚类的多目标跟踪算法