CN107204880A - 一种基于软件定义网络架构的控制层部署方法 - Google Patents

一种基于软件定义网络架构的控制层部署方法 Download PDF

Info

Publication number
CN107204880A
CN107204880A CN201710418627.2A CN201710418627A CN107204880A CN 107204880 A CN107204880 A CN 107204880A CN 201710418627 A CN201710418627 A CN 201710418627A CN 107204880 A CN107204880 A CN 107204880A
Authority
CN
China
Prior art keywords
mrow
msub
particle
network
time delay
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
CN201710418627.2A
Other languages
English (en)
Other versions
CN107204880B (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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201710418627.2A priority Critical patent/CN107204880B/zh
Publication of CN107204880A publication Critical patent/CN107204880A/zh
Application granted granted Critical
Publication of CN107204880B publication Critical patent/CN107204880B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/083Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明请求保护一种基于软件定义网络架构的控制层部署方法,属于软件定义网络(SDN)技术领域,该方法为一种离线部署算法。其特征是将最坏情况时延作为部署方案设计时的主要衡量指标,针对链路故障状态下最坏情况时延急剧恶化的现象,综合考量了网络正常状态以及多种链路故障状态下的最坏情况时延,提出网络状态时延作为新的时延优化目标,将原部署问题抽象为一个优化问题并构建模型,基于粒子群算法思想对该模型求解。本发明所提方法在大部分网络状态下时延指标均可维持在较低范围,从而保证了网络的可靠、有效运行。

Description

一种基于软件定义网络架构的控制层部署方法
技术领域
本发明属于软件定义网络(SDN)技术领域,是一种离线部署算法。具体为一种基于软件定义网络架构的控制层部署方法。
背景技术
在SDN架构的广域网中,通常采用分布式控制层对网络进行管控。然而这种分布式的SDN控制层也带来了一些新的思考,其中一个关键问题是如何确定控制器的数量、部署位置以及如何划分每个控制器的管理区域,即控制层的部署问题。在SDN网络中,控制层承载着控制信息的建立与分发。合理的控制层部署方法可以有效降低控制器与交换机间的通信时延,从而减少了交换机中流表建立所需的时间,进而保证了交换机对网络事件做出迅速的响应。
由于流表建立时延产生于交换机与控制器的交互过程,是控制信息在链路上的传播时延、相关交换机中的排队转发时延以及控制器处理时延的总和。在传播时延占据主导地位的广域网中,为保证每个交换机都可以通过控制网络与其所属的控制器及时通信,通常将广域SDN网络中优化流表建立时延的控制层部署问题归结为优化传播时延的控制层部署问题。
此外,考虑到网络链路故障时有发生。在链路故障状态下,网络中部分交换机到控制器间的传播时延将会产生较大范围的波动。然而目前SDN网络中的故障恢复机制通常是一种被动消极的处理手段。因此,在控制层的部署方案设计阶段,应将潜在的链路故障因素纳入考虑范围,综合衡量包括网络正常运行与链路故障场景等多种网络状态,力求最大程度的保证多种网络下时延指标的稳定。
Heller B,Sherwood R,Mckeown N在文献The controller placement problem[J]. Acm Sigcomm Computer Communication Review,2012,42(4):473-478.中首次提出了SDN控制层的部署问题,并指出在传播时延占主导地位的广域网中,控制层的部署策略将严重影响到网络的收敛时间。作者在文章中引入了平均传播时延及最坏情况下的传播时延两种时延指标,采用真实的Internet 2拓扑分析了不同的控制器数量以及部署位置对交换机与控制器间传播时延产生的影响。
P.Xiao,W.Qu,H.Qi,Z.Li and Y.Xu在文献The SDN controller placementproblem for WAN[C]//2014IEEE/CIC International Conference on Communicationsin China(ICCC).Shanghai:IEEE Press,2014:220-224.中采用谱聚类算法将广域网拓扑分区处理,继而在各个分区中找到合理的控制器部署位置,该算法在一定程度上降低了广域网中的传播时延。
Ros F J,Ruiz P M在文献Five Nines of Southbound Reliability inSoftware-Defined Networks[C]//ACM SIGCOMM Workshop on Hot Topics in SoftwareDefined NETWORKING.Chicago:ACM Press,2014:31-36.中考虑了链路的故障情况,为满足五个九的高可靠性指标,指出每台交换机应至少与两到三台控制器相连,并提出了具体的部署方案。
由相关研究可知,采用多个控制器构成的分布式控制层是未来SDN实际运用于广域网等大规模网络的必然选择,而合理的控制层部署策略则是保证网络各方面性能的前提。现有的SDN控制层部署方案在取得大量成果的同时,仍然存在以下不足:1.当前针对时延优化的控制层部署策略并没有考虑到网络运行过程中的链路故障因素;2.以保证网络可靠性为主要优化目标的部署策略则普遍关注控制网络的拓扑鲁棒性,这种方式虽然可以降低网络故障发生的概率,然而在网络的生命周期中链路故障终有发生,而链路故障将引起网络性能出现急剧的恶化。针对上述不足,本发明综合考虑了正常运行以及链路故障等多种网络状态,通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,进而提出了一种新的控制层部署方法。该方法能有效降低网络状态时延,从而使大部分网络状态下的最坏情况时延维持在较低范围。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种能有效降低网络状态时延的基于软件定义网络架构的控制层部署方法。本发明的技术方案如下:
一种基于软件定义网络架构的控制层部署方法,其包括以下步骤:
1)、首先,综合考虑了正常运行以及链路故障在内的多种网络状态,通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,将控制器的部署问题抽象为一个通过合理的部署方式最小化网络状态时延的优化问题并构建模型;
2)基于粒子群算法的思想,提出了一种启发式控制层部署方法对该模型求解:将控制器的部署方案映射为无体积无质量的粒子,随机生成多种部署方案形成粒子种群,种群中的每个粒子通过在解空间中不断运动以获得新的位置与速度,粒子运动的过程受到由适应度所决定的局部最优解以及全局最优解的影响,通过粒子的位置与速度更新,逐步找到适应度最好的粒子作为全局最优解,并根据求解优化结果进行控制层部署。
进一步的,所述步骤1)通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,将控制器的部署问题抽象为一个通过合理的部署方式最小化网络状态时延的优化问题,具体包括:
进一步的,所述步骤2)基于粒子群算法的思想提出了一种启发式控制层部署方法具体包括以下步骤:
101、输入网络拓扑、需要部署的控制器数量、算法循环次数上限、最大惯性权重及最小惯性权重;
102、初始化粒子与种群,随机选取N种部署方案,从而形成粒子数目为N 的种群;
103、对于粒子pi,以其位置属性中的每一维度xij为核心,向其周边直接相连的交换机节点位置随机选择一次,记录该次选择过程中xij到所选择节点的方向与距离作为粒子在该维度上的初始化速度方向与速度大小,粒子的速度由所有维度的速度构成,表示为Vi=(vi1…vij…vik);
104、初始化局部最优解,将每个粒子的初始位置设置为局部最优解;
105、初始化全局最优解,在局部最优解中选取适应度最好的粒子位置作为全局最优解;
106、粒子速度更新,从粒子每一维度的当前位置出发分别找到通向局部最优解与全局最优解所在位置的最短路径,最短路径中下一跳节点的方向作为粒子指向局部最优解与全局最优解的速度方向,其距离作为速度大小,分别记为对各速度方向做矢量加法,其结果记为vtemp,选取粒子在该维度的相关链路中与vtemp夹角最小的链路方向作为该维度的速度方向,完成粒子速度更新;
107、完成粒子位置更新;
108、局部最优解更新,为粒子当前位置计算适应度,并与更新前粒子所在位置的适应度进行对比,若获得更好的适应度,则更新局部最优解,反之,则不变;
109、全局最优解更新;
110、检查全局最优解与当前迭代次数,若全局最优解达到收敛或当前迭代次数已达上限,算法结束,反之,返回106,进入下一次算法循环。
进一步的,所述步骤102初始化粒子与种群,随机选取N种部署方案,从而形成粒子数目为N的种群,具体包括:
在拓扑中交换机的位置集合里随机选取k个位置部署控制器,依据最近邻原则将其余交换机划分给距其最近的控制器管理,从而形成一种部署方案,该部署方案对应一个粒子pi,其位置属性用每一维度的位置属性集合表示,即 Xi=(xi1…xij…xik),其中控制器cj表示为粒子pi的第j维分量,其位置属性与速度属性分别为xij、vij,集合中的元素采用部署控制器的交换机位置编号进行编码。
进一步的,所述SDN网络中交换机与控制器采用带内连接,控制器采用co-locate方式部署,即控制器的部署位置从网络中所有交换机位置及其临近位置中选取。
进一步的,所述步骤105中粒子适应度通过计算网络状态时延获得,其表达式如下:其中Lwc(s0)表示网络无故障状态下经概率加权后的最坏情况时延,Lwc(si)表示由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延,S={s0,s1…sj…sm}为网络状态集合,其中包含一个所有链路均正常工作的网络正常状态s0,以及m个相互统计独立的单链路故障状态 {s1,s2,s3.......sm}。
进一步的,所述网络无故障状态下经概率加权后的最坏情况时延Lwc(s0)通过下式获得:
其中d(vij,ci)表示网络正常状态下交换机vij与其所属的控制器ci通过最短路径通信产生的传播时延,为网络正常工作的概率,表示链路ei的故障概率, C表示控制器集合,V代表交换机节点的集合,其中 表示控制器ci管理的交换机集合。
进一步的,所述由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延Lwc(si)通过下式获得:
其中d'(vij,ci)表示链路故障状态下交换机vij与控制器ci通过最短路径通信产生的传播时延,表示链路ei失效导致网络故障的概率,在的计算过程中对链路ei的失效概率进行归一化:
进一步的,所述步骤106中粒子速度更新通过下式完成:
其中分别代表粒子pi中第j维分量当前的速度与位置,分别表示该维分量更新后的速度与位置,l1与l2被称之为学习因子,取l1=l2=1,,r1与 r2为0到1之间随机选取的浮点数,w表示粒子速度更新时的惯性权重,通过下式获得:
其中wmax为惯性权重的最大值,wmin为惯性权重的最小值,t为当前迭代次数的记录,tmax表示最大许可的迭代次数。
进一步的,所述107中粒子位置更新通过下式完成:
本发明的优点及有益效果如下:
本发明针对单链路故障状态下网络中部分交换机与控制器间时延急剧恶化的问题,提出了一种基于软件定义网络架构的控制层部署方法,在该方法的设计中综合考虑了正常运行以及链路故障等多种网络状态,通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,将原部署问题抽象为一个优化问题并构建模型。同时,基于粒子群算法的思想提出了一种启发式控制层部署方法对该模型求解。本发明所提部署方法能有效降低网络状态时延,从而使大部分网络状态下的最坏情况时延维持在较低范围,进而保证了网络性能的稳定。
附图说明
图1是本发明提供优选实施例采用的网络拓扑图;
图2是本发明提供优选实施例基于软件定义网络架构的控制层部署方法流程图;
图3为本发明所提方法与贪婪算法关于网络状态时延的对比;
图4为不同控制器数量下的时延收益参数;
图5为本发明所提方法与贪婪算法关于最坏情况时延的最坏情况时延累积分布对比。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
本例采用的拓扑选自真实的Internet2网络拓扑。如图1所示,该拓扑包括 34个城市级网络节点用以部署OpenFlow交换机,每对交换机节点间均通过高速链路连接,全网共计41条链路。本例将交换机节点从1至34进行编号,每条链路的传输时延以节点间的距离乘2/3倍光速计算。实施例中控制器采用 co-locate方式进行部署,即控制器的部署位置在所有交换机位置中选取。考虑到网络链路的故障概率具有差异性,对于各链路的故障概率参数设置为区间[0,0.15] 内的随机浮点数,其均值为0.04。
参照图2,本实例包括以下步骤:
第一步,输入网络拓扑G(V,E),需要部署的控制器数量k,算法循环次数上限tmax,最大惯性权重wmax,最小惯性权重wmin
第二步,初始化粒子与种群。在拓扑中交换机的位置集合里随机选取k个位置部署控制器,依据最近邻原则将其余交换机划分给距其最近的控制器管理,从而形成一种部署方案。该部署方案对应一个粒子pi,其位置属性用每一维度的位置属性集合表示,即Xi=(xi1…xij…xik),其中控制器cj表示为粒子pi的第j维分量,其位置属性与速度属性分别为xij、vij。集合中的元素采用部署控制器的交换机位置编号进行编码。随机选取N种部署方案,从而形成粒子数目为N的种群;
第三步,初始化粒子速度。对于粒子pi,以其位置属性中的每一维度xij为核心,向其周边直接相连的交换机节点位置随机选择一次。记录该次选择过程中xij到所选择节点的方向与距离作为粒子在该维度上的初始化速度方向与速度大小。粒子的速度由所有维度的速度构成,表示为Vi=(vi1…vij…vik);
第四步,初始化局部最优解。将每个粒子的初始位置设置为局部最优解 Pbesti←Xi
第五步,初始化全局最优解。在局部最优解中选取适应度最好的粒子位置作为全局最优解Gbest←Xbest
其中粒子适应度通过网络状态时延获得,网络状态时延越小则粒子适应度越好,其表达式如下:
Lwc(s0)表示网络无故障状态下经概率加权后的最坏情况时延,Lwc(si)表示由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延。
S={s0,s1…sj…sm}为网络状态集合,其中包含一个所有链路均正常工作的网络正常状态s0,以及m个相互统计独立的单链路故障状态{s1,s2,s3.......sm}。
第六步,粒子速度更新。从粒子每一维度的当前位置出发分别找到通向局部最优解与全局最优解所在位置的最短路径。最短路径中下一跳节点的方向作为粒子指向局部最优解与全局最优解的速度方向,其距离作为速度大小,分别记为对各速度方向做矢量加法,其结果记为vtemp。选取粒子在该维度的相关链路中与vtemp夹角最小的链路方向作为该维度的速度方向,依据公式完成粒子速度更新;
第七步,依据公式完成粒子位置更新;
第八步,局部最优解更新。为粒子当前位置计算适应度,并与更新前粒子所在位置的适应度进行对比。若获得更好的适应度,则更新局部最优解。反之,则不变;
第九步,全局最优解更新;
第十步,检查全局最优解与当前迭代次数。若全局最优解达到收敛或当前迭代次数已达上限,算法结束。反之,返回第六步,进入下一次算法循环;
在本实施例中,图3给出了本发明所提方法与基于贪婪算法的控制层部署算法(Controller Placement Algorithm Based on Greedy Algorithm,GA-CPA)关于网络状态时延的对比。图4为不同控制器数量下的时延收益参数。图5是本发明所提方法与GA-CPA算法关于最坏情况时延的最坏情况时延累积分布对比。
图3可见,当网络中控制器的数量k从1增加至5时,两种算法所获得的网络状态时延均呈下降趋势,这种趋势主要是因为网络被分为了更多的控制区域,因此整个网络的最坏情况时延必然随之降低,同时控制区域的增加也使得部分链路故障时网络中最坏情况时延的恶化得到了一定程度的缓解。从两种算法的性能方面来看本发明所提方法整体优于贪婪算法。当控制器数量为5时,两种算法间的差距达到峰值。此时GA-CPA算法所得网络状态时延约为本发明所提方法的1.21倍。这是由于本发明所提方法其自身特点包括局部搜索以及全局搜索,粒子的每一次运动均向着更优点的位置更新,直到无法寻找到更好的位置或达到搜索次数的上限为止,因此可以找到近似的全局最优解。而GA-CPA算法仅能保证每一个控制器的部署位置为当前的最优位置,而无法获得整体的最优。
图4给出了不同控制器数量下的时延收益参数,本例通过该参数确定最佳的控制器部署数量。时延收益参数定义为其中为控制层中部署一台控制器所获得的网络状态时延,为部署k台控制器所获得的网络状态时延。如图3及图4所示,当控制层中控制器的数量为3时,通过本发明所提方法与GA-CPA算法得到的时延收益参数分别约为0.480与0.412。当部署5个控制器时,两种算法得到的时延收益参数分别约为0.434与0.342。这说明在控制层中部署3个控制器比部署5个控制器时网络状态时延得到更明显的降低。此外,由图中可知当控制器的数量为3时,时延收益参数开始收敛,即此时向控制层中增加控制器无法使网络状态时延得到明显的降低。因此对于 internet2拓扑,应在控制层中部署3个控制器,该结论也与internet2所建议的部署3+1个控制器所吻合。
图5给出了部署3个控制器时两种算法所得最坏情况时延的累积分布。其中本发明所提方法与GA-CPA算法将控制器分别部署于图1中编号27、14、7 以及27、10、15的节点之上,每个控制器的控制区域根据最近邻原则划分,即交换机分配给距离自己最近的控制器。由图5可知,在不同的网络状态下最坏情况时延将于6.79ms至29.03ms范围内大幅度波动,这是因为多种网络状态之间关于最坏情况时延指标存在着权衡关系。因此,难以寻找到一种部署方案可以满足所有网络状态下的最坏情况时延均达到最小。然而,合理的部署方式可以保证较多网络状态下的最坏情况时延最小。如图所示,本发明所提方法可以保证约43%的网络状态下最坏情况时延不高于6.79ms。而10.7ms范围内该比值可达到74%,均高于GA-CPA算法所得结果。由此可见,在链路发生故障时不同的控制层部署方案在保障最坏情况时延方面存在着优劣,而合理的部署策略可以使更多的链路故障状态下最坏情况时延所受影响较小。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。

