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

(计算机应用技术专业论文)网络拓扑发现算法的研究与设计.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 网络拓扑发现算法和实现技术是衡量网络管理系统性能的一个重要方面。 本文通过开发网络管理系统网络拓扑发现服务模块过程中获得的理论和实践经 验,从物理和逻辑两个层次对拓扑发现算法进行了积极的探索。 网络物理拓扑结构发现包括网络层发现和数据链路层发现: 网络层拓扑发现的主要目的是发现网络中的路由器和子网,以及找出它们 之间的连接关系。本文对s n m p 算法进行了深入探讨,针对传统s n m p 算法的 不足进行了改进,给出了改进算法的主要流程,同时还对实现过程中的一些关 键技术进行了详细分析。 数据链路层发现目标是发现以交换机为主的两层设备和终端设备,交换机 间和它们与终端间的连接关系。本文分析比较了现有基于地址转发表和基于生 成树协议的拓扑发现算法,结合两种算法的优点,提出新的判定规则对现有算 法进行了改进,改进算法简单高效而且更加准确。本文描述了该算法的数据结 构和具体的实现流程。 网络逻辑拓扑结构发现主要针对目前广泛使用的虚拟局域网。本文针对单 个子网提出了一个有效的跨v l a n 的通用拓扑发现算法,算法基于标准s n m p 协 议,利用b r i d g e m i b 和q b r i d g e m i b 等标准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 管理信息库) 库,完成整个信息查询过程,经过一定的数学分析处理,获得每个 v l a n 的拓扑结构。 本文所提出的算法已经应用于i t m a n a g e r 统一网管平台,经测试具有良好的 通用性,能够满足拓扑发现需要。 关键词:拓扑发现;简单网络管理协议;地址转发表:生成树协议;虚拟局域 网 西南交通大学硕士研究生学位论文第1 i 页 a b s t r a c t n e t w o r kt o p o l o g yd i s c o v e r y a l g o r i t h ma n di t sr e a l i z a t i o nt e c h n o l o g yi sa n i m p o r t a n tc r i t e r i o nf o re v a l u a t i n gan e t w o r km a n a g e m e n ts y s t e m sq u a l i t y t h r o u g h t h e o r ya n de x p e r i e n c er e q u i r e df r o md e v e l o p i n gn e t w o r kt o p o l o g yd i s c o v e r ys e r v i c e m o d u l ei nn e t w o r km a n a g e m e n ts y s t e m ,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 s n 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 sf r o mt w oa s p e c t 唧h y s i c a la n d l o g i c a l n e t w o r kp h y s i c a lt o p o l o g yd i s c o v e r yi n c l u d e sn e t w o r kl a y e rd i s c o v e r ya n dd a t a l i n kl a y e rd i s c o v e r y t h ea i mo fn e t w o r kl a y e rd i s c o v e r yi sr o u t e ri n f o r m a t i o n ,s u b n e ti n f o r m a t i o n a n dc o n n e c - t i o nr e l a t i o n sb e t w e e nt h e m w es t u d ys n m p a l g o r i t h m i nv i e wo f t h e s h o r t a g eo fs n m p , w eb r i n gu p t h ec o r r e s p o n d i n gs o l u t i o n a l s ot h em a i n a l g o r i t h m a n ds o m ek e yt e c h n o l o g i e sa r eg i v e ni nt h ep a p e r t h ea i mo fd a t al i n kl a y e rd i s c o v e r yi ss w i t c h ,t e r m i n a ld e v i c ea n dc o n n e c t i o n r e l a t i o n sb e t w e e nt h e m w ea n a l y z et h ec u r r e n tl i 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 :m e t h o db a s e do na d d r e s sf o r w a r d i n gt a b l ea n dt h ea l g o r i t h mr e l y i n go n s p a n n i n gt r e ep r o t o c o l s t p , t h e nan e wr u l ef o rd i s c o v e r i n ge t h e r n e tt o p o l o g yi s p r e s e n t e d ,w h i c hh a s t h ea d v a n t a g e so ft h et w oa l g o r i t h m s i m p l e m e n t a t i o no ft h i s a l g o r i t h mc o u l dd e t e r m i n et h ep h y s i c a lt o p o l o g ys i m p l ya n de f f i c i e n t l y , a n dc o u l d b e a p p l i e dt oa l lk i n d so fe t h e m e tn e t w o r k s d a t as t r u c t u r ea n ds p e c i f i cp r o c e s s e so ft h e a l g o r i t h ma r ed e s c r i b e d w i t hr e g a r dt on e t w o r kl o g i c a lt o p o l o g yd i s c o v e r y , w es t u d yv i r t u a ll o c a la r e a n e t w o r k t h i sp a p e rp r o p o s e sa s i n g l es u b n e ta l g o r i t h mw i t hv l a n b a s e do ns n m p , t h ea l g o r i t h mu s e ss t a n d a r dm i b ,s u c ha sb r i d g e m i b ,q b r i d g e - m i ba n ds oo n w i t hac e r t a i nm a t h e m a t i c a la n a l y s i s ,e a c hv l a n t o p o l o g yi sd i s c o v e r e d t h ea l g o r i t h mh a sb e e na p p l i e dt oi t m a n a g e r w h i c hc a nm e e tt h en e e d so f t o p o l o g yd i s c o v e r y k e y w o r d s :t o p o l o g yd i s c o v e r y ;s n m p ;a d d r e s sf o r w a r d i n gt a b l e ;s p a n n i n gt r e e p r o t o c o l ;v l a n 西南交通大学硕士研究生学位论文第1 页 1 1 研究目的和研究意义 第1 章绪论 随着i n t e r a c t 的发展,网络规模不断扩大,网络变得越来越复杂。随着用户 对网络的性能要求越来越高,如果没有一个高效的网络管理系统对网络系统进 行管理,那么很难保证网络为广大用户提供令人满意的服务。因此网络管理成 为现代信息网络中最重要的问题之一。 按照o s i 的定义,网络管理主要包括五个功能域:故障管理、配置管理、 性能管理、安全管理和计费管理。在五大功能域中,配置管理是基础,它的主 要功能包括发现网络的拓扑结构、监视和管理网络设备的配置情况。而监视和 管理网络设备的基础是已知网络的拓扑结构,所以,网络拓扑发现是实现网络 管理的基础和前提条件。此外,网络拓扑对网络仿真也十分重要,要仿真能否 在现有网络上新开放一种应用,必须首先有正确的网络拓扑。另外,作为网络 管理系统的一个重要组成部分,拓扑发现还是故障管理的基础,同时它也是衡 量一个商业网管系统成败的重要尺度。网络拓扑连接图为网络管理人员提供了 一个了解全局网络连接情况的直观手段。通过网络拓扑图,网络管理人员可以 对整个网络的情况进行整体上的把握,并对问题进行诊断。 因此,网络拓扑信息作为网络管理的基础,它的重要性显而易见。如何高 完备性、高健壮性、高准确性、高效率地自动发现并获取网络拓扑信息是当今 各网络研究机构共同关注的问题。 网络拓扑自动发现是利用网管协议或网络提出的可用工具通过一定的拓扑 算法,自动发现网络中所有主机、路由器、交换机对应的节点及其连接关系, 从而得到完整的拓扑图,帮助网络管理人员了解和认识整个网络的拓扑结构。 要实现网络拓扑图的生成,必须首先收集构造网络拓扑图的各种必要信息。目 前,信息收集主要有两种方式:一种是采用网络管理工具( 例如s n m p ) 来收 集信息,它通过收集网络数据和设置网络来实现对网络的有效管理;另一种方 式是采用一种通用的协议( 例如i c m p 、o s p f 等) 采集网络拓扑信息。因此拓 扑发现算法的设计在整个网管系统的开发中占有举足轻重的地位。 多方位网络拓扑发现要求能够发现完整的网络信息,包括网络物理拓扑结 西南交通大学硕士研究生学位论文第2 页 构( 网络层和子网层两部分) 以及连接关系,虚拟局域网下逻辑拓扑结构的发现, 用端口扫描技术进行应用拓扑的发现,并且能够满足准确性和速度上的要求。 使用s n m p 进行网络拓扑发现已经很多年了,形成了众多算法理论。但实际上 众多网管软件中的发现服务并没有显示出应有的效果,其原因主要是真实的网 络设备和环境复杂多变,理论上的算法在实际情况下有一定偏差,同时网络环 境的厂商依赖性( 特别是虚拟局域网环境下) 很大,也为通用的发现技术实现提 出了很多难题。 本文以开发网管系统拓扑发现服务的工程实践为背景,从物理拓扑发现和 逻辑拓扑发现两个层次阐述了多方位的发现算法在实际环境下的具体实现技 术,并进行了实际开发中的实践经验总结。 1 2 国内外研究现状 对网络拓扑的研究始于2 0 世纪9 0 年代中期i n t e m e t 迅速发展时期,由于 i n t e m e t 的各个部分是不同时期不同组织建立起来的,其规模巨大,结构复杂, 掌握其拓扑情况是一项非常具有挑战性的工作,但由于网络拓扑在工程应用和 军事应用上的巨大价值,国内外有许多研究机构和公司致力于网络拓扑发现的 研究。 c a l d a ( c o o p e r a t i v ea s s o c i a t i o nf o ri n t e r a c td a t aa n a l y s i s ) 实现s k i t t e r 工具来用 于网络拓扑的研究i q 。s k i t t e r 主要结合t r a c e r o u t e 和p i n g 程序,主动探测转发路 径,记录r t t ( r o u n d t r i p t i m e ) ,跟踪低频持久的路由变化。 美国南加州大学的m e r c a t o r 采用u d p 报文进行有限跳的主动测量,对目 的i l l 地址采用启发式猜测方法1 2 l 。在有限跳的情况下,该启发式方法有助于提 高性能。m e r c a t o r 也使用松散源路由来辅助发现交叉链接和进行路由器端口合 并。但是,支持源站路由的路由器不到总数的1 0 ,且速度较慢,无法在大规 模网络拓扑发现中使用源路由来反映交叉链接和进行端口合并。 美国的康奈尔大学在其o c t o p u s p l 项目中,对s n m p 、b o r a d c a s tp i n g 以及 z o n et r a n s f e r 机制进行了实验,但都因为不具备i n t e m e t 的普适性而只能用于小 规模的网络拓扑发现。 美国a t & t 实验室( 现朗讯科技公司) 在其n e t l n v e n t o r y l 4 系统中采用标准 s n m pm i b 信息对物理链路层网络拓扑发现进行了研究。针对物理网络的异构 西南交通大学硕士研究生学位论文第3 页 现象提出了基于地址转发表的物理拓扑发现算法,并在其自身的网络中加以测 试实现。但其要求完全的地址转发表,拓扑发现时对网络正常的流量影响较大, 探测源必须在本局域网内部才能完成。 目前,网络拓扑发现技术主要应用在商业方面,企业级网络管理平台主要 有:惠普的o p e n v i e w 、i b m 的t i v o l i 、c a 的u n i c e n t e r t n g 、s u ns o l s t i c ee n t e r p r i s e m a n a g e r 等,这些流行的网络管理软件都实现了网络拓扑的自动发现。 国内有关网络拓扑发现的研究开始于本世界初,起步相对较晚,但也取得 了一些成果。比如,国家自然科学基金重点项目“基于网络探测的l p 网络拓扑 发现和性能分析 ,国家重大基础研究发展规划项目“网络环境下海量信息组织 与处理的理论与方法研究 中的“基于先进网络的大型网络管理示范系统 课 题。但国内关于l p 网络拓扑的发现算法主要基于s n m p 协议,通过访问m i b , 结合i c m p 等协议,在局域网或一个管理域等小范围内构造网络拓扑。未涉及 在多管理域中进行拓扑发现所可能遇到的问题,有关i n t e r a c t 路由器级和a s 级 拓扑发现的研究成果报道较少。 哈尔滨工业大学实现了针对c e r n e t ( c h i n ae d u c a t i o na n dr e s e a r c hn e t w o r k ) 的路由器级拓扑自动发现系统嘲,主要利用t r a c e r o u t e 机制,采用u d p 报文对 c e r n e t 的地址范围进行追踪,并将结果在地理信息图中显示出来。清华大学 邱剑、李星等人针对c e r n e ti p v 4b g p 路由表信息作了可视化处理和统计分析 研究,主要涉及a s 拓扑和口地址分布等内容,其a s 拓扑建立在三维柱坐标 下,表达了除c a i d as k i t t e r 项目二维a s 拓扑所表达的a s 出度分布特征外, 还表达了a s 距离的分布特征。但是其数据采集需要构建专门的平台,配置专 门的数据采集路由器,非授权用户无法访问。 目前,国内的研究还处于相对不成熟阶段,对目标网络不能快速、高效地 获得大规模网络完整的拓扑信息。研究最多的是网络层的拓扑发现,算法比较 成熟。在物理链路层的拓扑发现方面所作的工作很少。但是,网络层拓扑信息 仅仅是整个网络拓扑结构的一小部分,它不能反映子网内的网络单元比如交换 机和集线器复杂的连接关系。随着桌面要求的带宽越来越高,大量的交换机被 部署到网络中,网络层拓扑发现所不能发现的部分越来越多。同时,随着子网 划分,隔离广播域的大型局域网的出现,三层交换机等都需要重新调整网络结 构,链路层拓扑信息的匾乏大大削弱了网络管理员查找、排除交换网络故障的 西南交通大学硕士研究生学位论文第4 页 能力。 1 3 本文主要研究内容及章节安排 本文从两个层次来研究拓扑发现算法:物理拓扑发现和逻辑拓扑发现。物 理拓扑发现包括网络层和数据链路层。网络层的研究首先是学习目前的各种算 法s n m p 、o s p f 、i c m p ,分析各种算法的优缺点,总结它们的适用范围。然 后针对传统s n m p 算法作了深入研究,通过学习和利用m i b ,对s n m p 算法存 在的问题提出了自己的解决方法。数据链路层的研究是在学习目前常用的两种 算法:基于地址转发表的拓扑发现算法和基于生成树的算法的基础上,结合两 种算法的优点,提出新的判定规则对现有算法进行了改进。逻辑拓扑发现主要 针对目前广泛使用的虚拟局域网,针对单个子网提出了一个有效的跨v l a n 的 通用拓扑发现算法,其主要优点是采用了通用的与特定厂商无关的s n m p 协议 和标准m i b 库来查询v l a n 的配置信息,并且只需增加非常有限的网络负载。 本文各章节的内容安排如下: 第一章绪论。主要介绍了当今网络管理的发展现状、网络拓扑发现的目的 和意义、国内外发展现状以及本文的主要研究内容。 第二章网络拓扑发现协议与工具。主要对目前拓扑发现算法中常用的协议 及工具进行介绍。 第三章网络层拓扑发现算法。总结了目前已有的几种网络层拓扑发现算法 的优缺点,在其基础上对s n m p 算法进行了改进,给出了该拓扑发现算法的主要 流程,同时还对实现过程中的一些关键技术进行了详细分析。 第四章链路层拓扑发现算法:分析比较了目前基于地址转发表的方法和基 于生成树的算法,结合两种算法的优点,提出新的判定规则对现有算法进行了 改进,并详细论述了算法的实现。 第五章v l a n 拓扑发现算法。针对单个子网提出了一个有效的跨v l a n 的通用拓扑发现算法。 第六章总结与展望。对论文所作工作进行总结,并提出了下一阶段的工作。 西南交通大学硕士研究生学位论文第5 页 第2 章网络拓扑发现协议与工具 2 。1s n m p 协议 2 1 1s n m p 协议概述 s n m p 简称简单网络管理协议。1 9 9 0 年i n t e m e t 工程特别小组( i e t f ) 在 r f c l l 5 7 中正式公布了s n m p 的第一个版本s n m p v l 。s n m p v l 简单实用,容 易实现且成本低。此外它具有可伸缩性:s n m p v l 可以管理绝大部分符合i n t c r n c t 标准的设备;扩展性:通过定义新的被管理对象,可以扩展管理功能;健壮性: 即使在被管理设备发生故障时,也不会影响管理者的正常工作。s n m p 在9 0 年 代初迅速发展,受到许多厂家的普遍支持,成为网络管理的事实标准。但 s n m p v l 没有考虑安全问题,例如缺少身份验证( a u t h e n t i c a t i o n ) 和加密( p r i v a c y ) 机制等。因此1 9 9 2 年i e t f 开始了s n m p v 2 的开发工作。s n m p v 2 在安全性能 和传递管理信息方面进行了改进。它具体包括提供验证、加密和时间同步机制。 1 9 9 7 年4 月i e t f 成立了s n m p v 3 工作组。i e t fs n m p v 3 工作组于1 9 9 8 年1 月提出了互联网建议r f c 2 2 7 1 2 2 7 5 ,正式形成s n m p v 3 。这一系列文件定义了 包含s n m p v l 、s n m p v 2 所有功能在内的体系结构。它包含验证服务和加密服 务在内的全新安全机制,同时还规定了一套专门的网络安全和访问控制规则。 s n m p v 3 是在s n m p v 2 基础上,增加了安全、可管理的体系结构和远程配置等 技术。 s n m p 网络管理模块共有4 个基本要素组成。它由管理站( m a n a g e m e n t s t a t i o n ) 、被管对象( m a n a g e do b j e c t s ) 、管理信息库m i b ( m a n a g e m e n ti n f o r m a t i o n b a s e ) 和网络管理协议n m p ( n e t w o r km a n a g e m e n tp r o t o c 0 1 ) 等组成,如图2 1 所示。 网络管理系统驻留在管理工作站上,它负责发出管理操作命令,并接收来 自网管代理的信息。被管对象可以是主机、路由器和交换机等可以与外界交流 状态信息的硬件设备。网管代理( a g e n t ) 是一个软件模块,驻留在被管设备上。 负责接受、处理来自网管站的请求报文,然后将设备接口等特征管理变量的数 值形成响应报文,发送给管理站,并在一些紧急情况( 如接口状态发生改变、 呼叫成功等) ,通过发送陷阱( t r a p ) 报文主动通知管理站。网管代理不断地收集 西南交通大学硕士研究生学位论文第6 页 统计数据( 如字节数) ,并把这些数据记录到一个管理信息库m i b 中。管理站 通过向代理的m i b 发出查询信号就可以得到这些信息,这个过程就叫做轮询 ( p o l l i n g ) ,这就是s n m p 最基本的特点。网管站对网络设备发送各种查询报文, 并接收来自被管设备的响应、陷阱( t r a p ) 报文,且将结果显示出来。网管代理有 两个基本功能:一是从m i b 中读取变量的值;二是修改m i b 各变量的值。 图2 1s n m p 网络管理模型 网络的所有对象都存放在管理信息库的数据结构中。管理信息库定义了一 组被管对象的集合。每一个对象代表了被管设备的某个特征的数据变量。在m i b 中每个被管对象都有唯一的标识。这个标识的组成包括:对象类型、对象被访 问的权限、对象的大小和范围。 管理站和代理之间通过s n m p 网络管理协议进行交互会话,s n m p 管理者 西南交通大学硕士研究生学位论文第7 页 对m i b 变量执行操作如表2 - 1 所示。 表2 - 1s n m p 管理者对m i b 信息执行的操作 操作说明 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 - b u l k r e q u e s t 读取一组指定的数据,例如一个表的多行数据 g e t 。r e s p o n s e对n m s 发送的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 e t 。r e q u e s t 设置一个指定变量的值 t r a p当一些事情发生后,代理向管理者主动发送消息 s n m p 协议的管理站和代理之间是以s n m p 报文的形式来交换信息的。每 一个报文包括一个s n m p 版本号、团体名( c o m m u n i t y ) 希l 协议数据单元, ( p r o t o c o l d a t au n i t ) 。报文头中的版本号是指s n m p 的版本号,r f c l l 5 7 为第一个版本。 如下图所示: s n m p 报文 版本号 l团体名1 s n m pp d u g e t r e s p o n s ep d u 制造代理一般特殊 p d u 类型时间戳变量绑定表 商i d地址陷入陷入 变量绑定表 图2 2s n m p 报文格式 如图2 2 所示,s n m p v l 共有5 种p d u 。除t r a p 之外,其它4 种p d u 格 式相同,共有5 个字段: 1 请求标识( r e q u e s t - id ) 赋予每个请求报文唯一整数标识,用以区分不 同的请求。由于在具体实现中请求大多在后台执行,当应答报文返回时要将其 西南交通大学硕士研究生学位论文第8 页 请求标识与请求报文配对。请求标识的另一个作用是检测由不可靠传输服务产 生的重复报文。 2 错误状态( e r r o r s t a t u s ) 表示代理在处理管理站的请求时可能出现的 各种错误。 3 错误索引( e r r o r - i n d e x ) 当错误状态为非o 时指向的出错变量。 4 变量绑定( v a r i a b l e - b i n d i n g ) 所有s n m pp d u 都包括一个变量绑定 ( v a r i a b l e b i n d i n g s ) 域。这个域由一系列对象实例标识符和这些对象实例值组成。 其中对象实例标识符就是m i b 中定义的某个变量,其数据结构由s n m p 管理信 息结构( s m i ) ( r f c l l 5 7 ) 具体定义。s m i 采用d n s 名字空间相类似的方式,以树 状的结构来表示管理对象的名字。对象标识符有两种形式:名字形式和数字形 式。变量绑定是将变量名和变量值绑定成一个表。它表示要检索或设置的所有 变量及其值。在检索请求报文中变量值应为0 。 2 1 2 管理信息库m i b 管理信息库m m 是基于t c p 艘协议的网络管理系统的基础。网络管理活 动中使用的每个被管资源用一个对象来表示。m m 就是这些对象经结构化后的 集合,反映被管资源的状态。通过读取或设置这些对象的值可以监视或控制网 络资源。s n m p 的管理信息结构s m i 给出了定义m i b 结构的总体框架。在这个 框架之下,可以进行m i b 的定义和构造。s m i 定义了m i b 中使用的数据类型 和m i b 资源的描述和命名。 m m 中有两种类型的对象:标量对象和表对象。每种对象有唯一的对象标 识符o l d 。 s n m p 规定标量对象类型只有一个对象实例,其生成规则是:标量对象的 对象标识符加上0 就构成对象实例。 表对象类型由行对象和列对象构成,但实际上表对象和行对象没有叶子节 点,是不可访问的,我们只能对列对象进行访问。由于一张表有若干行,故对 象标识符本身不足以标识一个实例,需要一个约定来识别对象实例。m i b 中没 有明确定义指定对象实例的方法。指定对象实例是通过特定协议的机制来实现 的。在s n m p 协议中定义了两种标识特定对象实例的方法,即顺序访问对象和 随机访问对象。 西南交通大学硕士研究生学位论文第9 页 对象的标识符是一个点分整数序列( 比如s y s d e s c r 的对象标识符是 1 3 6 1 2 1 1 1 ) ,反映了m i b 中对象的层次型和树状结构。一个特定对象的对象 标识符可以沿着从根到该对象的路径获得。由于对象标识符是整数序列,因此 可以将它们按字典顺序进行排序。同时,对象实例标识符也是按字典排序的。 这样,按照字典排序的特征,网络管理系统就可以有效地遍历一个m i b 了。 表中每一行都有相同的列对象,每个列对象的对象标识符是唯一的。为了 将一行同其他行区分开来,s n m p 采用将列对象的标识符与索引列对象的值相 结合的方法,即对象的标识符后加上索引对象的值,来指定一个特定行中的特 定对象。索引对象按其在表中的定义顺序排列。 一般在s n m p 中使用m i b 2 节点下的组进行网络管理: ( 1 ) s y s t e m 组:提供被管系统的总体信息。 ( 2 ) i n t e r f a c e s 组:提供网络实体的物理层接1 2 1 信息。 ( 3 ) i p 组:提供网络实体中有关i p 的实现和操作信息。 ( 4 ) i c m p 组:提供网络实体中有关i c m p 的实现和操作信息。 ( 5 ) t c p 组:用于连接、流量控制、数据重传和网络拥塞等问题的解决。 ( 6 ) u d p 组:与t o p 组相似,但是不提供有关网络连接的信息。 ( 7 ) e g p 组:提供网络自治系统中路由器之间信息交换的信息。 ( 8 ) s n m p 组:提供网络实体中有关s n m p 的实现和操作信息。 节点定义如下: i n t e r n e to b j e c ti d e n t i f i e r := i s oo r g ( 3 ) d o d ( 6 ) 1 ) m g m to b j e c ti d e n t i f i e r := i n t e m e t2 m i b 一2o b j e c t i d e n t i f i e r := r e g r e t1 ) s y s t e mo b j e c t i d e n t i f i e r := m i b 一21 ) i n t e r f a c e so b j e ( m d e n n f 正r := m i b - 22 i po b j e c t i d e n t i f i e r := m i b - 24 ) i c m po b j e c t i d e n t i f i e r := m i b 一25 ) t c po b j e c t i d e n t i f i e r := m i b 一26 u d po b j e c t i d e n t i f i e r := m i b 一27 ) e g po b j e c t l d e n t i f i e r := m i b - 28 ) s n m po b j e c t i d e n t i f i e r := m i b 一21 1 西南交通大学硕士研究生学位论文第1 0 页 m i b 2 下还有其它一些组如a l 组、t r a n s m i s s i o n 组等。这些组中的对象要么 已经被废弃,要么还没有定义,故在实际中几乎没有使用这些组中的对象进行 网络管理。 2 2 网际控制报文协议( i c m p ) 2 2 1i c m p 简介 i c m p ( i n t e r n e t 控制报文协议) 是用于网关和主机传送控制信息或差错信 息的协议。i c m p 报文是用口封装和发送的,它是i p 的一部分,在每个口实 现中都必须有它。路由器使用这种机制向其它路由器或主机发送差错或控制报 文,主机使用这种机制测试目的主机是否可达。 2 2 2i c m p 报文格式 i c m p 是网络层的协议,i c m p 报文作为网络层数据报的数据加上数据报首 部,组成i p 数据报发送出去。i c m p 报文类型可分为两种类型,即i c m p 差错 报文和i c m p 查询报文。每个i c m p 报文有自已的格式,但是它们都以相同段 开始,i c m p 报文第1 个字节为i c m p 的类型( t y p e ) 字段用来标识报文,第2 个字节为编码( c o d e ) 字段提供有关报文类型的进一步信息,第3 、4 两个字节 为校验和( c h e c k s u m ) 字段,第5 个字节之后为i c m p 的数据。i c m p 报文格式 如下: 表2 2i c m p 报文格式 t y p e ( 8 b i t s ) |c o d e ( 8 b i t s )lc h e c k s u m ( 1 6 b i t s ) 参数( 可选) 内容 类型代码标识报文的类型和i c m p 协议数据单元的格式,类型代码种类见 表2 3 所示。 其中最常用的拓扑工具是使用i c m p 回送请求和回送应答报文。主机或路 由器向指定目的站发送i c m p 回送请求报文,任何收到回送请求的机器形成一 个回送应答,并把它返回给最初的发送者。应答包含在请求中发送数据的一份 西南交通大学硕士研究生学位论文第1 1 页 副本。回送请求及其关联的应答可用来测试目的站是否响应。因为请求和应答 都是在p 数据报中传输,所以应答的成功接收就可证实传输系统的主要部分工 作正常。 表2 - 3i c m p 报文类型代码 代码类型值i c m p 报文类型代码类型值i c m p 报文类型 0响应应答1 3时戳请求 3信宿不可达1 4时戳应答 4信源控制1 5信息请求 5重定向1 6信息应答 8响应请求1 7地址掩码请求 1 1超时1 8地址掩码应答 1 2参数失灵 2 3a r p 协议 2 3 1a r p 协议概述 a r p 协议属于网络层,它将上层口地址与底层物理地址进行绑定。a r p 协议维护管理一张地址映射表,它将口地址映射为物理地址。a r p 表中维护与 路由器或交换机端口直接相连的所有终端设备口地址与物理地址的映射关系。 可访问地址表中i p n e t t o m e d i a n e t a d d r e s s 和i p n e t t o m e d i a p h y s a d d r e s s 以确定终 端设备的口地址和物理地址。任何有以太网接口的网络设备都必须支持地址解 析协议,并维持着一张a r p 表。该表用于冲地址与以太网地址间的地址解析 和转换。一般利用在同一以太网段内的a r p 表中包含所有活动主机的地址信息 的特点,可以进行拓扑发现。 2 3 2 地址转换 在t c p i p 协议中,每台主机分配3 2 位口地址。互连网只使用分配的地址 来发送和接收分组。在以太网中,只有当网络上的某两台主机知道对方的物理 地址后,才能通信。当主机或路由器需要在网络上发送分组时,则将一个口地 址映射到相应的物理地址。把高层m 地址映射为物理地址的过程称为地址转换。 西南交通大学硕士研究生学位论文第1 2 页 2 3 3a r p 高速缓存 a r p 高效运用的关键是由于每个主机上都有一个a r p 高速缓存。这个高速 缓存存放最近i n t e r n e ti p 地址到物理地址之间的映射关系。从被创建时开始算起 高速缓存中每一项的生成时间一般为2 0 分钟。 2 4r i p o s p f ,b g p 协议 r i p ( r o u t i n gi n f o r m a t i o np r o t o c 0 1 ) 是一种距离向量路由协议,它使路由器每 个节点都存放到达各个目标节点的距离,即到达目标经过的跳数。r i p 协议每 隔3 0 秒会广播自己的路由表信息,同时接收其它相邻路由器发送过来的路由表 更新报文,来更新自身的路由表信息。若在1 8 0 秒内没有收到该路由表的更新 报文,则认为路由失败,并在2 4 0 秒后删除该记录。利用r i p 路由信息协议, 可以从路由设备中提取通过该设备的路由信息表,从而构造出网络拓扑图。 o s p f 协议是一种链路状态协议。它是r i p 协议的替代协议,目前得到了广 泛的应用。链路状态路由的原理非常简单,因为每个路由器节点存放一个完整 的网络链路状态图,通过路由器之间的通信来交换彼此链路状态图,不断更新 其内容,保持所有路由器的链路状态图的一致性。利用o s p f 路由信息协议可 以提取该路由设备的所有口地址或口子网的路由信息表,构造出网络拓扑连 接信息表,但它没有接口级的网络拓扑连接信息,而且要求所有的路由器都支 持o s p f 协议。 b g p 边界网关协议是目前自治系统之间广泛使用的域问路由协议,它维护 着自治系统之间的路由连通状态,因此包含了i n t e r n c t 中到达各个子网路由信 息,利用b g p 表中的信息加以分析便获得骨干网络的拓扑情况。 2 5 拓扑发现的常用工具 2 5 1 p i n g p i n g 是基于i c m p 协议的l p 网络的常用工具,在网管中经常用来测试i p 的连通性。p i n g 程序实际就是发送一个i c m p 回应请求报文给目的主机,并等 待回显的i c m p 应答,然后打印出回显的报文。 任何收到回送请求的机器形成i c m p 回送应答报文并把它返回给最初的发 西南交通大学硕士研究生学位论文第1 3 页 送者。回送请求报文中包含一个可选数据区,回送应答报文中包含了在请求中 发送数据的一个拷贝。因为请求和应答都是在m 数据包中传送的,所以应答的 成功就证实系统的主要部分是正常的。 几乎每种拓扑发现算法都会不同程度的使用它。但若大范围的使用,如广 播p i n g ,会占去很多物理资源,从而降低算法的效率。通常用异步p i n g 的请求 方式来提高探测的速度,同时不会导致网络阻塞。 2 5 2t r a c e r o u t e t r a c e r o u t e 也是基于i c m p 协议的m 网络的常用工具。t r a c e r o u t e 是8 0 年代 末由v a n m j a c o b s o n 开发的应用程序,可跟踪远程网络地址到子网地址上设备和 主机间的路由,从而得到从源婵地址到目的i p 地址所经过的路由信息,进而 发现路由器节点。 t r a c e r o u t e 功能的实现与i p 数据报文的报文头有关。口头的结构如下: s t r u c ti “ c h a ri p _ v e r l e n ;i i pv e r s i o nh e a d e rl e n g t h c h a ri p _ t o s ;t y p eo fs e r v i c e s h o r ti p _ l e n ;t o t a lp a c k e tl e n g t h s h o r ti p _ i d ;d a t a g r a mi d s h o r ti p _ f r a g o f f ;f r a g m e n to f f s e t c h a ri p _ t t l ;t i m et ol i v e ,i ng a t e w a yh o p s c h a ri p _ p r o t o ;i pp r o t o c o l s h o r ti p _ c h k s u m ;h e a d e rc h e c k s u m i p a d d ri p _ s r e ;i pa d d r e s so fs o u c e i p a d d ri p _ d s t ;i pa d d r e s so fd e s t i n a t i o n c h a ri p _ d a t a ;v a r i a b l el e n g t hd a t a ) 在i p 头的结构中,存在一个i p _ t t l 域,即生存时间1 几。1 几参数用于测 量数据报在网络中存在多长时间。网络中每个路由器都检查该域,如果1 r l 值 为0 ,路由器就抛弃该数据报。路由器还必须对它处理的每个数据报的该域进行 减1 操作。在实际执行过程中,1 几域是反映跳数的值。所以当数据报穿过一 西南交通大学硕士研究生学位论文第1 4 页 个口结点( 网关) 时,丌l 域中的值就自动减1 。 t r a c e r o u t e 的功能就是利用l p 头中的1 阻域。开始时信源设置口头的1 几 值为1 ,发送报文给信宿,第二个网关收到此报文后,将1 1 r l 值减1 后,发现 其值为0 。它丢弃此报文,并发送一个类型为超时( 即1 1 ) 的i c m p 报文给信 源。信源收到此报文后对它进行解析,这样就得到了路由中的第一个网关地址。 然后信源发送1 亿值为2 的报文给信宿,第一个网关把它的1 凡值减1 后转发 给第二个网关,第二个网关收到报文后,将1 阻值减1 后,发现其值为0 ,丢 弃此报文并向信源发送超时i c m p 报文。这样就得到了路由中的第二个网关地 址。如此循环下去,直到报文正确到达信宿,这样就得到了通往信宿的路由。 由于具有t c p i p 协议栈的多数系统都有该工具,因此它是网络第三层即i p 层 拓扑发现最常用的工具。 2 5 3d n s d n s 全称d o m a i nn a m es y s t e m ,是一种基于t c 咖应用程序的分布式数 据库系统。它保存了主机名和i p 地址之间的映射信息以及有关域的其它信息, 并为用户提供查询这些名字和地址服务的功能。通常一个网络对应一个域,子 网对应一个子域。因此我们可以通过d n s 查询探测有关子网对应域的信息,其 中包括该域所有已注册的实体信息( 包括口地址、主机名等) 。这些已注册的 实体的口地址就是正式分配的口地址,从而可得到该子网的活动主机数量。 般d n s 查询包括:a 查询( 由主机查询i p 地址) 、p t r 查询( 由i p 地址查 询主机名) 和a x f r 查询( 区域传送查询,查询某个域的全部实体信息) 。 d n s 查询的基本思想:自己构造d n s 查询报文,向d n s 服务器发送查询 报文,服务器返回应答消息,从应答中可以提取需要的信息。d n s 服务器在知 名的5 3 号端口提供查询服务,可以用u d p 包发送d n s 消息,也可以用t c p 包发送d n s 消息。但是通常来说,长于5 1 2 字节的d n s 消息用t c p 包来发送。 d n s 维

温馨提示

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

评论

0/150

提交评论