井 雅,李 群,陈 亭,张海阔
(1.中国互联网络信息中心,北京100190;2.国网北京市电力公司电力科学研究院,北京100075;3.北京计算机技术及应用研究所,北京100854;4.中国互联网络信息中心,北京100190)
随着通信技术和计算机技术的高速发展,通信网络规模不断扩大、结构愈发复杂,很多专业的网络管理系统(以下简称 “网管系统”,即NMS)采用不同技术和协议,整个网络的管理节点分散、操作界面各异。为了最大限度利用通信网络资源[1],协调、分配基站使用的卫星频率、带宽等资源,实时监控、调整全网运行状态,提示、报警系统任何环节出现的故障、异常等情况,提高网络的运行质量和效率,本文就实现大规模异构通信网络管理信息系统软件进行了具体阐述。
网管系统在运行环境中,与所在的局域网和网控单元作数据交互。网控单元与局域网交互,向前向处理子系统传输数据,同时也跟IP路由和防火墙作数据交换。网管系统所在的局域网主要包含中频设备 (与局域网交互)、前向处理子系统、回传处理子系统、时间频率基准器。其中前向处理子系统包含DVB-S调制器、MPEG 复用器、NCR/SI生成器、IP封装机等模块,并向中频设备发送数据,向局域网外部传达网管指令。
NMS[3]与主站其它设备的交互都是通过局域网的方式,运行网管系统的服务器和组成主站的所有服务器连接在同一个局域网中,网管系统与这些设备之间的交互都遵循TCP/IP协议通过局域网方式连接[3]。
NMS与小站及小站侧的用户信息交互则需要通过卫星链路来完成,一方面,NMS将网管指令通过前向链路发送给小站,小站接收后在相应的设备或终端用户处执行;另一方面,小站将本身的设备信息或终端用户的信息通过回传链路返回,经过回传处理子系统接入主站内部的局域网,再转发给NMS服务器。
NMS功能设计,是为了实现对网络链路进行参数配置,对网络设备进行监控和管理。在功能划分上,设计的模块主要包括:主站配置、空中接口、服务管理、网络管理、告警管理、性能管理、系统管理和日志管理。
设备管理模块由设备管理视图、网控服务器、设备配置向导、路由器、性能加速器、Qos服务器、IP 封装机、DVB调制器、下变频器组成。空中借口模块由空中接口视图、频带配置、频带组件配置、TXmode、TS流配置、超帧配置、Area配置、Segment配置组成。服务管理模块由服务管理视图、SPRL SLA 配置、小站组配置、SGFL SLA配置、前向链路Qos 配置、回传链路Qos 配置、回传Queue过滤、小区软件版本配置组成。网络管理模块由网络管理视图、小站管理、小站Tralffic Queue、前向链路路由管理、VLAN 视图、地址空间、ISP 端网络、IP 地址范围配置、PID 范围配置组成。操作管理模块由操作管理视图、小站监控、小站组监控组成。告警管理模块由告警管理视图、主站设备活动告警、小站设备活动告警、主站设备历史告警、小站设备历史告警、告警标准化、相关性分析、告警通知、告警级别组成。性能管理由性能管理视图、主战性能监视、小站性能监视、任务配置、性能指标、配置参数组成。
本系统中共有4个功能模块用以实现网络基础设备的配置。首先配置设备管理模块,包含网控配置、路由配置、PEP配置、Qos配置、IPE 配置、调制器配置、下变频器配置。二是空中接口模块,包含频带配置、频带组件激活、超帧定义、TS流定义。三是服务管理模块,包含前向链路带宽管理,回传链路带宽管理,小站组配置,前向链路Qos配置,SGFL SLA 配置,回传链路Qos 配置,回传Queue配置。四是网络管理模块,包含小站管理,小站Traffic Queue配置,前向链路路由管理,TSP端网络配置,地址空间管理,IP地址范围配置,PID 范围配置。
为了完成NMS 的业务需求,本系统设计为4 个子系统,各个子系统之间的数据交换关系、所包含的构件如图1所示。
图1 各个子系统中逻辑组件以及相互关系
其中应用子系统是一个Web应用程序,负责和用户进行交互;其它的3个子系统负责监控[4]、采集[5]以及设备配置[6]等后台任务。
3个子系统都是独立运行的程序,可以部署在一台、多台服务器上,其中采集可以部署多套,通过设定他们的采集范围,可以自动完成各自的采集任务。
4个子系统的实现视图如图2所示。
图2 子系统实现视图
采集监控子系统、Trap监听子系统、配置命令服务子系统是3个以后台服务形式存在的子系统,在功能上统归为服务子系统。因此系统总体逻辑结构可以用图3来表示。
Trap监听子系统通过监听Trap,分析事件,反应系统的实际运行状态;
采集监控子系统通过主动采集系统性能数据,实现对系统性能的监控;
Trap监听子系统和采集监控子系统一起为应用子系统提供数据,应用子系统将这些数据展示给用户。
配置命令服务子系统是完成配置命令的一个服务通道,在他的帮助下,用户在应用子系统提交的设备参数以及配置命令,可以提交到设备上,完成设备配置任务。
下面对各个子系统进行详细说明。
应用子系统是网络管理人员与网管软件进行交互的界面。主要通过它来进行系统数据的录入、监控数据的查询等等。处理流程如图4所示。
网络管理人员可以通过应用子系统执行所有的网络管理功能。
应用子系统的层次分解和设计构件之间的关系如图5所示。
采集子系统主要使用SNMP等协议,在网络中向卫星小站、Router、NCC等网络单元发送采集指令,获取、分析指令结果,从而最终得出网络单元的状态信息。
系统将采集过来的数据分类处理、存储,并根据系统阈值设置,决定是否报警等等。采集子系统处理流程如图6所示。
采集监控子系统专门负责主动对系统中各个网络设备进行状态采集。采集子系统需要采集诸如路由器、NCC 等主站设备,同时需要采集数量众多的小站设备。为了最大限度降低系统不同任务之间的耦合、提高效率,采集监控子系统作为独立的程序运行,通过自动任务分配,通过读取系统配置参数,自动完成数据采集任务。
采集监控子系统的模块连接如图7所示。
3.2.1 主要处理算法
(1)被采集设备列表数据:被采集设备列表信息在初始化时,需要查询数据库。
(2)采集任务装载:定时获取数据库配置的采集任务,装载并执行。
(3)采集子任务分配:采集子任务分配采用同步队列的方式缓存。需要采集的任务按照周期,一次性插入到任务队列中缓存。线程调度模块将根据任务经验完成时间,设定线程数 (这个线程数远远小于缓存在队列中待处理的任务数),逐步完成采集任务。
(4)采集数据第一次缓存[7]:采集任务在获取数据后,并不急于处理,而是将采集到的对象缓存到同步处理队列中。采集任务只负责通讯的部分 (UDP 包的收发),从而使采集任务分配和线程调度更简单、调度也更合理。
(5)采集数据内存数据库入库:采集数据队列中的数据,由固定数目的采集数据处理线程在同步处理,将采集数据对象解析、存储到内存数据库。
(6)数据同步处理:内存数据库中的数据实际上将大部分活动数据放到内存中,而将另外部分数据存储到文件中。因此,在系统Demo测试中,内存数据库文件可以达到10G(理论上,可以达到1T),但是内存数据并发处理线程在设置到1000时,系统频繁提示内存数据库连接失败。因此,此部分数据处理要将线程设定在经验上允许的范围内。
图3 系统功能模型
图4 应用子系统处理流程
图5 应用子系统逻辑视图
3.2.2 大量小站任务分配方法
在指定的周期内,使用更多的线程,会使整体上任务更快的完成,但是会造成更大的带宽。
针对固定数目的采集目标来说,采集任务要尽可能的在在周期内平均分布[8],这样可以达到理想的目标:
IP=Tm*Nm/Tl;
(1)IP–理想线程数;
图6 采集子系统处理流程
图7 采集监控子系统逻辑视图
(2)TmP–当前平均任务执行时间;
(3)Nm–剩余任务数;
(4)Tl–剩余时间。因此,采用线程调度和动态调整的方式不断对线程数进行调整,是线程尽可能的在整个周期内平均分布。
3.2.3 周期保护方法
所谓周期保护,就是指保证在周期内能完成指定的任务。因此在计算的时候,需要使用周期保护时间,即:
T=Ti-TP;
(1)T–实际周期;
(2)Ti–理想周期;
(3)TP–周期保护时间。
系统动态调整的目标是实际周期。这样在一定的时间范围内,任务在实际周期边界上动态吻合。
3.2.4 数据缓存和数据处理取到的数据,首先放置到内存数据库中。数据同步任务使用固定的频率将数据同步到物理数据库中。
监听子系统监听系统中的TRAP信息[6],对TRAP信息进行分析处理,保存到告警信息库中。
Trap信息监听子系统负责网络内Trap信息的采集和处理。在接受到Trap信息后首先根据过滤规则判断是否处理,对于需要处理的Trap信息系统解析并进行状态或者告警分析。
Trap监听子系统的模块连接如图8所示。
图8 Trap监听子系统模块逻辑视图
主要处理过程如下:
(1)Trap侦听,接收来自各网元设备的原始数据trap类型的PDU 数据;
(2)对采集到的原始PDU 信息进行解析,并将其封装为Java对象,放置到TRAP队列中,多个线程同时处理;
(3)从队列中获取封装的PDU 对象,匹配告警规则,构造完整的trap告警事件;
(4)拼装的告警事件SQL,装入内存数据库;
(5)获取内存数据库的告警事件SQL,并将其同步到物理数据库告警事件表中;
(6)获取物理数据库中告警事件信息进行计数和配对操作,完成告警事件到活动告警的转化;
(7)启动告警事件清除线程,定时完成清除操作。
配置命令子系统监听设备配置命令队列,当接收到新的配置命令,系统分析命令格式、获取设备相关配置参数,使用相应的协议配置到设备中。配置命令子系统的模块连接如图9所示。
配置命令监听子系统负责设备配置命令的接收和处理。配置命令子系统监听配置命令队列,在接收到应用子系统发来的设备配置命令后,首先根据数据库中配置对命令进行分析,判断是否需要处理,对于需要处理的配置命令系统解析并通过相应的设备配置适配器完成最终的配置工作。
图9 配置命令子系统处理流程
配置命令监听子系统的模块连接如图10所示。
图10 配置命令监听子系统逻辑视图
部署视图的结构包括各个物理节点的硬、软件配置,网络逻辑的拓扑结构,节点交互与通讯等;同时还表达了进程视图中的各个进程具体分配到物理节点的映射关系。
用户客户端:用户客户端为普通pc机或笔记本,要求客户端的浏览器为IE6.0或以上,或者Firefox2.0或以上。
Web服务器:操作系统为Windows Server系列/Linux。Web服务器上部署的是NMS应用程序,该应用程序运行在Tomcat5或Tomcat5 以上,或者Jboss4 及以上,要求jre的版本为1.5或1.5以上的环境下。
数据库服务器:Oracle9i。
应用服务器:操作系统为Windows Server系列/Linux。主要部署设备配置服务和监控子系统,要求jre的版本为1.5或1.5以上。
采集服务器:操作系统为Windows Server系列/Linux。主要部署采集子系统,要求jre的版本为1.5或1.5以上。
本研究结果是通信网络管理的工程应用,重点介绍了系统的体系结构、逻辑视图和功能模块分解,并给出了部署方法。重点对采集系统的处理算法,任务分配和周期保护算法进行了说明。实践证明,本系统是快速、智能、可靠、易用的实践成果,有效提升到端端网络管理能力和通信网络运行质量。下一步,将继续研发应急NMS,增加安全风险评估[8]功能,以保障在自然灾害、突发事件频繁发生的情况下通信系统的稳定运行[10]。
[1]CHEN Jingyang.Key techniques of end-to-end network management system [D].Wuhan:Wuhan Institute of Posts and Telecommunications Science,2014:1-75 (in Chinese).[陈竞阳.端到端网管系统关键技术研究 [D].武汉:武汉邮电科学研究院,2014:1-75.]
[2]AN Fengdong.Small and medium-sized VSAT satellite communications network administrator protocol research [D].Xi’an:Xi’an University of Science and Technology,2013:1-80 (in Chinese).[安丰东.中小型VSAT 卫星通信网网管协议研究[D].西安:西安科技大学,2013:1-80.]
[3]XU Ning.Design and implementation of mobile communication network performance management system [D].Jinan:Shandong University,2014:1-82(in Chinese).[许宁.移动通信网络性能管理系统的设计与实现[D].济南:山东大学,2014:1-82.]
[4]WANG Qian.Research and development of wireless communication network equipment performance monitoring system [D].Xi’an:Xi’an University of Electronic Science and Technology,2012:1-77(in Chinese).[王倩.无线通信网络设备性能监控系统的研究与开发[D].西安:西安电子科技大学,2012:1-77.]
[5]LIANG Wenbo.Research and design of centralized WLAN extended network management system [D].Beijing:Beijing Jiaotong Universery,2013:1-79 (in Chinese). [梁文波.集中式WLAN 中可扩展网络管理系统的研究与设计 [D].北京:北京交通大学,2013:1-79.]
[6]ZHOU Haifeng.Design implementation of ultrashort wave network management system configuration and parameters regulation subsystem [D].Harbin:Harbin Institute of Technolog,2012:1-79 (in Chinese). [周海峰.超短波网管系统网络参数配置与监管子系统的设计实现 [D].哈尔滨:哈尔滨工业大学,2012:1-79.]
[7]WANG Xuliang.Research and application of huge amounts of data caching algorithm and design patterns [D].Hangzhou:Zhejiang Universery,2013:1-57 (in Chinese).[王旭良.海量数据缓存算法与设计模式的研究及应用 [D].杭州:浙江大学,2013:1-57.]
[8]XIAO Xin,ZHANG Hesheng,YANG Jun,et al.A method of traffic information collection sensor network task allocation[J].Chinese Journal of Scientific Instrument,2012,33 (11):2529-2534 (in Chinese).[肖欣,张和生,杨军,等.一种交通信息采集传感器网络任务分配方法 [J].仪器仪表学报,2012,33 (11):2529-2534.]
[9]ZHANG Min.Research of electric power communication network administrator system security risk assessment algorithm[D].Baoding:North China Electric Power University,2014:1-68 (in Chinese).[张敏.电力通信网网管系统安全风险评估算法研究 [D].保定:华北电力大学,2014:1-68.]
[10]LI Kaipeng.Design and implementation of emergency communications network management system [D].Beijing:Beijing University of Posts and Telecommunications,2014:1-77 (in Chinese). [李凯鹏.应急通信网络管理系统设计与实现[D].北京:北京邮电大学,2014:1-77.]