APP下载

基于OpenFlow的控制器部署可靠性方案设计

2018-08-17,,

计算机工程 2018年8期
关键词:故障率交换机时延

张 , ,

(西安邮电大学 通信工程学院,西安 710121)

0 概述

第5代(5G)移动通信系统[1-2]具有很高的频谱利用率和能效,传输速度和资源利用率比4G通信系统高了一个数量级,因为这些优点,5G正成为通信领域的研究热点[3-4]。超密集异构网络技术作为5G的核心技术之一,具有网络规模大、网络节点数量多的特点,对传统网络管理构成新的挑战。传统网络管理依赖大量网络设备(如交换机、路由器等)以及各种用来驱动设备的复杂协议,通信网络故障率高、可扩展性差、网络管理任务繁重。软件定义网络(Software Defined Networking,SDN)[5]作为一种新兴技术,是未来最具前途的网络架构之一[6-8]。SDN将复杂的网络管理功能集中到控制器上,控制器为OpenFlow交换机计算出转发数据分组的流表,OpenFlow交换机负责使用流表转发数据。该方式能极大提高网络资源利用率、简化网络管理流程、降低运营成本[9-10]。

SDN采取集中控制管理方式,如果控制器和OpenFlow交换机失连,将导致OpenFlow交换机丢弃所有与流表不匹配的数据包,这会对整个网络造成严重后果,因此,控制器和OpenFlow交换机的稳定连接对提高控制网络的可靠性十分重要[11]。

在提高SDN控制网络可靠性方面,一类方法通过解决链路故障率以及合理部署控制器来提高控制网络可靠性。文献[12]将整个SDN网络划分为多个控制域,在每个控制域中放置一个控制器,控制器在其控制域中选择合适控制路径,从而完成控制网络。文献[13]提出K-Critical算法来分割网络并选择控制器位置,其目的是处理故障并平衡所选控制器间的负载。上述方法均依据最短路径法控制准则来进行控制网络的可靠性设计,在实际网络中,链路间的故障率并不相同,最短路径法控制准则容易选择出高故障率链路,从而对网络整体的可靠性产生负面影响。另一类方法通过数学线性规划来确定控制器部署位置和控制路径。文献[14]通过控制路径损耗的预期百分比来表示SDN控制网络的可靠性,通过将控制器放置问题简化为二进制整数规划问题来最大限度地提高SDN控制网络的可靠性。文献[15]将可靠性问题通过二进制进行整数规划,以最大化设备和控制器间不相交路径的平均数量,同时提出启发式算法定义控制器备份列表以处理控制器故障。然而,控制器放置问题是NP-hard问题,当网络规模较大时,上述方法都会花费较多时间。

针对以上方法的不足,本文提出一种用于提高控制网络可靠性的新方案,并在实际网络中进行控制器部署仿真,以验证该方案的可行性。

1 控制网络可靠性分析

SDN控制网络在设计中通常忽略链路故障率,或者假设所有链路故障率相同,其采用最短路径法控制准则进行控制网络设计。在真实网络中,链路故障率并不能忽略,且每条链路的故障率各不相同,最短路径法并不能准确分析网络整体可靠性。如图1所示,C1表示控制器,S表示OpenFlow交换机,网络连线中实线部分表示网络链路,虚线部分表示控制链路,链路上的数字表示链路故障率。从图1中可以看出,控制器通过控制链路将流表下发到各OpenFlow交换机上,从而实现对所有OpenFlow交换机的通信控制。

图1 链路故障率影响分析网络拓扑

计算控制器C1到达S6的控制路径时,在考虑链路故障率的情况下,最短路径法以起点到终点的故障率总值最小为原则进行路径控制,此时控制器C1到达S6有2种控制路径:(C1,S2,S6)和(C1,S2,S5,S6)。这种情况下,最短路径法并不能快速、准确地选择出哪条路径为最佳控制路径。随着网络规模的增大和接入的OpenFlow交换机数目的增多,最短路径法控制准则对网络整体可靠性带来的负面影响急剧上升。

