一种应用于SDN的交换机-控制器部署方法与流程


一种应用于sdn的交换机-控制器部署方法
技术领域
1.本技术涉及通信技术领域,尤其涉及一种应用于sdn的交换机-控制器部署方法。


背景技术:



2.广域网(wan)在现实世界中具有重要的意义。它连接不同类型的网络(如数据中心网络、蜂窝网络和城域网等),并在这些网络之间通过流量的传输,来提供不同的网络应用。新兴的软件定义网络(software defined network,sdn)通过逻辑集中控制的方式使得广域网的性能得到了显著的提高。通常情况下,sd-wan(software-defined wan)的规模较大,通常由多个域组成,每个域包含一个sdn控制器,用于控制流经其域中的来自不同sdn交换机的流。sdn控制器之间需要进行同步,以维持统一的全局网络视图。
3.sdn的灵活流量控制来自于网络可编程性。一个流通过sdn交换机,它就成为一个可编程的流,并且能够改变它的转发路径,这被定义为网络可编程性。sdn控制器通过部署流的条目来调整流的转发路径,从而增强了网络的可编程性。sdn控制器具有较高的网络可编程性,可以频繁地生成最优的路由策略,并进一步调整相应流的转发路径,因此sd-wan在潜在的流量变化下性能波动的机会较小。
4.为了充分利用sdn控制器的能力,sd-wan面临两个主要问题:
5.将控制器的放置位置
6.如何正确地将网络中的交换机分配给控制器。
7.而交换机和控制器之间的控制延迟有很大的不同,使得难以很好的制定解决上述两个问题的方案。控制延迟是广域网操作中需要关注的一个重要问题,控制延迟可能会给广域网带来一些负面影响(例如路由策略更新、负载均衡和能源效率),甚至会降低网络性能。现有的最小化控制延迟的解决方案通常是粗粒度的基于位置的解决方案,它平等地对待每个交换机,在放置控制器时只关注交换机和控制器之间的距离。在真实环境中,流量波动期间通过交换机的流的数量变化很大,这意味着基于位置的解决方案不能达到很好的效果。由于一些交换机可能有更多的机会与控制器进行通信,而部分交换机却很少需要跟控制器进行通信,因此在将不同位置的交换机简单地视为相同的是不合适的。


技术实现要素:



8.本技术实施例提供一种应用于sdn的交换机-控制器部署方法,综合考虑关键流和网络可编程性,来区分不同的交换机对控制操作的影响,从而降低控制延迟。
9.本技术实施例提供一种应用于sdn的交换机-控制器部署方法,包括:
10.选取关键流;
11.基于所选取的关键流,建立最优控制器放置位置和交换机-控制器映射模型来确定控制器的位置,并将所述sdn中的交换机映射至相应的控制器,以最小化控制器和交换机之间的控制延迟;
12.其中所述最优控制器放置位置和交换机-控制器映射模型满足:
[0013][0014][0015][0016][0017][0018][0019]
其中,i表示交换机s的编号,j为控制器c的编号,t代表网络中分布在t个不同位置的交换机的总数;h代表从所有的交换机中选出h个交换机来作为控制器;yj是布尔型变量,如果控制器被放置在位置j,则yj=1,否则yj=0;x
ij
是布尔型变量,如果交换机si映射到控制器cj上,则x
ij
=1,否则x
ij
=0;是布尔型变量,如果编号为l的流f
l
具有k条路径,且这些路径经过交换机si,则否则δi代表关键流的所有路径中经过交换机si的路径数量;d
ij
代表交换机si和控制器cj的通信延迟;aj代表控制器cj可用的控制资源;k0表示流f的初始转发路径;
[0020]
求解所述最优控制器放置位置和交换机-控制器映射模型,以获得sdn的交换机-控制器部署结果。
[0021]
可选的,选取关键流是利用预设增强算法训练目标神经网络模型来对网络流量选取的。
[0022]
可选的,采用如下方式配置所述最优控制器放置位置和交换机-控制器映射模型的约束条件:
[0023]
在控制器被选定且已经放置后,网络中其余的交换机只能映射到一个控制器上,也即控制器放置约束:
[0024][0025]
在网络中,仅能h放置个控制器,也即控制器数量约束:
[0026][0027]
网络中未被选作控制的交换机只能被映射到一个控制器上,也即交换机-控制器映射约束:
[0028][0029]
控制器的控制负载不应超过该控制器的处理能力,也即控制器的处理能力约束:
[0030]

