ImageVerifierCode 换一换
格式:DOCX , 页数:34 ,大小:574.54KB ,
资源ID:6071666      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6071666.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网络故障管理专家系统的研究与实现.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

网络故障管理专家系统的研究与实现.docx

1、网络故障管理专家系统的研究与实现毕业设计论文题 目网络故障管理专家系统的研究与实现专业名称软件工程学生姓名陆洪勇指导教师李勇毕业时间2008年7月毕业 任务书设计论文一、题目网络故障管理专家系统的研究与实现二、指导思想和目的要求1. 指导学生综合运用所学的基础理论知识和专业技术知识,研究学习JAVA平台下SNMP网络程序的设计与开发技术以及Jess规则引擎;2. 学习和掌握利用各种资料,尤其是网络资源,分析和解决网络故障管理专家系统设计与开发中遇到的各种实际问题;3. 通过网络故障管理专家系统项目的设计开发,学习和掌握JAVA平台下设计与开发理论以及SNMP相关知识。三、主要技术指标1. 程序

2、开发工具为Eclipse,页面开发工具为Dreamweaver,数据库为Oracle数据库,规则引擎采用基于Java的Jess规则引擎。2. 实现网络故障专家系统的规则制定以及故障分析。3. 实现的功能包括:网络故障规则的制定;网络故障规则的添加,修改,删除;网络故障告警信息的分析等。四、进度和要求1、 2007年12月26日到2008年1月31日:完成毕业设计开题报告做完。这期间,在分析了大量的文献资料后,决定采用以部分改良式的专家系统来部署整个系统。2、 2008年2月1日到2008年3月1日:主要完成了部分知识储备和部分技术的初步实施。上面系统中的四大模块:数据库;规则管理模块;告警服务

3、模块;Web服务模块。1) 对于告警服务器模块:研究AdventNet公司的SNMP Java开发包,研究怎样通过使用开发包里的API来使管理站能与被管理站进行通信。这期间所有的trap信息接收及MIB信息的查询都是通过使用模拟器来实现的。2) 规则管理模块:研究Sandia National Laboratories出品的基于Java平台的规则引擎Jess系统。重点学习了怎样去写规则以及怎样使规则能够正常推理。3) 数据库部分:学习Oracle数据库的使用和管理。这阶段使用Oracle的数据库进行规则信息的输入,并通过规则管理模块使用JDBC与其进行通信。3、 2008年3月1日到2008年

4、4月1日:对思科设备的告警信息进行归类及分析研究。4、 2008年4月1日到2008年4月17日:研究思科设备的规则信息结构。因为规则信息是需要不断的输入的,所以这个工作一直不断的进行下去。5、 2008年4月18日到2008年4月27日:完成关于思科设备在以太网网络中发送的告警信息的规则的制定。同时,正式使规则管理模块与数据库模块联动起来。这样,规则库管理模块就能够非常方便的调用数据库中的规则信息。6、 2008年4月28日到2008年5月4日:将告警服务模块的告警信息接收部分与规则库管理模块进行整合,同时可以使得三大模块可以同时运行,同步实施,相互作用。7、 2008年5月5日到2008年

5、5月31日:完成设计的大部分模块,将本系统与实习单位的系统进行整合,并在实际网络中进行试运行。期间不断调试系统的bug及改善系统部分缺陷。接受部门的验收并为毕业论文的写作准备相关材料。之后开始用一周的时间进行毕业论文的写作。8、 2008年6月1日到2008年6月13日:科技论文翻译,毕业论文答辩准备。五、主要参考书及参考资料【1】AdventNet.AdventNet SNMP API 4文档 E. 【2】Sandia National Laboratories.Jess In Action E.Ernest Friedman-Hill.2008年2月。【3】MetaStuff. dom4j

