APP下载

基于Dyna agent算法的SDN控制策略

2016-12-26朱国晖李晨光

计算机应用与软件 2016年11期
关键词:交换机控制策略服务器

朱国晖 李晨光 程 宇

(西安邮电大学通信与信息工程学院 陕西 西安 710121)



基于Dyna agent算法的SDN控制策略

朱国晖 李晨光 程 宇

(西安邮电大学通信与信息工程学院 陕西 西安 710121)

为改善网络节点资源利用率,提出基于Dyna agent算法的控制器控制策略。首先对网络控制器部署建模;然后控制器利用环境反馈信息反作用于控制端网络流量控制策略抉择;最后分析触发学习机制后各节点转发状态的变化,重新设置节点选择权值。仿真结果表明,该控制策略相对于普通控制策略的网络可使目的节点处理能力更强,吞吐量增大,网络延迟更小。

软件定义网络 Dyna agent OpenFlow 控制策略

0 引 言

降低流量成本、提升管道价值、加速网络创新是网络发展的目标。在此背景下,软件定义网络SDN应运而生。SDN核心是控制与转发相分离,网络软件化,对目前垂直紧耦合结构进行解耦,网络能力得到充分开放,从而提升网络的创新能力。

利用SDN控制器可编程特性,对网络切片进行重新部署[1,2],解决网络僵化问题,提高网络资源利用率。文献[3]研究了SDN分布式控制平面中控制器的静态部署问题,使得交换机到控制器的时延最短,并保证控制器的处理能力能够满足其上所连接交换机上承载的业务需求。但是,在多控制器部署环境下,由于网络负载动态变化,需要将交换机从负载较重的控制器动态迁移到负载较轻的控制器下;文献[4]提出了弹性控制平面的概念、知识架构以及迁移过程的简述,但文章中并没有给出具体的算法。尽管网络控制与数据转发相分离的新型网络架构简化了网络管理,但随着交换机数量的增多,单一控制器吞吐能力有限,对于大规模网络必然会产生系统性能瓶颈。此外,如果网络设备阻塞或者周围发生灾难故障,控制器控制策略同样会对网络整体流量产生影响。

本文主要针对网络资源利用率进行研究,从服务器端入手,提出基于Dyna agent的动态路由控制策略。当网络严重阻塞或者遇到灾害时,触发学习控制策略,对其建模,通过仿真查看网络触发学习机制前后负载以及时延变化情况。

1 SDN控制端负载分析

SDN分为基础设施层、控制层和应用层。虚拟化在基础设施和控制层两个层面上来实现:前者实现设备级的虚拟化;后者实现网络级的虚拟化。SDN控制器将整个网络当成一个逻辑的超级交换机进行管理控制。

路由负载调节方案需要在服务器集群入口处,通过一个Gateway或者Router来监测统计服务器工作负载,然后动态转移用户到负载相对较轻的服务器上,从而缓解网络的拥堵状况。OpenFlow[5]可以对网络中所有设备进行集中式控制和管理,同时服务器的负载运行状态可以及时地反馈到OpenFlow控制器,因此OpenFlow就非常适合做负载调节工作。控制器通过Host及网络控制器来监测服务器和网络的负载变化,然后将这些信息反馈给Flow Manager。OpenFlow控制器就可以根据这些实时的负载信息,重新制定网络设备运行规则,从而将网络数据包按照服务器的处理能力进行调整和分发。控制器可以动态地感知各节点和每条路径的负载状况,因而可以根据网络中的负载实时调整路由策略,从而实现网络流量的最优化。

2 OpenFlow控制器算法设计

OpenFlow能够实现数据转发和控制相分离,在控制器、FlowVisor中可进行编程,不直接提供网络切片能力,而是把网元设备分割成单独的控制端口组,或将网络分割成单独的管理域。线路协议用于建立控制会话,对流的修改进行定义和对统计数据进行收集。本文研究SDN分布式控制平面中控制器的静态部署问题,使得交换机到控制器的时延最短,并保证控制器的处理能力能够满足其上所连接交换机上承载的业务需求。在多控制器部署环境下,由于网络负载动态变化,需要将交换机从负载较重的控制器动态转移到负载较轻的控制器,实现控制器之间的负载均衡[6,7]。

