论文部分内容阅读
当前,数字化通信正席卷全球,模拟电视在经历了几十年的发展以后也走到了尽头。随着我国三网融合的推进,数字电视正经历着前所未有的黄金发展阶段。目前人们对数字电视进行了广泛的研究,相关产品已经广泛应用于相关行业。然而大量的数字电视前端设备给管理带来了极大的不便,一个很小的设备故障可能需要花费大量的时间进行检查。以SNMP为基础的数字电视综合网管系统能够给用户管理数字电视的相关设备带来极大的方便,简单的设置就能完成用户所要求达到的效果。本研究课题是企业项目,通过在数字电视前端设备上建立网管代理,把数字电视前端设备管理起来,为管理大量的数字电视带来了极大的便利,给建立数字电视宽带综合信息网的网管系统打下了坚实的基础。本文的主要研究成果如下:
1.网管代理配置文件的编写。NET-SNMP网管代理的配置文件包括snmpd.conf、snmp.conf和snmptrapd.conf等,其中配置文件snmpd.conf是网管代理进程snmpd运行的主要配置文件。生成配置文件snmpd.conf有三种方法:手工编写、自动生成和编程实现。手工编写的配置文件容易出现格式错误;自动生成的配置文件无法完全满足实际的应用需求,还需要手工修改;编程生成的配置文件不仅能够满足实际的应用需求,而且格式正确,无需手工修改。因此,宜采用编程的方式生成配置文件。通过调用相关函数,生成配置文件snmpd.conf的模板,网管代理snmpd可以根据此模板完成启动工作;同时,可以按照实际需求修改配置文件,使网管代理在新的配置下启动。网管代理的其他配置文件snmp.conf和snmptrapd.conf采用默认的设置。
2.NET-SNMP源码的移植。NET-SNMP是一个开源的SNMP实现项目。NET-SNMP不仅支持所有版本的SNMP协议,而且同时支持IPv4和IPv6协议。NET-SNMP被很多商业化的Linux包含,大多数的Linux使用NET-SNMP实现Linux的SNMP支持。正是考虑到通用性和平台相关性,本课题选用NET-SNMP开发数字电视前端设备的网管代理。通过交叉编译,把NET-SNMP的网管代理移植到数字电视前端设备的嵌入式平台,为网管代理的成功运行打下了坚实的基础。
3.网管代理架构。为了拓宽基于SNMP的数字电视综合网管系统对数字电视前端设备的控制能力,随时以模块化的方式将一个新加入网络的设备或部件纳入被管理对象的范围,本课题选用IETF推荐的AgentX标准框架。可扩展代理AgentX是包含一个主代理进程和多个子代理进程的一种体系结构,它们之间通过标准接口进行通信。在每个数字电视前端设备上运行的网管主代理进程,不仅和驻留在同一个设备中的子代理线程通信,它还通过SNMP协议与管理者进行通信。每个子代理线程维护一个特定的管理信息库MIB,它不仅响应主代理发送的SNMP请求,而且主动发送trap给主代理。
4.网管代理扩展。不同型号的数字电视前端设备需要维护不同的管理信息库MIB,这就需要对网管代理进行扩展。首先,编写MIB文件,MIB文件一般都由变量和表组成;其次,使用mib2c工具把MIB文件转换成C程序;再次,根据实际情况修改自动生成的C程序;最后,把修改好的C程序编译进代理中。
5.网管代理发送自定义trap的实现。网管子代理线程检测到数字电视前端设备异常后,主动向网管主代理进程报告异常事件,主代理进程据此产生SNMP陷阱报文发送给管理者,管理者就可以定位异常,进而想办法排除异常。
6.前端网管服务器查看告警信息。网管代理发送的自定义trap信息在解析以后,会存放在前端数据库服务器中。前端网管服务器通过查询前端数据库服务器中的数据库,把需要的告警信息显示在综合网络管理软件的日志统计界面,方便网络管理员实时查看数字电视前端设备的运行状况,对异常情况进行及时的处理。