6、 1.6.1 API E. 【4】XML Networks.TRAP Objects for ciscoE 2008年3月。【5】Cisco Systems.SNMP Object NavigatorE .【6】W.Richard Stevents.TCP/IP详解 卷一:协议 M.机械工业出版社. 2007年11月。【7】李千目.一种基于自愈策略的网络故障诊断系统 J.仪器仪表学报. 2005年8月。【8】刘培奇.扩展产生式规则的网络故障诊断专家系统 J.西安交通大学学报.2004年8月。【9】薛军.基于专家系统的网络故障智能管理系统的设计和实现 C.中国计算机学会第1 2届网络与数据通信学

7、术会议.2002年12月。【10】陈敏.网络故障诊断专家系统中知识库的设计 J.电子科技大学学报. 2005年12月。【11】杨广明.网络拓扑发现技术的研究与实现 C.中国计算机学会第12届网络与数据通信学术会议.2002年12月。学生 _ 指导教师 _ 系主任 _目 录摘 要 IAbstract II第1章 绪论 11.1 设计的目的和意义 11.2 专家系统发展情况简介 11.3 设计原理及规模介绍 2第2章 理论分析 32.1 SNMP技术及原理 32.1.1 SNMP原理 32.1.2 AdventNet SNMP API 52.2 规则引擎及规则 62.2.1 规则引擎的简介和原理

8、62.2.2 Jess规则引擎 72.3 页面开发 92.3.1 MVC模式 92.3.2 Java Servlet技术简介 92.3.3 XML的应用 11第3章 网络故障管理专家系统的分析与设计 123.1 专家系统设计目标 123.2 专家系统系统结构及功能需求 123.3 专家系统需求分析 133.3.1 专家系统需求描述 133.4 专家系统功能模块 143.4.1 Web服务器模块 143.4.2 数据库模块 153.4.3 规则管理模块 163.4.4 告警服务器模块 173.5 本章小结 20第4章 网络故障管理专家系统的详细设计 224.1 网络故障管理专家系统的环境 224

9、.1.1 开发和运行环境 224.2 网络故障管理专家系统的具体实现 224.2.1 Web服务器模块 224.2.2 数据库模块的实现 244.2.3 规则管理模块 244.2.4 告警服务模块 264.3 项目中的难点 274.3.1 规则信息的收集 274.3.2 规则知识 294.4 本章小结 30第5章 结论 315.1 开发中遇到问题 315.2 设计中的不足之处 35致 谢 36参考文献 37毕业设计小结 38摘 要专家系统是一个具有智能特点的计算机程序,它的智能化主要表现为能够在特定的领域内模仿人类专家思维来求解复杂问题。因此,专家系统必须包含领域专家的大量知识,拥有类似人类专

10、家思维的推理能力,并能用这些知识来解决实际问题。它能解决特定领域的具体问题,但是需要大量与研究领域问题密切相关的知识;能对自身的工作过程进行推理,基于知识的问题求解方法,知识库与推理机分离等特点。本文关注的是网络故障管理专家系统,就是应用专家知识来判断和推理故障发生的原因等信息。着重进行了知识的采集,知识的存储,推理规则的制定等方面的研究。规则引擎(即知识引擎)采用的是基于Java的Jess规则引擎。整个设计的思路是:从系统的告警服务模块得到网络中的故障报警信息,通过在规则引擎中匹配规则,分析出故障的具体原因和处理方法。规则信息可以通过浏览器进行添加,修改和删除等操作。为了便于操作,规则使用标

11、准的XML格式来定义。这样系统的规则管理模块和规则推理模块都可以对规则进行灵活的操作。关键词:专家系统,SNMP,Jess,告警信息AbstractExpert System is a smart part of the computer program, and its intelligent to be able to mimic human experts in specific areas thought to solve complex problems. Therefore, the expert system must have a large number of experts

12、 knowledge in this field, and have similar reasoning ability with human thinking, and can use this knowledge to solve practical problems. It can solve the specific problems in specific areas, but needs a substantial amount of research areas closely related to the issue of knowledge, and it can work

13、on their own process of reasoning, knowledge-based problem solving methods, knowledge base and the inference of mutual separation, etc. This paper is concerned on network fault management expert system, which uses the expert knowledge and reasoning mechanism to determine the reasons for the failure

