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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

网络基于SNMP的网络拓扑结构发现.docx

1、网络基于SNMP的网络拓扑结构发现【关键字】网络毕业设计(论文)题 目 基于SNMP的网络拓扑结构发现 学院名称 计算机科学与技术学院 指导教师 谭 敏 生 职 称 教 授 班 级 2004级3班 学 号 335 学生姓名 刘 祺 摘 要 iiiAbstract iv第一章 绪 论 11.1 课题背景及意义 11.2 本文的研究目标及文章组织 21.2.1 研究目标 21.2.2 文章组织 3第二章 网络拓扑发现概述 42.1网络拓扑发现概述 42.1.1网络拓扑发现概念 42.1.2网络拓扑发现东西 42.1.3网络拓扑发现前的准备工作 42.1.4常用的网络拓扑发现技术 52.2 SNMP

2、协议介绍 82.2.1 SNMP的发展 82.2.2 SNMP的协议层次 92.2.3 SNMP管理模型 92.2.4 SNMP协议报文和通信原语 112.2.5 使用SNMP协议时所涉及的内容 13第三章 网络拓扑发现算法的研究 183.1 基本算法 183.2 基于ARP和SNMP的拓扑发现算法 193.3 使用DNS区域传输和广播Ping的拓扑发现算法 193.4 使用DNS区域传输和Traceroute的拓扑发现算法 203.5 使用Traceroute进行探测的拓扑发现算法 223.6 基于OSPF和SNMP的拓扑发现算法 243.7 骨干网拓扑发现算法 25第四章 基于SNMP的网

3、络拓扑发现算法的实现 274.1算法的原理 274.2 算法描述 314.2.1 算法中用到的MIB组 314.2.2 网络拓扑发现的流程 334.2.3 网络拓扑发现算法的实现 35第五章 基于Java技术的网络拓扑结构生成 385.1 基于Web和Java可视化的研究 385.1.1 层次型的可视化结构 395.1.2 Java Applet在系统中的应用 395.2 数据库的设计 405.3 拓扑结构可视化的实现 435.3.1 Java Applet的实现 435.3.2 可视化模块的实现 445.3.3 对数据库的访问 47基于SNMP的网络拓扑结构生成刘 祺南华大学计算机学院200

4、4级3班摘要:随着计算机网络技术的发展和Internet在全世界范围内的普及,计算机网络的规模变得日益庞大,网络结构也十分复杂,这使得人们对网络管理的需求越来越迫切。网络拓扑发现技术是网络管理中的一项基本功能。正确的网络拓扑信息和直观的网络拓扑图能够直接有效地为网络管理人员提供整体性的网络结构和状态。如何快速、准确地获取网络拓扑信息是当今各网络机构共同关注的问题。本文就是研究网络拓扑发现技术和构造网络拓扑图的技术。本文首先阐述网络拓扑发现的相关概念和原理,介绍了常用的可被用来进行网络拓扑发现的技术,并从负载、速度、准确性和使用范围等几个方面对各种技术进行了分析和比较,得出以基于SNMP协议的网

5、络拓扑发现技术速度最快,使用范围也最广泛。利用SNMP协议分析MIB库中的路由表、接口表等有关变量,从而得到网络拓扑图的有关信息。最后,以java为工具.构造网络拓扑图。关键词:SNMP;MIB;Java;网络拓扑发现;网络拓扑发现算法 Abstract: With the development of the technology of computer networks and the worldwide popularity of internet,the scale of computer networks is getting bulky and the structure of n

6、etwork is becoming more complex. Therefore clients demand of Network Management becomes more urgent. Topology discovery is a kind of important function of the network management. Correct topology information can provide the whole network structure and states to network administrator directly and eff

7、ectively. It is a common issue for those net work institutes to discover and obtain network topology information quickly and accurately. The purpose of this thesis is to study the technique of topology discovery, then improve on the question of algorithms and implement an accurate and effective topo

8、logy information discovery module.This paper introduces the related knowledge, concept and commonly-used technology about network topology discovery and makes an analysis and synthetic comparison among them from the subject of load, speed, accuracy and applied scope, the algorithm of network topolog

9、y discovery based on SNMP is the most fast and widely applied. The method uses some M IB variables such as ipRouting table and interface table to analyze the network topology. At last, using java as tool construct network topology map.Key Words:SNMP; MIB; Java; Network Topology Discovery; Algorithm