采用图2所示的2个网络拓扑分析控制器部署位置对控制网络可靠性的影响,其中,各部件的功能和图1相同。设定与控制器C1直连的链路故障率为0(即图2(a)中控制链路(C1,S1)故障率为0,图2(b)中控制链路(C1,S4)故障率为0)。在图2(a)中,将控制器C1布置在S1上,当(S1,S2)链路出现故障时,除S1外,其他OpenFlow交换机都将和控制器失联。在图2(b)中,将控制器C1布置在S4上,当(S3,S4)和(S4,S5)中任意一条控制链路出现故障时,最多导致3个OpenFlow交换机与控制器失联。经过对比可以看出,相比位置S1,在位置S4上部署控制器更能提高控制网络的可靠性。

图2 控制器位置影响分析网络拓扑

综上可知,合理选择链路控制准则与控制器部署位置能有效提高SDN控制网络的可靠性。

2 控制网络方案设计

2.1 控制网络数学建模

用无向图N=(S,L)表示整体网络拓扑,其中,S表示所有OpenFlow交换机,L表示所有OpenFlow交换机间的连接链路。假设在OpenFlow交换机及其控制器之间只有带内连接,即控制器和OpenFlow交换机仅通过现有物理路径进行通信。另外,用N′=(S′,L′)表示控制网络,其中,S′表示受控制的OpenFlow交换机,L′表示网络中的控制链路,显然有S′=S,L′⊆L。

最短路径法控制准则以链路长度(通常是节点跳数)作为路径权值,各节点选择出权值和最小的路径来到达目的节点。前文已说明这种方式并不能保证所选择路径是一条最可靠的路径。本文用链路可靠性指标Rab来衡量初始节点a到达目的节点b所经过链路的整体可靠程度,Rab定义如下:

在确定控制器在网络中的部署位置过程中,本文用链路重要指标,即由某条链路故障而导致的与控制器失连的OpenFlow交换机数目,来衡量某条链路对网络整体的重要性。链路重要指标值越大,则该链路关联的OpenFlow交换机数目越多,该链路对网络整体可靠性越重要。

初始状态时所有链路的重要指标值设为0。将控制器部署在编号为1的位置上,依据控制准则得出编号为1时的控制路径。在控制路径的确定过程中,每选择出一条控制路径,将该路径上所有链路的重要指标值加1,下一条控制路径与上一条控制路径有重叠链路时,对该重叠部分链路的重要指标值再加1。选择出最后一条交换机的控制路径后,该部署位置上的控制路径重要指标值即被确定。

确定首个位置上控制路径的重要指标值后,计算下一个位置所生成控制路径及其相应链路的重要指标值,得出所有位置的控制路径和重要指标值后,通过第2.2节的算法选择出控制器的部署位置。

2.2 控制器位置部署算法

本文设定一个衡量控制网络不可靠指数的参数如下:

其中,G(N′)表示控制网络的不可靠指数,G(N′)数值越小,控制网络可靠性越高,δab表示节点a与节点b间的链路误差率,weightab表示节点a与节点b间的链路重要指标值,Pab表示节点a和节点b之间是否存在控制链路,若存在,则Pab=1,否则Pab=0。控制器位置部署算法流程如图3所示。首先对网络中所有的OpenFlow交换机进行从1到n的编号统计,同时获取OpenFlow交换机之间的所有连接链路误差率,然后计算出所有可以部署控制器的位置上的网络不可靠指数G(N′),在此基础上,选择出不可靠指数G(N′)最小的位置来部署控制器。

图3 控制器位置部署算法流程

2.3 控制网络模型实现

控制网络部署模型如图4所示,主要包括应用层、控制层和基础架构层,应用层和控制层之间通过北向接口进行通信,控制层和基础架构层之间通过OpenFlow协议进行通信。

图4 控制网络模型架构