Dyna agent[8]适用于不知道环境的全部信息以及在环境中采取行动所产生的反应是不确定的状况。Q学习[9]是无模型算法,通过Q值对累积回报进行估计来寻找最优策略,需要大量试验来保证其收敛性。Dyna agent是一种给予模型的算法,基于模型的系统利用经验对环境的交互过程进行建模,在此基础上开发策略,通过学习已制定的策略减少网络环境中学习探索成本的过度消耗。

Dyna agent循环迭代函数:

其中,st、a表示当前状态,r为学习效率,0≤r≤1。本文中R为6×6阶矩阵,状态为行,列表示行为,矩阵中各个元素表示行为的有效反馈状态。由于刚开始时控制策略对环境一无所知,Q值初始状态全部设置为0。

图1 Dyna agent学习模型

OpenFlow控制器学习过程如图1所示,中间的线表示环境和代理间的相互作用,产生一个现实经验。结合探索学习模型,控制器是将现实经验和已有模型的经验结合起来学习。本文的目的是通过对已有模型的探测经验,反馈给控制器优先制定探索策略,再进行循环迭代;且用Q值矩阵记录数据,矩阵中的各个元素在网络中表示对应数据选择各条路径的权重系数。Dyna agent控制策略程序运行过程具体如图2所示。

步骤1网络触发学习机制,控制平面初始化Q值矩阵,初始化状态Q矩阵元素值都为0;

步骤2路由器发出试探信息探索网络通信状态,找出可通信的子节点,使其划分到最近的网络核心控制控制器下,并确定各个区域核心节点;

步骤3选择具有最大Q值的状态作为当前的激活状态s;文中对于每一个循环周期,表示路由行为和状态的Q表中,各有6个Q值;

步骤4根据循环迭代函数,触发更新状态s下采取动作a的Q值Q(s,a),对Q值变化进行标记,其余的Q值则不做标记;

步骤5选择矩阵中具有最大Q值的状态作为下一个起始状态,并更新状态s;检查是否到达目标状态,到达则停止,若没有则继续下一步;

步骤6返回步骤3运行得到状态s,继续依次运行,并记录循环的次数。

图2 Dyna agent循环过程

3 仿真及结果分析

3.1 控制器算法模型设计

Dyna agent算法设计:假设在网络负载很严重时某些路径堵塞或者处于灾后时某些节点中断后,网络模型的6个中心节点状态如图3所示。节点间链接代表网络设备可通信,节点无链接代表网络设备中断或者严重堵塞,0代表可通信,初始状态反馈值为0,100为有效激励反馈奖励值,代表数据到达目标节点。

网络模型设计:模拟现实网络分布情况,把网络模型划分为34个节点,网络编号及节点数分别为:0、4个;1、6个;2、5个;3、6个;4、6个;5、7个。网络中另外随机设置一个辅助节点(6)用来验证网络结构有效性以及服务器支撑业务量对网络的影响,结构如图4所示。根据上文假设的两种网络情况,遇到灾难或者严重堵塞时假设只有图3所示链接可以通信,其中节点5设定为目标网络节点,各节点配置如表1所示。

图3 网络链接状态

图4 网络结构拓扑图

表1 网络节点配置

3.2 结果仿真与性能分析

设置实验网络为高峰期拥堵状态,部分节点之间无法直接进行数据通信。为简化实验网络,文中拥堵状态网络去掉部分节点间链接,只设置6个核心控制节点及辅助节点组成的网络初始状态均配置为可通信,链接状态如图4所示。为验证模型中业务量对网络节点服务器影响情况,实验运行算法策略仿真网络之前,首先配置其辅助节点支持的服务分别为数据轻量级和数据重量级,比对这两种数据服务支撑状态可以验证网络优化控制结构设计有效性。仿真对比如图5、图6所示,可以看出,辅助节点支撑数据较重时给网络带来拥堵,时延较大,流量速率较低,数据处理能力衰减。

图5 辅助节点服务调整前后延迟对比

图6 辅助节点服务调整前后吞吐量对比

令r=0.8,∑p(st,a,st+1)=1时,实验程序中函数经过2443次循环运算后得到的数据满足程序设定条件,得到矩阵Q1;当r=0.9,∑p(st,a,st+1)=1时,运行4056次达到最优,得到矩阵Q2。

定义Q/100×100%为各路径上选择权重比。仿真软件中默认权重系数初始值为10,程序循环运行后得到新的权重系数,各路径节点权重系数进行重新分配,配置如表2所示。