10、of Topology Discovery第一章 绪 论1.1 课题背景及意义随着计算机及通讯技术的飞速发展,计算机网络已经渗透到社会经济生活的各个方面,对社会进步与经济发展起着越来越重要的作用,也使人们的工作甚至生活方式发生了巨大的变革。网络规模的激增,网络复杂性和异构性的焦点化,使得网络管理问题上升到了网络建设的战略性位置。网络管理,就是监视、组织和控制网络通信服务和信息处理所必需的各种活动的总称,确保网络长时间、正常的运行,并当其出现故障的时候尽快的发现、修复故障,使其最大限度的发挥其应有的效益1。在当今的信息化社会里,计算机网络的稳定和可靠运行可以说己经成为我们生活的一个基本保障。一个

11、完善的网络管理系统是计算机网络能够可靠和稳定运行的保证,也是进行网络性能分析、网络配置和安全管理等的依据。网络故障是影响网络性能的重要因素,网管软件应能对发生问题的网络进行故障检测、定位和诊断分析,然后向系统网络管理员提交网络故障分析报告,以便解决问题,提高网络可用性及服务质量。早期的网管系统大多采用命令行方式,这严重影响网管软件的可操作性,而现代网管软件通常都采用图形用户界面进行操作。网络拓扑的自动发现是实现网络拓扑图形显示的技术关键,而路径搜索是故障定位的重要内容。所谓拓扑发现(Topology Discovery)是指发现网络元素并确定网络元素之间的互连关系,包括互连设备(如路由器、网桥

12、、交换机等)、主机和子网。拓扑发现作为配置管理和失效管理中的一项重要功能,是网络管理的一个重要组成部分。拓扑发现同时也是衡量一个商业网络管理系统成败的重要尺度,在整个网络管理系统的开发中占有相当重要的地位。本论文的重点之一就是研究适合于中小型网络(如:校园网)的拓扑自动发现算法。网络拓扑图(Network Topology Map)是拓扑结构的可视化表现形式,拓扑发现生成的网络拓扑图可以帮助网络管理员掌握网络拓扑结构,迅速定位失效地点,确定失效影响的范围,还可以成为拾取网络元素并调用其它管理功能模块的共同出发点。随着WWW的出现,基于Web技术的网络管理成为网络管理的一种新的趋势,它使网络管理

13、不再需要地理位置、具体平台和专业技能等要求,从而给网络管理带来许多方便。目前,在网络管理标准中,主要有两大网络管理体系:ISO的CMIS/CMIP(公共管理信息服务及协议)和IETF的SNMP(简单网络管理协议),它们从不同的技术观点来看待网络管理问题。其中CMIP庞大、复杂,是一个大而全的协议,难以理解、不易实现,且使用时CMIP的资源占用量是SNMP的数十倍,所以并没有得到工业界的广泛支持l;而IETF的SNMP设计简单、易于实现,所以一经提出就得到了工业界的广泛响应,许多公司相继推出了基于SNMP协议标准的网络管理系统和产品,如SUN公司的SunNetManager,HP的OpenVie

14、w,IBM的NetView/6000等等。本文所研究实现的网络拓扑发现算法也是建立在SNMP协议基础上的。1.2 本文的研究目标及文章组织1.2.1 研究目标上面一节中已经说到在网络管理软件中,构造网络拓扑是一个重要功能,能否提供一个直观、全面的网络拓扑结构是网络管理的关键,在网络拓扑的构成过程中,会涉及这样几个问题: (1) 在实际网络系统中会涉及到不同的设备平台,彼此之间有不同的信息表示格式,如何通过一个较为通用的接口获取设备的拓扑信息; (2)需要哪些信息能够反映设备的连接状态; (3) 如何对获取到的拓扑信息进行进一步的处理,以直观的形式展现给用户。在目前网络运行中, SNMP (简单

15、网络管理协议) 得到了极为广泛的应用,主要的设备都能够支持该协议,同时该协议提供了极为丰富的MIB (管理信息库) 变量供网络管理使用。因此SNMP 成为获取网络信息的重要方式。图1.1 设计框架如图1.1所示,本文的研究目标是开发一个通过基于SNMP协议的网络拓扑发现算法来获取路由信息,对采集后信息进行分析后,利用java技术在web的环境中进行网络拓扑结构(网络拓扑图)生成的系统。1.2.2 文章组织本文首先在第二章中对网络拓扑发现的一些常用技术进行了简介,并着重介绍了SNMP协议的相关内容,第三章研究了基于不同协议的网络拓扑发现算法,第四章中介绍本系统的拓扑发现算法和实现技术,第5章介绍