Claims (10)

1.一种基于软件定义网络架构的控制层部署方法,其特征在于,包括以下步骤:
1)、首先,综合考虑了正常运行以及链路故障在内的多种网络状态,通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,将控制器的部署问题抽象为一个通过合理的部署方式最小化网络状态时延的优化问题并构建模型;
2)基于粒子群算法的思想,提出了一种启发式控制层部署方法对该模型求解:将控制器的部署方案映射为无体积无质量的粒子,随机生成多种部署方案形成粒子种群,种群中的每个粒子通过在解空间中不断运动以获得新的位置与速度,粒子运动的过程受到由适应度所决定的局部最优解以及全局最优解的影响,通过粒子的位置与速度更新,逐步找到适应度最好的粒子作为全局最优解,并根据求解优化结果进行控制层部署。
2.根据权利要求1所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述步骤1)通过对最坏情况时延进行概率加权求和的方式提出了网络状态时延作为新的时延优化目标,将控制器的部署问题抽象为一个通过合理的部署方式最小化网络状态时延的优化问题,具体包括:Min其中Lwc(s0)表示网络无故障状态下经概率加权后的最坏情况时延,Lwc(si)表示由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延。
3.根据权利要求2所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述步骤2)基于粒子群算法的思想提出了一种启发式控制层部署方法具体包括以下步骤:
101、输入网络拓扑、需要部署的控制器数量、算法循环次数上限、最大惯性权重及最小惯性权重;
102、初始化粒子与种群,随机选取N种部署方案,从而形成粒子数目为N的种群;
103、对于粒子pi,以其位置属性中的每一维度xij为核心,向其周边直接相连的交换机节点位置随机选择一次,记录该次选择过程中xij到所选择节点的方向与距离作为粒子在该维度上的初始化速度方向与速度大小,粒子的速度由所有维度的速度构成,表示为Vi=(vi1…vij…vik);
104、初始化局部最优解,将每个粒子的初始位置设置为局部最优解;
105、初始化全局最优解,在局部最优解中选取适应度最好的粒子位置作为全局最优解;
106、粒子速度更新,从粒子每一维度的当前位置出发分别找到通向局部最优解与全局最优解所在位置的最短路径,最短路径中下一跳节点的方向作为粒子指向局部最优解与全局最优解的速度方向,其距离作为速度大小,分别记为对各速度方向做矢量加法,其结果记为vtemp,选取粒子在该维度的相关链路中与vtemp夹角最小的链路方向作为该维度的速度方向,完成粒子速度更新;
107、完成粒子位置更新;
108、局部最优解更新,为粒子当前位置计算适应度,并与更新前粒子所在位置的适应度进行对比,若获得更好的适应度,则更新局部最优解,反之,则不变;
109、全局最优解更新;
110、检查全局最优解与当前迭代次数,若全局最优解达到收敛或当前迭代次数已达上限,算法结束,反之,返回106,进入下一次算法循环。
4.根据权利要求3所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述步骤102初始化粒子与种群,随机选取N种部署方案,从而形成粒子数目为N的种群,具体包括:
在拓扑中交换机的位置集合里随机选取k个位置部署控制器,依据最近邻原则将其余交换机划分给距其最近的控制器管理,从而形成一种部署方案,该部署方案对应一个粒子pi,其位置属性用每一维度的位置属性集合表示,即Xi=(xi1…xij…xik),其中控制器cj表示为粒子pi的第j维分量,其位置属性与速度属性分别为xij、vij,集合中的元素采用部署控制器的交换机位置编号进行编码。
5.根据权利要求1-4之一所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述SDN网络中交换机与控制器采用带内连接,控制器采用co-locate方式部署,即控制器的部署位置从网络中所有交换机位置及其临近位置中选取。
6.根据权利要求3所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述步骤105中粒子适应度通过计算网络状态时延获得,其表达式如下:其中Lwc(s0)表示网络无故障状态下经概率加权后的最坏情况时延,Lwc(si)表示由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延,S={s0,s1…sj…sm}为网络状态集合,其中包含一个所有链路均正常工作的网络正常状态s0,以及m个相互统计独立的单链路故障状态{s1,s2,s3.......sm}。
7.根据权利要求6所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述网络无故障状态下经概率加权后的最坏情况时延Lwc(s0)通过下式获得:
<mrow> <msub> <mi>L</mi> <mrow> <mi>w</mi> <mi>c</mi> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>s</mi> <mn>0</mn> </msub> <mo>)</mo> </mrow> <mo>=</mo> <msub> <mi>p</mi> <msub> <mi>s</mi> <mn>0</mn> </msub> </msub> <mrow> <mo>(</mo> <munder> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <msub> <mi>&amp;Theta;</mi> <msub> <mi>c</mi> <mi>i</mi> </msub> </msub> </mrow> </munder> <mrow> <msub> <mi>c</mi> <mi>i</mi> </msub> <mo>&amp;Element;</mo> <mi>C</mi> </mrow> </munder> <mi>d</mi> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>c</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&amp;Pi;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <munder> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <msub> <mi>&amp;Theta;</mi> <msub> <mi>c</mi> <mi>i</mi> </msub> </msub> </mrow> </munder> <mrow> <msub> <mi>c</mi> <mi>i</mi> </msub> <mo>&amp;Element;</mo> <mi>C</mi> </mrow> </munder> <mi>d</mi> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>c</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mrow>
其中d(vij,ci)表示网络正常状态下交换机vij与其所属的控制器ci通过最短路径通信产生的传播时延,为网络正常工作的概率,表示链路ei的故障概率,C表示控制器集合,V代表交换机节点的集合,其中 表示控制器ci管理的交换机集合。
8.根据权利要求6所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述由于链路ei失效引发的网络故障状态下经概率加权后的最坏情况时延Lwc(si)通过下式获得:
<mrow> <msub> <mi>L</mi> <mrow> <mi>w</mi> <mi>c</mi> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>s</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <msub> <mi>p</mi> <msub> <mi>s</mi> <mi>i</mi> </msub> </msub> <mrow> <mo>(</mo> <munder> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <msub> <mi>&amp;Theta;</mi> <msub> <mi>c</mi> <mi>i</mi> </msub> </msub> </mrow> </munder> <mrow> <msub> <mi>c</mi> <mi>i</mi> </msub> <mo>&amp;Element;</mo> <mi>C</mi> </mrow> </munder> <msup> <mi>d</mi> <mo>&amp;prime;</mo> </msup> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>c</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <munderover> <mo>&amp;Pi;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> <mo>)</mo> <mo>)</mo> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> </mrow> <mrow> <munderover> <mi>&amp;Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> </mrow> </mfrac> <mrow> <mo>(</mo> <munder> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <msub> <mi>&amp;Theta;</mi> <msub> <mi>c</mi> <mi>i</mi> </msub> </msub> </mrow> </munder> <mrow> <msub> <mi>c</mi> <mi>i</mi> </msub> <mo>&amp;Element;</mo> <mi>C</mi> </mrow> </munder> <msup> <mi>d</mi> <mo>&amp;prime;</mo> </msup> <mo>(</mo> <mrow> <msub> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>c</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mrow>
其中d'(vij,ci)表示链路故障状态下交换机vij与控制器ci通过最短路径通信产生的传播时延,表示链路ei失效导致网络故障的概率,在的计算过程中对链路ei的失效概率进行归一化:
<mrow> <msub> <mover> <mi>P</mi> <mo>^</mo> </mover> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> <mo>=</mo> <mfrac> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </munderover> <msub> <mi>P</mi> <msub> <mi>e</mi> <mi>i</mi> </msub> </msub> </mrow> </mfrac> <mo>.</mo> </mrow> 2
9.根据权利要求6所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述步骤106中粒子速度更新通过下式完成:
<mrow> <msubsup> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>n</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>wv</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>n</mi> </msubsup> <mo>+</mo> <msub> <mi>l</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>r</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <msub> <mi>pbest</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>n</mi> </msubsup> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>l</mi> <mn>2</mn> </msub> <mo>*</mo> <msub> <mi>r</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <msub> <mi>gbest</mi> <mi>j</mi> </msub> <mo>-</mo> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>n</mi> </msubsup> <mo>)</mo> </mrow> </mrow>
其中分别代表粒子pi中第j维分量当前的速度与位置,分别表示该维分量更新后的速度与位置,l1与l2被称之为学习因子,取l1=l2=1,,r1与r2为0到1之间随机选取的浮点数,w表示粒子速度更新时的惯性权重,通过下式获得:
<mrow> <mi>w</mi> <mo>=</mo> <msub> <mi>w</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>-</mo> <mfrac> <mrow> <msub> <mi>w</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>w</mi> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> </msub> </mrow> <msub> <mi>t</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> </mfrac> <mo>*</mo> <mi>t</mi> </mrow>
其中wmax为惯性权重的最大值,wmin为惯性权重的最小值,t为当前迭代次数的记录,tmax表示最大许可的迭代次数。
10.根据权利要求9所述的基于软件定义网络架构的控制层部署方法,其特征在于,所述107中粒子位置更新通过下式完成:
<mrow> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>n</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <mo>=</mo> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>n</mi> </msubsup> <mo>+</mo> <msubsup> <mi>v</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>n</mi> </msubsup> <mo>.</mo> </mrow> 3
CN201710418627.2A 2017-06-06 2017-06-06 一种基于软件定义网络架构的控制层部署方法 Active CN107204880B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710418627.2A CN107204880B (zh) 2017-06-06 2017-06-06 一种基于软件定义网络架构的控制层部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710418627.2A CN107204880B (zh) 2017-06-06 2017-06-06 一种基于软件定义网络架构的控制层部署方法

Publications (2)

Publication Number Publication Date
CN107204880A true CN107204880A (zh) 2017-09-26
CN107204880B CN107204880B (zh) 2020-03-17

Family

ID=59906754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710418627.2A Active CN107204880B (zh) 2017-06-06 2017-06-06 一种基于软件定义网络架构的控制层部署方法

Country Status (1)

Country Link
CN (1) CN107204880B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107743147A (zh) * 2017-11-06 2018-02-27 柏域信息科技(上海)有限公司 基于全局优化的动态云存储sdn控制器配置方法及装置
CN107800570A (zh) * 2017-10-23 2018-03-13 天津大学 基于蝙蝠算法的sdn控制器部署方法
CN108174394A (zh) * 2018-01-12 2018-06-15 西安邮电大学 一种5g网络切片的编排算法
CN108400890A (zh) * 2018-01-30 2018-08-14 天津城建大学 一种软件定义网络多控制器部署方法
CN108881207A (zh) * 2018-06-11 2018-11-23 中国人民解放军战略支援部队信息工程大学 基于安全服务链的网络安全服务架构及其实现方法
CN108901053A (zh) * 2018-06-28 2018-11-27 广东工业大学 一种工业无线Mesh路由器部署方法、装置及系统
CN108900330A (zh) * 2018-06-25 2018-11-27 电子科技大学 一种适用于大规模软件定义网络的多控制器部署方法
CN109286528A (zh) * 2018-10-16 2019-01-29 四川长虹电器股份有限公司 一种基于时延的sdn网络多控制器部署方法
CN109379747A (zh) * 2018-12-04 2019-02-22 北京邮电大学 无线网络多控制器部署和资源分配方法和装置
CN110034955A (zh) * 2019-03-26 2019-07-19 重庆邮电大学 一种考虑多种交换机迁移指标的目标控制器选取方法
CN110061859A (zh) * 2019-03-20 2019-07-26 重庆邮电大学 一种基于用户生存性条件约束下的sdn控制器部署方法
CN110233752A (zh) * 2019-05-28 2019-09-13 中国人民解放军战略支援部队信息工程大学 一种抗攻击的控制器鲁棒部署方法及装置
CN110830570A (zh) * 2019-11-01 2020-02-21 陕西师范大学 软件定义网络中鲁棒的有限控制器资源均衡部署方法
CN112217666A (zh) * 2020-09-29 2021-01-12 中国银行股份有限公司 软件定义网络优化方法及装置
CN112817605A (zh) * 2021-01-19 2021-05-18 鹏城实验室 一种软件定义卫星网络控制器部署方法、装置及相关设备
CN113347514A (zh) * 2021-06-22 2021-09-03 重庆邮电大学 基于多路径生存性保护的软件定义光网络控制器部署方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150333824A1 (en) * 2014-05-19 2015-11-19 Ciena Corporation Margin-based optimization systems and methods in optical networks for capacity boosting
CN105631518A (zh) * 2015-12-23 2016-06-01 西安理工大学 多参数多目标混沌粒子群参数寻优方法
CN106372678A (zh) * 2015-07-23 2017-02-01 中国科学院沈阳自动化研究所 基于多种群粒子群算法的rfid网络读写器调度优化方法
CN106374457A (zh) * 2016-09-19 2017-02-01 南京工程学院 一种基于多目标粒子群优化算法的upfc协调控制方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150333824A1 (en) * 2014-05-19 2015-11-19 Ciena Corporation Margin-based optimization systems and methods in optical networks for capacity boosting
CN106372678A (zh) * 2015-07-23 2017-02-01 中国科学院沈阳自动化研究所 基于多种群粒子群算法的rfid网络读写器调度优化方法
CN105631518A (zh) * 2015-12-23 2016-06-01 西安理工大学 多参数多目标混沌粒子群参数寻优方法
CN106374457A (zh) * 2016-09-19 2017-02-01 南京工程学院 一种基于多目标粒子群优化算法的upfc协调控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HELLER B 等: "The controller placement problem", 《ACM SIGCOMM COMPUTER COMMUNICATION REVIEW》 *
陶君 等: "SDN控制层部署策略及需求分析研究", 《信息通信》 *

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107800570A (zh) * 2017-10-23 2018-03-13 天津大学 基于蝙蝠算法的sdn控制器部署方法
CN107743147A (zh) * 2017-11-06 2018-02-27 柏域信息科技(上海)有限公司 基于全局优化的动态云存储sdn控制器配置方法及装置
CN108174394A (zh) * 2018-01-12 2018-06-15 西安邮电大学 一种5g网络切片的编排算法
CN108400890A (zh) * 2018-01-30 2018-08-14 天津城建大学 一种软件定义网络多控制器部署方法
CN108400890B (zh) * 2018-01-30 2022-04-12 天津城建大学 一种软件定义网络多控制器部署方法
CN108881207A (zh) * 2018-06-11 2018-11-23 中国人民解放军战略支援部队信息工程大学 基于安全服务链的网络安全服务架构及其实现方法
CN108881207B (zh) * 2018-06-11 2020-11-10 中国人民解放军战略支援部队信息工程大学 基于安全服务链的网络安全服务实现方法
CN108900330A (zh) * 2018-06-25 2018-11-27 电子科技大学 一种适用于大规模软件定义网络的多控制器部署方法
CN108900330B (zh) * 2018-06-25 2021-04-27 电子科技大学 一种适用于大规模软件定义网络的多控制器部署方法
CN108901053A (zh) * 2018-06-28 2018-11-27 广东工业大学 一种工业无线Mesh路由器部署方法、装置及系统
CN108901053B (zh) * 2018-06-28 2021-07-13 广东工业大学 一种工业无线Mesh路由器部署方法、装置及系统
CN109286528A (zh) * 2018-10-16 2019-01-29 四川长虹电器股份有限公司 一种基于时延的sdn网络多控制器部署方法
CN109379747A (zh) * 2018-12-04 2019-02-22 北京邮电大学 无线网络多控制器部署和资源分配方法和装置
CN109379747B (zh) * 2018-12-04 2022-04-12 北京邮电大学 无线网络多控制器部署和资源分配方法和装置
CN110061859A (zh) * 2019-03-20 2019-07-26 重庆邮电大学 一种基于用户生存性条件约束下的sdn控制器部署方法
CN110061859B (zh) * 2019-03-20 2021-11-12 重庆邮电大学 一种基于用户生存性条件约束下的sdn控制器部署方法
CN110034955A (zh) * 2019-03-26 2019-07-19 重庆邮电大学 一种考虑多种交换机迁移指标的目标控制器选取方法
CN110034955B (zh) * 2019-03-26 2022-03-22 重庆邮电大学 一种考虑多种交换机迁移指标的目标控制器选取方法
CN110233752A (zh) * 2019-05-28 2019-09-13 中国人民解放军战略支援部队信息工程大学 一种抗攻击的控制器鲁棒部署方法及装置
CN110233752B (zh) * 2019-05-28 2021-11-09 中国人民解放军战略支援部队信息工程大学 一种抗攻击的控制器鲁棒部署方法及装置
CN110830570A (zh) * 2019-11-01 2020-02-21 陕西师范大学 软件定义网络中鲁棒的有限控制器资源均衡部署方法
CN110830570B (zh) * 2019-11-01 2022-02-01 陕西师范大学 软件定义网络中鲁棒的有限控制器资源均衡部署方法
CN112217666B (zh) * 2020-09-29 2022-02-25 中国银行股份有限公司 软件定义网络优化方法及装置
CN112217666A (zh) * 2020-09-29 2021-01-12 中国银行股份有限公司 软件定义网络优化方法及装置
CN112817605A (zh) * 2021-01-19 2021-05-18 鹏城实验室 一种软件定义卫星网络控制器部署方法、装置及相关设备
CN113347514A (zh) * 2021-06-22 2021-09-03 重庆邮电大学 基于多路径生存性保护的软件定义光网络控制器部署方法
CN113347514B (zh) * 2021-06-22 2023-05-02 重庆邮电大学 基于多路径生存性保护的软件定义光网络控制器部署方法

Also Published As

Publication number Publication date
CN107204880B (zh) 2020-03-17

Similar Documents

Publication Publication Date Title
CN107204880A (zh) 一种基于软件定义网络架构的控制层部署方法
CN104332995B (zh) 基于改进粒子群算法的配电网重构优化方法
CN104717098B (zh) 一种数据处理方法及装置
CN103179046B (zh) 基于openflow的数据中心流量控制方法及系统
CN100454848C (zh) 一种网络结构拓扑布局的方法及网管设备
CN103457852B (zh) 一种多播虚拟网络的抗毁性映射方法
CN105553749B (zh) 一种基于sdn的icn逻辑拓扑构建方法
CN106713468B (zh) 一种分布式集群服务系统及其节点协同方法
CN106685835A (zh) 一种在数据中心的计算节点间实现高速分布式路由的方法
CN107819854A (zh) 基于云边缘计算的公共安全系统及构建方法
CN106789648A (zh) 基于内容存储与网络状况的软件定义网络路由决策方法
CN105704054A (zh) 数据中心网络流量迁移方法及其系统
Kumar et al. An hybrid clustering algorithm for optimal clusters in wireless sensor networks
CN102904837B (zh) 一种基于虚拟业务平面的区分业务生存性方法
CN101677286A (zh) 承载网络优化方法
CN106685745B (zh) 一种网络拓扑构建方法及装置
CN106911516A (zh) 一种软件定义网络控制器部署方法
CN111582494A (zh) 一种基于延迟处理的混合分布式机器学习更新方法
CN105634823A (zh) 一种基于多路由配置的数据中心网络故障恢复方法
CN103354545A (zh) 一种基于云计算的p2p流媒体服务器集群部署方法
CN105591895A (zh) 管理网络流量的网络装置及其方法
CN104240150A (zh) 配电网重构方法及系统
CN104767778A (zh) 任务处理方法及装置
CN107395426A (zh) 一种基于节点使用概率的通信网络结构优化方法
CN104393590A (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
GR01 Patent grant
GR01 Patent grant