[0031]
可选的,求解所述最优控制器放置位置和交换机-控制器映射模型包括:
[0032]
将交换机-控制器映射关系集合以及控制器放置位置集合均初始化为空集;
[0033]
将二进制变量x
ij
和松弛化,求解所述最优控制器放置位置和交换机-控制器映射模型,以获得每个交换机si的松弛解集
[0034]
将松弛解集中的值进行降序排序,以获得第二解集
[0035]
可选的,求解所述最优控制器放置位置和交换机-控制器映射模型还包括:
[0036]
根据各交换机的关键流的可编程性大小进行降序排序,并在排序后基于各交换机的编号构建向量i
*
,其中所述可编程性大小用以描述控制器在交换机处改变关键流路径的能力;
[0037]
采用如下方式遍历所述向量i
*
中的交换机:
[0038]
对于所述向量i
*
中的交换机s
i0
,基于所述第二解集将所述交换机s
i0
映射到中概率最大的控制器,记录该控制器编号为j0;
[0039]
若控制器j0放置在c
j0
,且交换机s
i0
和控制器c
j0
的映射满足控制器数量约束和控制器的处理能力约束,则将控制能力转移到控制器c
j0
,并更新交换机-控制器映射关系集合以及控制器放置位置集合,否则,重复从中挑选控制器进行映射。
[0040]
可选的,遍历未进行映射的交换机的集合,执行如下步骤:
[0041]
测试已布置的各控制器对经过任一未进行映射交换机各路径的控制延迟;
[0042]
选取控制延迟最低的控制器,若控制延迟最低的控制器满足控制器数量约束和控制器的处理能力约束,则建立相应的映射,并更新更新交换机-控制器映射关系集合以及控制器放置位置集合。
[0043]
本技术实施例还提出一种计算机设备,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现前述的应用于sdn的交换机-控制器部署方法的步骤。
[0044]
本技术实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的应用于sdn的交换机-控制器部署方法的步骤。
[0045]
本技术实施例通过构建最优控制器放置和交换机-控制器映射模型(cpscm),将网络中控制器的位置如何选取的问题转换为对cpscm的求解问题,针对不同的网络状态,利用本技术的方法能给出不同的控制器放置方案,极大降低了控制延迟。
[0046]
上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,
而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
[0047]
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0048]
图1为本技术实施例的软件定义网络中控制器部署流程示例;
[0049]
图2为本技术实施例的控制器部署和交换机-控制器映射的可编程性示例。
具体实施方式
[0050]
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0051]
本技术实施例提供一种应用于sdn的交换机-控制器部署方法,包括:
[0052]
综合考虑关键流和网络可编程性,来区分不同交换机对控制操作的影响。该方案的实现方式如图1所示,由关键流的选择和可编程性资源管理器(programmability explorer,pe)两个模块组成。在初始化网络时,本实施例中为每个流生成一组路径。关键流选择模块通过分析历史流量矩阵,利用强化学习的方法获取流的信息,并选取关键流。
[0053]
假设网络有l条流,这些流组成了一个集合f={f1,f2,...,f
l
,...,f
l
},在集合f中,范围为[1,m]的流定义为关键流,范围从[m+1,l]的流定义问常规流;对于集合f中的任意一条流f
l
,其路径集合包含k条路径,可以表示为对于整个流的集合f来说,它的路径集合可以表示为p={p1,p2,...,p
l
,...,p
l
}。通常情况下,软件定义广域网由位于h个位置的h个控制器组成,每个控制器控制一个交换机域,控制器间通过控制器同步来保持网络信息的一致性。本实施例用于解决如何将控制器放置在网络之中,使得交换机和控制器之间的控制延迟最低。
[0054]
具体的,本实例中基于所选取的关键流,建立最优控制器放置位置和交换机-控制器映射模型来确定控制器的位置,并将所述sdn中的交换机映射至相应的控制器,以最小化控制器和交换机之间的控制延迟。其中所述最优控制器放置位置和交换机-控制器映射模型满足:
[0055][0056][0057]
[0058][0059][0060][0061]
其中,i表示交换机s的编号,j为控制器c的编号,t代表网络中分布在t个不同位置的交换机的总数;h代表从所有的交换机中选出h个交换机来作为控制器;yj是布尔型变量,如果控制器被放置在位置j,则yj=1,否则yj=0;x
ij
是布尔型变量,如果交换机si映射到控制器cj上,则x
ij
=1,否则x
ij
=0;是布尔型变量,如果编号为l的流f
l
具有k条路径,且这些路径经过交换机si,则否则δi代表关键流的所有路径中经过交换机si的路径数量;d
ij
代表交换机si和控制器cj的通信延迟;aj代表控制器cj可用的控制资源;k0表示流f的初始转发路径。
[0062]
求解所述最优控制器放置位置和交换机-控制器映射模型,以获得sdn的交换机-控制器部署结果。
[0063]
本技术实施例通过构建最优控制器放置和交换机-控制器映射模型(cpscm),将网络中控制器的位置如何选取的问题转换为对cpscm的求解问题,针对不同的网络状态,利用本技术的方法能给出不同的控制器放置方案,极大降低了控制延迟。
[0064]
在一些实施例中,选取关键流是利用预设增强算法训练目标神经网络模型来对网络流量选取的。本示例中关键流指的是对网络性能中起决定作用的流(如最拥堵链路上的流),一般具有较高的流量负载,更容易造成网络拥塞。为了使选出来的流更具有代表性,关键流的选择模型将选择决策表示为一个神经网络。神经网络提供了一种高效、可拓展的方式将不同时刻的流量矩阵结合到一个决策中,并使用自定义的增强算法对神经网络进行训练。训练完成后,用最优的关键流选择模型从实时的流量矩阵中选取关键流。
[0065]
在一些实施例中,采用如下方式配置所述最优控制器放置位置和交换机-控制器映射模型的约束条件:
[0066]
在控制器被选定且已经放置后,网络中其余的交换机只能映射到一个控制器上,也即控制器放置约束:
[0067][0068]
在网络中,仅能h放置个控制器,也即控制器数量约束:
[0069][0070]
网络中未被选作控制的交换机只能被映射到一个控制器上,也即交换机-控制器映射约束:
[0071]
[0072]
控制器的控制负载等价于在其控制的域内关联流的总开销。本实例中通过在不引入额外延迟(例如排队延迟)的情况下,控制器可以正常控制的流的数量来衡量控制器的控制处理能力,控制器的控制负载不应超过该控制器的处理能力,也即控制器的处理能力约束:
[0073]

