欢迎来到天天文库
浏览记录
ID:40565677
大小:60.08 KB
页数:6页
时间:2019-08-04
《SNMP拓扑发现方法分析总结》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.SNMP协议介绍及算法说明1.1SNMP协议介绍SNMP是目前最流行的网管协议。作为应用层上的协议,它主要通过一组Internet协议及其所依附的资源提供网络管理服务。利用SNMP管理工作站可以远程管理所有支持这种SNMP的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。1.2管理信息库MIB管理信息库MIB(ManagementInformationBase)是网络管理系统中所有被管理元素信息的数据库。数据库中的元素是网管中的被管资源,且被管资源以对象来表示,每个对象表示被管资源某一方面的属性。通过对这些对象的存取访问,就可以得到网络设备的所有静态或动态内容,涵盖网
2、络性能、配置、路由和故障等各个方面。每个对象又包含若干信息变量,每个信息变量包含如下信息:变量名、变量的数据类型、变量的读写属性、变量的值。MIB的定义与具体的网络管理协议无关,厂商可以在产品(如路由器)中包含SNMP代理软件,并保证在定义新的MIB项目后该软件仍遵守标准。用户可以使用同一网络管理客户软件来管理具有不同版本的MIB的多个路由器。MIB中的所有被管对象都被排列在一个树形结构之中。处于叶子位置上的对象是实际的被管对象,每个实际的被管对象表示某些被管资源、活动或相关信息。MIB分为公有MIB和私有MIB,公有MIB-2(RFC1213)是1990年定义的,所有设备厂商都支持该MI
3、B库定义的OID变量,每个厂商还可以补充自己的MIB库,这就是私有MIB,例如Cisco的私有MIB是1.3.6.4.1.9开始,该节点下的所有自变量都是Cisco自己定义的。9是Cisco申请的唯一厂商编号。1.3算法思想基于SNMP的拓扑发现算法方法,其基本思想是所有的网络设备维护一个MIB库,保存其所有运行进程的相关信息,并对管理工作站的查询进行响应。在网络设备的MIB中含有网络连接的信息,基于SNMP的网络拓扑发现算法就是通过采集设备的MIB数据,从中提取出关于网络拓扑的信息。算法从管理中心的缺省路由开始,采用广度优先搜索遍历的方法,对整个网络中的路由进行广度搜索,用SNMP获取每
4、台被搜索到的路由器的路由表、地址表等信息,然后进行综合分析,从而发现网络中的路由拓扑结构。然后进行子网搜索,确定子网内各网络设备的状态、类型等。1.4算法理论基础从设备的MIB库中提取出与逻辑网络拓扑发现相关的信息,然后将这些信息归纳、总结,从而得出网络的路由拓扑结构。在算法中需要使用的MIB-II对象描述如下:(1)system组算法中使用的对象有sysObjectID,sysLocation和SysService.(2)ip组算法中使用的对象有简单对象ipFowarding和两个表对象,ipAddTable(地址表)、ipRouteTable(路由表)。(1)interfaces组算法
5、中使用的interfaces组的对象是ifNumber,表示系统中的网络接口数量。1.现有的网络拓扑发现算法2.1传统的SNMP拓扑发现算法算法中定义三个队列用于实现基于SNMP的网络拓扑发现算法,分别为路由器队列、子网队列和连接队列,用于存放发现过程中的路由器、子网和连接关系。以运行拓扑发现的主机的默认网关为起始节点,访问其路由表,对于路由表的每项ipRouteDest,如果对应的ifType=4,将下一跳路由器地址ipRouteNextHop放到路由器队列,将ipRouteNextHop和路由器的连接放到连接队列。如果对应的ifType=3,将ipRouteDest放到子网队列,将ip
6、RouteDest和路由器的连接放到连接队列中。其中的数据结构定义如下:StructRouterQueue{IpAddressrouterIp;RouterQueue*next;}StructSubNetQueue{IpAddresssubnetIp;//子网地址IpAddresssubnetMask;//子网掩码IntsubnetType;//子网类型}连接可用一个二元组(from,to)来表示StructConnectQueueItem{IpAddressfrom;IpAddressto;ConnectQueueItem*next;}*ConnectQueue;算法描述:Begin初始
7、化路由器队列,子网队列,连接队列;把缺省路由器放入到路由器队列中;While(路由器队列非空){从路由器队列中取出一个路由器,为currentRouter;访问currentRouter路由表;If(ifType==3){//表示ipRouteNextHop和currentRouter相连接把路由表中的各ipRouteNextHop不重复地放到路由器列表中;把currentRouter与各ipRouteNextHop的连
此文档下载收益归作者所有