运行仿真程序,经过多次改变环境参数运行仿真得到的图像大体类似。本文只给出两组具有代表性的状态,当r=0.8和r=0.9时,仿真网络中权重系数加入前后网络负载变化及时延改变对比如图7、图8和图9所示。

表2 服务器节点配置

图7 Dyna触发前后服务器吞吐量对比

从图7和图9可以看出,面对负载较大或者灾难时,普通网络运行中流量和时延抖动较大。在网络触发Dyna agent学习机制后,由于每条链路上加入了权重系数,网络节点减少了无效的探索,从而减少流量和时间成本消耗,流量数据可以更有效到达服务器端。

图8 Dyna触发前后延迟对比

图9 Dyna触发前后平均时间服务器流量变化

4 结 语

提出基于Dyna gent的路由控制算法,通过节点周围环境的反馈学习,制定出符合当前环境的策略。从仿真结果可以看出,网络触发控制策略后处理能力得到增强,网络延迟也有改善;并且随着学习效率提升,服务器端接收速率明显变大,网络更容易达到最优。

[1] Heller B,Sherwood R,McKeown N.The controller Placement problem[C]//Proceedings of the First Workshop on Hot Topics in Software Defined Networks.ACM,2012:7-12.

[2] Levin D,Wundsam A,Heller B,et al.Logically centralized?:state distribution trade-offs in software defined networks[J].Proceedings of the First Workshop on Hot Topics in Software Defined Networks,2012:1-6.

[3] Tootoonchian A,Ganjali Y.HyperFlow:a distributed control plane for OpenFlow[C]//Internet Network Management Conference on Research on Enterprise NETWORKING.2010:3-3.

[4] Dixit A,Hao F,Mukherjee S,et al.Towards an Elastic Distributed SDN Controller[J].ACM SIGCOMM Computer Communication Review,2013,43(4):7-12.

[5] Namal S,Ahmad I,Gurtov A,et al.SDN Based Inter-Technology Load Balancing Leveraged by Flow Admission Control[C]// Future Networks and Services (SDN4FNS),2013 IEEE SDN for.IEEE,2013:1-5.

[6] Zhang J J,Xi K,Luo M,et al.Load Balancing for Multiple Traffic Matrices Using SDN Hybrid Routing[C]// High Performance Switching and Routing (HPSR),2014 IEEE 15th International Conference on.IEEE,2014:44-49.

[7] Tian H Y,Zhang K,Ruan L,et al.Analysis and Optimization of CFS Scheduler on NUMA-Based Systems[M]// Emerging Technologies for Information Systems,Computing,and Management.New York:Springer,2013:181-189.

[8] Hsu Y P,Jiang W C,Lin H Y.A CMAC-Q-Learning based Dyna agent[C]// SICE Annual Conference.IEEE,2008:2946-2950.

[9] Hwang K S,Jiang W C,Chen Y J.Model learning and knowledge sharing for a multiagent system with Dyna-Q learning[J].Cybernetics,IEEE Transactions on,2015,45(5):978-990.

SDN CONTROL STRATEGY BASED ON DYNA AGENT ALGORITHM Zhu Guohui Li Chenguang Cheng Yu

(SchoolofCommunicationandInformationEngineering,Xi’anUniversityofPostsandTelecommunications,Xi’an710121,Shaanxi,China)

A control strategy based on Dyna agent algorithm is proposed to improve resource utilization of network node.First step is to model the deployment of the network controller,then the controller do policy choice by using the environmental feedback which reacts to controller terminal network.Finally,analyze the changes of the node forwarding situation after learning this method,and reset the node option value.The simulation results show that this control strategy has better ability to deal with process nodes,larger throughput and smaller network delay compared with the general control strategy.

Software Defined Network Dynaagent Open Flow Control Strategy

2015-09-01。陕西省教育厅科学研究计划项目(07JK 377)。朱国晖,副教授,主研领域:移动互联网和路由算法。李晨光,硕士生。程宇,硕士生。

TP393

A

10.3969/j.issn.1000-386x.2016.11.021

猜你喜欢

交换机控制策略服务器
考虑虚拟惯性的VSC-MTDC改进下垂控制策略
通信控制服务器(CCS)维护终端的设计与实现
工程造价控制策略
修复损坏的交换机NOS
现代企业会计的内部控制策略探讨
使用链路聚合进行交换机互联
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
容错逆变器直接转矩控制策略
PoE交换机雷击浪涌防护设计