[0074]
现有技术中,整数编程的典型解决方案是使用整数程序优化求解器获得上述cpscm问题的最优解。但是,对于较大规模的网络(交换机和流的数量较多),解决方案的空间也相对较大,计算可行解会花费更长的时间,浪费更多的计算资源。本技术中提出pe的启发式算法来解决这一问题,从而提高性能和时间复杂度。pe的基本思想是先放置一个控制器,然后为控制器建立一个交换机-控制器映射,直到所有的控制器都放置好,交换机都映射好。在一些实施例中,求解所述最优控制器放置位置和交换机-控制器映射模型包括:
[0075]
将交换机-控制器映射关系集合以及控制器放置位置集合均初始化为空集;
[0076]
将二进制变量x
ij
和松弛化,求解所述最优控制器放置位置和交换机-控制器映射模型,以获得每个交换机si的松弛解集
[0077]
将松弛解集中的值进行降序排序,以获得第二解集中的值进行降序排序,以获得第二解集
[0078]
在一些实施例中,求解所述最优控制器放置位置和交换机-控制器映射模型还包括:首先测试具有更多路径遍历的交换机,根据各交换机的关键流的可编程性大小进行降序排序,并在排序后基于各交换机的编号构建向量i
*

[0079]
其中所述可编程性大小用以描述控制器在交换机处改变关键流路径的能力。图2说明了网络可编程性的定义。对于流程f:s21