14、occurred, and other information. We focus on the acquisition of knowledge, storage of knowledge, reasoning and so on. Rules engine (that is, knowledge engine) uses a Java-based Jess rules engine. The whole design is in the idea: the trap information received from the network failure alarm module, ma

15、tch rules through the rules engine, and conclude the failure of the specific causes and treatment. Through the browser, user can add, edit and delete rules.In order to facilitate the operation, we use the standard rules of the XML format. This system of rules management module and rules reasoning mo

16、dule can be flexible in operating rules.KEY WORDS :Expert System,SNMP, Jess, Trap第1章 绪论1.1 设计的目的和意义网络管理包括故障管理、配置管理、安全管理、性能管理、计费管理等五大部分。其中故障管理是网络管理中最基本的也是最重要的功能之一。一个好的故障管理系统可以大大提高网络管理的工作效率。近年来,随着计算机网络规模的不断扩大,使得对整个网络的维护和操作变得相当复杂,一方面随着网络业务和网络规模的增加,对网管人员专业素质的要求也愈来愈高。另一方面,在网络的运营管理和维护中,当网络出现故障时,常常要求必须在最短的

17、时间内,正确地判断出网络故障所在的位置、故障的类型和引起故障的原因等,以便及时对故障进行修复。然而,在实际的网络中,一个故障的产生,往往会引发起多个告警事件。而且,随着网络的复杂性和应用水平的不断提高,告警的种类和数量会越来越多,这些告警中有许多是相互之间关联的。这样,就要求对众多的告警信息进行相关性分析,快速进行网络的故障诊断和定位。本课题的目的是构建一个应用于实际网络系统中的,可以进行实时网络故障检测及定位的管理系统。它通过不断添加新的规则来丰富故障管理专家知识库。1.2 专家系统发展情况简介随着计算机、人工智能技术的发展和应用,对智能化网络管理的要求愈来愈高。目前实现智能化故障管理系统的

18、技术有专家系统、神经网络、模糊理论等等。专家系统是人工智能应用研究最活跃和最广泛的课题之一,它是一个智能计算机程序系统,其内部具有大量专家水平的某个领域知识与经验,应用人工智能技术,根据某个领域一个或多个人类专家提供的知识和经验进行推理和判断,模拟人类专家的决策过程,以解决那些需要专家决定的复杂问题。虽然专家系统能够有效的模拟故障诊断专家完成故障诊断的过程,但是在实际应用中仍存在一定缺陷,其主要问题是知识获取的瓶颈问题、知识难以维护,以及不能有效的解决故障诊断中许多不确定因素,这些问题大大影响了故障诊断的准确性。神经网络是一种模拟人脑组织结构和人类认知过程的信息处理系统。它以其诸多优点,如并行

19、分布处理、自适应、联想记忆等,在智能故障诊断中受到越来越广泛的重视,而且已显示出巨大的潜力。神经网络方法虽然有利于克服专家系统的知识获取瓶颈、知识库维护困难等问题,但它不适于处理启发性知识。而且,由于神经网络技术本身不够完备,它的学习速度慢,训练时间长以及解释功能弱,从而影响了神经网络的实用性。在故障诊断中,故障与征兆之间的关系往往是模糊的,因而诊断结果也必然是模糊的随着模糊理论的发展及完善,模糊理论的一些优点逐步被重视,如模糊理论可适应不确定性问题;其模糊知识库使用语言变量来表述专家知识。但是它也具有维护困难,不具备学习能力的缺点。本课题采用的专家系统技术,主要是通过专家在分析,归纳总结故障

