电视发射台集中监控系统设计

2014-07-02 00:28白小军吴夫丹
电视技术 2014年16期
关键词:发射台发射机客户端

白小军,赫 磊,吴夫丹

(西安工业大学 计算机科学与工程学院,陕西 西安 710032)

电视发射台集中监控系统设计

白小军,赫 磊,吴夫丹

(西安工业大学 计算机科学与工程学院,陕西 西安 710032)

针对电视发射台设备监控的实际需求,提出了基于Web的监控方案,讨论了监控系统的体系结构及各层的实现方法,解决了多种类型设备的集中监控以及细粒度访问控制等问题。实践证明,该方案能满足大型电视发射台设备集中监控的要求。

电视发射机;设备监控;软件体系结构;访问控制

电视发射机是电视广播的核心设备,为保证节目的正常播出,必须提供一种安全的手段,方便监视发射机的工作状态,及时发现并迅速处理故障。

当前,网络化的集中控制已成为设备监控的主流技术。文献[1-2]阐述了如何使用串口服务器将电视发射机接入网络,并通过CGI编程实现基于Web的远程控制,该方式只能监控单台发射机的运行,无法实现集中监控。文献[3-4]提出了发射台集中监控的技术方案,它引入网络管理的思想,为发射机设计SNMP代理,使用SNMP协议[5-8]采集设备信息,将控制设备当作网络设备进行管理,进而实现基于Web集中监控,但该文献未充分讨论监控软件的体系结构,难以适应大型、复杂系统的监控需求。

在大型发射台中,往往要监控很多不同厂家、型号的发射机设备,查询各设备的基本工作状态以及码流、激励器、功放、冷却装置等部件的工作状态,在设备发生故障或告警时能查询日志以辅助故障诊断,并能控制设备执行开关机、激励器切换等指定的动作。监控系统面临着数据量大、结构复杂、实时性强、权限控制严格等一系列问题,必须深入研究系统的体系结构及实现方法。

1 监控系统的总体结构

发射台集中监控系统的总体结构如图1所示。可以看出,这里采用了“管理者—代理”的体系结构,整个系统分为三大部分。

图1 发射台集中监控系统的总体结构

1)设备代理

电视发射机作为被管设备,通过SNMP代理接入网络。代理以轮询的方式采集发射机的运行参数,并保存到MIB库中供管理者访问;当收到管理端发送的GET请求时,代理将从MIB中获取数据返回给管理者;而当收到管理端的SET请求时,代理将控制设备执行指定的动作。

目前一些新型的电视发射机,本身已内置了网络接口以及SNMP代理服务,可以直接通过SNMP协议访问。而传统的发射机一般都配备串口与上位机通信,这样还需要在设备的前端增加一个串口服务器,将发射机接入网络,并在串口服务器中编程实现SNMP代理的功能[3]。

2)监控服务器

监控服务器是本系统设计的核心。在设备侧,它提供了数据采集与命令控制的功能,采集到的数据保存到内存数据集或数据库中以备访问;在用户侧,它提供了基于Web的设备监控功能,并实现了用户身份验证以及细粒度的访问控制等功能。

3)监控客户端

用户通过Web客户端或者手机客户端访问服务器提供的各项服务,监视发射机的运行状态,配置发射机的运行参数,并控制发射机执行指定的动作。

由于设备代理的设计在相关文献中已详细介绍,这里只讨论监控服务器和监控客户端的设计。

2 设备访问层的设计

在设备一侧,监控服务器要和设备代理交互,采集设备运行数据并实现命令控制,这通过设备访问层来实现,总体结构如图2所示。

图2 设备访问层总体结构

SNMP组件提供设备代理的基本访问功能,在此基础上,由实时数据采集类和日志数据采集类采集设备数据,并保存这些数据以备使用。设备状态信息属于实时数据,每隔几秒钟就要刷新一次,所以暂存到内存数据集中以提高访问速度;而日志属于历史数据,要保存到数据库中以备检索。

实时数据采集采用定时轮询的方式实现,轮询周期一般设置为10 s。考虑到系统中监控的设备数量众多,每台设备的数据采集都会产生一定延迟,为保证在10 s内完成所有设备的轮询,必须采用多线程的方式来实现。其工作原理如图3所示。

图3 实时数据采集的工作原理

解释如下:

1)为Web应用注册上下文初始化监听器,当Web监控系统启动时触发执行监听器中的代码;

2)在监听器中启动定时服务线程,以后该线程会定时唤醒,反复运行,直到应用程序退出;

3)在定时服务线程中创建数据采集组件,并调用其dataAcquire()方法采集数据;

4)在dataAcquire()方法中,首先获取监控设备列表,然后针对每一个设备,分别创建一个数据采集线程,并调用SNMP组件的gettxdata()方法采集实时数据,并将其保存到内存数据集中备用;

5)当调度好本轮的数据采集后,定时服务线程进入10 s的休眠,并在定时唤醒后进入下一轮采集。

由于被管设备提供了SNMP接口,所以命令控制功能最终都通过SNMP SET原语来实现。以远程开关机控制为例,其MIB节点定义如下:

c-txOnOff OBJECT-TYPE

SYNTAX Integer32

MAX-ACCESS read-write

STATUS current

DESCRIPTION"0—turn off,1—turn on"

∶={ctl 1}

可以看出,设置该节点的值为1将实现开机控制,设置为0将实现关机控制。其他控制命令的实现方法与此类似。

3 监控服务层的设计

为提高监控系统的扩展性,为PC客户端、手机客户端提供一致的访问方式,引入了监控服务层。该层的服务接口定义如下:

客户端通过这些监控服务,查询设备的运行状态,并控制设备执行指定的动作。

对于各种不同型号的发射机,其监控功能基本类似,但监控的数据项有所不同,数据展示和处理方式也不尽相同。为屏蔽设备间的这种差异,采用图4所示的工厂设计模式:由IDeviceService定义统一的服务接口,然后为所有类型的发射机分别设计服务实现类,这些类都实现IDeviceService接口;在监控某设备时,由服务工厂(ServiceFactory)根据传入的设备类型动态构造设备服务对象,然后依靠多态的机制,自动调用该类型设备的服务方法。

图4 监控服务层的类设计

4 Web接口层的设计

从安全的角度考虑,用户要想访问监控服务,必须经过严格的身份验证以及访问控制,这些辅助功能由Web接口层来实现,其工作原理如图5所示。可以看出,该层采用了MVC设计模式:FilterDispatcher作为请求处理的入口,将请求调度到合适的Action进行处理(调用其execute方法);Action作为控制器,调用模型(监控服务层)提供的方法获取监控数据或控制设备动作,最后将处理结果反馈给客户端。

图5 Web接口层的核心类设计

Web接口层为客户端提供唯一的访问入口,所有的请求都必须通过这个入口进行调度和转发,所以很容易在这里部署权限验证过滤器(AccessControlFil⁃ter),实现访问控制功能,基本原理如下:

1)用户登录时,获取该用户的角色列表以及管理的设备列表,存入该用户的Session中。

2)用户请求某项监控服务,该请求会被映射到一个Action进行处理。而在请求到达Action之前,会被AccessControlFilter拦截。

3)在该过滤器中,首先验证用户是否具有访问该Action的角色,若验证通过,则继续验证是否具有管理该设备的权限。只有角色验证和设备验证都通过的请求,才会被调度到Action,否则返回Access Denied信息。

5 客户层的设计

Web应用的用户界面一般在服务器端动态生成,然后将产生的HTML代码传递给客户端,由浏览器展示给用户。但由于监控界面的生成逻辑比较复杂,要根据设备的配置信息及运行状态动态构造并不断刷新,大大增加了服务器的处理负荷。为有效降低服务器开销,可以将传统的页面表示逻辑转移到客户层来完成,具体方法是:在客户端使用AJAX技术异步请求监控服务,服务器端将生成的数据(不是HTML页面)直接返回给客户端,然后在客户端使用JavaScript解析和展示。

客户端需要的数据主要是各监控项的ID及数值,为减少数据传输量,采用JSON字符串的形式来包装数据,如下:

{“OID1”∶“VALUE1”,“OID2”∶“VALUE2”,“OID3”∶“VAL⁃UE3”,…,“OIDN”∶“VALUEN”}

这样,JavaScript可以方便地将JSON字符串转换为属性集合,然后根据属性名检索属性值,以此来调整页面显示,实现页面局部刷新。

6 总结

结合某电视设备有限公司发射机监控的实际需求,设计了基于Web的远程集中监控系统,介绍了系统的总体结构,并重点说明了设备访问层、监控服务层、Web接口层以及客户层的设计方法。该方案解决了多种设备的整合监控以及细粒度的访问控制等问题,能够满足大型电视发射台远程集中监控的基本要求。

[1]白小军,罗钧旻.基于WEB的发射机远程控制系统设计[J].通信技术,2008,41(9):59-61.

[2]苏振涛,罗钧旻,白小军.基于设备服务器的电视发射机远程监控系统[J].计算机测量与控制,2009,17(10):1883-1886.

[3]白小军,杨军,喻钧.基于Web的电视发射台远程集中监控系统设计[J].电视技术,2012,36(10):66-72.

[4] 白小军,杨军.电视发射台短信监控系统设计[J].电视技术,2012,36(18):89-92.

[5]CASE J,FEDOR M,SCHOFFSTALL M,et al.IETF RFC1157,A simple network management protocol(SNMP)[S].1990.

[6] The SNMP Protocol[EB/OL].[2013-11-20].http://www.snmp.org/ protocol/.

[7]MCCLOGHRIE K,ROSE M.IETF RFC1156,Management infor⁃mation base for network management of TCP/IP-based internets [S].1990.

[8] SNMP4J-The object oriented SNMP API for Java managers and agents[EB/OL].[2013-11-20].http://www.snmp4j.org/.

Design of Centralized M onitoring System for TV Transm itting Station

BAI Xiaojun,HE Lei,WU Fudan
(School of Computer Science and Engineering,Xi’an Technological University,Xi'an 710032,China)

According to the requirements of remote monitoring for TV transmitting station,a Web-based centralized monitoring solution is presented,the total structure and software architecture of this system is discussed,and the problems of integrated monitoring and access control are solved.Practice is proved that this solution can meet the needs of centralized device monitoring for large TV transmitting station.

TV transmitter;device monitoring;software architecture;access control

TN948;TP273.5

A

��健男

2014-01-16

【本文献信息】白小军,赫磊,吴夫丹.电视发射台集中监控系统设计[J].电视技术,2014,38(16).

猜你喜欢
发射台发射机客户端
如何看待传统媒体新闻客户端的“断舍离”?
3DX系列发射机与DX系列发射机的比较——以3DX-50和DX-100为例
3DX-50发射机与PC之间通信的实现
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
中小功率等级发射台供电设备的维护
浅谈高山发射台播出监控系统
调频发射机技术改造
泸州广播电视发射台双回路供电系统改造实践