16、了网络拓扑结构生成的实现。 第二章 网络拓扑发现概述确定个规模较大且经常变化的网络拓扑结构是很困难的,但准确的拓扑信息在网络管理方面起着很重要的作用,通过网络拓扑信息我们可以判断当前设备的配置是否合理,同时它也为网络故障的排除提供了重要的依据。2.1网络拓扑发现概述2.1.1网络拓扑发现概念网络拓扑发现就是探测网络拓扑机构信息,形象地描述网络设备间的互连关系。网络拓扑可表示为一张无向图G=(N,E),其中N是节点集,表示网络中的互连设备,有时候也可能是由这些设备组成的子网甚至是一个自治系统(Autonomous System);E是边集,表示这些设备或者网络之间的连接关系7。2.1.2网络拓扑

17、发现对象拓扑发现的对象分为两种,一种是设备的发现,包括:子网、路由器、交换机、主机、接口等,甚至网络本身也是发现对象;另一种是发现网络元素之间的物理布局与互连关系,其中包括路由器和路由器的连接、路由器和子网的连接、路由器和交换机的连接等。设备本身的互连关系构成了拓扑发现的所有内容。2.1.3网络拓扑发现前的准备工作网络拓扑发现需要明确的问题有几个方面:第一,需要确定拓扑发现要针对网络层次的哪一层。只有明确了网络的层次,才能明确到底什么样的信息需要采集,才能使算法有较好的适应性。第二,确定采用的是被动监测技术还是主动监测技术来采集网络拓扑信息。被动监测技术即在所有观测的网络中都加入一个探测器,其

18、优点是仅向网络管理主机递交各个网络的拓扑信息,无额外流量,负担小,但花费时间长。对大型网络来说,将探测器安装到所涉及的各个网络中并不实际。主动监测技术即网络管理主机向所有管理网络发探测包,采集返回信息,优点是速度快,缺点是产生流量大,对低速网络不太合适。第三,确定用何种方式收集信息。对于收集信息的方式,一种是采用网络管理信息协议来收集网络的信息,另一种是采用一种通用的协议来实现对于网络信息进行采集,利用ICMP、DNS等协议向网络上的设备发送消息包/接收消息包来获取网络拓扑信息,并且在对已有信息进行分析以及处理的基础上进一步获取更多的信息,从而可以收集到整个网络的拓扑信息。2.1.4常用的网络

19、拓扑发现技术1)PingPing是用于IP网络的最早的工具之一,用它来检查一个节点是否启动并运行以及测量它的往返时间,通常关联到源主机和目的主机3。这意味着我们能够使它来发现忽略下层网络的信息,在某些情况下这是理想的结果。例如当我们想要测量在几对节点之间通信的性能而不关心网络的其他部分时。Ping工具主要用于检测目的主机是否在网络中存活,Ping一个存活的主机回应的时间一般为微妙级或毫秒级,对一个关机的主机或不存在的主机,回应时间为205,这样就影响了ping的效率。另一个使用ping的途径是定向的广播ping。这意味着所发送的目的地址为一个子网的广播地址,这个子网的所有节点必须对这个广播pi

20、ng进行相应。这样有助于快速发现子网内所有的主机(通过保存对Ping做出回应的所有节点的IP地址)。但当前的网络中我们不能使用Ping的广播特性,因为这个特性是网络的一个安全漏洞,它可能被拒绝服务攻击所利用。2)Traceroute由Van Jacobson编写的TraceRoute程序是一个能更深入探索TCP/IP协议的方便可用的工具。尽管不能保证从源端发往目的端的两份连续的IP数据报具有相同的路由,但是大多数情况下是这样的。TraceRoute程序可以让我们看到IP数据报从一台主机到另一台主机所经过的路由。TraceRoute程序还可以让我们使用IP源路由选项。TraceRoute程序使用

