应用于数字电视前端的网络管理系统设计
2014-03-14赵宇红范宏令乐雄志
赵宇红,范宏令,乐雄志
(北方工业大学信息工程学院,北京100144)
网络管理系统是对网络设备进行实时监控,实时掌握网络设备运行状况,并根据设备状况和网络资源对网络设备实施相关决策,进行有效管理的功能系统,是针对网络设备进行实时监控和远程管理的平台,通过网络管理系统对设备进行监测、分析与管理,保障网络可靠、安全、高效运行。应对规模大、异构性强、服务质量要求高带来的新问题,是网络管理研究者当前的核心任务。在网络管理领域,国外发展的比较早,国内的研究相对比较滞后。网络管理发展到今天,从功能上讲已经十分完善,然而在实际应用中仍存在大量问题[1]。
当前世界各国逐步从模拟电视向数字电视改制,在用户需求以及科技的推动下,数字电视技术日趋成熟,在为人们提供更多、更个性化的音视频服务的同时,已成为电视系统的主流。我国数字电视转制工作也刚刚起步,国家三网融合战略推动了广播电视系统的网络化、数字化,未来几年将是数字电视快速发展的阶段,电视台对数字电视设备的应用将会越发广泛。为有效地监控和管理数字电视设备,开发出一款可靠、灵活的综合网络管理系统就显得尤为必要。对于数字电视前端相关设备的监控,依赖集中网络管理,其效率将得到很大的提高。
SNMP协议因为其具有简单、易实施和容易扩展的优点而在网络管理中得到广泛使用[2];Qt的信号/槽机制通过将槽注册到信号的方式来实现两者的绑定,其灵活性体现在信号和槽的绑定是多对多的关系,并且符合网络监控系统实时性强的特点,因此笔者采用SNMP协议及Qt应用程序框架开发一个应用于数字电视前端系统的网络管理软件,具有信息准确、运行稳定、实时性好的特点。
1 数字电视前端系统
数字电视是数字电视系统的简称,是指音视频和数据信号从信源编码、调制到接收和处理均采用数字技术的电视系统。电视前端系统是电视广播网络的信息源、交换中心,是整个电视广播系统的核心,数字电视前端所包含的内容更加广泛,是电视数字化的重要环节[3]。
传统的数字电视前端系统采用基于ASI的传输方式,技术相对成熟。随着数字电视内容的增加和新业务的发展,以ASI为基础的传输模式已经很难适应快速发展的数字电视新业务,在功能扩展方面有很大的局限。系统使用全IP组网以后,网络调度更加灵活,后期业务嵌入更加方便、数据传输密度更大。一个基于IP的典型传输前端如图1所示。
基于IP的数字电视前端传输平台与传统ASI传输平台相比,有许多优点和特性,尤其在数字电视新业务、新功能的拓展方面具有不可比拟的优势。
数字电视前端系统一般包括节目输入、信号处理、条件接收以及用户管理几个部分。节目输入部分主要是把来自不同网络的数字电视信号转换成统一格式,传送至信号处理部分;信号处理部分完成对所有节目的解扰、截取、复用等处理;条件接收系统是数字电视收费所必须采用的系统,负责用户授权控制和管理信息的获取、生成、加密和发送等工作;用户管理是贯穿计费、客服和账务各个环节,是支撑数字电视业务运营的核心。
数字电视前端系统主要涉及的硬件包括卫星接收机、网络适配器、编码器、转码器、复用器、加扰器等。随着数字电视网络规模的不断扩大及数字电视业务的快速发展,各种服务于数字电视业务类型的设备数目不断增多,对设备的监控工作同样刻不容缓。由于安全播出的需要,对设备的监控必须具有高实时性、易于操作的特点。
图1 基于IP传输前端系统示意图
2 简单网络管理协议
SNMP(Simple Network Management Protocol,简单网络管理协议),是一种基于轮询的通信协议,由于该协议在代理侧的开销很小,但其简单易用的特点却得到了许多网络设备厂商的支持,经过十几年的完善和发展,已经成为使用最广泛的网络管理标准协议[2]。
SNMP是一种标准的网络管理协议,从功能上来看,由管理信息的定义与标识和SNMP之间的通信协议两部分组成。管理信息的定义和标识的核心内容是管理信息结构与标识(Structure and Identification of Management Information,SMI)和管理信息库(Management Information Base,MIB)。而在实际的应用中,网络管理采用的最普遍模型是管理者/代理模型,由管理工作站、管理代理、MIB和SNMP协议四部分构成。
SMI和MIB的作用就是定义网络管理程序进行数据交互过程中所采用的数据类型。SMI用于定义MIB的结构和表示符号,限制MIB的变量类型,指定变量命名的规则以及定义变量类型的规则,由不同SMI定义出来的MIB在格式上也有差别。MIB用来存放被管理设备的所有信息。SNMP则是规定数据在网络管理程序之间的交互,包括PDU格式、意义和消息顺序,只定义数据传递方式,确保数据的有效传递,是管理进程和代理进程之间的通信协仪。SNMP的数据类型与通信协议的互相独立极大方便了 SNMP 版本的升级[4-5]。
网络管理的结构模型如图2所示。
图2 网络管理的结构模型
3 网络管理系统总体架构设计
数字电视前端作为广播电视的重要环节,该环节的稳定运行意义重大,因此对该网络管理系统的要求也就相对较高。作为最基本的需求,需要对相关前端设备如编解码器、复用器等的基本状态和资源信息进行实时、有效的监看,并能对设备进行远程控制。本系统使用C/S的软件设计构架,采用集中式的体系结构,数据逻辑结构设计合理,功能逻辑清晰,最大限度避免由于操作失误对系统的可靠性造成影响,采用面向对象的Qt作为开发工具,实现了一套完整的网络管理方案。该系统的结构示意图如图 3 所示[6-9]。
图3 系统结构示意图
根据该网络管理系统的需求以及实际的操作情况,可以将该系统化分为采集层、存储层和呈现层三个部分,每层分别通过不同的功能模块来实现,联合起来达到一个完整的网络管理功能系统。
1)采集层
采集层主要由这些设备内的网管代理来实现,通过代理获取的如设备的名称、运行时间、设备描述、联系人、具体位置以及IP地址等设备的基本信息和告警信息,以及由Trap主动发送重大故障或者必要情况产生的信息,及设备运行和操作等相关的日志文件等,这些信息和日志文件将存入数据库,进而成为实现其他功能的基础。当然,除了各设备以上一些通用的信息外,对于不同的设备类型,其参数也不尽相同,如编码器所包含的参数有视音频各自采用的编码标准、熵编码类型、宽高比等;复用器所包含的参数有输入包长度、输入码流格式、输出TS包格式等;而转码器所包含的参数包括编码标准、帧速率、数据传输率等。
2)存储层
存储层主要实现对采集层获取的设备相关信息进行预处理,使得数据在存储之前简洁有效,继而分类存储[7],便于设备管理员了解设备信息,一旦出现问题,将能实现迅速定位及明确历史操作,方便管理员对问题的排查,更便捷地实现设备的管理和维护。如图2的系统结构示意图所示,可以分为配置、故障信息、监测信息、用户等几个类型,供呈现层相关应用功能单元的查询使用。
3)呈现层
呈现层将依据设备类型实现设备信息、用户定制、故障报告以及故障报警的直观显示,并提供简单便捷的人机交互,实现对不同类型设备的配置。根据需要,以人性化的方式显示整个系统内的设备基本信息、运行状态以及重要参数的实时监控,一旦有报警信息,立即采用颜色指示、声音、短信息或者email等形式进行告知;通过相应的界面为不同的设备进行不同的参数设置,实现对设备的管理工作;用户定制功能将实现设备的添加与显示;显示信号流程图,对于输入信号丢失、编码器故障等导致的问题,通过处理预案进行切换,且能通过直观的界面给予展示,确保数字电视前端的正常运行;对数据库内相关的数据进行分析,产生相应的故障报告,并采用列表、柱形图或饼图等方式进行直观的显示,实现系统的各种功能。
作为可视化网络管理系统,该网络管理系统的呈现层交互示意图如图4所示。由图中可以看出,首先由静态应用模块实现整个应用系统的初始化,然后通过实时监听设备的运行状况,产生相应的信号,由信号/槽模块触发相应的槽方法,进而通过动态刷新模块,实现应用系统显示界面的重新绘制,实时显示当前状况,保证系统出现问题得到及时处理。同时,通过应用系统显示界面进行某些操作以实现相关的设备配置,相关的操作将产生对应信号,促使信号/槽模块生成相应的槽方法,进而促使动态刷新模块实现应用程序界面的重绘制,确保系统及时产生相关反应。
该网络管理系统分为登陆模块和功能实现模块,其中功能实现模块又可以分为视图管理、状态监看和告警、配置管理、用户管理、信息查询和添加设备等。其整体流程如图5所示。
图4 呈现层交互示意图
图5 网络管理系统整体流程图
首先连接数据库,实现数据库初始化工作,以便其他功能模块对相关数据的存储以及访问;接下来进入登录模块,实现对用户名及密码的访问,对输入的用户名和密码进行匹配,确定是否进入网络管理功能系统,一旦进入系统便实现对实际的数字电视前端系统的设备管理功能。
4 软件系统功能模块实现
4.1 登录模块
登录模块实现对不同用户的区分,对不同用户赋予不同的管理权限,确保系统的安全性。首先对数据库用户信息表进行查询,并将相应的用户名显示在下拉对话框中,选择不同的登录用户,输入密码,然后判断输入的密码是否与所选择的用户名匹配,如果匹配成功就初始化应用程序,并进入到应用程序主界面,实现相关的管理功能[6]。登录模块流程图如图6所示。
图6 登录模块流程图
4.2 功能实现模块
一旦登陆成功,就进行系统初始化,然后进入网络管理系统初始界面,进而根据在图形界面上的不同操作来实现不同的功能,达到网络管理的目的,确保设备的正常、安全稳定运行。
该网络管理系统实现了视图管理、状态监看和告警、配置管理、用户管理、信息查询和添加设备等功能。视图管理可以通过不同的界面多方位显示整个系统的连接、信号流程图等。下面以其中的几项功能为例进行详细介绍。
1)用户管理功能
用户管理功能流程图如图7所示,进入到相应的功能单元:用户编辑功能和用户管理功能[7]。在用户注册功能单元,首先输入信息,进行数据库查询,根据输入用户名是否存在决定是否将输入用户信息插入用户信息表,如果用户名存在将弹出反馈信息,提示用户重新注册。在用户管理功能单元,首先查询数据表将用户名信息在下拉文本框中显示,选择相应的用户,输入密码,根据密码正确与否进行用户信息的修改。
图7 用户管理流程图
2)设备添加功能
添加设备功能的流程图如图8所示,通过应用程序界面触发设备添加操作,弹出设备添加对话框,输入设备类型、设备名称、设备IP地址等信息,根据设备类型,触发不同的设备模块,如编码器模块、解码器模块、通用设备模块,生成相应的设备界面,并在工具箱产生相应的按钮,通过单击这些按钮进入不同的设备界面。与此同时,将相关的数据存储到数据库中,再次打开应用程序时,读取相关参数并将之前添加的设备重新添加,避免重复操作。此外,已添加的设备亦可以修改参数。
图8 设备添加流程图
3)故障报告功能
故障报告功能的流程图如图9所示,在应用程序界面选择相应的故障报告功能,如故障分析,进入到故障分析界面,在该界面上,可以通过时间、报警类别、设备等进行筛选,以最快速的方式找到管理人员想要获得的信息,并进行统计分析,方便做出相应的决策,及时对系统进行完善,避免同类故障的再次发生,确保整个系统的稳定性。
图9 性能报告流程图
5 网络管理系统的测试结果
针对数字电视前端信号压缩系统的一个具体应用,笔者分别在Win7以及Windows XP操作系统的计算机中运行该网络管理系统,登陆成功后通过相关操作,添加设备后即可显示设备信息、设备状态,并可进行设备管理,添加设备之后实现了如图10所示的效果,所展示的是编码设备的相关信息;当选择用户和性能管理之下的CPU使用率按钮,呈现效果如图11所示,笔者此处获取的是网络管理软件所在主机的CPU使用率,可修改IP、采样时间等参数;此外,结合Mib浏览器对该系统Trap的发送和接收进行测试,测试结果表明该系统可以实现正常的Trap发送和接收。由这些结果可以看出,该网络管理系统能够实现对设备的状态进行监看以及基本配置,具备广播电视领域网络管理需要具有的高实时性、易于操作的特点,达到了预期的功能。
图10 网络管理系统显示效果(截图)
图11 设备CPU使用率(截图)
6 总结
本文基于Qt图形化界面开发工具库以及SNMP协议,设计并实现了一种应用于数字电视前端的网络管理系统,达到了高实时性、易于操作的目的。该系统实现了对数字电视前端系统相关设备的故障管理、性能管理,并能将相关信息存储到数据库,并且提供分析、查询功能。此外,网络管理员还能根据具体的运行状态,通过在程序界面上的相关操作进行编码器、网络适配器、复用器等数字电视前端设备参数的配置,实现管理功能,达到了网络管理的目的,具有重要的实用价值。
[1]李光宇.网络管理与维护[M].北京:北京理工大学出版社,2012.
[2]武孟军.精通SNMP[M].北京:人民邮电出版社,2010.
[3]数字电视国家工程实验室.数字电视前端系统[M].北京:科学出版社,2012.
[4]A Simple Network Management Protocol(SNMP)[EB/OL].[2013-09-20].http://www.ietf.org/rfc/rfc1157.txt.
[5]Structure and identification of management information for TCP/IP-based Internets[EB/OL].[2013-09-20].http://www.ietf.org/rfc/rfc1155.txt.
[6]武孟军.Visual C++开发基于SNMP的网络管理软件[M].北京:人民邮电出版社,2009.
[7]乔彩霞.前端设备SNMP网管系统的设计与实现[D].成都:电子科技大学,2012.
[8]范芸.SQL Server数据库技术基础与上机指导[M].北京:清华大学出版社,2011.
[9]吴迪.零基础学Qt4编程[M].北京:北京航空航天大学出版社,2010.