电信科学2016年第3期
电力信息化专栏基于SDN的网络运维系统设计与开发
吴舜1,张辉1,邢宁哲1,宋伟1,黄天琳2,唐亚哲
2
(1.国网冀北电力有限公司信息通信分公司,北京100053;2.西安交通大学,陕西西安710049)
摘
要:电力系统计算机网络运维管理存在功能弱、粒度粗及业务支撑能力不够等问题。试图以SDN技术解
决上述问题,提出了SDN网络运维管理框架,构建了跨域的SDN,研发了运维管理系统,部署了拓扑发现、故障检测与切换等典型运维功能。测试表明,该系统克服了传统网络运维管理系统的缺点,达到了设计目标。
关键词:SDN;网络运维管理系统;拓扑发现;故障检测与切换中图分类号:TN92
文献标识码:A
doi:10.11959/j.issn.1000-0801.2016077
Designanddevelopmentofthenetwork
OA&MsystembasedonSDN
WUShun1,ZHANGHui1,XINGNingzhe1,SONGWei1,HUANGTianlin2,TANGYazhe2
1.StateGridJibeiInformation&TelecommunicationCompany,Beijing100053,China
2.Xi’anJiaotongUniversity,Xi’an710049,China
Abstract:TheOA&Msystemsofnetworkinfrastructureinelectricpowercompanieshavedrawbackssuchasweakfunctions,coarse-grainedmonitorandcontrolontheunderlyingnetworksandbadsupportonservicedeployment.SDNtechnologywasusedtosolvetheseproblems.AnSDN-basedOA&Mframeworkwaspresented,across-domainSDNnetworkwasbuiltandthecorrespondingOA&Msystemwasdeveloped,whichcouldperformfunctionsliketopologydiscoveryandfaultdetectingalongwithbackupcomponentsswitching.TheexperimentsresultsprovethattheOA&Msystemcanovercometheabovedrawbacksandachievethedesigngoal.Keywords:SDN,networkOA&Msystem,topologydiscovery,faultdetectingandswitching
1引言
电力系统计算机网络的运维管理系统属于电力IT系新型SDN[4-6]网络技术提出了控制层面和数据层面相分离的思想,将网络的控制集中到控制器上,可以实现全网路由、配置的集中优化。同时,交换机端也可以针对全部网络协议层次进行细粒度流表配置和转发计数,使得统的重要组成部分,在保障电力系统的正常高效运行中起着重要的支撑作用。当前,电力系统计算机网络大部分还是基于TCP/IP[1]网络技术,其运维和管理也主要是基于传统网络管理,存在管理功能偏弱、管理粒度粗和业务支撑能力有限等问题。收稿日期:2015-09-08;修回日期:2016-01-29
SDN下控制器对网络业务的配置部署和监控大大增强。这些特点都为解决传统网络管理运维系统的缺点提供了新的思路。本文提出了SDN网络管理运维的框架,并结合国网2016077-1
电力信息化专栏
·1·SDN试点项目,研发部署了跨域的SDN,在此基础上开发了新型SDN网络运维管理系统,实现了简单高效的网络拓扑发现、网络链路故障检测和快速切换、服务器故障检测和切换以及特定业务网络带宽保证的QoS。并结合视频点播业务,对所开发系统进行了测试。测试表明,SDN网络运维管理系统具有细粒度、管理功能强大和能够有效支撑业务部署的优点。3SDN网络运维系统框架
传统网络管理系统存在的主要问题是监控粒度太粗和对交换机和路由器的配置能力太弱,不能实施各种网络业务的部署。从监控粒度来说,SDN交换机可以在全部协议层次上进行流的区分和计数,理论上说,就有进行每流计数和监控的能力。网管系统也就具备每流区分管理的能力。而传统网管对交换设备配置能力偏弱的问题,在SDN下得到了彻底的解决。因为SDN控制器实际上拥有全网所有交换设备的流表项配置能力,不仅能完成传统网管系统做不到的路由表的配置,还可以通过路由表(流表)中流表项的配置来实施各种网络业务的配置和部署。本文提出了基于SDN的网络运维管理系统的框架,该框架主要由3部分组成:图形用户接口(graphicuser2电力网络运维系统现状
当前电力网络基于传统TCP/IP[1]网络技术,其运维和管理的主要方法是通过传统网络管理机制(例如简单网络管理协议(simplenetworkmanagementprotocol,SNMP)[2]),由管理者从被管设备(例如交换机、路由器、服务器等)中获取设备运行数据,进行相关的数据分析后呈现给网络管理员,再由网络管理员实施网管操作。从网络管理的角度看,当前电力网络系统运维存在两个不足:网络管理功能偏弱,存在对网管数据的分析处理能力不足以及不能区分不同的流和应用并进行细粒度的问题;网管系统对网络的配置能力不足,因为MIBⅡ中大量的变量是只读变量,只有少数变量是可写变量,通过SNMP对网络设备的配置能力有限。因此,网管系统更多地表现为一个网络的监视系统,而不是“控制”系统。这样,网络业务部署等需要对网络设备进行大量繁琐的配置工作,加大了实施难度。近年来快速发展的SDN技术为网络管理提供了新的解决方案,也为电力网络运维提出了新思路。SDN采用集中式管理机制,通过配置流表实施业务部署,并且在全部协议层次上进行流的区分和计数的能力,有助于解决传统网络管理运维系统的各种缺陷。interface,GUI)部分、控制器部分以及控制器和被管SDN的交互部分。其中,GUI部分是用户和运维系统的人机界面部分,用户通过操控GUI来启动对网络的配置、管理和运维;控制器部分是系统的核心部分,真正的控制逻辑是在控制器端实现的。从系统动态执行流程来看,用户通过GUI启动运维功能,该操作通过RESTful[7]接口传递到控制器,控制器根据用户配置的参数,运行真正的控制逻辑,形成SDN中各个相关交换机的流表项,并通过OpenFlow协议下发。同时,运维系统通过OpenFlow协议从交换机中获取交换机的运行状态信息,并通过RESTful接口传递到前台GUI显示给网络管理员。研发了一个SDN网络运维管理系统,具体的功能和交互方式如图1所示。图1中,左边部分是控制器部分,主要的控制逻辑在控制器内建应用中实现,内建应用通过图1SDN网络运维管理系统框架、功能和交互方式
2016077-2
·165·电信科学2016年第3期
OpenFlow协议和相关的交换设备通信配置这些设备的流表,通过RESTful接口与前台GUI通信,获取前台的用户操作信息,并且把从内建应用获取到的交换设备的状态信息显示在前台GUI上。服务器故障动态处理功能:控制器能够自动监听各个服务器与交换机的连接状态,一旦正在工作的服务器出现故障,便将业务流导到健康的服务器,保障客户的服务不受影响。如图2所示,一旦服务器因为关机或网线松落等原因离开网络,那么控制器后台应用会接收到OpenFlow协议中的端口状态变化消息(portstatusmessage)。通过对该消息解析可以定位到故障服务器。即可更新该服务器的健康状态,并且对旧规则进行删除,重新构造包含新服务器MAC地址的ARP回复给客户端,为客户端和新的服务器之间建立一条最短路径的连接。链路状态监测和切换功能:控制器能够监听网络中各个链路的连接状态,一旦某条链路断开连接,则将此路径上的数据流切换到另外一条冗余路径,保障客户的请求不受干扰。如图3所示,控制器根据维护的全局拓扑,可计算出点对之间的所有路径。并且根据实时拓扑更新路径健康状态。当收到端口改变消息,定位到故障路径,控制器扫描点对之间的所有路径,将所有包含该故障路径的路径健康状态设为false。并且为受到影响的当前工作路径,重新选择一条健康的最短路径,动态更新规则。4SDN网络运维系统功能
试点项目的SDN运维管理平台中,确定了几个经典的网络运维管理功能,包括网络拓扑显示功能、服务器故障检测及切换功能、链路故障检测及路径切换功能以及QoS保证等功能,每个功能的具体内容如下所示。网络拓扑发现及显示功能:对于网络运维管理系统来说,网络拓扑发现及显示是一个非常重要和基本的功能。传统网络中,由于各个交换机的标准不一,不少企业还在使用不同的网络管理系统管理来自于不同厂商的交换机,因为只有这样,拓扑发现功能才能正常工作。而在SDN中,由于交换机的标准化,网络拓扑发现却有非常简单标准的实现方式,即通过LLDP[9](linklayerdiscoveryprotocol)消息、packet-out和packet-in消息的协作使控制器得到所有交换机的邻居关系,进而构造出整个网络的拓扑。本文中将使用这种方式进行网络拓扑发现。图2服务器故障处理流程
2016077-3
电力信息化专栏
·166·图3链路故障处理流程
QoS保证功能:由于OpenFlow协议提供队列管理的消息接口,因此可对交换机的队列进行配置(如openvSwitch的队列),设置其最大速率及最小速率,最小速率即可实现带宽保障。并且可设置流表将一条流与对应的队列关联,如HTTP流保障其带宽为10kbit/s,那么可以先配置某个队列,将其最小速率设为10kbit/s,再配置流表的匹配域为tcp_dst_port=80,action为将该流转发至相应队列,即可完成流表到队列的映射。具体流程如图4所示。5系统研发和测试
本文研发实现了上述的所有功能,并在国网某2个分公司进行了跨域的SDN部署。部署拓扑如图5所示。数据中心-1部署在其中一个分公司,数据中心-2部署在另外一个分公司。整个系统中部署一个SDN控制器(Ryu控制器)在数据中心-1。网络中存在多条冗余路径,可用作链路故障快速切换。并且有两个视频服务器,数据中心-1的视频服务器1是主服务器,只有在其出现故障时,才会自动切换到数据中心-2的备用的视频服务器2用作测试服务2016077-4
图4
QoS保证功能
器故障处理。背景流量发生器能够产生流量造成网络拥塞,则可以测试在拥塞时,用户对视频流进行QoS配置,能否成功保障带宽。·167·电信科学2016年第3期
图5SDN物理拓扑
当全局拓扑搭建好之后,控制器通过循环发送、接受交换机的LLDP分组,通过LLDP构建全局拓扑,并且学习从各个终端发来的数据分组,进行主机发现的过程。在较短的收敛时间内,运维平台GUI便能够显示到全网的全局拓扑,如图6所示。从图6可以看到,网络中存在备用的服务器二(位于最右边,编号为6),当服务器发生故障离开网络时,控制器会监听到端口状态改变事件,解析事件发来的消息便能够定位到故障的服务器,将其从终端集合中移除、将流切换到另一个健康的服务器,并且进行流表规则的更新。在服务器一上运行:ifconfigeth0down或者拔掉网线、关机等操作,此时可以看到,控制器对流表规则进行了更新,建立了新的双向流用于客户端与备用服务器的交互。从图7可以看到:编号为8的主服务器一从页面消失,表示终端的维护也是实时更新的;当前的工作路径已从原来视频客户端—视频服务器1切换为了视频客户图6全局拓扑GUI显示
2016077-5
电力信息化专栏
·168·端—视频服务器2;程序动态对规则进行了更新,重新挑选了健康服务器提供服务,并且在该服务器与客户端之间建立了一条最短路径:11-9-12,客户端视频正常播放,切换过程对其是透明的。从图6可以看到,本拓扑连接在终端之间都存在冗余链路可以进行切换。如图8所示,在视频服务器2提供服务的情况下,路由设置为两个终端之间的最短路径之一:11-9-12,此时将9号交换机与11号交换机之间的网线拔掉,后台程序监听到9、11两个交换机发出的端口改变消息,定位到两者之间的链路断开。更新全路径表,选择另外一条健康的、最短路径提供服务,对比图8、图9可以看到:“绿色路径”已经发生改变,改由11-10-12号交换机提供服务。并且9-11号交换机之间的连接已经消失,表明GUI全局拓扑的显示是实时进行的。QoS保证功能目前主要是通过配置优先级队列的最图7服务器故障处理—视频服务器1出现故障
图8服务器2提供服务
2016077-6
·169·电信科学2016年第3期
图9链路故障处理
小速率并且配置流表完成流到队列的映射来保证视频拥有足够的带宽播放视频,测试时选取1080P(最高码流参考文献:[1]STEVENSWR.TCP/IP协议详解(卷1:协议)[M].范建华,
胥光辉,张涛,等译.北京:机械工业出版社,2014.
54Mbit/s)类型的视频进行测试。测试中,首先设置QoS保障值为10Mbit/s,并通过iperf发出背景干扰流量。此时,背景流量的存在使得网络发生拥塞,导致设置的10Mbit/s带宽不够,视频会出现较为严重的卡帧现象。对比试验中,设置QoS保障值为200Mbit/s,仍旧通过iperf发出背景干扰流量。此时,背景流量的存在使得网络拥塞。但由于该高清视频的最高码流是54Mbit/s,因此给该高清视频保障STEVENSWR.TCP/ICPillustratedvolume1:theprotocols[M].TranslatedbyFANJH,XUGH,ZHANGT,etal.Beijing:ChinaMachinePress,2014.
[2]CASEJ,FEDORM,SCHOFFSTALLM,etal.Simplenetwork
managementprotocol:RFC1157:1990[S].1990.
[3]MCCLOGHRIEK,ROSEM.Managementinformationbasefor
networkmanagementofTCP/IP-basedinternets:MIB-II:RFC1213:1991[S].1991.
[4]MCKEOWNN,ANDERSONT,BALAKRISHNANH,etal.
OpenFlow:enablinginnovationincampusnetworks[J].ACMSIGCOMMComputerCommunicationReview,2008,38(2):69-74.[5]左青云,陈鸣,赵广松,等.基于OpenFlow的SDN技术研
究[J].软件学报,2013,24(5):1078-1097.
200Mbit/s的带宽时,视频带宽绝对够用。因此背景流量不管多大,都不会影响视频服务,实现了QoS带宽保证。6结束语
传统电力系统网络运维管理系统存在管理粒度粗放、业务配置能力低下等缺陷,新型SDN具有控制层面和数据层面分离、集中优化控制、通过配置流表实施业务部署,并且可以在全部协议层次上进行流的区分和计数的能力,为SDN的管理运维提供了新的方法。本文介绍了SDN的新型运维管理框架和典型管理功能,在部署的跨域SDN上研发了新型运维管理系统,实现了相关的功能,并进行了实际的测试。测试表明,SDN技术为网络运维管理的自动化、集中化和便利化提供了优秀的技术手段,具有广阔的应用前景。ZUOQY,CHENM,ZHAOGS,etal.ResearchonOpenFlow-basedSDNtechnologies[J].JournalofSoftware,2013,24(5):1078-1097.
[6]VAUGHAN-NICHOLSSJ.OpenFlow:thenextgenerationof
thenetwork[J].Computer,2011,44(8):13-15.
[7]LEONARDR,SAMR.RESTfulwebservices[M].California:
O'ReillyMedia,2007:96-102.
[8]Iperf[Z/OL].[2015-05-01].https://iperf.fr/.
[9]OpenNetworkingFoundation.OpenFlowswitchspecification,
version1.4.0:wireprotocol0x05:2013[S].2013.
2016077-7
电力信息化专栏
·170·[作者简介]
吴舜(1983-),男,国网冀北电力有限公司信息通信分公司工程师、高级技师,主要研究方向为电力企业信息系统运检技术、用户体验监测技术、软件定义网络技术。
宋伟(1983-),男,国网冀北电力有限公司信息通信分公司工程师、中级技师,主要研究方向为电力企业信息通信系统工程建设、计算机网络安全技术及项目高级管理。
张辉(1979-),男,国网冀北电力有限公司信息通信分公司主任,主要从事电力企业通信专业技术管理工作。
黄天琳(1991-),女,西安交通大学硕士生,主要从事网络测量、软件定义网络、计算机网络相关研发工作。
邢宁哲(1978-),男,博士,国网冀北电力有限公司信息通信分公司副总工程师,主要从事电力企业通信专业技术管理工作。
唐亚哲(1970-),男,博士,西安交通大学副教授、博士生导师,主要研究方向为计算机网络、网络管理和网络安全。
2016077-8