21、ICMP报文和IP首部中的ITL字段(生存周期)。其原理如下:开始时,源主机将IP报文的TTL值设置为1,发送至目的主机,第一个路由器收到此报文后,将TTL值减1,丢弃此报文,并发送一个超时的ICMP报文给源主机,信源接收到此报文后,解析出第一个路由器的地址。然后,源主机将TTL为2的报文发送给目的主机,第一个路由器把它的TTL值减1后转发给第二个路由器,第二个路由器收到后再减1,报文TTL值变为0,该路由器丢弃此报文,并发送一个类型为超时的ICMP报文给源主机。这样就得到了第二个路由器的地址。如此循环下去,直至报文正确到达,源主机得到了通往目的主机的路由。通过Traceroute还能得到从源

22、主机到这条路径上任何一个节点的往返延时。Traccroute和Ping都有当目的节点不存在时时间延迟较大的缺点。并且当路径上的路由器对源节点发送的包不相应时,traceroute可能产生错误的结果。3)SNMP随着Internet的迅速发展,作为Internet标准的TCP/IP协议也在发展。TCP/IP技术是连接异构网络的有效工具,目前己经成为事实上的标准,这样基于TCP/IP的SNMP由于易于实现,也成了网络管理事实上的标准。每个设备的MIB中存储了设备所运行的进程、表现方式和可以读取的一切信息。利用SNMP协议,可以获得所需的设备信息,根据这些信息来构造网络拓扑关系。笔者将在后面对该协议

23、进行详细的介绍。4)DNS一个域的域名服务器(DNS)维持该域内的每个名字到其IP地址的绑定。大多数域名服务器通过“区域传输”命令返回该域内名字的列表。由此理论上DNS的域转换可以发现域内的所有主机和服务器。这种技术快速、准确、开销小。但是发现不准确,因为用DHCP获取IP地址的主机并没有DNS服务,而且,有的网络因为安全原因关闭了DNS域转换服务1。5)ARP地址解析协议(ARP)在IP地址和物理地址之间做映射。ARP协议是一个基础协议,它的运行对于应用程序或系统管理员来说一般是透明的9。有以下优点:第,ARP是动态的。之所以称为动态的是因为这个过程是自动完成的,一般应用程序用户或系统管理员

24、不必关心。第二,ARP是一个标准并且对每个支持TCP/IP的设备都可用,与链路协议无关。第三,ARP可用于IP子网,提供在一个路由Intemet中设备间通信非常简单的方法。6)其它技术路由信息协议(RIP)RIP协议是一种距离向量路由协议,它要求路由器每个节点存放到各个目标节点的距离。距离指到达目标节点所经过的跳数。RIP要求所有或部分路由器侮隔30秒向相邻路由器发送自己完整的路由表,同时接收其他相邻路由器发送来的路由表项更新报文,将其距离值与其本身的路由表进行比较更新。每个路由表项设定相应的定时器,若在六个路由器广播周期内没有收到该路由表项的更新报文,则认为该路由表项失败,并在240秒后将其

25、从路由表中删除。利用RIP协议,可以从路由器设备中提取通过该设备的所有IP地址或IP子网的路由信息表,构造出拓扑信息连接表,但RIP没有子网地址的概念,没有端口级的拓扑连接信息3。并且要求所有的路由器支持RIP协议。开放最短路径优先(OSPF)协议OSPF是除RIP外的另一个内部网关协议,运行在一个自治系统中,与采用距离向量的RIP协议不同的是,OSPF是一个链路状态协议。距离向量的意思是 RIP发送的报文包含一个距离向量(跳数)。每个路由器根据它所接收到邻站的这些距离向量来更新自己的路由表。在一个链路状态协议中,路由器并不与其临站交换距离信息。它采用的是每个路由器主动地测试与其邻站相连链路的

26、状态,将这些信息发送给它的其他邻站,而邻站将这些信息在自治系统中传播出去,每个路由器接收这些链路状态信息,并建立起完整的路由表6。通过访问自治系统每个区域中某个路由器相关的OSPF路由表信息,可以构造整个自治系统的网络拓扑图。对以上网络拓扑发现的各种技术的分析比较如下表2.1,从这张表中可以看出,网络拓扑发现的各种技术各有利弊。表2.1各种拓扑发现技术的比较PingTracerouteSNMPDNSARPOSRF RIP适用性所有网络域所有网络域多数网络域少数网络域所有网络域少数网络域网络负载低高低低低低速度慢慢快快快快准确性较准确较准确较准确较准确较准确准确2.2 SNMP协议介绍由于本论文