应用层的功能包括基本数据流转发、拓扑发现、链路故障测量、控制路径计算。基本数据流转发使OpenFlow交换机查看每一个数据包、学习源-端口映射关系,并建立源MAC地址和端口之间的关联。OpenFlow交换机学习到二层地址时,流表会建立精确匹配,不同的TCP连接将会导致不同的流表建立;拓扑发现使控制层掌握全局网络拓扑结构信息,并对网络拓扑信息进行统一管理;链路故障测量收集网络中所有链路的丢包率,由丢包情况衡量该链路的故障率;控制路径计算通过链路控制准则选择出控制器到达各OpenFlow交换机的最可靠控制路径。应用层无需考虑底层细节,其通过简单编程来进行控制决策应用的快速部署。控制层为逻辑中心控制器,负责执行应用层的控制策略并生成流表下发到基础架构层。基础架构层为支持OpenFlow协议的交换机转发组件,负责执行控制层下发的数据流表并进行网络数据帧的具体转发。

3 仿真结果与分析

在本文实验中,电脑系统环境为Ubuntu 14.04.5 LTS,使用Mininet 2.2.1软件搭建SDN仿真环境,选用POX控制器。采用图5所示的经典网络拓扑来比较本文控制准则与最短路径法控制准则在网络故障率和网络延时2个方面的性能。

图5 仿真网络拓扑

首先,采用图5中的Internet 2和Fat-tree来对比2个方案的控制网络故障率。网络故障率定义为控制器到达各目的节点的控制数据平均丢失率,网络故障率仿真结果如图6、图7所示。

图6 Internet 2网络故障率仿真结果

图7 Fat-tree网络故障率仿真结果

由图6、图7可以看出,本文控制准则在故障率控制方面的性能优于最短路径法控制准则。接下来,对比2个方案的控制网络时延性能。控制网络时延定义为所有位置在各时间段平均时延情况,网络时延仿真结果如图8、图9所示。

图8 Internet 2网络时延仿真结果

图9 Fat-tree网络时延仿真结果

由图8、图9可以看出,未出现链路故障时,最短路径法控制准则网络时延性能优于本文控制准则。在控制数据传输过程中出现链路故障会造成传播时延的急剧恶化。本文控制准则链路故障率小于最短路径法控制准则,在控制数据传输初期,最短路径法控制准则平均时延优于本文控制准则,但后期随着通信时间的增加,本文控制准则总平均时延优于最短路径法控制准则。综合对比网络故障率和时延性能,可以看出本文控制准则更能改善网络性能。

最后验证本文所提控制器位置部署算法的性能,用式(3)衡量该算法对常用控制器部署算法在可靠性方面的改进程度。

(3)

其中,N(Random,SP)表示在最短路径法控制准则条件下,在网络随机位置部署控制器时的控制网络不可靠指数,N(Optimal,OP)表示在本文控制准则条件下,由新控制器部署算法计算出部署位置上的控制网络不可靠指数。新控制器位置部署算法可靠性改进效果如图10~图12所示。

图10 Internet 2拓扑控制器部署仿真结果

图11 Fat-tree拓扑控制器部署仿真结果

图12 Bcube拓扑控制器部署仿真结果

由图10~图12可以看出,在控制网络可靠性方面,相对常用控制器部署算法,本文控制器部署算法取得了18%~85%的改进提高。因此,本文控制器部署算法更能改进控制网络的可靠性。

4 结束语

针对最短路径法控制准则不能提高控制网络可靠性的问题,本文以链路可靠性指标为控制准则,提出一种新方案,通过该方案来选择合理的控制器部署位置和可靠的控制路径。仿真结果表明,在故障率和时延方面,本文方案对常用控制网络有明显的改进,最大改进达85%。但在网络链路故障率极低的情况下,本文方案对控制网络可靠性的改进不大,且传输时延性能会降低。如何在保证较低故障率的同时缩短网络的传播时延,将是下一步的研究内容。

猜你喜欢

故障率交换机时延
基于GCC-nearest时延估计的室内声源定位
基于改进二次相关算法的TDOA时延估计
修复损坏的交换机NOS
使用链路聚合进行交换机互联
探索零故障率的LED智能显示终端
FRFT在水声信道时延频移联合估计中的应用
基于分段CEEMD降噪的时延估计研究
基于故障率研究的数字保护最优检修周期
降低空气开关跳闸故障率的措施研究
PoE交换机雷击浪涌防护设计