s24,在s21处有三条路径(s21

s23

s22、s21

s20

s22、s21

s24

s22),因此其网络可编程性在s21处为三条。在交换机s21上,控制器可以确定流程f的下一步转发路径为s23、s20或s24,从而调整流程的转发路径,实现网络可编程性。
[0080]
采用如下方式遍历所述向量i
*
中的交换机:
[0081]
可以依次遍历测试i
*
中的交换机,对于所述向量i
*
中的交换机s
i0
,基于所述第二解集将所述交换机s
i0
映射到中概率最大的控制器,记录该控制器编号为j0。
[0082]
若控制器j0放置在c
j0
,且交换机s
i0
和控制器c
j0
的映射满足控制器数量约束和控制器的处理能力约束,该放置和映射方式是可行的,则将控制能力转移到控制器c
j0
,并更新交换机-控制器映射关系集合以及控制器放置位置集合,否则,重复从中挑选控制器进行映射。如映射成功,则更新相应的集合,对i
*
中其他交换机依次进行测试。
[0083]
在一些实施例中,遍历未进行映射的交换机的集合,执行如下步骤:
[0084]
测试已布置的各控制器对经过任一未进行映射交换机各路径的控制延迟;
[0085]
选取控制延迟最低的控制器,若控制延迟最低的控制器满足控制器数量约束和控制器的处理能力约束,则建立相应的映射,并更新更新交换机-控制器映射关系集合以及控制器放置位置集合。
[0086]
本技术通过构建最优控制器放置和交换机-控制器映射模型(cpscm),将网络中控制器的位置如何选取的问题转换为对cpscm的求解问题,并设计启发式方案pe完成cpscm模型的求解,建立的模型及其求解过程,采用细粒度级别的放置方案,针对不同的网络状态,能够给出不同的控制器放置方案,极大降低了控制延迟。在多种网络拓扑和真实流量矩阵下,本技术的方法可有效降低网络延迟、降低求解时间,极大提高网络性能。
[0087]
本技术实施例还提出一种计算机设备,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现前述的应用于sdn的交换机-控制器部署方法的步骤。
[0088]
本技术实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的应用于sdn的交换机-控制器部署方法的步骤。
[0089]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0090]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0091]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本技术各个实施例所述的方法。
[0092]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本技术的保护之内。

技术特征:


1.一种应用于sdn的交换机-控制器部署方法,其特征在于,包括:选取关键流;基于所选取的关键流,建立最优控制器放置位置和交换机-控制器映射模型来确定控制器的位置,并将所述sdn中的交换机映射至相应的控制器,以最小化控制器和交换机之间的控制延迟;其中所述最优控制器放置位置和交换机-控制器映射模型满足:控制器映射模型满足:控制器映射模型满足:控制器映射模型满足:控制器映射模型满足:控制器映射模型满足:其中,i表示交换机s的编号,j为控制器c的编号,t代表网络中分布在t个不同位置的交换机的总数;h代表从所有的交换机中选出h个交换机来作为控制器;y
j
是布尔型变量,如果控制器被放置在位置j,则y
j
=1,否则y
j
=0;x
ij
是布尔型变量,如果交换机s
i
映射到控制器c
j
上,则x
ij
=1,否则x
ij
=0;是布尔型变量,如果编号为l的流f
l
具有k条路径,且这些路径经过交换机s
i
,则否则δ
i
代表关键流的所有路径中经过交换机s
i
的路径数量;d
ij
代表交换机s
i
和控制器c
j
的通信延迟;a
j
代表控制器c
j
可用的控制资源;k0表示流f的初始转发路径;求解所述最优控制器放置位置和交换机-控制器映射模型,以获得sdn的交换机-控制器部署结果。2.如权利要求1所述的应用于sdn的交换机-控制器部署方法,其特征在于,选取关键流是利用预设增强算法训练目标神经网络模型来对网络流量选取的。3.如权利要求1所述的应用于sdn的交换机-控制器部署方法,其特征在于,采用如下方式配置所述最优控制器放置位置和交换机-控制器映射模型的约束条件:在控制器被选定且已经放置后,网络中其余的交换机只能映射到一个控制器上,也即控制器放置约束:在网络中,仅能h放置个控制器,也即控制器数量约束:
网络中未被选作控制的交换机只能被映射到一个控制器上,也即交换机-控制器映射约束:控制器的控制负载不应超过该控制器的处理能力,也即控制器的处理能力约束:。4.如权利要求3所述的应用于sdn的交换机-控制器部署方法,其特征在于,求解所述最优控制器放置位置和交换机-控制器映射模型包括:将交换机-控制器映射关系集合以及控制器放置位置集合均初始化为空集;将二进制变量x
ij
和松弛化,求解所述最优控制器放置位置和交换机-控制器映射模型,以获得每个交换机s
i
的松弛解集将松弛解集中的值进行降序排序,以获得第二解集5.如权利要求4所述的应用于sdn的交换机-控制器部署方法,其特征在于,求解所述最优控制器放置位置和交换机-控制器映射模型还包括:根据各交换机的关键流的可编程性大小进行降序排序,并在排序后基于各交换机的编号构建向量i
*
,其中所述可编程性大小用以描述控制器在交换机处改变关键流路径的能力;采用如下方式遍历所述向量i
*
中的交换机:对于所述向量i
*
中的交换机s
i0
,基于所述第二解集将所述交换机s
i0
映射到中概率最大的控制器,记录该控制器编号为j0;若控制器j0放置在c
j0
,且交换机s
i0
和控制器c
j0
的映射满足控制器数量约束和控制器的处理能力约束,则将控制能力转移到控制器c
j0
,并更新交换机-控制器映射关系集合以及控制器放置位置集合,否则,重复从中挑选控制器进行映射。6.如权利要求5所述的应用于sdn的交换机-控制器部署方法,其特征在于,遍历未进行映射的交换机的集合,执行如下步骤:测试已布置的各控制器对经过任一未进行映射交换机各路径的控制延迟;选取控制延迟最低的控制器,若控制延迟最低的控制器满足控制器数量约束和控制器的处理能力约束,则建立相应的映射,并更新更新交换机-控制器映射关系集合以及控制器放置位置集合。7.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的应用于sdn的交换机-控制器部署方法的步骤。8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机
程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的应用于sdn的交换机-控制器部署方法的步骤。

技术总结


本申请公开了一种应用于SDN的交换机-控制器部署方法,选取关键流;基于所选取的关键流,建立最优控制器放置位置和交换机-控制器映射模型来确定控制器的位置,并将所述SDN中的交换机映射至相应的控制器,以最小化控制器和交换机之间的控制延迟;求解所述最优控制器放置位置和交换机-控制器映射模型,以获得SDN的交换机-控制器部署结果。本申请的方法通过构建最优控制器放置和交换机-控制器映射模型(CPSCM),将网络中控制器的位置如何选取的问题转换为对CPSCM的求解问题,针对不同的网络状态,利用本申请的方法能给出不同的控制器放置方案,极大降低了控制延迟。极大降低了控制延迟。极大降低了控制延迟。


技术研发人员:

李杨 郭泽华 窦松石 齐力 李昶林 王蒙蒙 刘博文 尚靖琨 马建

受保护的技术使用者:

中国电子科技集团公司电子科学研究院

技术研发日:

2022.11.24

技术公布日:

2023/3/24

本文发布于:2024-09-21 20:39:27,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/78208.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:控制器   交换机   所述   位置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议