27、是基于SNMP协议下的,所以笔者在这里着重的介绍一下SNMP。SNMP(简单网络管理协议)是目前最流行的一个网络管理协议。作为应用层上的协议,它主要通过一组Internet协议及其所依附的资源提供网络管理服务。利用SNMP管理工作站可以远程管理所有支持这种SNMP的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。2.2.1 SNMP的发展SNMP在1989年作为基于TCP/IP互联网的一个标准而被广为接收和采用。1991年发布了SNMp的一个补充RMON(Remote Network Monitoring:远程网络监控)。RMON扩充了SNMP的功能,包括对LAN的管理以及对

28、依附于这些网络的设备的管理。1993年,SNMP的改进版SNMPv2开始发布,自此,原来的SNMP便被称为SNMPvl。最初的SNMPv2最大的特色是增加了安全特性,因此被称为安全版的SNMPvl。但不幸的是,经过儿年试用,SNMPv2并没有得到厂商和用户的积极响应,并且也发现自身还存在一些严重缺陷,因此,在1996年正式发布的SNMPv2中,安全特性被删除了。这样,SNMPv2对SNMPvl的改进程度便受到了很大的削弱。总的来讲,SNMPv2对SNMPvl的改进主要包括以下三个方面:支持分布式管理、改进的管理信息结构(SMI)和增强了管理信息通信协议的能力。最后,在1998年发布了SNMPv

29、3,它定义了SNMP的安全性以及将来改进的总体结构,在SNMPv3介绍文档中对SNMPv3的表述为:SNMPv3等于SNMPv2加上安全和管理。SNMPv3预定于SNMPv2一起使用,但也可以和SNMPv1一起使用1。2.2.2 SNMP的协议层次简单网络管理协议(SNMP)是一个应用层的协议,它用于实现网络设备之间管理信息的交换。使用SNMP来访问网络设备的MIB数据库,网络管理员可以迅速发现影响网络性能的问题并解决问题1。SNMP工作于UDP协议之上,因此使用它在主机间通讯时无需先建立连接。这种方法降低了系统开销,但对报文到达的正确性不做保证。SNMP将管理问题分为两个部分,并为每个部分定

30、义了标准。第一部分是有关信息通信规则的,协议定义了管理机上的客户软件如何与代理通信,同时定义了管理机与代理交换消息的格式和含义以及名字与地址的形式。第二部分有关被管理的数据,协议定义网络设备必须保存的数据项和每个数据项的名字以及用于表示名字的语法。2.2.3 SNMP管理模型SNMP的网络管理模型如图2.1所示,包括四个关键元素1:图2.1 SNMP管理模型l)管理工作站:一般是一个单机设备或者是一个共享网络中的一员。无论是哪种情况,管理站都是管理者作为网络管理员与网络管理系统的接口。2)管理代理:当前主流路由器、交换机等设备现在都支持SNMP操作,即对来自管理站的SNMP信息查询和请求做出响

31、应,同时还可能异步的通过Trap操作主动向管理站提供一些重要的非请求信息。3)管理信息库:描述了所有可以由SNMP管理的信息的集合,其中每个信息元素都称为一个对象。任何支持SNMP协议的代理都应该能够对MIB中定义的对象的信息的查询做出响应,任何使用SNMP协议的网络管理站也都应该知道它能够从代理那里得到的信息都在MIB定义的范围内。4)网络管理协议:管理站和代理之间是通过SNMP网络管理协议连接的,SNMP协议是一个应用层协议,使用网络层提供的UDP传输服务来传递消息、,标准的代理监听端口为161。当一个网管应用要求得到代理端的信息的时候,它就向SNMP核心进程提出这个请求,核心进程从本地的

32、MIB中得到所需的对象的信息,然后构造SNMP请求报文,最后将此报文使用UDP协议发送到代理进程的161端口上。代理进程在收到这个请求后,访问其本地的MIB库以取出管理站所需信息,然后构造SNMP响应报文,最后使用UDP协议将此报文发送给管理站。管理站的SNMP核心进程再将得到的信息传递给管理站上的网管应用就完成了一次信息交换。2.2.4 SNMP协议报文和通信原语1)SNMP协议报文(l)SNMP协议的报文格式如下1:图2.2 SNMP报文格式(2)一个SNMP实体传递一个报文给另一个SNMP实体的过程:首先,利用上面的格式,构造一个PDU。其次,连同源地址、目的地址和共同体名,将该PDU传给认证服务,由认证服务进行必要的数据转

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

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