设备网管快速开发
引言
网络是由网络设备搭建起来的,网络设备的稳定性直接决定了网络的定性。随着网络使用范围的增加,网络环境也越趋复杂,网管员每天所做的网维护工作有很大一部分是在维护网络设备。但是网络设备数量多,品种杂,再勤奋的网管员如果采用走查的办法,每天也不会对整个网络查询3次以上。所以很多的网管员对网络设备的维护经常采用传统的“来电响应式”。可是一旦电话打过来,必然是发生了网络故障,发生了网络故障,必然造成了损失。尤其是以网络为业务基础的企业,5分钟的网络故障有可能带来的损失是成千上万的。所以,若要将复杂的网络简单明了的管理起来,使用设备网管的必要性就十分突出了。
一、设备网管的用途
设备网管有别于目前市场上流行的系统网管,桌面网管,员工行为网管,其主要目的是帮助网络运维人员保证网络设备稳定正常,让网管员时刻了解网络中各个设备的工作情况。设备网管通过算法快速自动搜索网络内设备、网络设备、PC和Server,并实时显示网络资源的链路关系和运行状态,7×24小时监测路由器、交换机和智能hub的核心参数,如端口流量、端口使用率、内存、CPU、路由表等。而对于服务器的监测,它主要从运行状态、启动情况、CPU、内存、磁盘、进程、服务等几个有限的指标进行简单的监测。对于光传输设备,如Epon/Gpon设备,它主要监控RS485以太网帧数/字节数、输入/输出单播包数、输入/输出字节数、管理ONU注册、ONU消册、ONU掉电、PON口光功率异常、ONU 以太网口状态、等告警管理;
二、设备网管软件的快速开发
对于设备级专业网管软件的开发,选用SugarNMS智和网管开发平台可以大大简化软件的开发难度,缩短开发周期,降低开发费用和风险。她由本土企业北京智和信通技术有限公司(www.zhtelecom.com)完全自主开发的,非常符合国内网络设备商及客户的使用习惯,满足用户的定制化开发要求。
SugarNMS智和网管开发平台适合EPON网络管理、EoC同轴宽带网管理、WiFi无线网络设备管理、光传输网络管理、交换机设备管理、IDC机房设备监控、视频监控网络管理、PLC共缆以太网管理、网络安全和准入控制管理、服务器和数据库及应用软件监控管理软件的开发。
三、智和网管开发平台组成
智和网管开发平台采用遵循电信管理网的规范设计,采用标准版本的Java技术和多层分布式软件架构,确保软件技术的高可靠性。它由以下几部分构成:
网管基础组件;
网管平台基础框架;
SugarNMS成熟网管功能;
Javak源代码及开发文档
1-网管基础组件
liTopoview网络拓扑图组件
iTopoview是高度封装的拓扑图图形开发组件,可以满足网管GUI客户端开发的需要。iTopoview可以让网管产品的操作界面全部基于拓扑图的所见所得管理模式。所有的权限管理、故障管理、性能管理、配置管理、维护管理等功能,都是直接与拓扑图集成。
iTopoview 内置树状视图和网络拓扑视图,并能在二者之间实现自动同步。使用拓扑图组件还可以开发出地域、组织结构等的层级划分图,以及机架图、面板图等。下图是一个网络拓扑图的实例。
lObjectSNMPSNMP开发组件
SNMP协议开发组件和网络自动发现服务,封装了SNMP通信功能和上层SNMP故障、性能、配置、TRAP 应用。SNMP组件采用对象化的编程方式,将以往复杂的SNNP开发工作变得非常简单和高效。可以支持任意的SNNP设备和私有SNMP MIB、以及设备SNMP接口的变动。具备Java/SNMP网关、WebService/SNMP、Proxy代理网关和专利技术的网络自动发现,设备组件发现,设备类型识别。
l监控模块组件
WMI模块组件:高度封装WMI协议,使得通过WMI协议发现和监控设备资源开发工作变得简单。
Telnet/SSH模块组件:屏蔽底层的Telnet和SSH协议,该模块能轻松的通过Telnet/SSH协议发现和监控设备资源。
中间件模块组件:通过JMX技术封装成为一个通用模块,通过此模块在不需要二次开发的情况下能监控几乎所有的中间件的性能。
数据库模块组件:针对不同的数据库系统采用JDBC或者ODBC协议能很高效轻松的监控数据库系统的内部性能。
l数据库组件
SugarNMS数据库模块支持所有关系型数据库,采用数据库领域流行的O-R Mapping技术。使用工厂方法根据不同的环境创建数据库服务接口API,提供了各种数据库的添加、删除、修改、查询等服务。并支持WebServcie/RMI等通信方式远程调用数据库服务接口。
l监控调度组件
所有监控模块包括:SNMP监控模块、WMI监控模块、Telnet/SSH监控模块、数据库监控模块、中间件监控模块均注册在监控调度模块,由监控调度模块统一调度分发监视器至各个监视器模块,再由各个监控模块执行监视器任务。该模块支持插件方式,在统一接口可方便注册新的监控模块,并调度分发任务。此外,监控调度模块起到了网管软件和监控对象(网络设备、主机/服务器、应用服务等)之间的桥梁,屏蔽了监控对象之间的协议差异,使得监控更简单也更有扩展性。
l消息分发组件
所有需要把故障、事件、消息分发到客户端的模块都由消息分发模块统一处理。目前Syslog模块、Trap模块、故障监控模块均使用消息分发模块。消息的分发包括服务端自动向客户端推送消息和客户端主动向服务端请求消息两种方式。
l界面功能组件
界面展示功能也采用了功能模块内聚的设计方式,比如:拓扑图模块、导航树模块、导航和拓扑联动模块、菜单模块、对象表格模块、属性表模块等。在二次开发过程中可直接使用或者继承扩展这些模块来实现界面功能。
2.网管平台基础框架
平台框架采用了J2SE、XML、Web Service、SNMP、HTTP、JDBC、Swing、RMI、O-M Mapping、O-R Mapping、Muti-Thread等成熟可靠的JAVA技术为基础,按照电信网管系统的特点划分模块和层次,既符合网管业务的要求,又保证在软件上是易实现、易维护、易扩充的。
3. 网管功能
SugarNMS智和网管开发平台具有全套智和网管软件的功能,包含网络拓扑管理、网络设备管理、设备配置管理、故障和工作状态管理、性能管理、报表统计、多用户安全管理等功能。即使不作二次开发,软件也能运行,可满足通用的网络管理要求。
网管功能如下:
自动发现拓扑 |
拓扑管理 |
设备管理 |
主机/服务器/虚拟机管理 |
中间件/数据库管理 |
链路管理 |
故障管理 |
事件管理 |
性能管理 |
安全管理 |
设备信息管理 |
统计报表 |
设备维护 |
软件维护 |
4-源代码及开发文档
l客户端源代码
开发平台的客户端源代码采用完全开放的模式,并已经提供了多个通用网管功能,开发人员可以任意修改客代码进行开发以满足各种定制需求。客户端源代码模块如下:
自动发现 |
拓扑管理 |
设备管理 |
链接管理 |
事件管理 |
故障管理 |
性能管理 |
安全管理 |
扩展管理 |
设备维护 |
网络工具 |
系统维护 |
l服务端接口API
服务端采用开放框架、服务模块、服务端插件、API的方式支持二次开发。开放的框架和模块如下:
SNMP功能模块 |
网络拓扑自动发现框架 |
设备SNMP访问框架 |
MIB浏览器模块 |
数据采集 |
监控任务调度模块 |
批量监控任务执行模块 |
性能采集模块 |
事件分发模块 |
数据处理 |
故障告警管理模块 |
事件处理模块 |
Syslog管理框架 |
Trap信息处理框架 |
数据交换 |
WebService框架 |
CORBA框架 |
北向接口框架 |
数据库 |
数据库模块 |
企业级方案 |
分布式网管模块 |
双机热备模块 |
设备维护 |
设备信息维护框架 |
设备模版模块 |
批量设备升级、备份、恢复模块 |
网管安全 |
安全管理模块 |
网管工具 |
FTP/TFTP、Ping、Telnet模块 |
开发平台预定义了下列插件接口:
网络拓扑自动发现插件接口 |
故障监控任务插件接口 |
性能监控任务插件接口 |
TRAP解析插件接口 |
Syslog解析插件接口 |
设备配置管理插件接口 |
北向接口插件接口 |
批量任务插件接口 |
l开发技术文档
提供二次开发所需的全套开发资料和文档,包含:
平台架构文档 |
系统架构文档 |
数据库设计文档 |
插件接口文档 |
平台组件文档 |
iTopoview组件使用文档 |
SNMP组件使用文档 |
数据库API使用文档 |
服务端API使用文档 |
通用网管功能文档 |
客户端代码开发文档 |
软件系统文档 |
系统安装和运行文档 |
软件日常维护文档 |
四、基于智和网管开发平台的设备网管开发方式
智和网管开发平台支持多种开发模式,满足从快速到个性功能等的不同需求开发:
l可基于成熟的智和网管软件基础上开发
l可基于拓扑图、SNMP组件和服务API开发
l仅对业务需求进行编程,无需关注底层基础设施
l提供通用化管理机制,SNMP或非SNMP同等开发模型
l模型化和最小编程原则,增加单一插件函数,即可增加从用户界面到后台、网络、数据的集成功能
l从网管架构到组件模块均由网管平台统一提供,不依赖第三方功能模块
l常规开发工具:Eclipse、NetBeans工具即可
五、部分设备网管软件截图
基于智和网管开发平台开发的Epon网管软件
基于智和网管开发平台开发的EoC网管软件
基于智和网管开发平台开发的工业交换机网管软件
基于智和网管开发平台开发的SDH光设备网管软件
基于智和网管开发平台开发的物理交换机设备网管软件
基于智和网管开发平台开发的无线微波设备网管软件