摘要:网络拓扑发现是网络工程的一个重要的研究子分支,是实现网络管理的基础性环节。由于大规模IP网络本身所具有的大规模性、动态性、异构性等特点,使
得面向大规模IP网络的拓扑发现成为一项非常具有挑战性的课题。为了提高IP网络拓扑发现的效率和真实性,人们发明了多种多样的网络拓扑发现方法。本文介
绍网络拓扑发现的分类,重点探讨了基于SNMP的网络拓扑发现技术。
关键词:大规模IP网络;拓扑发现;SNMP
一、网络拓扑发现概述
(一)网络拓扑发现的概念
网络拓扑是指网络元素及其之间的连接关系。这里所讲的网络元素,既可以是路由器,也可以是交换机、网桥等,还可以是客户端、服务器,甚至是子网、AS
等。这里所讲的网络,既可以指局域网,也可以是互联网,也可以是互联网的一部分。而网络拓扑发现,就是指发现并确定网络元素及其之间的连接关系。
(二)互联网的拓扑结构抽象
网络技术发展到今天,除非为某种特殊应用而专门设计的局部网络,以太网(
Ethemet)已经成为事实上通用的网络组网方式,TCP/IP协议簇已经成为事实上的网络通讯协议标准。从概念上说,互联网可以看作是一个个小的局域
网络通过互联(互连)而成的。但一方面,组成互联网基础的各个局域网络的拓扑结构本身可能很不相同,另一方面,各个局域网络的之间的互联(互连)关系也千
差万别。因此,互联网的拓扑结构不可能用局域网三种基本的网络拓扑结构进行抽象。
二、网络拓扑发现的分类
(一)按照网络拓扑发现的对象进行分类
按照对象的不同对网络拓扑发现进行分类,可分为面向域内的网络拓扑发现和跨域的网络拓扑发现。
面向域内的拓扑发现,是指面向同一AS或者同一ISP、甚至更小规模的局部网络的拓扑发现技术。跨域的网络拓扑发现则是指面向不同AS(或ISP)网络
的拓扑发现技术。二者的不同主要在于,面向域内的拓扑发现网络管理员一般具有对网络元素的管理和控制权,而跨域的拓扑发现网络管理员一般无法对域外的网络
元素进行管理和控制。由于探测的对象不同,因此所适用的网络发现方法以及网络拓扑发现的目的等均有很大的不同。由于网络管理员不能对网络元素进行管理和控
制,因此在一般情况下,跨域的网络拓扑发现比域内的网络拓扑发现困难得多。
(二)按照网络拓扑发现的方法进行分类
按照发现方法对网络拓扑发现进行分类,可分为主动式网络拓扑发现和被动式网络拓扑发现。
所谓主动式的网络拓扑发现,是指将一组精心设计的数据报注入被探测的网络,通过对网络反馈信息进行分析,得到网络的拓扑连接情况。例如,各种基于
Traceroute的网络拓扑发现方法,就是典型的主动式网络拓扑发现。基于SNMP的网络拓扑发现,从原理上也应该归类为主动式的网络拓扑发现方法。
由于主动式网络拓扑发现可以根据探测需要,由探测发起者对探测数据报进行专门设计,因此适用情形较广,可以探测网络范围可以很大,并且可通过提高注入数据
包的科学性和合理性,不断提高网络拓扑探测的准确度。主动式网络拓扑探测的缺点主要是探测数据报将增大网络的负荷。在大规模多点探测中,甚至有可能导致网
络性能的严重降低。在极端的情况下,由于注入数据报严重改变了网络负荷,甚至使探测到的网络拓扑与实际情况不相符。
而被动式的网络拓扑发
现,则是指对网络元素间的数据进行侦听,通过对侦听得到的数据进行分析,进而得出网络的拓扑连接情况。例如,通过侦听路由器间的OSPF交换数据包来探测
网络拓扑的方法,就是一种被动式的拓扑发现方法。被动式的网络拓扑发现方法不向网络注入数据包,因此对网络负荷的影响较小。但由于被侦听的只是局部网络,
因此往往通过分析也只能得到局部网络的拓扑情况。另外,侦听得到的数据可能存在很多不真实的数据,如不能对数据进行有效的分析处理,有可能得到不真实的网
络拓扑图。
(三)按照网络拓扑发现的粒度分类
根据粒度的不同,网络网拓扑发现大致可以分为粗粒度、中间粒度、细粒度三个级别。
粗粒度是一般指AS级别的拓扑发现。在粗粒度的拓扑图中,节点代表一个域,而边则代表域间的连接。中间粒度是指集群(路由器集簇)间的拓扑发现。在中间
粒度的拓扑图中,节点代表单路由器或主机的特定集群,边则代表路由器或集群主机之间的连接。细粒度是指路由器级的拓扑发现。在细粒度的拓扑图中,节点代表
路由器(子网或主机),边代表路由器的连结。目前,面向Internet的拓扑发现的研究主要集中在AS级和路由器级两个方面。
三、基于SNMP的网络拓扑发现分析
(一)SNMP协议简介
SNMP C Simple Network Management
Protocol)即简单网络管理协议,目前有SNMPvI、SNMPv2两个版本。SNMPvl于1990年开始发布,其规范文为RFC1157等。
SNMPv2于1993年开始发布,RFC1441对SNMPv2进行了系统地介绍。目前,最新版本SNMPv3的规范文本为RFC2571。SNMP采
用“管理者一代理”的模式,实现对网络设备的监视和控制。采用“轮询”与“陷阱”两种方式,实现管理进程与代理进程之间的信息交互,共定义了基本的5种报
文:get-request操作:从代理进程处提取一个或多个参数值;get-next-request操作;从代理进程处提取一个或多个参数的下一个参
数值;set-request操作:设置代理进程的一个或多个参数值;get-response操作:返回的一个或多个参数值。这个操作是由代理进程发出
的。它是前面3种操作的响应操作;trap操作:代理进程主动发出的报文,通知管理进程有某些事情发生。
SNMP是一个应用层协议,尽管可
以在传输层采用各种各样的协议,但是在SNMP中,用得最多的传输层协议还是UDP。另外,为了实现对网络的管理,SNMP又对其它两个必需的部分进行了
定义。一个是管理信息库MIB(Management Information
Base),管理信息库包含所有代理进程的所有可被查询和修改的参数。RFC1213定义了第二版的MIB,叫做MIB-II。另外一部分是关于MIB的
一套公用的结构和表示符号,叫做管理信息结构SIB( Structure of Management
Information),由RFC1155定义。
(二)基于SNMP的网络拓扑发现的基本原理
所有的网络设
备维护一个MIB(管理信息库),保存该设备上与网络运行相关的全部信息,并对管理工作站的SMMP查询进行响应。管理工作站通过发送请求信息,查询储存
于网络路由设备中的管理信息库MIB中的相关信息,从中解析出网络拓扑相关的信息,就可以构画出整个网络的拓扑结构。从原理上看,基于SNMP的网络拓扑
发现类似于图的广度优先搜索。
MIB中的路由表ipRouteTable定义了该设备的路由信息,其中与拓扑发现相关的表项
有:ipRouteDest、ipRouteMask、ipRoutelf Index,
ipRouteNextHop、ipRouteType等。ipRouteDest记录以该设备为起点可以到达的目的地址范围,ipRouteMask记
录的是目的网络的子网掩码,ipRouteIf
Index记录ipRouteDest所对应的接口索引号,ipRouteNextHop记录本接口所对应的下一跳网关地址或者直连子网的网关地
址,ipRoute升pe记录ipRouteNextHop所表示的地址与该设备的连接关系。
(三)基于SNMP的网络拓扑发现的优缺点及适用范围
基于srrnrn的网络拓扑发现的优点是发现过程和算法简单,目标明确,发现效率高,系统和网络开销小。由于入nB的信息可以自动随着网络的状况更新,
这样通过srrNrn获取的拓扑信息就总是反映网络最新的状况。另外,此方法除了可以实现网络层拓扑探测外,经过对入心B数据进行精心分析,还可以实现对
链路层的拓扑发现。基于SNMP的网络拓扑发现的主要缺点是方法受到路由设备访问权限的限制。随着网络安全问题越来越受的人们的重视,因此采用此方法开展
跨管理域的网络拓扑发现变得越来越困难。另外,除了标准的MIB信息外,有的厂家为自己的设备开发了专门的MIB,如果在拓扑自动发现程序中使用了这些
MIB,其处理上就需要随厂家的不同而作特殊的处理。
参考文献
[1] 熊英,基于TCP/IP的网络拓扑发现方法的研究.湖北工业大学学报.2005
[2] 宰家斌,大规模网络拓扑发现方法分析研究,计算机仿真.2008
[3] 李可,IP网络拓扑自动发现研究,计算机工程,2004
分享到:
相关推荐
本文探讨了一种基于SNMP(简单网络管理协议)和Java技术的IP网络拓扑生成方法,该方法主要应用于CHINANET第三期扩容工程项目中的网管系统。文章详细介绍了从理论到实践的整个过程,并通过实际网络运行结果验证了该...
在"snmp_demo"项目中,多线程的应用是为了提高效率,使得在大规模网络环境中,多个设备的发现和信息收集可以并行处理,大大加快了整个拓扑发现的过程。 总的来说,这个压缩包提供的工具或示例代码可以帮助IT专业...
通过实施SNMP拓扑发现,运维人员可以实时监控网络状态,及时发现并解决误连、错连等问题,提升网络的安全性和性能。同时,自动化拓扑发现也有助于简化运维工作,降低人为错误的风险,对于保障电力系统的稳定运行具有...
在基于SNMP的拓扑发现算法中,主要依赖于SNMP协议来收集网络设备的信息,并通过分析这些信息来构建出网络的拓扑结构。这种算法通常包括以下几个步骤: 1. **设备发现**:首先需要发现网络中的所有设备,包括路由器...
该方法主要解决了大规模网络设备中的故障定位问题,通过结合网络拓扑和多指标实现了快速和准确的故障定位。 在大规模网络中,设备数量可能达到万级甚至十万级,网络设备之间的关系复杂,设备故障引发的网络异样点也...
### IP网络拓扑发现算法的设计知识点总结 #### 一、背景与意义 - **网络拓扑发现的重要性**:网络拓扑发现是网络管理的核心组成部分,它对于了解网络结构、优化网络性能、提升网络安全等方面至关重要。 - **现有...
本文提出了一种基于SNMP协议的以太网拓扑自动发现算法,该算法不仅能够自动发现网络中的逻辑和物理连接结构,还能够检测哑设备的存在及其与其他设备的连接关系。相较于现有的拓扑发现算法,本算法在降低对网络设备...
《Internet级路由器级拓扑自动发现系统》这一专业技术报告,正是针对这一需求,提出了一种能够自动发现大规模IP网络拓扑结构的方法。 #### 二、系统架构与关键技术 该系统的设计旨在解决大规模网络拓扑自动发现的...
本文将详细介绍如何使用SNMP(简单网络管理协议)和CDP(Cisco Discovery Protocol)这两种协议来自动绘制网络拓扑,并探讨基于这些技术的手工调整方法。 #### 二、相关协议及概念 ##### 1. SNMP协议 SNMP是一种...
自动发现网络拓扑是指通过特定的技术手段自动识别网络中的所有设备,并了解这些设备之间的连接关系。这一过程通常涉及到两种关键技术:ICMP(Internet Control Message Protocol,即互联网控制消息协议)和SNMP...
1. 自动发现:系统通过扫描IP地址范围,自动发现网络中的设备和连接,构建拓扑图。 2. 手动配置:对于复杂网络环境,可能需要手动添加和配置网络元素。 3. 动态更新:拓扑图应能实时反映网络变化,如设备上线、下线...
在本文中,作者介绍了一个基于SNMP的电信网络监测系统的设计,该系统重点关注IP网络的监测。系统采用分布式结构,包括根监测器、数据库服务器和Web服务器,以及分布在网络各处的叶监测器。根监测器和叶监测器协同...
在网络层的拓扑发现方法中,一般可以分为两大类:基于SNMP协议的方法以及基于UDP协议/ICMP协议的方法。SNMP协议的方法在小规模局域网内使用已经比较成熟,它要求所有网络设备必须支持SNMP协议,因此不适用于广域网。...