分享
分销 收藏 举报 申诉 / 14
播放页_导航下方通栏广告

类型基于SNMP的网络拓扑发现.docx

  • 上传人:快乐****生活
  • 文档编号:4489641
  • 上传时间:2024-09-25
  • 格式:DOCX
  • 页数:14
  • 大小:17.96KB
  • 下载积分:8 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    基于 SNMP 网络 拓扑 发现
    资源描述:
    基于SNMP的网络拓扑发现   摘 要 随着计算机网络的高速发展,网络管理变的日趋复杂,为了提高网络设备和服务管理的智能性和可操作性,对网络拓扑高效而准确地发现成为网络管理中重要的环节。 关键词 网络拓扑;简单网络管理协议;管理信息库;网络管理;三层拓扑发现;二层拓扑发现 1 引言 现代计算机网络迅猛发展,网络管理的任务也日趋复杂,而保证网络管理系统高效运行的基础正是网络拓扑发现。网络拓扑表现为计算机网络中各设备之间的连接关系。网络拓扑发现更能提高网络故障管理、计量管理、配置和名称管理、性能管理和安全管理的性能,其原理是利用协议收集网络中各设备的信息,通过某种算法生成完整的拓扑结构显示出来。本文介绍的就是基于SNMP协议的网络拓扑发现。 2 简单网络管理协议SNMP及MIB信息库概述 SNMP概述 SNMP名为“简单网络管理协议”,SNMP基于TCP/IP协议工作,对网络中支持SNMP协议的设备进行管理,通过SNMP协议,管理员可以与各种类型支持SNMP协议的设备进行通信,从而进行网络管理。在具体实现上,SNMP为管理员提供了一个网管平台(NMS),又称为管理站或管理器,负责网管命令发出,数据存储及数据分析等。被监管的设备上则运行一个SNMP代理(Agent),又称为代理器,代理实现设备与管理站的SNMP通信,图1描述了SNMP协议的逻辑结构[1]。图1 SNMP协议的逻辑结构 1990年5月,RFC1157定义了SNMP的第一个版本SNMPv1。RFC1157和另一个关于管理信息的文件RFC1155一起提供了一种监控和管理计算机网络的系统方法。因此,SNMP得到了广泛应用,并成为网络管理的事实上的标准。90年代初SNMP得到了迅猛发展,同时也暴露出了明显的不足,例如难以实现大量的数据传输,缺少身份验证和加密机制。因此,1993年发布了SNMPv2,提高效率和性能,同时还支持分布式网络的管理等,但是,SNMPv2并没有完全实现预期的目标,尤其是安全性能没有得到提高,如:身份验证(如用户初始接入时的身份验证、信息完整性的分析、重复操作的预防)、加密、授权和访问控制、适当的远程安全配置和管理能力等都没有实现。1996年发布的SNMPv2c是 SNMPv2的修改版本,功能增强了,但是安全性能仍没有得到改善,继续使用SNMPv1的基于明文密钥的身份验证方式。IETF SNMPv3工作组于1998年1月提出了互联网建议RFC2271-2275,正式形成SNMPv3。这一系列文件定义了包含SNMPv1、SNMPv2所有功能在内的体系框架和包含验证服务和加密服务在内的全新的安全机制,同时还规定了一套专门的网络安全和访问控制规则。可以说,SNMPv3是在SNMPv2基础之上增加了安全和管理机制。 MIB信息库 TCP/IP网络管理系统的基础是含有被管理元素信息的数据库,其在TCP/IP和OSI环境下称为MIB。每个被管理资源表示成一个对象,MIB是这些对象的结构化集合。MIB是一个树型结构的数据库。网络中的每个系统,比如工作站,服务器,路由器等,都维护一个可以反映被管理资源在系统中状态的信息库,通过读取信息库中对象的值,管理站可以监视系统中的资源,也可以通过修改某些值来控制系统中的资源。信息库中对象的类型,意义由MIB定义,管理站和代理端按同一个MIB作为接口通信,可以互相理解数据的意义,实现管理。 MIB树的顶级对象有三个,即ccitt, iso和这两个组织的联合体joint-iso-ccitt(见图2)。在iso的下面有一个美国国防部dod(Department of Defense)的子树(标号是6),再下面就是Internet(标号是1)。在只讨论Internet中的对象时,可只画出Internet以下的子树(图中的虚线方框),并在Internet结点旁边标注上{}即可。在Internet结点下面的第二个结点是mgmt(管理),标号是2。再下面是管理信息库,原先的结点名是mib。1991年定义了新的版本MIB-II,故结点名现改为mib-2,其标识为{},或{Internet(1) .}。这种标识为对象标识符。最初的结点mib将其所管理的信息分为8个类别,现在mib-2所包含的信息类别已超过40个。应当指出,MIB的定义与具体的网络管理协议无关,这对于厂商和用户都有利。厂商可以在产品(如路由器)中包含SNMP代理软件,并保证在定义新的MIB项目后该软件仍遵守标准。用户可以使用同一网络管理客户软件来管理具有不同版本的MIB的多个路由器。当然,一个没有新的MIB项目的路由器不能提供这些项目的信息。图2 SNMP支持的操作 SNMP共有5种操作: (1)GetRequest 读对象值操作,使管理站能够从被管理设备的代理中检索对象的值。 (2)GetNextRequest 读取当前对象的下一个可读取的对象的实例值。 (3)SetRequest 管理站更新代理中对象的值。 (4)GetResponse 代理对GetRequest/GetNextRequest/ SetRequest 3种操作的应答。 (5)Trap 代理向管理站发送对象值。 3 基于SNMP协议的拓扑发现 利用SNMP进行拓扑发现实质上就是扮演管理者角色的工作站读取被管理设备的MIB库中相关信息来实现的。每个设备维护一个MIB库,里面由此设备相关信息,使用SNMP管理网络最大的优点就是可以实时发现网络拓扑的变更,但也有其局限性,即被管理的设备都要支持SNMP。在网络拓扑结构中,最主要的是路由器之间的连接关系和子网划分情况,所以网络拓扑关系构建的要点 (1)在网络拓扑关系中,主要的组成元素包括网络节点设备,如路由器、交换机以及子网、网桥、网络中的主机等。 (2)路由器、交换机及其端口配置是构建拓扑关系的关键。 网络结构是分层次管理的,所以拓扑发现也应以分层方式来发现。路由器工作在网络层并且通常我们称网络层为第三层,所以以发现路由器和子网连接结构的拓扑发现我们称作三层拓扑发现,子网中主机发现也属于三层拓扑发现,因为采用的方法主要还是依据IP地址操作来发现的;而处于数据链路层的交换机,网桥获取我们可以称作二层拓扑发现。 三层拓扑发现 三层拓扑发现主要是通过对路由表的读取来获取相关IP信息来实现,图3是一个路由表信息图。图3 路由表信息图 Destination表示路由的目的地址网络号 。 Gateway表示下一跳的路由器或网关地址。 Genmask表示子网掩码。 Iface表示此路由的出口。 数据包在路由过程中,先将它的目的IP依次和路由表中的子网掩码按位与操作,然后分别和每行的目的地址网络号比较,如果相同,则发到Gateway标示的下一跳,如果没有匹配的则发送至默认网关,上图最后一行表示了此路由表的默认网关为。网络拓扑结构在其模型上实质是一个图结构,路由器可以看作图的顶点,网络的连接状况由图的边来表示,所以说网络拓扑结构的发现是对图的遍历过程。图的遍历主要有两种方法,即深度优先搜索(DFS)和广度优先搜索(BFS)。由于拓扑发现采用分层的方式,所以采用广度优先搜索。获取管理工作站所在网络的默认网关地址(通过本地路由表获得)。默认网关的代理进程返回默认网关的ipRouteTable,可以获得网络中实际中会对拓扑发现的范围进行限制,我们可以利用ipRouteMetric(路由器的跳数)来进行限制,获取相应子网类型的信息可以通过MIB-II中的ifTable中的ifType字段来获取,ifType定义 ifType OBJECT-TYPE SYNTAX INTEGER { other(1), regular1822(2), hdh1822(3), ddn-x25(4), rfc877-x25(5), ethernet-csmacd(6), iso88023-csmacd(7), iso88024-tokenBus(8), iso88025-tokenRing(9), iso88026-man(10), starLan(11), proteon-10Mbit(12), proteon-80Mbit(13), hyperchannel(14), fddi(15), lapb(16), sdlc(17), ds1(18), e1(19), basicISDN(20), primaryISDN(21), propPointToPointSerial(22), ppp(23), softwareLoopback(24), eon(25), -- CLNP over IP [11] ethernet-3Mbit(26), nsip(27), -- XNS over IP slip(28), -- generic SLIP ultra(29), -- ULTRA technologies ds3(30), -- T-3 sip(31), -- SMDS frame-relay(32) } ACCESS read-only STATUS mandatory DESCRIPTION "The type of interface, distinguished according to the physical/link protocol(s) immediately `below‘ the network layer in the protocol stack." ::= { ifEntry 3 }   因为ipRouteTable中的ipRouteIfIndex和ifTable中的ifIndex是一一对应的,所以可以通过ifIndex获得它对应的ifType,从而获取子网类型。 子网内主机的发现,我们最常用的方法就是ping命令了,检查目的主机是否是活动的。ping命令依靠ICMP来获取目的主机的活动状态信息,前提是我们知道目的主机的IP地址,但是它的效率很低,只能通过“穷举法”来猜测,例如一个子网/24,它可以有254台主机,如果使用ping的话我们只能一个一个的猜测,可能实际中主机的数目要远远小于254(针对本例来说),所以这种方法不可取。 MIB-II中存在一个ipNetToMediaTable对象,它记录了网络地址到物理地址的映射信息,子网中活动主机必然要在其网关的ipNetToMediaTable中注册自己的信息,ipNetToMediaTable定义 ipNetToMediaTable OBJECT-TYPE SYNTAX SEQUENCE OF IpNetToMedia Entry ACCESS not-accessible STATUS mandatory DESCRIPTION "The IP Address Translation table used for mapping from IP addresses to physical addresses." ::= { ip 22 } ipNetToMediaEntry OBJECT-TYPE SYNTAX IpNetToMediaEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Each entry contains one IpAddress to `physical‘ address equivalence." INDEX { ipNetToMediaIfIndex, ipNetToMediaNetAddress } ::= { ipNetToMediaTable 1 } IpNetToMediaEntry ::= SEQUENCE { ipNetToMediaIfIndex ----------------------对应路由表的Iface INTEGER, ipNetToMediaPhysAddress ---------------------主机物理地址 PhysAddress, ipNetToMediaNetAddress ---------------------主机网络地址 IpAddress, ipNetToMediaType INTEGER } 我们可以通过ipNetToMediaNetAddress获取和此路由器或网关连接的子网内所有主机的IP,然后分别和路由表中的子网掩码按位与就得到了它是属于哪个子网了,当然我们也可以用ipNetToMediaIfIndex来关联主机所属的子网号。 二层拓扑发现 子网中的交换机和网桥其工作方式是基于设备的物理地址进行的,对于三层拓扑发现是透明的,所以处于数据链路层的网络设备的发现原理是依据地址转发表来收集拓扑信息的。目前的商业系统如HP的OpenView不支持二层拓扑发现,仅仅依靠网络层的拓扑结构已不能满足现在网络管理的要求,对于二层拓扑发现的研究应早日提上日程。 支持SNMP的交换机应该实现Bridge-MIB(RFC1493),当子网有交换机互联网络时,我们应先获取交换机各个端口的状态然后才能高效地进行拓扑发现,MAU-MIB(RFC2239)中的ifMauTable对象的ifMauStatus记录了交换机各端口的工作状态,一共有六种状态,我们可以根据状态值判断来决定收集有用端口的地址转发信息。确定交换机的可用端口后,就可以收集端口地址转发信息了,通过读取交换机Bridge-MIB中的dot1dTpFdbTable表,定义 dot1dTpFdbTable OBJECT-TYPE SYNTAX SEQUENCE OF Dot1dTpFdbEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table that contains information about unicast entries for which the bridge has forwarding and/or filtering information. This information is used the transparent bridging function in determining how to propagate a received frame." ::= { dot1dTp 3 }dot1dTpFdbEntry OBJECT-TYPE SYNTAX Dot1dTpFdbEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information about a specific unicast MAC address for which the bridge has some forwarding and/or filtering information." INDEX { dot1dTpFdbAddress } ::= { dot1dTpFdbTable 1 } Dot1dTpFdbEntry ::= SEQUENCE { dot1dTpFdbAddress MacAddress, dot1dTpFdbPort INTEGER, dot1dTpFdbStatus INTEGER } ...... Dot1dTpFdbAddress表示物理地址,dot1dTpFdbPort表示源数据帧主机通信的端口,dot1dTpFdbStatus表式端口状态,共有五种。这里我们感兴趣的是前两者。然后我们将此表信息和前述ipNetToMediaTable表进行关联,通过Dot1d TpFdbAddress是否和ipNetToMediaTable中的ipNetToMedia PhysAddress相同来获取ipNetToMediaNet Address(即主机IP),根据前述已经获得的子网号和各主机IP我们就可以实现拓扑发现了。 4 结束语 拓扑发现是网络管理中一个难点,受限于网络的复杂性和网络协议的多样性,做到对网络中所有设备完整准确的发现是非常困难的,利用SNMP进行拓扑发现的优点在于发现速度快,容易实现,前提是要被发现的设备要支持SNMP协议。对于不支持SNMP的设备则无能为力,所以要想对于各种网络的各种设备进行拓扑发现, 应该运用多种技术,比如利用traceroute来跟踪路由过程和DNS中的设备信息发现新的设备集合。这些方法各有优缺点,应该根据实际需要有选择地结合它们,使得发现算法更加有效合理。 参考文献[1] 李明江 着,SNMP简单网络管理协议电子工业出版社 2007 晏明峰 李静等着,用SNMP管理互联网络 中国水利水电出版社 2001 Kevin Schmidt Douglas Mauro, Essential SNMP,2nd Edition Oreilly 2005 Mark , Managing Internetworks With SNMP(3rd Edition)
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:基于SNMP的网络拓扑发现.docx
    链接地址:https://www.zixin.com.cn/doc/4489641.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork