一种基于Java和数据库的网络性能自动评估方法

文档序号:7928688阅读:195来源:国知局
专利名称:一种基于Java和数据库的网络性能自动评估方法
一种基于Java和数据库的网络性能自动评估方法
所属领域
本发明涉及一种网络性能自动评估方法的实现,属于网络优化 领域,具体的说,涉及网络性能优化中,基于java技术动态处理性 能参数,实现网络性能自动评估方案。
背景技术
网络技术的进步催生了多种形式的网络,比如SDH网络、PON网 络、MPLS网络等等,网络性能的优劣直接对网络的可靠性、有效性、 商用化产生极大影响,对网络性能的优化一直是网络开发的重点,实 时可靠的网络性能监测评估对于网络优化有着重要意义,在保证网络 正常工作的同时,寻求网络运行的最佳状态。
一般的网络性能评估通过手动操作,对网络的某个参数进行监测, 判断网络的性能状况,在实现评估的同时增加了管理人员的负担,无 法达到实时监控。基于java技术,使用java定时调用功能,动态监 测网络性能,处理性能数据并判断性能状况,实现网络性能的自动评 估,实时管理网络的性能。Java的多平台特性赋予了性能自动评估 基于web的实现方式,扩展基于JSP的网络管理系统的性能管理功能。
以数据库为中心,应用数据查询、存储、更新技术,对性能采集 数据进行备份管理,为性能评估提供实时数据,保证评估的可靠性和 有效性。同时,基于数据库强大的自动处理功能,可以实现性能数据的差值评估管理。
采用简单而实用的SNMP简单网络管理协议,基于TCP/IP采集性 能参数,降低网络的资源、技术、成本等方面的开销,随着Internet 的发展,基于S應P数据采集方式将有更大的扩展空间。

发明内容
本发明提供一种网络性能自动评估方法,采用java定时技术基于 数据库实时采集网络性能数据,对数据进行处理,报告性能优劣状况;
应用服务器后台技术初始化启动自动功能模块,定时触发数据采集和 数据处理线程;采用Ajax (Asynchronous javascript and xml)技 术,实现性能评估结果无刷新自动更新效果。在保证可靠性和实时性 的前提下,进一步降低服务器的工作负荷,提高网络的运营管理维护 (0AM)能力。
本技术主要包括两大部分函数自动调用、性能数据处理,分别 完成数据处理定时触发和数据处理过程(如图1)。函数自动调用基 于java和应用服务器后台技术实现,性能数据处理基于java、 S丽P 和数据库实现。对于网络管理系统(NMS)的性能管理,基于java可 选择JSP (Java Server Page)网页编牙呈^支术,结合Javascript脚 本,承载Ajax技术,后台异步处理性能评估结果,实现GUI中性能 报告的无刷新自动更新。


