(计算机应用技术专业论文)基于snmp的网络拓扑发现算法研究.pdf_第1页
(计算机应用技术专业论文)基于snmp的网络拓扑发现算法研究.pdf_第2页
(计算机应用技术专业论文)基于snmp的网络拓扑发现算法研究.pdf_第3页
(计算机应用技术专业论文)基于snmp的网络拓扑发现算法研究.pdf_第4页
(计算机应用技术专业论文)基于snmp的网络拓扑发现算法研究.pdf_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉科技大学硕士学位论文第1 页 摘要 随着计算机和通信技术的发展,计算机网络作为信息社会的基础设施渗透到了社会的 各个方面。网络管理技术正是伴随着计算机网络及通信技术的发展而发展的。一个有效的 网络离不开一个高效的网络管理策略,而一个好的网络管理系统首先就是要掌握整个管理 网络的拓扑结构,网络拓扑结构的自动发现是进行网络管理和性能分析的先决条件。网络 拓扑发现主要分为两个层次:( 1 ) 网络层拓扑发现,包括发现路由器与路由器及路由器与 子网之间的连接;( 2 ) 物理层拓扑发现,包括发现交换机与交换机及交换机与主机之间的 连接。 本文集中对基于s n m p 的网络拓扑发现算法进行了分析和研究,并设计出了网络层拓 扑发现算法,实现了网络层的拓扑发现。文中首先阐述了网络拓扑发现的相关概念和原理, 然后进一步介绍了基于s n m p 的网络拓扑发现算法的理论基础,并深入分析了基于s n m p 的网络拓扑发现的三种算法,总结出它们的优点和缺点,然后结合三种算法的优点,进而 提出一种更先进的算法。最后,详细描述了网络层拓扑发现算法的实现,并通过测试,证 实了算法的准确性和有效性。 关键词:简单网络管理协议;网络管理;生成树协议;路由表 第1 i 页武汉科技大学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to fc o m p u t e ra n dc o m m u n i c a t i o n st e c h n o l o g y , c o m p u t e rn e t w o r k w h i c hb e i n ga st h ei n f r a s t r u c t u r eo fi n f o r m a t i o ns o c i e t yh a si n f i l t r a t e de v e r ya s p e c to fs o c i e t y a c c o m p a n i e db yt h ed e v e l o p m e n to fc o m p u t e rn e t w o r ka n dc o m m u n i c a t i o nt e c h n o l o g y , n e t w o r k m a n a g e m e n tt e c h n o l o g yh a sa l s ob e e nd e v e l o p e d a ne f f e c t i v en e t w o r kc a nn o td ow i t h o u ta n e f f i c i e n ts t r a t e g yo fn e t w o r km a n a g e m e n t ,m e a n w h i l e ,ag o o dn e t w o r km a n a g e m e n tm u s tk n o w t h ew h o l en e t w o r kt o p o l o g yf i r s t ,s on e t w o r kt o p o l o g y sa u t o m a t i cd i s c o v e r yi st h ep r e c o n d i t i o n o fn e t w o r km a n a g e m e n ta n dp e r f o r m a n c ea n a l y s i s n e t w o r kt o p o l o g yd i s c o v e r yc a nb ed i v i d e d i n t ot w op a r t s :f i r s t ,n e t w o r kl a y e rt o p o l o g yd i s c o v e r y , i n c l u d i n gt h el i n kb e t w e e nr o u t e r so rt h e l i n kb e t w e e ns u b - n e t w o r k sa n dr o u t e r s ;s e c o n d ,p h y s i c a ll a y e rt o p o l o g yd i s c o v e r y ,i n c l u d i n gt h e l i n kb e t w e e ns w i t c h e so rt h el i n kb e t w e e ns w i t c h e sa n dh o s t s i nt h i st h e s i s ,t h ea l g o r i t h m so ft h es n m p - b a s e dn e t w o r kt o p o l o g yd i s c o v e r yi sa n a l y z e d a n ds t u d i e d ,a c c o r d i n gt h a t ,d e s i g na n di m p l e m e n t a t i o no ft h ea l g o r i t h mf o rn e t w o r kt o p o l o g y d i s c o v e r ya r ep r o p o s e d f i r s t l y , t h er e l e v a n tc o n c e p t sa n dp r i n c i p l e sa b o u tn e t w o r kt o p o l o g y d i s c o v e r ya r ei n t r o d u c e d ,t h et h e o r yf o u n d a t i o no ft h en e t w o r kt o p o l o g yd i s c o v e r yb a s e do n s n m pi sc o n c l u d e d ,t h e n ,t h r e ea l g o r i t h m so ft h en e t w o r kt o p o l o g yd i s c o v e r yb a s e do ns n m p a r ea n a l y z e d ,a tt h es a m et i m e ,a d v a n t a g e sa n dd i s a d v a n t a g e sa r ep o i n t e do u t ,a ni m p r o v e d a l g o r i t h mi sp u tf o r w a r dw h i c hc o m b i n e st h ea d v a n t a g e so ft h et h r e ea l g o r i t h m s f i n a l l y , t h e i m p l e m e n t a t i o no ft o p o l o g yd i s c o v e r yf o r n e t w o r kl a y e ra r ed e s c r i b e di nd e t a i l ,a n dt h e a c c u r a c ya n da v a i l a b i l i t yo ft h ea l g o r i t h ma r ea p p r o v e db y t e s t k e y w o r d s :s i m p l en e t w o r km a n a g e m e n tp r o t o c o l ;n e t w o r km a n a g e m e n t ;s p a n n i n gt r e e p r o t o c o l ;r o u t i n gt a b l e 武汉科技大学 研究生学位论文创新性声明 本人郑重声明:所呈交的学位论文是本人在导师指导下,独立进行研 究所取得的成果。除了文中已经注明引用的内容或属合作研究共同完成的 工作外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果。 对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 论文作者签名:”m 日期:趔$ :蔓i o 研究生学位论文版权使用授权声明 本论文的研究成果归武汉科技大学所有,其研究内容不得以其它单位 的名义发表。本人完全了解武汉科技大学有关保留、使用学位论文的规定, 同意学校保留并向有关部门送交论文的复印件和电子版本,允许论文被查 阅和借阅,同意学校将本论文的全部或部分内容编入有关数据库进行检索。 论文作者签名:至竺垦兰鱼 指导教师签名:已蔓堡! 篷呈 日 期:竺墨:蔓! ! 武汉科技大学硕士学位论文第1 页 1 1 课题背景及意义 第一章绪论 随着计算机和通信技术的发展,计算机网络作为信息社会的基础设施渗透到了社会的 各个方面。网络管理技术正是伴随着计算机网络及通信技术的发展而发展的。一个有效的 网络离不开一个高效的网络管理策略;另一方面,计算机和通信技术的发展又反过来刺激 和促进了网络管理的发展。今天,人们已经清楚的意识到,计算机网络的运行管理是计算 机网络领域中的关键技术之一,特别是大型计算机网络的建设,更应该把网络的管理和运 行作为十分重要的建设内容。网络管理,就是监视、组织和控制网络通信服务和信息处理 所必需的各种活动总称,确保网络长时间正常的运行,并当其出现故障的时候尽快的发现、 修复故障,使其最大限度的发挥其应有的效益i 。 而一个好的网络管理系统首先就是要掌握整个管理网络的拓扑结构,因此作为网络管 理的重要组成部分的网络拓扑发现对于异构的、多样的和多变的网络来说日益显示出其重 要性。在网络发展的最初阶段,网络拓扑和组成是在设计网络时就已经确定,进行网络配 置和故障定位等都是人工输入并依赖于管理人员的经验判断。如今随着网络技术的迅速发 展,网络规模越来越大,结构也越来越复杂,而其功能也越来也强。网络管理已经成为网 络系统运行好坏的关键。网络的实时监测和控制需要一种有效的工具,以利于管理人员及 时地了解网络的结构和网络设备的运作情况,同时进行管理信息的获取、定位故障等管理 操作。这样,网络拓扑发现和拓扑生成作为配置管理的核心与故障管理的基础,在整个网 络管理系统的开发中占着重要的地位【2 j 。 网络管理系统中网络拓扑发现的功能就是用于发现网络的拓扑结构,即网络中的所有 元素,同时还兼有信息搜集功能。作为网络管理系统功能开发的基础,网络拓扑发现的目 的是提供网络运行视图,提供网络管理中的配置管理、故障管理的重要手段。拓扑发现生 成的网络拓扑图可以帮助网络管理员清晰地掌握网络拓扑结构,迅速定位故障发生地点, 确定故障影响的范围,还可以成为发现网络设备并调用其它管理功能模块的共同出发点。 拓扑发现同时也是衡量一个商业网络管理系统成败的重要尺度,在网络管理系统的开发中 占着相当重要的地位。另外网络拓扑发现在网络特性研究、模拟网络、网络优化方面都有 着广泛的应用。 。 因此,适应当前国内外网络管理和国际上网络信息安全的需要,研究高效的网络拓扑 发现方法,对开发具有自主知识产权的网管产品,保证网络运行有效、安全具有重要的意 义和价值。 本论文正是在这个背景下进行选题,目的是对网络管理功能领域的网络拓扑发现算法 进行研究,并结合现有的设备与资源对研究内容进行实现。 本论文所提及的网络元素包括路由器、子网和子网内的网络设备。网络拓扑发现是人 第2 页武汉科技大学硕士学位论文 们探测和研究网络的一个重要方面,它是配置管理的核心,故障管理的基础,它对于网络 管理、不同流量模式下的网络行为研究、下一代网络协议的设计等有着重要的意义: 首先,网络拓扑连接图为网络管理人员提供了一个了解全局网络连接情况的直观手 段。通过网络拓扑图,网络管理人员可以对整个网络进行整体上的把握。在生成网络拓扑 图之前,首先要收集网络拓扑的各种信息。 其次,服务器定位网络拓扑信息可帮助用户确定自身在网络中的位置,从而确定服务 器的位置,以及选择哪一个网络服务提供商可以将时延减少、可利用带宽最大化。 最后,网络拓扑发现对于网络流量检测有很大的作用,其本身就是网络流量的一个重 要组成部分。网络拓扑发现对于测量方案的设计,测量站点的布置也起到重大的作用,它 可以帮助分析测量方案是否合理,确定测量站点的数目及其具体位置p j 。 1 2 国内外研究现状 目前国内外对于网络拓扑自动发现的研究中,有大量的研究工作着重于发现i p 网络层 的拓扑结构,构建路由器与路由器以及路由器与子网之间的连接关系,并对此提出了相应 的方法: m e r c a t o r 算法 c o r n e l l 大学的c n r g 工作组 c a i d a 组织的s k i t t e r 近期,国外在物理拓扑自动发现【4 5 】的研究工作已经开展了一些。i n t e r n e t 工程特别小 组( i n t e m e te n g i n e e r i n gt a s kf o r c e ,i e t f ) 在意识到物理拓扑发现的重要性后,指定了s n m p m i b ( m a n a g e m e n ti n f o r m a t i o nb a s e ) 库t6 。,但是并没有定义任何通用的协议和算法用于获得 物理拓扑信息。一些硬件制造商,如c i s c o 公司,开发了用于发现物理拓扑的私有协议 c d p ( c i s c od i s c o v e r yp r o t o c 0 1 ) 7 1 以及相关工具,但是c d p 只适用于自动发现c i s c o 公司的 网络设备,不具有通用性。p e r e g r i n e 公司的i n f r a t o o l s 软件【8 j 和m i c r o m u s e 公司的n e t c o o l 9 j 据称可以支持物理拓扑的自动发现,但这些公司的独有技术是我们不可得知的。 国内有关网络拓扑发现的研究开始于本世纪初,比如,国家自然科学基金重点项目“基 于网络探测的i p 网络拓扑发现和性能分析”,国家重大基础研究发展规划项目“网络环境 下海量信息组织与处理的理论与方法研究 中的“基于先进网络的大型网络管理示范系统” 课题。但是这些研究主要集中于发现i p 网络管理域内的逻辑拓扑。郑海【l o j 等人的物理拓 扑发现算法需要通过在网络中产生额外流量来保证网络中每一个节点地址转发表的完整。 因此可以说,国内在网络拓扑发现方面的研究还刚刚起步。 对于物理网络拓扑的发现,主要是利用a r p 协议和i c m p 协议来发现局域网中的设备。 s n m p 的出现也为物理网络拓扑发现算法提供了有力的工具,h w a c h u nu n 等人在参考文 献【1 1j 中利用b r i d g em i b ( r f c1 4 9 3 ) 的地址转发表来获取交换机的连接信息,但是该方法的 准确性不高。y u r ib r e i t b a r t 等人在参考文献1 1 2 j 中也提出了一种基于b r i d g em i b 的拓扑发现 算法,并给出了严格的数学证明,但是该方法对网络环境要求太高,在实际网络中难以实 武汉科技大学硕士学位论文第3 页 现。之后,b r u c el o w e k a m p i u j 、郑海【1 4 j 等人改进了y u r ib r e i t b a r t 的算法,使得算法对网络 环境的要求显著降低。 目前对于物理网络拓扑发现算法f 1 5 - 2 2 j 的研究,主要有:( 1 ) 基于端口流量的物理网 络拓扑发现算法,通过交换机端口的流量来判断交换机之间的连接关系。( 2 ) 基于地址 转发表的物理网络拓扑发现算法,通过获得交换机的地址转发表来得到交换机之间的连接 关系。( 3 ) 基于网桥生成树协议的物理网络拓扑发现算法,对于支持生成树协议的交换 机,通过生成树算法快速生成一个反映交换机之间关系的单路径树。目前这几种算法都要 求网络中的交换机设备支持并开放s n m p j 艮务。 1 3 本文研究内容及目标 研究内容:( 1 ) 网络管理以及网络拓扑的理论知识;( 2 ) 基于s n m p 的网络拓扑发现 算法的理论基础;( 3 ) 基于s n m p 的网络拓扑发现的基本方法;( 4 ) 基于s n m p 的网络层 拓扑发现算法的设计与实现。 研究目标:( 1 ) 理论上研究出一种更新的,更完善的基于s n m p 的网路拓扑发现的算 法;( 2 ) 对改进的算法进行测试,证实这种新算法的可靠性、准确性、效率以及适应性。 1 4 本文结构安排 本文分为六章,各章内容组织如下: 第一章简要介绍了网络拓扑发现算法的研究背景及意义,分析了国内外的研究现状, 并介绍了本文的研究内容、目标以及结构安排。 第二章介绍了网络拓扑发现以及网络管理的相关知识,其中包括网络管理的概念和 结构,网络拓扑发现在网络管理中的作用,网络拓扑发现的概念、对象以及发现前的准备 工作。 第三章介绍了网络拓扑发现算法的理论基础,其中包括简单网络管理协议、管理信 息结构、管理信息库以及生成树协议。 第四章深入分析了三种基于s n m p 的网络拓扑发现算法, 点,并在此基础上提出了一种改进的算法。 第五章设计与实现了基于s n m p 的网络层拓扑发现算法, 试,验证了算法的有效性。 第六章总结了本文的相关工作以及还有待解决的问题。 总结出了三种算法的优缺 并在现有的设备上进行测 第4 页武汉科技大学硕士学位论文 第二章网络拓扑发现及网络管理概述 确定一个规模较大且经常变化的网络拓扑结构是很困难的,但准确的网络拓扑信息发 现是网络管理的一个重要组成部分,是网络管理系统的基础,通过网络拓扑信息,我们可 以判断当前设备的配置是否合理,同时它也为网络故障的排除提供了重要的依据。 2 1 网络管理的概述 网络管理1 2 3 j 是指对网络的运行状态进行监测和控制,使其能够有效、可靠、安全、经 济地提供服务。网络管理包含两个任务,一是对网络的运行状态进行监测,二是对网络的 运行状态进行控制。通过监测可以了解当前状态是否正常,是否存在瓶颈和潜在的危机; 通过控制可以对网络状态进行合理调节或配置,提高性能,保证服务。监测是控制的前提, 控制是监测的目的。网络管理的目标是最大限度地增加网络的可用时间,提高网络设备的 利用率、网络性能、服务质量和安全性,简化多厂商混合网络环境下的管理和控制网络运 行的成本,并提供网络的长期规划。它可以在多厂商混合网络环境下通过提供单一的网络 操作控制环境来管理所有的子网和设备,以集中、统一的方式控制网络,排除故障和配置 网络设备。因此,先进的网络管理系统对于保持网络良好的运行状态显得越来越重要。主 要体现在1 2 4 】:( 1 ) 网络覆盖范围越来越大,节点越来越多;( 2 ) 网络对不同操作系统的兼 容性要求不断提高;( 3 ) 网络用户数目不断增加;( 4 ) 网络共享数据量剧增的发展趋势。 网络中具体的通信设备或者逻辑实体称为网络元素,简称网元。被管对象的集合被称 为管理信息库( m i b ,m a n a g e m e n ti n f l a t i o nb a s e ) 4 1 ,所有相关的网络被管对象信息都 放在其中。如何表示网络环境资源是网络管理的一个关键问题,目前一般采用m o ( m a i l a g e d o b i e c t ,被管对象) 来表示网络中的资源。m i b 并不是在实际网络中存在的数据库,仅是 一个概念上的数据库,目前网络管理系统的实现主要依靠被管对象和m i b 。 在网络管理中,一般采用管理者( 管理站,管理进程) 管理代理( 代理,代理进程) 的模型1 2 6 ,如图2 1 所示,他类似于客户机n 务器模式通过管理进程与一个远程进程系统 相互作用实现对远程资源的控制。网络管理者将管理要求通过管理操作指令传送给位于被 管系统中的管理代理,对网络中的各种设备、设施和资源实施监控,管理代理则负责管理 指令的执行,并且以通知的形式向网络管理者报告被管对象发生的一些重要的事件。 一般都认为现在计算机网络管理基本由网络管理者、被管节点、管理协议和网络管理 信息库四个基本的要素组成。 武汉科技大学硕士学位论文第5 页 图2 1 管理者管理代理模型 2 2 网络拓扑发现在网络管理中的作用 网络拓扑发现是网络管理系统的基础,能够分层显示运营网络的拓扑结构,并提供拓 扑节点的级联菜单。网络拓扑发现也为性能、告警、配置数据的处理提供支持,从而全面、 动态的反映网络的运行状况,为用户监视整个网络提供强有力的手段。 1 ) 网络拓扑自动发现工具 自动发现工具一般用于发现网络拓扑,识别网络中各种类型的设备。通常的方法是从 给定的网管出发,利用s n m p 、i p 协议族命令和系统探测技术等手段发现给定范围内的网 络设备以及它们之间的互连关系。网络拓扑自动发现的结果通常存放于数据库中,供系统 的其它功能模块使用。 拓扑图能够分层显示网络拓扑结构。网络监视基于拓扑图进行,拓扑图反映了网络实 际分布,从图标上可以看到相应设备的详细配置信息,并在相应部件上可获得较完整的配 置信息。 2 ) 基于网络拓扑图的管理 网络拓扑浏览:正确反映网元及网元之间的连接关系,并能够依据网元树图的拓扑图 导航功能顺利定位特定设备;可以根据需要把拓扑图切换到不同的网络视图,并在当前视 图和其它视图中查找指定的网元。 网络拓扑图监视:拓扑图系统在结合网络的性能数据和告警数据后,可以用于监视网 络设备的运行状态,反映网络设备配置的变更情况,及时呈现网元的告警信息和性能数据, 为网管人员提供直观的网络观察和及时处理的手段。 拓扑图编辑:提供网元隶属关系树,用来在拓扑图中手工添加网元;能够构造依附于 网元树的拓扑图的树形关系:可以自动构造包括选定的单个网元及其下属一层网元的网络 视图。 第6 页武汉科技大学硕士学位论文 2 3 网络拓扑发现概述 2 3 1 网络拓扑发现概念 网络拓扑发现就是探究网络拓扑机构信息,形象地描述网络设备间的互连关系。网络 拓扑可表示为一张无向图g = ,其中n 是节点集,表示网络中的互连设备,有时候 也可能是由这些设备组成的子网甚至是一个自治系统;e 表示边集,表示这些设备或者网 络之间的连接关系【1 1 。 2 3 2 网络拓扑发现对象 拓扑发现的对象分为两种,一种是设备的发现,包括:子网、路由器、交换机、主机、 接口等,甚至网络本身也是发现对象;另一种是发现网络元素之间的物理布局与互连关系, 其中包括路由器与路由器的连接、路由器与子网的连接、路由器和交换机的连接等。设备 本身的互连关系构成了拓扑发现的所有内容。 2 3 3 网络拓扑发现前的准备工作 网络拓扑发现需要明确的问题有如下几个方面: 第一,需要确定拓扑发现要针对网络层次的哪一层;只有明确了网络的层次,才能明 确到底什么样的信息需要采集,才能使算法有较好的适应性。 第二,确定采用的是被动监测技术还是主动监测技术来采集网络拓扑信息;被动监测 技术即在所有观测的网络中都加入一个监测器,其优点是仅向网络管理主机递交各个网络 的拓扑信息,无额外流量,负担小,但花费时间长。对大型网络来说,将探测器安装到所 涉及的各个网络中并不实际。主动监测技术即网络管理主机向所有管理网络发探测包,采 集返回信息,优点是速度快,缺点是产生流量大,对低速网络不太合适。 第三,确定用何种方式收集信息;对于收集信息的方式,一种是采用网络管理信息协 议来收集网络的信息,另一种是采用一种通用的协议来实现对于网络信息进行采集,利用 i c m p 、d n s 等协议向网络上的设备发送消息包接收消息包来获取网络拓扑信息,并且在 对已有信息进行分析以及处理的基础上进一步获取更多的信息,从而可以收集到整个网络 的拓扑信息。 武汉科技大学硕士学位论文第7 页 第三章网络拓扑发现算法的理论基础 3 1 简单网络管理协议( s n m p ) 介绍 随着网络的发展,网络管理的重要性越来越得到人们理解,i n t e m e t 网为了自身的管理 需求,制定了适用于自身网络的管理方案,以适应网络的发展需要。s n m p 协议便是在这 种情况下提出来的,经过几年的发展,s n m p 协议已经成为管理互联网的标准。 s n m p ( s i m p l e n e t w o r km a n a g e m e n tp r o t o c 0 1 ) 即简单网络管理协议,简单网络 管理协议是一种应用层协议,是t c m p 协议族的一部分,它使网络管理站和代理站之间 能方便地传递管理信息。s n m p 能够让网络管理员管理网络的性能,发现和解决网络问题。 它为网络管理系统提供了底层网络管理的框架。s n m p 协议的应用范围非常广泛,诸多种 类的网络设备、软件和系统中都有所采用,主要是因为s n m p 协议有如下几个特点: 第一,相对于其它种类的网络管理体系或管理协议而言,s n m p 易于实现。s n m p 的 管理协议、m i b 及其它相关的体系框架能够在各种不同类型的设备上运行,包括低档的个 人电脑到高档的大型主机、服务器、路由器以及交换机等网络设备。一个s n m p 管理代理 组件在运行时不需要很大的内存空间,因此也就不需要太强的计算能力。s n m p 协议一般 可以在目标系统中快速开发出来,所以它很容易在面市的新产品或升级的老产品中出现。 第二,s n m p 协议是开放的标准产品。只有经过i e t f 的标准议程批准( m t f 是l a b 下设的一个组织) ,才可以改动s n m p 协议;厂商们也可以私下改动s n m p 协议,但这样 做的结果很可能得不偿失,因为他们必须说服其他厂商和用户支持他们对s n m p 协议的非 标准改进,而这样做却有悖于他们的初衷。 第三,s n m p 协议有很多详细的文档资料( 例如r f c ,以及其它的一些文章、说明书 等) ,网络业界对这个协议也有着较深入的理解,这些都是s n m p 协议进一步发展和改进 的基础。 第四,s n m p 是一种无连接协议,无连接的意思是它不支持像t e l n e t 或f t p 这种专 门的连接,而是使用网络层提供的u d p 传输服务来传递信息。通过使用请求报文和返回 响应的方式,s n m p 在管理代理和管理员之间传送信息。这种机制减轻了管理代理的负担, 它不必要非得支持其它协议及基于连接模式的处理过程。因此,s n m p 协议提供了一种独 有的机制来处理可靠性和故障检测方面的问题。 第五,s n m p 协议可用于控制各种设备。比如说电话系统、环境控制设备,以及其它 可接入网络且需要控制的设备等,这些非传统装备都可以使用s n m p 协议。 正是由于有了上述这些特点,s n m p 协议已经被认为是网络设备厂商、应用软件开发 者及终端用户的首选管理协议。 另外,网络管理系统通常安装在一个比较大的网络环境中,其中包括大量的不同种类 的网络和网络设备。因此,为划分管理职责,应该把整个网络分成若干个用户分区,可以 第8 页武汉科技大学硕士学位论文 把满足以下条件的网络设备归为同一个s n m p 分区:它们可以提供用于实现分区所需要的 安全性方面的分界线。s n m p 协议支持这种基于分区名( c o m m u n i t ys t r i n g ) 信息的安全 模型,可以通过物理方式把它添加到选定的分区内的每个网络设备上。 3 1 1s n m p 的一些基本概念 我们在下面给出了一些s n m p 的概念,在这些概念中,有些虽然名称与o s i 管理的某 些概念相同,但正t f 对其进行了修改或重新定义【2 7 , 2 8 】。 代理( a g e n t ) :代理是在网络部件上的一个软件模块。它收集并维护这个网络部件的 管理信息。 被管理对象m o ( m a n a g e do b j e c t ) :一个m o 描述了网络部件的某一个可被管理的特 性。 管理信息库m i b ( m a n a g e m e n t i n f o r m a t i o nb a s e ) :概念上的一个存放被管对象的库。 管理信息结构s m i ( s t r u c t u r eo fm a n a g e m e n ti n f o r m a t i o n ) :定义了描述管理信息的规 则,i e t f 定义了一个a s n a 的子集,并用这个子集描述了s m i 。 管理站n m s ( n e t w o r km a n a g e m e n ts t a t i o n ) :负责执行网络管理任务的设备,通常是 一台工作站。 管理协议:管理协议是n m s 和代理之间通信所使用的网络协议。 3 1 2s n m p 管理模型 s n m p 的管理模型包含四个关键元素: s n m p 管理工作站; s n m p 管理代理者; 管理信息库m i b ; 网络管理协议。 图3 1 显示了s n m p 的管理模型【2 9 1 ,以及他们四者之间的关系和s n m p 所提供的五种 服务。 武汉科技大学硕士学位论文第9 页 s n m p 管理站s n m p 管理代理 图3 1s n m p 的管理模型 其中管理者是整个网络管理系统的核心,负责完成网络管理的各功能,如排除网络故 障和配置网络等。它一般位于网络中的一个主机节点上。代理一般有多个,分别位于网络 中的网络设备上,如r o u t e r ,s w i t c h 等等。代理则是负责监测所在网络部件的工作状况以 及此部件周围的局域网状况,收集有关网络信息。管理者应定期轮流询问各个代理以获得 其网络信息,并在此基础上进行分析,进而采取相应的措施。m i b 通常位于相应的代理上。 1 ) 管理工作站:一般是一个独立的设备,也可以是共享系统的一个能力。管理站被 作为网络管理员与网络管理系统的接口。它的基本构成为: 一个具有分析数据、发现故障等功能的应用程序。 六一个用于网络管理员监控网络的接口。 将网络管理员的要求转变为对远程网络元素的实际监控的能力。 六一个从所有被管网络实体的m i b 中抽取信息的数据库。 2 ) 管理代理者:一些关键的平台,如主机、网桥、路由器及集线器等可以装备s n m p 的代理者,从而使这些平台能够获得管理站的管理。代理者对来自管理站的信息请求和动 作请求进行应答,并异步地为管理站报告一些重要的意外事件。实际上是一个“守候”进 程,一方面随时记录网络设备的运行情况,并收集网络信息保存在管理信息库中;另一方 面处理来自于网络管理程序的查询,并做出反应,读取或修改m i b 中的变量值。 3 ) 管理信息库:管理网络资源的方法是将它们表示为对象。所谓对象是一个表示被 第1 0 页武汉科技大学硕士学位论文 管资源某一方面的属性,对象的集合被称为管理信息库m i b 。任何支持s n m p 协议的代理 都应该能够对m i b 中定义的对象的信息查询做出响应,任何使用s n m p 协议的网络管理 站也应该知道它能够从代理那里得到的信息都在m i b 定义的范围内。m i b 作为设在代理 者处的管理站访问点的集合,对象被标准化为跨越系统的类,管理站通过读取m i b 中对象 的值来进行网络监控。 4 ) 网络管理协议:管理站与代理之间是通过s n m p 网络管理协议连接的,s n m p 协 议是一个应用层协议,使用网络层提供的u d p 传输服务来传递信息,标准的代理监听端 口为1 6 1 。当一个网管应用要求得到代理端的信息的时候,它就向s n m p 核心进程提出这 个请求,核心进程从本地的m i b 中得到所需的对象的信息,然后构成s n m p 请求报文, 最后将此报文使用u d p 协议发送到代理进程的1 6 1 端口上。代理进程在收到这个请求后, 访问其本地的m i b 库以取出管理站所需信息,然后构造s n m p 响应报文,最后使用u d p 协议将此报文发送给管理站。管理站的s n m p 核心进程再将得到的信息传递给管理站上的 网管应用就完成了一次信息交换。 3 1 3s n m p 的5 种协议数据单元 s n m p 规定了5 种协议数据单元p d u ( 也就是s n m p 报文) ,用来在管理进程和代理 之间的交换。g e t r e q u e s t 操作:从代理进程处提取一个或多个参数值;g e t n e x t r e q u e s t 操作: 从代理进程处提取紧跟当前参数值的下一个参数值;s e t r e q u e s t 操作:设置代理进程的一 个或多个参数值;g e t r e s p o n s e 操作:返回的一个或多个参数值,这个操作是由代理进程发 出的,它是前面三种操作的响应操作;t r a p 操作:代理进程主动发出的报文,通知管理进 程有某些事情发生。 其中前面的3 种操作是由管理进程向代理进程发出的,后面的2 个操作是由代理进程 发给管理进程的,为了简化起见,前面3 个操作今后叫做g e t 、g e t n e x t 和s e t 操作。图3 2 描述了s n m p 的这5 种报文操作。其中,在代理进程端是用熟知端口1 6 1 来接收g e t 或s e t 报文,而在管理进程端是用熟知端口1 6 2 来接收t r a p 报文。 武汉科技大学硕士学位论文第1 1 页 s n m p 管理程序s n m p 代理程序 g e t - r e q u e s t g e t r e s p o u s e 7 f f d l 端口1 6 1 g e t n e x t r e q u e s t l r d t 端口1 6 1 g e t - z e s p o 璐e s e t - z e q u e s t 1 j i l p 端口1 6 1 g e t z e s p o 魄 trap i l b i 端口1 6 2 图3 2s n m p 的5 种报文操作 图3 3 是封装成u d p 数据报的5 种操作的s n m p 报文格式【1 1 。可见一个s n m p 报文 共有三个部分组成,即公共s n m p 首部、g e t s e t 首部及t r a p 首部、变量绑定。 图3 3s n m p 报文格式 ( 1 ) 公共s n m p 首部 共三个字段: 版本:写入版本字段的是版本号减1 ,对于s n m p ( 即s n m p v l ) 则应写入o 。 共同体( c o m m u n i t y ) :共同体就是一个字符串,作为管理进程和代理进程之间的 明文口令,常用的是6 个字符“p u b l i c ”。 p d u 类型:根据p d u 的类型,填入0 4 中的一个数字,其对应关系如表3 1 所示。 第1 2 页武汉科技大学硕士学位论文 表3 1p d u 类型 p d u 类型名称 g e t r e q u e s t g e t - n e x t - r e q u e s t g e t - r e s p o n s e s e t r e q u e s t t r a p ( 2 ) g e t s e t 首部 请求标识符( r e q u e s ti d ) 这是由管理进程设置的一个整数值,代理进程在发送g e t - r e s p o n s e 报文时也要返回此 请求标识符。管理进程可同时向许多代理发出g e t 报文,这些报文都使用u d p 传送,先发 送的有可能后到达,设置了请求标识符可使管理进程能够识别返回的响应报文对应于哪一 个请求报文。 差错状态( e r r o rs t a t u s ) 由代理进程回答时填入0 5 中的一个数字,见表3 2 的描述 表3 2 差错状态描述 差错索引( e r r o ri n d e x ) 当出现n o s u c h n a m e 、b a d v a l u e 或r e a d o n l y 的差错时,由代理进程在回答时设置的一 个整数,它指明有差错的变量在变量列表中的偏移。 ( 3 ) t r a p 首部 企业( e n t e r p r i s e ) :填入t r a p 报文的网络设备的对象标识符。 t r a p 类型:此字段正式的名称是g e n e r i c t r a p ,共分为表3 3 中的7 种。 武汉科技大学硕士学位论文第1 3 页 当使用上述类型2 、3 、5 时,在报文后面变量部分的第一个变量应标识响应的接口。 特定代硬- q ( s p e c i f i c c o d e ) :指明代理自定义的时间( 若t r a p 类型为6 ) ,否则为o 。 时间戳( t i m e s t a m p ) :指明白代理进程初始化到t r a p 报告的事件发生所经历的时间, 单位为l o m s 。例如时间戳为1 9 0 8 表明在代理初始化后1 9 0 8 m s 发生了该事件。 ( 4 ) 变量绑定( v a r i a b l e b i n d i n g s ) 指明一个或多个变量的名和对应的值。在g e t 或g e t n e x t 报文中,变量的值应忽略。 3 2 管理信息结构s m i 管理信息结构【删是管理信息库中对象定义和编码的基础。s m i 是在1 9 8 8 年首次定义 的,接着很快就达到了正式标准状态,在r f c l l 5 5 中发布。1 9 9 1 年发布的r f c l 2 1 2 和 r f c l 2 1 5 则用更加精确的宏格式来增强对象定义手段、增强陷阱机制的形式化。 s m i 用于描述m i b 中的对象,是对管理对象类型的公共结构和一般类型的描述,加上 对象标识方法,在实现中非常重要。s m i 中最关键韵原则是用抽象语法记法1 ( a s n 1 ) 1 3 1 】 来形式化定义管理对象。 s n m p 中,数据类型并不多。这里我们就讨论这些数据类型,而不关心这些数据类型 在实际中是如何编码的。 i n t e g e r 一个变量虽然定义为整型,但也有多种形式。有些整型变量没有范围限制,有些整型 变量定义为特定的数值( 例如,i p 的转发标志就只有允许转发时的或者不允许转发时的这 两种) ,有些整型变量定义一个特定的范围( 例如,u d p 和t c p 的端口号就从0 到6 5 5 3 5 ) 。 o c t e r s t r i n g o 或多个8 b i t 字节,每个字节值在0 - - - 2 5 5 之间。对于这种数据类型和下一种数据类型 的b e r 编码,字符串的字节个数要超过字符串本身的长度。这些字符串不是以n u l l 结 尾的字符串。 d i s p l a y s t r i n g 第1 4 页武汉科技大学硕士学位论文 0 或多个8 b i t 字节,但是每个字节必须是a s c i i 码。在m i b i i 中,所有该类型的变量 不能超过2 5 5 个字符( o 个字符是可以的) 。 o b j e c t i d e n t i f i e r 对象的名字,用点分十进制数字表示,反映了它在互联网全局命名树中的位置。 n u l l 代表相关的变量没有值。例如,在g e t 或g e t - n e x t 操作中,变量的值就是n u l l ,因为 这些值还有待到代理进程处去取。 i p a d d r e s s 4 字节长度的o c t e r s t r i n g ,以网络序表示的m 地址。每个字节代表i p 地址的一 个字段。 p h y s a d d r e s s o c t e r s t r i n g 类型,代表物理地址( 例如以太网物理地址为6 个字节长度) 。 c o u n t e r 非负的整数,可从0 递增到2 3 2 1 ( 4 2 9 4 9 7 6 2 9 5 ) 。达到最大值后归0 。 g a u g e 非负的整数,取值范围为从o 到4 2 9 4 9 7 6 2 9 5 ( 或增或减) 。达到最大值后锁定直到复位。 例如,m i b 中的t c p c u r r e s t a b 就是这种类型的变量的一个例子,它代表目前在 e s t a b l i s h e d 或c l o s ew a l t 状态的t c p 连接数。 t i m e t i c k s 时间计数器,以0 0 1 秒为单位递增,但是不同的变量可以有不同的递增幅度。所以在 定义这种类型的变量的时候,必须指定递增幅度。例如,m i b 中的s y s u p t i m e 变量就是这 种类型的变量,代表代理进程从启动开始的时间长度,以多少个百分之一秒的数目来表示。 s e q u e n c e 这一数据类型与c 程序设计语言中的“s t r u c t u r e ”类似。一个s e q u e n c e 包括0 个或 多个元素,每一个元素又是另一个a s n 1 数据类型。例如,m i b 中的u d p e n t r y 就是这种 类型的变量。它代表在代理进程侧目前“激活”的u d p 数量( “激活 表示目前被应用程 序所用) 。在这个变量中包含两个元素:i p a d d r e s s 类型中的u d p l o c a l a d d r e s s ,表示i p 地 址。i n t e g e r 类型中的u d p l o c a l p o r t ,从0 到6 5 5 3 5 ,表示端口号。 s e q u e n d e o f 这是一个向量的定义,其所有元素具有相同的类型。如果每一个元素都具有简单的数 据类型,例如是整数类型,那么我们就得到一个简单的向量( 一个一维向量) 。但是我们 将看到,s n m p 在使用这个数据类型时,其向量中的每一个元素是一个s e q u e n c e ( 结构) 。 因而可以将它看成为一个二维数组或表。 3 3 管理信息库m i b m i b ( m a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论