20、症状之后添加新的规则来获取新的知识。1.3 设计原理及规模介绍本设计是要构建一个具备推理功能的网络故障专家系统。它通过接收网络中发来的告警信息并匹配事先添加好的规则来判断故障的原因并得出故障处理的方案。本设计采用了基于Java的Jess规则引擎,采用分析特定网络设备的告警信息(本设计主要参考的是思科的设备)的方法来制定规则。主要的研究手段是通过官方网站及相关技术资料查找关于思科设备的告警信息,并总结出规律,制定规则。整个研究的实验期的网络设备包括一台管理站及一台作为被管理站的服务器,但该程序会应用于第四军医大学网络中心的部分网络中。第2章 理论分析2.1 SNMP技术及原理2.1.1 SNMP

21、原理1、 SNMP协议简单网络管理协议(SNMP)是Internet组织用来管理Internet的网络协议,随着Internet所使用的TCP/IP协议族成为事实上的互连协议标准,SNMP也成为计算机网络管理方面大家实际遵循的标准。在SNMP管理模型中有三个基本组成部分:管理者(Manager),被管理代理(Agent)和管理信息库(MIB)。管理站一般是一个单机设备或一个共享网络中的一员,它是网络管理员和网络管理系统的接口,能将网络管理员的命令转换成对远程网络元素的监视和控制,同时从网上所有被管理实体的MIB (管理信息库) 中提取出信息数据。作为管理站,它还必须拥有能进行数据分析、故障发现

22、等管理应用软件。整个管理站的管理工作是通过轮询代理来完成的。管理者可以通过SNMP操作直接与被管理代理进行通信,获得实时的设备信息,对网络设备进行远程配置管理或者操作;也可以通过对数据库的访问获得网络设备的历史信息,以决定网络配置变化进行操作。SNMP被管理代理指的是用于跟踪监测被管理设备状态的特殊软件或硬件,每个代理都拥有自己本地的MIB。实际上,SNMP的管理任务是移交给被管理代理来执行的。代理翻译来自管理站的请求,验证操作的可执行性,通过直接与相应的功能实体通信来执行信息处理任务,同时向管理站返回响应信息。MIB信息为网管中被管理的资源,而网络管理中的资源是以对象表示的,每个对象表示被管

23、理资源的某方面属性,这些对象形成了MIB库。每个MIB变量记录了每个相连网络的状态、通信量统计数据、发生差错的次数以及内部数据结构的当前内容等。网络管理者通过对MIB库的存取访问,来实现五大管理功能:性能管理、配置管理、安全管理、故障管理和计费管理。2、 SNMP的五种消息类型SNMP中定义了五种消息类型:Get-Request、Get-Response、Get-Next-Request、Set-Request和Trap。(1) Get-Request 、Get-Next-Request与Get-ResponseSNMP管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,

24、而SNMP代理则用Get-Response进行消息响应。Get-Next-Request用于和Get-Request组合起来查询特定的表对象中的列元素。如:首先通过下面的原语获得所要查询的设备的接口数:iso org(3) dod(6) internet(1) mgmt(2) mib(1) interfaces(2) ifNumber(2)然后再通过下面的原语,进行查询(其中第一次用Get-Request,其后用Get-Next-Request):iso org(3) dod(6) internet(1) mgmt(2) mib(1) interfaces(2) ifTable(2)(2) S

25、et-RequestSNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除设备或使某一个设备属性有效/无效等)。(3) TrapSNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生。本论文中的接收的Trap信息主要是指一些网络故障信息。SNMP管理信息库MIB。管理信息库MIB指明了网络元素所维持的变量(即能够被管理进程进行查询和设置的信息)。MIB给出了一个网络中所有可能的被管理对象的集合的数据结构。SNMP的管理信息库采用和域名系统DNS相似的树型结构,它的根在最上面,根没有名字。3、 管理信息库的对象命名举例对象命名树

26、的顶级对象有三个,即ISO、ITU-T和这两个组织的联合体。在ISO的下面有4个结点,其中的一个(标号3)是被标识的组织。在其下面有一个美国国防部(Department of Defense)的子树(标号是6),再下面就是Internet(标号是1)。在只讨论Internet中的对象时,可只画出Internet以下的子树,并在Internet结点旁边标注上1.3.6.1即可。 在Internet结点下面的第二个结点是mgmt(管理),标号是2。再下面是管理信息库,原先的结点名是mib。1991年定义了新的版本MIB-II,故结点名现改为mib-2,其标识为1.3.6.1.2.1,或Intern