利用对参考了附图的优选实施例的详细叙述,将会使本发明的上 述目的及优点更加清楚明了,其中图1所示为网络性能自动评估的系统框图; 图2所示为网络性能自动评估的功能模块; 图3所示为网络性能自动评估过程。
具体实施方案
本发明根据Java和数据库技术的特点,提出了定时自动处理技 术,对网络性能进行实时评估监测。
参见图1本发明系统总体设计框图。图中,应用服务器可以选择 Apache服务器或是Tomcat服务器,修改启动参数,初始化时进入java 函数自动调用程序,启动计时器,每隔特定时间发送使能信号触发函 数调用程序,调用数据处理函数,釆集性能数据和获取数据。
采集性能数据使用S丽P协议,由数据采集函数向管理站Manager 发送性能采集命令,管理站转换命令为代理站Agent识别的格式后转 发到代理站,参照管理信息库(MIB)代理站执行性能采集的相应命 令,对底层设备进行轮询,返回管理站设备性能数据,管理站再上报 至数据釆集函数通过JDBC (Java Database Connection)存储性能 数据至管理数据库。获取数据通过JDBC查询数据库中的性能数据, 判断性能类型,转至相应的数据计算/比对程序,根据既定的公式和 规则处理数据,返回性能统计数据,进入条件判断程序,对应不同的 情况性能结论函数给出相应的性能状况判断,通过Ajax技术异步获 取性能结论函数输出的性能状况实时无刷新显示在GUI中,同时判断 性能状况的优劣,当低于相应的门限,跳出警告提示。在整个过程中,java技术承载了关键的后台控制调度,保障系统 运行的稳定可行性,数据库承载管理数据存储备份查询,提高系统运 行的安全性和可靠性。整个系统通过JDBC技术桥接实现网络性能的 自动评估监测。
基于Java和数据库的网络性能自动评估系统包括初始化、函数自 动调用、数据采集、数据处理四大功能模块,如图2,其中数据采集 模块与管理站Manager相接,发送性能数据采集命令及接收底层返回 的性能数据;数据处理模块与管理员交互,在GUI中实时报告所有处 理结果。应用服务器在初始化时启动计时器,每隔一定时间触发函数 调用,实现函数自动调用功能。函数调用一方面启动数据采集线程, 轮询底层硬件的性能参数,采集性能信息存储到管理数据库中;另一 方面启动数据处理线程,询查管理数据库中的性能数据,返回数据计 算/比对模块处理,完成处理后结果送至性能结论模块判断后报告GUI 性能状况。
基于java和数据库的网络性能自动评估过程如图3,主要包括三 部分,首先是初始化,其次是函数自动调用,最后是数据采集及处理。 数据采集及处理分为两个独立同时进行的线程一一数据采集和数据 处理。
初始化过程由应用服务器发起,在实际开发中选择了 Tomcat服务 器,在启动Tomcat服务器后,服务器进入web. xml配置文件对服务 器进行初始化设置,在web. xml中使用〈listener〉标签载入函数自动 调用类〈listener-class〉,服务器随即启动函数自动调用线程。函数自动调用线程包括计时器和函数调用两部分,载入
javax. servlet. ServletContextEvent类和javax. servlet. Servlet ContextListener类,初始^:监听器, <吏用java. util包的Timer类 设计计时器,运4亍"Timer timer = new Timer (true);"产生计时器 timer后,调用Timer类的任务调度函数schedule (),设定定时器的 使能间隔时间t,每隔t时间执行schedule ()中的函数调用功能,同 时调用数据采集和数据处理线程。在关闭监听器时调用Timer类 cancel (),销毁计时器,退出自动评估系统。
数据釆集使用Socket网络通信类DatagramSocket ()打开与管理 站的通信端口 ,通过DatagramPacket ()绑定管理端的IPi也址和端口 , 按照性能数据获取格式使用DatagramSocket的类send()将打上包头 的性能参数查询命令发送到管理端,同时关闭发送端口,执行 DatagramSocket ()打开另 一个跟管理端协商好的端口监听管理端返 回的性能数据。管理端的接收线程监听到命令后存储至緩沖区,拆包 后将命令按照代理端识别的打包格式将数据打包后启动sendto()函
数通过IP地址和端口发送至代理端。代理端使用Net-Snmp网络管理 构架,通过监听函数获取性能查询命令后,转至MIB处理进程,对应 管理信息库中相应的性能参数,转变成底层硬件能响应的MIB树命 令,询问相应的设备,获取响应结果返回至緩沖区,打开发送端口返 回管理端性能数据。在接收到数据后管理端转换格式后发送至数据采 集端的监听端口,使用DatagramSocket的类receive ()接收数据包 后确认所收到的性能数据格式正确、数据有效,采集端即执行close ()类关闭监听端口,完成底层硬件性能数据的获取,同时载入Java, sql 包,执行Class. forName 0例化JDBC, DriverManager. getCormection (url, user, pwd)连接数据库,createStatement ()产生声明后使用 executeUpadate()函数执行数据库update语句将接收到的性能数据 存储至管理数据库MDB中。
数据处理线程通过JDBC使用executeQuery()函数执行数据库查 询语句select查询性能相关数据,存储于结果集ResultSet中,针 对不同属性的参数跳转至相应的数据计算/比对函数,通过结果集的 类方法getString ()读取结果集中的字符型数据,通过getlnt()读取 整型数据,通过Integer. valueOf()将字符型数字转变为整型。对数 据格式进行标准化后输入计算/比对函数处理,对应不同的网络性能 有不同的公式和规则,比如流量统计需要计算数据的速率;阻塞率或 是丟包率需要计算数据的比率;网络的利用率则需要整理各个设备某 个时间总流量,同时需要判断线路的通断,比对设备参数设定,判断 参数对网络利用率计算的影响等等。根据数据计算/比对结果,性能 结论函数通过一系列switch()条件判断,赋予各性能指标直观的判 断结果,量化性能指标与理想的差距,给出最终评估报告。
评估报告的无刷新更新通过在GUI中设置div层,设定id为 "evaluation",在web页编程中使用javascript脚本载入js后台 文件,在〈body〉标签中定义onLoad事件,执行j s后台函数di sp 1 ay ()。 在后台中使用setlnterval ()设置display ()函数执行的间隔时间, 不间断执行函数功能。display ()函数只完成一个功能,使用Ajax技术异步获取最终评估报告,显示于id- "evaluation"的div层,当 评估报告出现变化时,div层即时刷新,在GUI端在没有刷新界面的 情况下实现评估报告实时更新。在display ()函数中设置判断条件, 当网络性能恶化到一定程度时,执行alert ()警告提示框,提醒网络 管理员做出调整。
以上所述的,仅为本发明的可行实施例,并非因此局限本发明的 专利范围,故凡应用本发明说明书或附图内容所为的等效变化,均同 理皆包含于本发明的范围内,以保障发明者的权益,于此声明。
权利要求
1、一种基于Java和数据库的网络性能自动评估方法,其特征在于基于具有跨平台特性的java技术,自动采集硬件性能参数,以数据库为中心对最新采集数据进行操作和评估,并报告性能状况。Java自动调用技术在网管应用服务器初始化时使用服务器后台技术启动计时函数,每隔一定时间返回函数调用函数一个使能状态,触发数据采集和数据查询功能。数据采集使用SNMP网络管理协议发送数据采集命令到代理端Agent,在参照管理信息库(MIB)对底层硬件轮询后,代理端返回收集到的设备性能信息,随后数据采集模块将信息存储至管理数据库(MDB)相应的性能表中。性能评估通过数据查询模块获取所需评估的数据库中对应的性能数据,返回至数据计算/比对模块按照预设的公式和规则对数据进行处理,产生的结果送入性能结论模块通过判断条件得出最终的性能评估结果,报告至图形用户接口(GUI)。
2、 根据权利要求1所述的一种基于Java和数据库的网络性能自 动评估方法,其特征在于基于Java技术开发,采用Java的util 包和servlet构架实现自动定时调用功能。
3、 根据权利要求1所述的一种基于Java和数据库的网络性能自 动评估方法,其特征在于基于应用服务器后台技术配置启动参数, 在服务器初始化时进入Java函数体,启动计时功能。
4、 根据权利要求1所述的一种基于Java和数据库的网络性能自动评估方法,其特征在于性能采集模块定时通过SNMP协议与硬件 交互,巡查硬件性能状态,实时更新数据库中的性能数据。
5、 根据权利要求1所述的一种基于Java和数据库的网络性能自 动评估方法,其特征在于性能数据的获取均通过数据库,不直接询 问硬件,定时查询性能数据,保证实时性。
6、 根据权利要求1所述的一种基于Java和数据库的网络性能自 动评估方法,其特征在于从数据库中得到的性能数据直接送至数据 计算/比对模块处理,按照性能计算和判断规则进行处理,得出性能 优劣结论。
7、 根据权利要求1所述的一种基于java和数据库的网络性能自 动评估方法,其特征在于定时性能自动评估结论需实时显示在GUI 中,使用Ajax技术实现无刷新实时更新性能状态,同时在性能出现 恶化时提醒管理员。
全文摘要
本发明公开了一种基于Java和数据库的网络性能自动评估方法,在网络管理中对网络性能进行自动评估,定时报告网络实际性能与理想的差值状态。该方法包括基于java的函数自动调用和网络性能数据处理两部分,函数自动调用运行于后台,生存周期等同于应用服务器,使用java计时函数每隔一定时间触发调用功能,执行性能数据的处理。网络性能数据处理一方面需要收集底层硬件的性能数据,并存储到管理数据库(MDB)中;另一方面查询最新收集到的网络性能数据,对数据进行计算、比对,给出结果对应的评估结果,并显示于图形管理接口(GUI)。本发明解决了网络性能评估的实时性、自发性、可靠性和易扩展性等问题,有效调整网络的性能,优化至最佳状态,提高网络的运营管理维护(OAM)能力。
文档编号H04L12/26GK101420344SQ200810239599
公开日2009年4月29日 申请日期2008年12月12日 优先权日2008年12月12日
发明者昱 尧, 张志辉, 张永军, 蒋定孚, 顾畹仪 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1