(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf_第1页
(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf_第2页
(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf_第3页
(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf_第4页
(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)以太网数据链路层网络拓扑发现算法研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 随着网络技术的飞速发展和广泛应用,计算机网络已经渗透到社会经济的 各个领域,对社会经济的发展起着越来越重要的作用。网络的规模口趋扩大, 网络结构口趋复杂,人们对网络管理系统的需求也变得越来越迫切。而网络拓 扑发现功能是整个网络管理系统的核心和基石,它的重要性显而易见。正确快 速的网络拓扑信息能直接有效地为网络管理员提供整体性的网络结构和状态。 如何高完备性、高健壮性、高准确性、高效率地快速自动发现并获取网络拓扑 信息是当今各网络研究机构共同关注的问题。网络拓扑发现的研究也由网络层 拓展到数据链路层链路层的拓扑发现能够发现网络层拓扑发现无法发现的局域 网内部的详细的物理连接情况本文主要对数据链路层拓扑发现进行研究。 首先,本文阐述网络拓扑发现的相关概念和原理,介绍了常用的可以被用 来进行网络拓扑发现的技术。通过对目前网络拓扑发现算法的研究,针对目前 的数据链路层拓扑发现算法对交换机地址转发库的完整性要求太高,在实际网 络环境中不容易实现,而且算法复杂度较高,对于不支持s n m p 协议的设备的 发现问题。提出改进算法,改进算法的理论基础是直接相连和问接相连定理, 它具有交换机的发现完备性并且可以对哑设备进行处理。该算法可以进行交换 机非叶端口与交换机直接相连判定:交换机非叶端口与哑设备直接相连判定以 及交换机叶端口与哑设备或路由器或主机直连判定。 改进算法降低了对网络环境的要求,放宽了原算法的发现条件: 1 不再要求交换机地址转发表完整。 2 哑设备可以在任何地方被发现,不再要求交换机必须和交换机直连。 3 给出的判定方法完善了原来算法对于交换机非叶端口与交换机直连的判 定。 改进后的算法,应用范围更广,适应性更强,更贴近实际环境。 其次,详细描述了拓扑发现模块的实现,本文设计并实现了一个完整的拓 扑发现系统,在该系统中实现了新提出的算法,并在真实的网络环境中对系统 进行了测试,验证了系统运行结果的正确性和算法的有效性。 摘要 最后,本文使用v i s u a lc + + 开发平台实现网络拓扑发现系统,详细分析了 使用w i n s n m pa p i 实现基于s n m p 的单子网拓扑发现,同时对拓扑分析和拓 扑图的修正技术也作了较细致的分析。 关键词:数据链路层;拓扑发现;地址转发表;简单网络管理协议s n m p i i a b s t r a c t a b s t r a c t w i t ht h er a p i dd e v e l o p m e n ta n dw i d ea p p l i c a t i o no fn e t w o r kt e c h n o l o g y , c o m p u t e rn e t w o r kh a sc o m ei n t oe v e r yf i e l do fs o c i e t ya n dp l a y sag r e a t e rr o l e i n s o c i a le c o n o m y m e a n w h i l ea st h es c a l eo fn e t w o r kh a sb e e ne x p a n d i n ga n di t s s t r u c t u r eb e c o m e sm o r ea n dm o r ec o m p l i c a t e d ,t h ed e m a n do fn e t w o r km a n a g e m e n t s y s t e mb e c o m e sm o r eu r g e n t t h en e t w o r km a n a g e m e n ts y s t e mi s b a s e do nt h e n e t w o r kt o p o l o g yi n f o r m a t i o nw h i c hi si m p o r t a n to b v i o u s l y t h ec o r r e c ta n d a d v a n c e dn e t w o r kt o p o l o g yi n f o r m a t i o nc a np r o v i d et h eh o l i s t i cn e t w o r ks t r u c t u r e a n ds t a t et on e t w o r km a n a g e r se f f e c t i v e l y i ti sac o m m o ni s s u ef o rt h o s en e t w o r k i n s t i t u t e st oa u t o m a t i c a l l yd i s c o v e ra n do b t a i nn e t w o r kt o p o l o g yi n f o r m a t i o nw i t h c o m p l e t e n e s s ,r o b u s t n e s s ,a c c u r a c ya n de f f i c i e n c y t h es t u d y i st r a n s f e r r e df r o m n e t w o r kl a y e rt od a t al i n kl a y e nt h el i n kl a y e rt o p o l o g yd i s c o v e r yc a nd i s c o v e rt h e p h y s i c a lt o p o l o g yi n t e r n a lal a n ,w h i c ht h en e t w o r kl a y e rt o p o l o g yd i s c o v e r yc a n n o td i s c o v e r t h i sp a p e rf o c u s e so nt h es t u d yo fv a r i o u sli n kl a y e rt o p o l o g yd i s c o v e r y a l g o r i t h m s f i r s t l y , t h i sp a p e r i n t r o d u c e st h er e l a t e dk n o w l e d g e 、c o n c e p t sa n d c o m m o n l y u s e dt e c h n o l o g ya b o u tn e t w o r kt o p o l o g yd i s c o v e r y t h r o u g hr e s e a r c h i n g o nt h ec u r r e n tn e t w o r kt o p o l o g yd i s c o v e r ya l g o r i t h m s ,t h i sp a p e rp r o p o s e st h r e e i m p r o v e dt h e o r e m sw h i c ha r eu s e dt o d e t e r m i n et h ec o n n e c t i o ns t a t eb e t w e e n e t h e m e td e v i c e s b a s e do nt h e s et h e o r e m sa ni m p r o v e da l g o r i t h mi si n t r o d u c e d c o m p a r e dw i t ht h eo r i g i n a la l g o r i t h m ,t h i si m p r o v e da l g o r i t h mc a nd i s c o v e r ym o r e d e v i c e s a n dc a nd e c r e a s e st h er e q u i r e m e n t so fa f to fs w i t c h e s f u r t h e r m o r e ,i tc a n d e t e c td u m bd e v i c e sa n dt h el i n kr e l a t i o n s h i p 、析mo t h e rd e v i c e sa r o u n dt h e m i tc a n b eu s e df o raw i d e rr a n g eo fa p p l i c a t i o n s ,a d a p t i v es t r o n g e rc l o s e rt ot h ea c t u a l c i r c u m s t a n c e s t h i sa l g o r i t h mc a nd i s c o v e rp h y s i c a ll a y e rt o p o l o g yi nas i m p l e , c o m p l e t ea n de f f i c i e n tw a y f u r t h e r m o r e ,t h ep a p e rd e s c r i b e st h er e a l i z a t i o no ft o p o l o g yd i s c o v e r ys y s t e m n e wa l g o r i t h mh a sb e e nu s e di n t ot h i st o p o l o g yd i s c o v e r ys y s t e ma n di t h a sb e e n i m p l e m e n t e da n dt e s t e di nt h er e a ln e t w o r k s i ti ss h o w nt h a tt h en e wa l g o r i t h mi s i i i a b s t r a c t e 丘i c i e n ta n da c c u r a t e f i n a l l y , t h et h e s i su s e st h ew i n s n m pa p it oa c h i e v et o p o l o g yd i s c o v e r i n g s y s t e m o nt h e d e v e l o p m e n tp l a t f o r m o fv i s u a lc + + a n dm i n u t e l y a n a l y s e s s u b n e t - l e v e lt o p o l o g yd i s c o v e r yt e c h n o l o g yb a s e do ns n m p t h et h e s i sa l s oa n a l y s e s t h et e c h n o l o g yo f a n a l y s i sa n dt o p o l o g yg r a p hm i n u t e l y t h e r ea r em a n yp o i n t sn e e dt ob ei m p r o v e di n t h i sr e s e a r c h t h el a s tc h a p t e r s u m m a r i z e st h ew h o l ew o r k ,a n dp o i n t so u tt h el a t e rw o r k k e yw o r d s :d a t a - l i n kl a y e r ;t o p o l o g yd i s c o v e r y ;a d d r e s sf o r w a r d i n gt a b l e ;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 o l i v 学位论文独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得直昌太堂或其他教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示谢意。 学位论文作者签名( 手写) :老芳桴签字日期: 冲眵月明日 学位论文版权使用授权书 本学位论文作者完全了解直昌太堂有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权直昌太堂可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编本学位论文。同时授权中国科学技术信息研究 所将本学位论文收录到中国学位论文全文数据库,并通过网络向 社会公众提供信息服务。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:鸯潞 辩醐:叶明1 日 导师签名: 签字日期:饥1 年4y 月y 7 日 第l 章绪论 第1 章绪论 1 1 研究背景及意义 随着计算机网络和通信技术的飞速发展,计算机网络已经渗透到了社会的 各个方面,正逐渐成为企q k 和商、j k 及口常生活中重要的工具。正是由于信息社 会对计算机网络的高依赖性,使得计算机网络自身运行的可靠性变得越来越重 要【1 1 。 网络拓扑发现作为网管系统中的一个重要组成部分,很多重要的网管任务, 都是以网络的拓扑结构为前提的【2 】。网络拓扑发现就是根据网络上节点连接情 况,将搜索到的网络设备及其之间的连接关系用图形的方式显示出来,使络管 理员可以全面的了解到网络的拓扑结构,有效的对网络设备进行监控和设置, 对网络中出现的状况进行分析,从而更好地对整个网络结构进行优化设计。 网络拓扑可以分为逻辑层和物理层。其中的逻辑层中人们研究最多的是网络 层的拓扑发现,算法较为成熟。 和网络层的拓扑发现相比,人们对物理链路层的拓扑发现方面的研究很少。 当今较为流行的拓扑发现软件都只是着重发现网络层的拓扑结构,而不能反映 子网内网络的复杂的连接关系。而在实际的网络环境中随着人们对带宽的要求 越来越高,子网中使用了越来越多的的交换机,使得逻辑层拓扑发现越来越不 能满足需求。随着大型局域网对子网的划分和隔离广播域的需求,虚拟局域网 技术、三层交换机等越来越多的被应用于大型局域网中,这也就使得网络管理 员由于缺乏链路层拓扑信息而很难查找、定位、排除交换局域网内部的网络故 障。 可见,物理层网络拓扑发现是当今的网络管理研究领域的热点方向之一, 具有广泛的现实应用前景。论文选题不仅有学术理论意义,还有现实应用价值。 1 2 国内外研究现状 由于早期的网络规模都较小,一般在建设网络的初期,都是由网管人员手 工绘制网络拓扑结构图,由于网络结构简单,所以该方式在当时还能满足需求 的。随着计算机网络的迅猛发展,网络的内部结构越来越复杂,网络的结构变 第l 章绪论 化也越来越大。仅凭借原始的手工绘制网络结构拓扑图已经是不现实的了。于 是人们开始了网络拓扑自动发现的研究。在网络层的拓扑发现中,已经形成了 一种成熟通用的算法,即通过访问路由器每个接口的路由表进行广度优先遍历, 从而发现所有路由器及其所连子网。如m e r c a t o r 算法,c o m e l l 大学的c n r g 工 作组,c a i d a 组织的s k i t t e r 5 j 等。而物理拓扑算法的研究却因为交换机的透明 性尚未有公认的算法形成。 近期,人们逐渐意识到物理拓扑获取的重要性,在国外的物理网络拓扑自 动发现的研究工作已经有了一些成果【6 ,1 7 1 ,虽然i e t f 指定了s n m pm i b 库【引,但 是对于物理拓扑信息的获取并没有形成任何通用的算法。国外较著名的成果有 b r e i b a r t 6 j 等人提出的一种仅仅依赖地址转发表a f t ( a d d r e s s e sf o r w a r d i n g t a b l e ) 的物理拓扑发现算法。该算法实现的前提是假设物理网络完全由交换机 组成,且要求获取到完整的地址转发表信息。如果网络中存在一些不支持s n m p 或者是没有分配管理i p 的网络设备也不能被发现。 尽管b r e i b a r t 的交换机互联定理有许多不足的地方,但后来许多相关研究者 的工作都是在此基础上进行的。如l o w e k a m p 等人在文献p j 中充分利用不完全 a f t 信息推测网络设备间的连接情况。同时也对子网中可能存在的的“哑设备” 的情况进行了处理。而b e j e r a n o 等人【l o j 则提出了一种更为完善的算法。此算法 先发现目标大型局域网中的一条主干链路,然后以此为基础来判断子网中的其 他物理路径。参考文献拶dl j 中涉及到的方法不能对冗余链路的情况进行处理。许 多商家自主开发的拓扑发现软件。如思科公司的c d p ( c i s c od i s c o v e r yp r o t o c 0 1 ) , b a yn e t w o r k 的o p t i v i t ye n t e r p r i s e 工具,。他们都是基于私有扩充的m i b 库,不 利于异构环境。且这些公司的许多技术是私有的。 国内这方面的研究起步较晚,中科院计算所的郑海i l l j 等人提出了能依赖不 完整的交换机a f t 来发现物理网络拓扑的算法,并且,随后他们在此基础上进 一步【1 2 】解决了子网中存在h u b 的判定情况,但同样都不能准确判定冗余链路的 存在。对冗余链路的判定,近几年国内有学者提出了基于s t p 的物理层拓扑发 现算法【l 引,由于各厂家对协议的实现方式存在差异,使得这种算法的准确性不 高。因此当今非常需要找到一个更为通用、准确、完备的物理层拓扑发现算法。 2 第1 章绪论 1 3 本文的主要工作 从前文可知,数据链路层拓扑发现还有许多有待解决的问题:首先子网中 由于哑设备的存在使得网络拓扑发现的结果不完全,先前的算法对冗余链路的 判定也不准确;其次,由于局域网子网内部设备越来越多,结构越来越复杂使 得物理层拓扑发现的难度较大;再次,还没有形成一种通用性好、准确、完备 同时又高效的拓扑发现算法。本文的主要研究内容有: ( 1 ) 网络管理以及网络拓扑发现所需的相关的理论知识和概念: ( 2 ) 原以太网的网络拓扑发现算法相关的理论基础知识; ( 3 ) 改进数据链路层拓扑发现方法,就算法发现的完整性及哑设备的处理 等对算法进行优化; ( 4 ) 对当前数据链路层拓扑发现方法进行分析,提出了新的判断规则,发 现子网中的交换机、网关、主机、哑设备及它们之间的连接关系; ( 5 ) 基于s n m p 的网络层拓扑发现算法的设计与实现; ( 6 ) 原型系统的实验。 1 4 本文的组织结构 本文共分为六章,各章内容如下: 第一章简要介绍网络拓扑发现算法的研究背景及意义,分析了国内外的 研究现状,最后介绍了本文的主要工作以及组织结构。 第二章介绍了网络拓扑发现和网络管理的相关背景知识,包括s n m p 、管 理信息结构、管理信息库以及生成树协议、网络管理和网络拓扑发现的概念以 及他们之问的关系、网络拓扑发现的目标对象以及发现前的所需的一些准备工 作。 第三章详细介绍了研究网络拓扑发现算法所需的理论基础知识,包括目 前主流的基于a f t 的算法。分析原算法存在的问题,总结出了三条判定推论, 并在此基础上提出了一种改进的算法。改进算法基本思想及改进算法的描述。 第四章详细介绍了物理拓扑发现算法设计与实现,其中包括算法实现的 前提条件、算法的工作原理及详细流程、算法数据结构设计及实现中的其他一 些细节问题。 第五章设计和实现了前文改进的数据链路层拓扑发现算法,并在实际的 3 第l 章绪论 网络设备上进行测试,验证了算法的有效性和完整性。 第六章进行全文总结,并提出了还有待解决的方面。 4 第2 章相关的背景知识和概念 第2 章相关的背景知识和概念 现今的网络结构不仅越来越庞大而且子网内部的结构也越来越复杂了,这 就给网络拓扑发现带来了极大的困难。但是网络拓扑信息的获取又是网管系统 中的一个极其莺要的部分,是网管系统中各项工作的基础。通过获取网络拓扑 信息,网络管理员可以迅速定位、排除网络故障。 2 1 网络拓扑发现概述 网络拓扑发现的主要目的是获取足够的各网络设备的存在信息以及各设备 之间的连接关系信息。依据特定的算法保存并判定各个节点设备的存在及它们 之间的连接关系。并在此基础上直观地绘制出整个网络拓扑结构图。给网络管 理员对节点设备的配置管理、故障的定位及排除工作带来了极大的方便。 2 1 1 网络拓扑发现概念 网络拓扑发现就是获取网络节点的存在信息,据此形象地描述出网络设备 之问的相互连接关系。网络拓扑结构可以用一张无向图l = 来表示,其 中m 是节点集,表示网络中各设备节点;e 是边集,表示这些节点或网络之间 的互连关系【2 1 。 2 1 2 网络拓扑发现对象 网络拓扑发现的目标对象一共可以分为两种,一种是设备节点的发现,主 要包括路由器、交换机、h u b 、主机、子网等;还有一种是发现网络节点之间 的相对位置与相互连接关系,这主要是路由器相互之问的连接、路由器和子网 的连接、路由器和交换机的连接,以及交换机相互之间的连接等。 2 1 3 网络拓扑发现前的准备工作 网络拓扑发现前需要做好几个准备工作,首先,明确定位拓扑发现的目标 层次;确定所需要采集的网络拓扑信息。其次,根据目标网络的实际环境特点 确定采用采集网络技术的种类。最后,确定收集和存储信息的方式。 5 第2 章相关的背景知识和概念 2 2 简单网络管理协议( s n m p ) 概述 2 2 1 简单网络管理协议简介 简单网络管理协议( 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 o l ,s n m p ) 是i e f t 制订的适应i n t e m e t 的网络管理的简单网络管理协议,它是基于t c p f i p 网络的网 络管理标准,用于监控网络性能,检测分析网络故障,并配置网络设备;是目 前广为认可的一个网络管理协议。s n m p 的成功,得益于它的两个主要特点【1 4 】: ( 1 ) 简单性。s n m p 力求简单,最初版本涉及的操作仅有五个。这使得s n m p 易于实现,成本较低。因而比较容易在大型网络中实现。s n m p 不需要长时问来 建立,也不给网络附加过多的压力。它的简单性还体现在,对一个用户而言, 它可以比较容易地通过操作m i b 中的若干被管对象来对网络进行监测。 ( 2 扩展性。s n m p 最初制定时就是将协议与m i b 相互独立,目的就是为了 使s n m p 容易扩展。需要扩展时实现者只需要自定义新技术的m i b 文件即可;而 s n m p 版本升级,则只是改进通信协议的报文格式,并不涉及m i b 库。 2 2 2 简单网络管理协议的一些基本概念 下面给出了一些s n m p 的概念 1 5 , 1 6 】。 被管理对象m o ( m a n a g e do b j e c t ) :表示需要被管理的网络设备节点,比如 交换机,服务器等设备。 代理( a g e n t ) :实际是网络设备中用来实现s m n p 功能的部分。其实现对被 管理设备的各种m o 的信息的收集和对这些m o 的访问的支持。 管理信息库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 ) :存放被管理对象的库,包 含了网络设备的有关配置、状态、性能等数据,是网络管理的基础。 管理信息结构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 ) :用来指定在m i b 中用于管理目标的规则。 管理工作站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 ) :通常是一个管理工作站, 该管理站运行着管理平台应用系统,实现为管理员提供对被管理设备的直观的 图形界面,方便网络管理员进行管理。 管理协议:管理协议是v i s 和代理之间通信所使用的网络协议。 s n m p 的协议实体:管理工作站和被管理设备中使用s n m p 进行通讯的程序 实体,称为s n m p 应用程序实体。向应用程序实体提供s n m p 协议原语服务的进 6 第2 章相关的背景知识和概念 程,称为s n m p 的协议实体。 s n m p 共同体( c o m m u n i t y ) :一个s n m p 和任意的s n m p 应用程序实体( 网 络管理程序) 一起,组成为一个s n m p 共同体。每个共同体都有一个以字符串形 式表示的名字。 2 2 3 网络管理的系统结构 网络管理系统原则上由四部分构成【3 1 :( 1 ) 多个被管代理;( 2 ) 至少一个网 络管理者:( 3 ) 一种通用的网络管理协议:( 4 ) 一个或多个管理信息库( m i b ) 。 o s i 的公共管理信息服务( c m i s ) 定义了管理应用程序所使用的公共过程和参 数。对于i n t e r a c t 网络,使用的是s n m p 协议。s n m p 建立在由u d p 和i p 所提 供的无连接服务之上。典型的网络管理体系结构组织模型如图2 1 【1 7 1 。 阿绦孵理系统 图2 1典型的网络管理体系结构组织模型 任一个网络管理域都至少应该有一个网络管理站用来负责网络管理的全部 监视和控制工作。网络管理站和被管代理通过交换管理信息来获取网络信息, 其中网络管理机定期轮询各被管代理,被管代理监听和响应来自网络管理机的 网络管理查询和命令。这种信息交换通过一种网络管理协议来实现,信息分别 驻留在管理工作站和被管理对象的管理信息库m i b 中。这种管理协议与管理信 息库一起协调工作,简化了网络管理的复杂过程1 3 j 。 7 第2 章相关的背景知识和概念 2 2 4 简单网络管理协议体系结构 s n m p 的体系结构如图2 2 ,它主要包括三个部分【1 8 】:( 1 ) 管理信息结构s m i ; ( 2 ) 管理信息库m i b :( 3 ) 简单网络管理协议s n m p 。 斑 j 迸氍埘资 罔2 2s n m p 体系结构 上图中的管理应用进程主要负责完成网络管理的各项工作。它一般是一个分 立的设备节点,当然也可以利用共享系统实现。代理则一般有多个,分布于网 络中的各网络设备节点上,可以使装备了s n m p 的平台的主机、网桥、路由器 等。代理者主要是对来自管理站的信息请求和动作进行应答,并且可以主动为 管理站报告一些重要的意外事件。 当然,没有标准特别规定出管理站的数量或管理站与代理者之间的比例。 但一般应该至少有两个系统能够完成管理站功能,以提供冗余,增强系统的可 靠性。 管理站与代理之间是通过s n m p 网络管理来进行通信的,s n m p 工作在o s i 的应用层,使用传输层的u d p 协议来传递信息,在代理端是用端口1 6 1 接收报 文。如图2 3 中当网管进程需向代理查询信息时,它先向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 8 第2 章相关的背景知识和概念 协议将此报文发送给管理站。管理站的s n m p 核心进程再将得到的信息传递给 管理站上的上层的网管应用,这样就完成了一次完整的信息交换过程u 9 , 2 0 。 s 0 艘管理程序s n m 弋理程序 s e t - 掣s t 妒l 瑶,f o m e 珊端口1 8 1 g e t i 虻l _ 埔q 懈1 珊端口i b tr 寥t m s f o 聊 翻t m c l l w s t 。 1 肼端口i e i 伊t - b f o l f l :砷 u 【p 鲻口1 6 2 图2 3n m s 与代理之间的信息交互 2 2 5s n m p 的5 种协议数据单元 出于简单性考虑,s n m p v l 只定义了5 种操作,包括: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 。每种操作对应一种p d u 。管 理工作站与代理之问的信息交互如图2 3 所示。 在s n m p v 2 中还增加了一种新的p d u 格式,并对t r a pp d u 格式做了修改。 为了增强安全性,s n m p v 3 则对报文格式进行了大的改动,但p d u 种类以及格 式任何s n m p v 2 都相同。 s n m p 报文由版本号v e r s i o n 、共同体名c o m m u n i t y 和协议数据单元p d u 三 部分组成【1 4 】。版本号是指s n m p 的版本,在报文头中用0 代表版本1 ,1 代表版 本2 ;共同体名则用于在消息发送者和消息接收者之间的身份验证;s n m p v l 报 文格式如图2 4 ,关于p d u 中各个字段的含义如下: p d u 类型:五种p d u 之一( g e t r e q u e s t p d u ,g e t n e x t r e q u e s t p d u , s e t r e q u e s t p d u ,g e t r e s p o n s e p d u ,t r a p p d u ) 请求标识:每个请求报文中,用于区分不同请求的唯一的整数。 错误状态:出现在代理处理管理站的请求时可能出现的错误的种类。 错误索引:非0 错误状态时出错的变量索引值。 变量绑定列表:表示变量名及其对应值的表。 9 第2 章相关的背景知识和概念 s n m p 撤义 g c l r e q i i e = l p d u g e t l q e z t r e q u e s t p 和$ e t l l e q u e s d u c , e t r e s p o n s e p d u 变毓绑定多1 j 瓷 嘲2 4s n m p v l 报文格式 s n m p v 2 中的报文的结构与s n m p v l 的一样,只是多了几种p d u 类型,但 p d u 格式和s n m p v l 一样仍为三种,其p d u 格式如图2 5 【2 l 】。值得注意的是, 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 、s n m p v 2 一t r a p 、i n f o r m r e q u e s t5 种 p d u 具有完全相同的格式,并且也可以看作是e r r o r - s t a t u s 和e r r o r - i n d e x 两个字 段被置零的r e s p o n s ep d u 的格式。这样设计的目的是为了减少s n m p v 2 实体需 要处理的p d u 格式种类。 ( a )g e t r e q u e s t p d u ,g e t n e x t r e q u e s t p d u ,s e t r e q u e s t p d u , s n m p v 2 一t r a p p d u in f o x | a r e q u e s t - p d u ( b ) r e s p o n s e p d u ( c ) g e t b ul k r e q u e s t p d u ( d ) v a r i a b l e - b i n d i n g s 图2 5s n m p v 2p d u 格式 1 0 第2 章相关的背景知识和概念 2 2 6 抽象语法标记基础 2 2 6 1a s n 1 定义 和s n m p 标准相关的r f c 文档,无论是关于s m i 、s n m p 、还是m i b 的, 都用到了a s n 1 。理解a s n 1 是深入学习s n m p 的基础。 a s n 1 是一种数据定义语言,主要是用来定义通信协议单元和一种称为“抽 象语法”( a b s t r a c ts y n t a x ) 的数据类型。“抽象语法指与具体的机器平台无 关的数据类型,它们从不在一台具体的机器上实现,一般用于两个系统( 特别 是异类系统,包括硬件和软件相异) 之问的信息交换。 它定义了一些标准的数据格式,每种数据格式有对应的编码格式以方便传 输。任何两种不同的语言之间要进行信息交换,首先要使用a s n 1 定义用来进 行交换的“数据格式,这种数据格式必须在通信之前让双方事先知道。为应 付交换复杂的数据信息,a s n 1 有丰富的数据类型支持。参与通信的一方,在 数据交换前,要对自己的数据进行格式转换和编码处理,之后再发送。相应地, 接收方接收数据后要先进行解码处理。整个过程如图2 6 f h 】所示。 2 2 6 2a s n 1 类型和值 a s n 1 中,类型( t y p e ) 是可以编码传输的值的非空集合,值( v a l u e ) 是 类型的一个实例,值必须属于某个类型。 t y p e d e fs t r u c【r e :c i r d 双方共知的a s n 1 定义 m y d a t a = r e c o r d c h a rp h o n e:i 0 】 r e c o r d := s e q u e n c e p h o n e :s t r i n g 10 ; i n ta g e r e co r d p h o n eo c t e ts t r i n g , i n t :i n t e r g e r ; h a ti n t e g e r e n d j ljl b e r 编码 l 1r a s n 1 编码解码i - j 7 ia s n 1 编码解码 图2 6 异种系统之间使用a s n 1 通信 a s n 1 类型可分为简单类型、结构类型、定义类型和其他类型。简单类型 是a s n 1 中最基本的数据类型,用来描述事物的简单属性,简单类型没有组件。 简单类型有i n t e g e r 、b o o l e a n 、r e a l 、o c t e c t 、s t r i n g 、o b j e c t 、 i d e n t i f i e r 、e n u m e r a t e d 和n u l l 等为了使用这些简单类型构造更复杂的 第2 章相关的背景知识和概念 数据类型,a s n 1 提供了4 种结构类型,结构类型由组件组成,它们是s e t 、 s e q u e n c e 、s e to f 和s e q u e n c eo f 。其他类型有c h o i c e 、a n y 两种。 2 2 7 基本编码规则( b a s i ce n c o d i n gr u l e s ) 1 1 4 l a s n 1 定义数据类型和值。a s n 1 对应的传输语法有许多种,如b e r 、p d r 、 d e r 等。s n m p 则是使用b e r 。s n m p 的传输格式必须遵照a s n 1 的b e r 规 范。b e r 用丁编译a s n 1 ,使得编译后的字符串可以在s n m p 代理之间传送的。 根据b e r 规定,每个要传输的数据都由表示数据的a s n 1 类型的标识( t a g ) 域、表示数据的字节长度的长度( 1 e n g t h ) 域和表示数据的实际编码值的值( v a l u e ) 域三个部分构成: 例如:整型类型的取值范围为零、所有正整数和负整数。如:整数1 2 8t a g 字 节格式为0 2 h ,l e n g t h0 2 ,v a l u e0 0 8 0 。字符串类型编码。如m i bt a g 字节格式为 0 4 h ,l e n g t h0 3 ,v a l u e4 d4 94 2 。对象标识符:对象标识符的前面两个整数一般较 小,为了节省编码量,b e r 规定,假设x 、y ( y 小于3 9 ) 分别表示第一个、 第二个整数,那么,传输时这两个整数由公式4 0 x + y 得到的整数表示。假设 1 1 表示得到的结果,则o i d 前两个整数与n 之间的关系如下表2 1 : 表2 1n 与o l d 中前两个整数 n 第一个数第二个数 0 - - n = 3 90n 4 0 = n = 8 02n 8 0 如:对象标识符 l36121 1 ) 完整的编码格式:t a g :0 6 ,l e n g t h :0 6 ,v a l u e : 2 b0 60 10 20 l0 l 。 2 2 8 管理信息库m i b s n m p 标准中的s m i 协议【2 2 】( r f cl1 5 5 1 0 6 5 ) 规范定义和标识管理信息 库对象的一组原则。a s n 1 定义方法用来定义每个对象和整个m i b 结构。m i b 的结构是树形结构,它将对象数据结构分为两种:一种是通用类型指的是字符 1 2 第2 章相关的背景知识和概念 串,空值,整数,序列号和序列等;另外一种是专用类型则是指口地址,网络 地址,记数器,标准等。 为每个m i b 对象都使用一个名称来标识。这个名称称为对象标识符( o b j e c t i d e n t i f i e r ) 。对象标识符之间互相关联,共同构成一个分层倒立的树形结构,如 图2 7 f 2 3 】所示它又被称为对象命名树( o b j e c tn a m i n gt r e e ) 。该树是由一个无名 称的根及与之相连接的许多被标记的节点组成。在这个分层结构里,一个对象 的标识符被定义为从树的根部出发到对象所在节点的途中所经过的数字标号串 组成。在如图2 7 中,i n t e m e t 的对象标识符为1 3 6 1 。 在i n t e m e t 节点下西的第二个节点是m g n t ( 管理) ,标号是2 。再下面是管 理信息库,名为m i b ( 1 ) 。所有的m i b 对象都在m i b 节点下,因此它们的名称 数字表示是1 3 6 1 2 1 。 19 9 1 年定义了新的版本m i b i i ,它把管理对象一共分成了十一个类,m i b i i 中管理对象类型主要包括: ( 1 ) s y s t e m :包括主机或路由器的操作系统等的系统信息; ( 2 ) i n t e r f a c e :各种网络接口以及它们的测定通信量; ( 3 ) a d d r e s st r a n s l a t i o n :描述地址转换( 如a r p 地址映射) : ( 4 ) i p :i p 分组统计; 。j l 一 “ | , 喇n r 如讯“m 2 。 l 。的 1 | d 州圮。y 1 n g m 2 e x 垃一m e n 彝k 3 州下“4 , 篡:兹蓬羡6 ) u d p ( r ) 嘲嘲 图2 7m i b 的组织结构 ( 5 ) i c m p :收到的i c m p 消息统计; ( 6 ) t c p :关于t c p 的算法和参数统计; 第2 章相关的背景知识和概念 ( 7 ) u d p :u d p 通信量的统计; ( 8 ) e g p - 外部网关协议通信量的统计; ( 9 ) c m o t 该组中暂无对象; ( 1 0 ) t r a n s m i s s i o n :系统接收的传输模式及访问协议的统计; ( 1 1 ) s n m p : s n m p 的运行信息统计。 如s y s t e m 组中定义了7 个被管理对象,全部为标量对象,描述了被管理设 备的名称、运行时间等全局信息。该组要求所有代理必须实现。7 个被管理对象 是s y s c o n t a c t ,s y s o b j e c t l d ,s y s u p t i m e ,s y s o b j e c t i d ,s y s n a m e ,s y s l o c a t i o n 、 s y s d e s c r 、和s y s s e r v i c e s ,根据对象描述符可以大致猜出对应的被管理对象所表 示的管理信息。 其中s y s o b j e c t l d 对象实例取值是企业为该设备分配的私有o i d ,在产生私 有t r a p 时要用到这个值。 s y s s e r v i c e s 的取值表示了该设备能提供的网络功能。对应o s i 的7 层网络 互联参考模型,每层功能产生的数值为2 的( l 1 ) 次方,l 为o s i 层数的1 7 层。如路由功能为第3 层,计算该值为4 。常见网络设备中该对象实例取值如表 2 2 表2 2 常见网络设备s y s s e r v i c e s 对象实例值 设备具备功能 s y s s e r v i c e s 对象实例值 集线器物理层,o s i 第l 层l 交换机数据链路层,o

温馨提示

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

最新文档

评论

0/150

提交评论