27、et(1) .2.1。这种标识为对象标识符。图 2.1管理信息库对象名举例最初的结点mib将其所管理的信息分为8个类别。现在的mib-2所包含的信息类别已超过40个。应当指出,MIB的定义与具体的网络管理协议无关,这对于厂商和用户都有利。厂商可以在产品(如路由器)中包含SNMP代理软件,并保证在定义新的MIB项目后该软件仍遵守标准。用户可以使用同一网络管理客户软件来管理具有不同版本的MIB的多个路由器。当然,一个没有新的MIB项目的路由器不能提供这些项目的信息。这里要提一下MIB中的对象1.3.6.1.4.1,即enterprises(企业),其所属结点数已超过3000。例如IBM为11.3.

28、6.1.4.1.2,Cisco为1.3.6.1.4.1.9,Novell为1.3.6.1.4.1.23等。世界上任何一个公司、学校只要用电子邮件发往iana-mibisi.edu进行申请即可获得一个结点名。这样各厂家就可以定义自己的产品的被管理对象名,使它能用SNMP进行管理。2.1.2 AdventNet SNMP APIAdventNet snmp API开发包是由美国AdventNet, inc公司开发的一个专门用于处理管理站与被管理站之间传递的SNMP信息的一个开发包。它是可以用来创建跨平台的Java的SNMP网络管理程序和基于Web的SNMP网络管理Applet程序的一组组件。它的主

29、要特点是:1) 完全支持snmpv1,snmpv2c和SNMPv3的。2) MIB信息的装入。3) SNMP广播:广播SNMP数据包在整个网络中自动发现在网络中支持SNMP协议的设备。4) 提供高层次的bean组件,例如,snmptarget,snmptable,snmppoller,trapreceiver便于应用的开发。5) 数据库支持:提供可扩展存储的MIB定义和SNMPv3的配置数据在任何关联式资料库,例如,MySQL和Oracle(本程序所使用的数据库为Oracle)。6) MIB的浏览器:工具管理网络和系统组件。可以作为一个独立的应用程序来运行,也可以作为益而高基于Web浏览器的程

30、序来运行。还有其它的一些别的特点。2.2 规则引擎及规则2.2.1 规则引擎的简介和原理专家系统是人工智能的一个分支,它模仿人类的推理方式,使用试探性的方法进行推理,并使用人类能理解的术语解释和证明它的推理结论。专家系统有很多分类:神经网络、基于案例推理和基于规则系统等。规则引擎是基于规则的专家系统的一部分,基于规则的专家系统(Rule Based Expert System-RBES)是专家系统中很重要的一个分支。RBES包括三部分规则库,事实库(也叫做工作内存),推理引擎,结构如图2.2所示:图2.2 基于规则的专家系统的结构图和人类的思维相对应,规则引擎存在两者推理方式:演绎法(Forw

31、ard-Chaining)和归纳法(Backward-Chaining)。演绎法从一个初始的事实出发,不断地应用规则得出结论(或执行指定的动作)。而归纳法则是从假设出发,不断地寻找符合假设的事实。Rete算法是目前效率最高的一个Forward-Chaining推理算法,Drools项目是Rete算法的一个面向对象的Java实现。规则引擎的推理步骤如下:1、 将初始数据(fact)输入工作引擎。2、 使用类型匹配比较规则(rule)和事实(fact)。3、 如果执行规则存在冲突,即同时激活了多个规则,将冲突的规则放入冲突集合。4、 解决冲突,将激活的规则按顺序放入“议程”序列。5、 使用规则引擎执行“议程”序列中的规则。重复步骤2至5,直到执行完毕所有“议程”中的规则。2.2.2 Jess规则引擎同大多数专家系统工具一样,Jess的核心也是由事实库、规则库、

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1