一种降低管理负载开销的sdn多控制器部署方法
【专利摘要】本发明公开了一种降低管理负载开销的SDN多控制器部署新方法,属于软件定义网络(SDN)【技术领域】。其特征是采用将软件定义网络(SDN)控制器的管理负载作为决策变量,构建关于控制器管理负载的数学模型。提出了将原SDN网络多控制器部署问题抽象化为一个图论问题,通过建立数学模型将该图论问题转化为整数线性规划问题,利用近似算法对该NP-难问题进行求解的策略。本发明在构建多控制器部署问题的数学模型的过程中,创新性地将网络性能与SDN控制器的管理负载一并纳入考量,能够针对不同SDN网络提供有效的部署方案,实现对多控制器数量的合理选取以及有效部署,保证SDN网络在满足一定网络性能且最小代价的情况下正常、有效运行。
【专利说明】-种降低管理负载开销的SDN多控制器部署方法
【技术领域】
[0001] 本发明属于软件定义网络(SDN)【技术领域】,涉及一种降低管理负载开销的SDN# 控制器部署方法。
【背景技术】
[0002] 随着网络规模的急剧膨胀和新技术新应用的不断涌现,传统网络体系结构和设计 理念逐渐暴露出严重不足,为了打破网络体系结构的封闭性,促进网络体系结构的开放,为 网络功能的创新奠定基础,软件定义网络(Software Defined Network, SDN)的思想应运而 生。为了将网络功能开放给上层应用,SDN将网络设备的逻辑控制平面与数据转发平面分 离开来,并采用集中控制的方式实现网络设备的可编程性。相比传统网络,SDN简化了网络 管理和配置操作,降低了网络核心设备的复杂性,提高了网络控制和管理的灵活性,增强了 对网络新技术、新协议的支持能力,缩短了网络功能创新的周期。
[0003] 除了 OpenFlow交换对网络数据转发能力产生影响外,为SDN网络中所有OpenFlow 交换产生数据转发规则的集中式控制器可扩展性对网络转发性能更是起着决定作用。尽管 它被称为慢速路径(Slow path),可当网络达到一定规模或用户并发访问突然增加时,控制 器若无法对大量OpenFlow交换的并发请求及时响应,就会导致OpenFlow交换无法对大量 达到的报文根据数据转发规则进行转发,很容易出现网络性能瓶颈。因此,控制器可伸缩性 不仅决定着SDN网络规模的大小,也决定了 SDN网络能否被大规模商用。同时,控制器作为 整个网络的控制核心,其自身可靠性将决定SDN网络是否可用。当控制器遇到硬件故障或 软件Bug时,由于无法为新流产生转发规则下发给OpenFlow交换设备,容易造成网络数据 转发服务的中断。因此,相对传统Non-SDN网络中控制功能在各个交换网络设备中分布式 部署,SDN网络集中式控制器的可靠性对网络稳定性的影响更大。
[0004] 若对控制器采用单点部署,SDN网络稳定性将难以得到保障。借鉴传统服务器集 群技术提高控制器可伸缩性和可靠性是一种很好的研究思路。研究结果表明控制器利用服 务器硬件的快速发展趋势,相比现有网络设备控制面的芯片能力具有更大的计算能力;单 台服务器就可以胜任超过1000台交换的控制面计算能力;若采用主备方式部署控制器,则 存在控制器主备角色切换问题和故障恢复问题;若采用集群方式部署控制器,则交换请求 如何在集群内的每个控制器之间负载均衡,同时控制器间的协同工作、拓扑及状态共享等 都是很大的难题。主流方法是采用分布式控制思想,即在一个SDN网络中部署多个控制器, 每个控制器直接管理与之直连的OpenFlow交换,通过编程或查询的方式间接管理非直连 OpenFlow交换,且不同OpenFlow控制器之间相互共享整网视图及资源状态,最终达到满足 任务关键网络的低延迟和可伸缩性需求。但在大规模网络部署中,控制器的数量及位置部 署直接决定了网络成本效率,同时如何对交换设备的控制面归属划分优化也是难点,控制 器对间接节点及链路状态的管理一致性保持要求也很高。
【发明内容】
[0005] 根据上述【背景技术】中存在的缺陷和不足,本发明提供了一种降低管理负载开销的 SDN多控制器部署新方法;对于不同SDN网络提供有效的部署方案;在构建多控制器部署问 题的数学模型的过程中,创新性地将网络性能与SDN控制器的管理负载一并纳入考量,以 控制器的管理负载为决策变量,选取合适的近似算法;从而实现对多控制器数量的合理选 取以及有效部署,保证SDN网络在满足一定网络性能且最小代价的情况下正常、有效运行;
[0006] 本发明的降低管理负载开销的SDN多控制器部署问题的解决方案包括网络拓扑 结构的分析、相关数学模型的构建、近似算法的选取以及求解;具体如下:
[0007] (一)分析络拓扑结构
[0008] 通过分析网络的拓扑结构以及影响网络性能的各种因素,选取网络中SDN控制器 的管理负载作为决策变量;控制器管理负载主要包括控制器处理请求的代价以及安装规则 的代价等;
[0009] 在广域SDN网络中,为了满足实际网络性能需求,通常需要部署多台控制器。对于 这一定数量的控制器,如果没有经过合理部署,将很容易导致资源的浪费,甚至满足不了网 络性能需求。在先前研究SDN网络多控制器部署问题的工作中,一个是选取了节点到控制 器的延迟作为优化决策变量,这是考虑到在广域SDN网络中,延迟的大小通常决定了该网 络的好坏,延迟起着主导作用;另一个是选取了可靠性作为决策变量,即当网络故障发生时 网络中有效控制路径的预期百分比,这是考虑到在SDN网络中,如果某一条控制路径失效, 使得转发设备及其控制器之间的连接断开,从而使网络中部分控制链路失效。在前人的研 究工作基础上,提出了一种新的度量,用来反映控制器管理负载,管理负载主要包括控制器 处理请求的代价和安装规则的代价等,并以此作为决策变量。这是考虑到控制器的处理能 力是有限的,如果控制器的管理负载过高,将严重影响控制器的性能,从而影响整个网络的 性能。目标就是在满足控制器数量尽可能少的情况下,同时保证这些控制器的管理负载最 小。
[0010] a.通过分析网络的拓扑结构,可以将多控制器部署问题抽象化为一个图论问题, 即将整个网络抽象为一个无向图;
[0011] b.根据分析,提出了一种新的度量,用来反映控制器管理负载,管理负载主要包括 控制器处理请求的代价和安装规则的代价等,并以此作为决策变量;
[0012] (二)构建相关数学模型
[0013] 构建降低管理负载开销的SDN多控制器部署问题的数学模型,以网络中控制器的 管理负载为决策变量,选取合适的约束条件,建立整数线性规划;具体如下:
[0014] 根据影响所要达到目的的因素找到决策变量。控制器的管理负载作为决策变量; 由决策变量和所在达到目的之间的函数关系确定目标函数。根据决策变量以及最终目标 确定将最小化管理负载作为目标函数;由决策变量所受的限制条件确定决策变量所要满足 的约束条件。将满足一定阀值的网络延迟以及有限的控制器的处理能力作为约束条件。尽 管将控制器的管理负载作为决策变量,但是仍然需要考虑网络中的延迟。由于考虑到在一 个网络中,只要延迟处在可容忍的范围之内,该网络就可以正常工作而不受延迟的影响。因 此,将延迟作为约束条件进行考虑。为了达到这个目的,可以设定阀值,使得只要延迟的值 不大于某一阀值,就可以满足网络正常工作的需求。除此之外,还需要考虑控制器的处理能 力,即一定时间内控制器所能处理的请求的数量。在一定时间内,网络中交换机所产生的流 的总数量不大于控制器所能处理的请求的总数,保证整个网络能够正常有效运行。
[0015] 本发明将多控制器部署问题抽象化为一个图论问题,然后在给定的k个控制器中 选择合适数量的控制器,并将这些控制器通过合适方式与图中的交换机相连接。假设整个 网络抽象为拓扑图G,S为网络中交换机的集合,C为网络中控制器的集合,设定单位时间 内从网络中交换机i转发到控制器的流数为fi,设流在交换机i与控制器j之间的最短路 径上的传播代价为I.(从传播延迟的角度表示),那么由此可得该优化问题的目标函数为 minSies2^efiXudu,其中表示交换机i与控制器j是否相连接(是为1,否为0)。对 于该多控制器部署优化问题,目标就是在k个控制器中选取合适数量的控制器,从而使得 网络中使用的控制器的管理负载最小;
[0016] 为了达到这个目标,还需要满足一定的约束条件。首先,针对网络延迟,在一个网 络中,只要延迟处在可容忍的范围之内,该网络就可以正常工作。具体的,设定一个阀值为 s,要求对于vi e s和vj e c,都有δ即要求网络延迟的值不大于该阀值。其次, 考虑到控制器的处理能力,具体表现为一定时间内控制器所能处理的请求的数量。具体的, 引入控制器能力描述,定义u = <Ui,u2,…U|cl>为控制器单位时间内的处理能力向量,那么 就是控制器j单位时间内所能处理的最大请求数量。从而可得对于vj e c,要求满足 ? i e sXijfi彡yjUj,其中yj表示控制器j是否连入网络中并处于激活状态(是为1,否为〇);
[0017] (三)近似算法的选取及求解
[0018] 针对步骤(二)中建立的整数线性规划问题,创新性地通过求解其对偶线性规划, 来求解原规划问题;选取近似度达到3的近似算法对原规划的对偶线性规划求解;具体步 骤如下:
[0019] a.由上文所述,该优化问题是一个NP难问题,由于NP难问题无法求得最优解而只 能求得近似解,再考虑到实际应用的需求,从而找到合适且有效的近似算法就显得尤为重 要;
[0020] b.根据0-1整数规划的线性规划的松弛,把每个变量必须为0或1的约束,替换为 较弱的每个变量属于区间[0, 1]的约束;把NP难的最优化问题(整数规划)转化为一个相 关的多项式时间可解的问题(线性规划),然后对松弛后的线性规划进行求解;
[0021] c.首先,针对松弛后的线性规划,求得其对偶规划max Σ i e s α「Υ δ -bk,γ、b为 任意常数且满足Y,b > 0 ;然后,选取近似度达到3的近似算法对该对偶规划求解;
[0022] d.由对偶规划可得,图中每个交换机的对偶变量a i不断增长直到当该交换机与 某个控制器相连时保持不变。初始状态,每一个交换机处于未连接状态;对偶变量a i增长, 当图中某些边(i,j)达到a i = fidij+Ydij+afi时,算法申明该边是"不可行边";当对偶变 量满足时,申明该边是"可行边";同样地,当边(i,j)是可行边时,申明交换机 i是连接的,控制器j处于激活状态。对于控制器j,如果满足Σ i e s β u = b_aUj,则申明该 控制器暂时处于激活状态;同时,所有与该控制器之间存在不可行边的交换机变为连接的, 申明该控制器为这些交换机的"伪控制器";接下来,令C t表示暂时处于激活状态的控制器 的集合,包含所有可行边的子图h以及满足交换机与控制器之间边数之多为2的子图G 2 ;
【权利要求】
1. 一种降低管理负载开销的SDN多控制器部署方法,其特征在于以下步骤: (一) 分析网络拓扑结构 a. 分析网络的拓扑结构,将多控制器部署问题抽象化为一个图论问题,即将整个网络 抽象为一个无向图; b. 提出一种新的度量,用来反映控制器管理负载,管理负载主要包括控制器处理请求 的代价和安装规则的代价等,并以此作为决策变量; (二) 构建相关数学模型 控制器的管理负载作为决策变量;由决策变量和所要达到目的之间的函数关系确定目 标函数;根据决策变量以及最终目标确定将最小化管理负载作为目标函数;由决策变量所 受的限制条件确定决策变量所要满足的约束条件;将满足一定阀值的网络延迟以及有限的 控制器的处理能力作为约束条件; 将多控制器部署问题抽象化为一个图论问题,然后在给定的k个控制器中选择控制 器,并将这些控制器与图中的交换机相连接;假设整个网络抽象为拓扑图G,S为网络中交 换机的集合,C为网络中控制器的集合,设定单位时间内从网络中交换机i转发到控制器的 流数为fi,设流在交换机i与控制器j之间的最短路径上的传播代价为(^,那么由此得到 该优化问题的目标函数为min Σ i e s Σ p efiXudu,其中表示交换机i与控制器j是否相 连接;对于该多控制器部署优化问题,目标就是在k个控制器中选取合适数量的控制器,从 而使得网络中使用的控制器的管理负载最小;
满足Σ i e 彡yjUj,其中yj表示控制器j是否连入网络中并处于激活状态; (三)近似算法的选取及求解 a. 根据0-1整数规划的线性规划的松弛,把每个变量必须为0或1的约束,替换为较弱 的每个变量属于区间[〇, 1]的约束;把NP难的最优化问题转化为一个相关的多项式时间可 解的问题,然后对松弛后的线性规划进行求解; b. 针对松弛后的线性规划,求得其对偶规划max Σ i e s α「Υ δ -bk,γ、b为任意常数且 满足Y,b > 0 ;选取近似度达到3的近似算法对该对偶规划求解; c. 由对偶规划可得,图中每个交换机的对偶变量^不断增长直到当该交换机与某个 控制器相连时保持不变;初始状态,每一个交换机处于未连接状态;对偶变量a i增长,当 图中某些边(i,j)达到a i = fidij+Ydij+afi时,算法申明该边是"不可行边";当对偶变量 β u满足β七〇时,申明该边是"可行边";同样地,当边(i,j)是可行边时,申明交换机i是 连接的,控制器j处于激活状态;对于控制器j,如果?两足Σ i e s β u = b-aUj,则申明该控制 器暂时处于激活状态;同时,所有与该控制器之间存在不可行边的交换机变为连接的,申明 该控制器为这些交换机的"伪控制器";接下来,令C t表示暂时处于激活状态的控制器的集 合,包含所有可行边的子图h以及满足交换机与控制器之间边数之多为2的子图G 2 ;最终 目标就是寻找最大的独立集合ζ,满足G Ε δ,己为匕的子图,使得在集合ζ中的所有控制 器都处于激活状态。
【文档编号】H04L12/24GK104065509SQ201410291267
【公开日】2014年9月24日 申请日期:2014年7月24日 优先权日:2014年7月24日
【发明者】李克秋, 陆骏, 齐恒, 喻海生 申请人:大连理工大学