当前位置:文档之家› 校园网网络拓扑发现技术研究

校园网网络拓扑发现技术研究

校园网网络拓扑发现技术研究 

金洪颖,王朝斌,廖鹰梅 

(西华师范大学计算机学院,I ̄t JlI南充637009) 

摘要:从现有的网络拓扑发现方法出发,结合本校校园网的实际情况,提出了一种分层对校园网进行拓扑发现的方法,并对 

该方法进行了详细论述。 关键词:拓扑发现;SNMP;ICMP;ping;traceroute 

The Research on Campus Network Topology Discovery 

JIN Hong-ying,WANG Chao-bin,LIAO Ying—mei 

:oq ute D:paxtmen:,e 14/:, ̄f No:/z ̄]Un/i,e/'s/ty,N ̄nchong.SJch ̄an 657D09.el#ha) Abstract:Based on the existing network topology discovery method,combining with the actual situation of our own campus network,this paper 

puts forward a layer of campus network topology discovery methods.and then discusses this method in detail. Key words:topology discovery;SNMP;ICMP;ping;traceroute 

1引言 2.2基于ICMP的网络拓扑发现方法 

随着我校校园网规模的不断扩大,接入的硬件设备 ICMP是一种差错报告机制,可以被用来向目的主 

种类和数量日益增多,如何进行有效快速的网络管理已 机报告或者请求各种网络信息。基于ICMP协议的最著 日益成为学校网络中心的重要任务。网络拓扑发现是网 名应用就是Ping。通过Ping发送ICMP报文,可以探 

络管理中的一种基本而又重要的技术,它能够帮助网 测网络设备的活动状态和可达性。对一个网段内所有可 

管人员对整个网络DE拓扑结构进行准确的把握和定位, 能的网络IP地址发送ICMP报文,根据应答就可以发 是进行有效网络管理的基础和前提,对于监控整个校园 现该网段内所有活动的节点。这种方法的优点是:基于 

网络,获取完整的网络信息,保证网络高效稳定的运行TCP/IP协议的网络设备几乎都支持所有的ICMP协议,发 

非常重要。 现网络拓扑的同时,检测简单、快速和可靠。不仅可以 

用于搜索活动节点,还可以检测可达性。该方法的不足 2常用的网络拓扑发现方法 是:(1)报文容易伪造。由于可以通过编程直接改写报文 

2.1基于SNMP的网络拓扑发现方法 的ICMP头部和IP头部,这样的报文携带的源地址若是 

SNMP的基本思想是所有的网络设备维护的一个管 伪造的,在被攻击端根本无法追查。为了防止遭到这样 

理信息库,保存该设备所有运行进程的相关信息,并对 的网络攻击,很多系统会将ICMP服务关闭。此种情况 

管理工作站的查询进行响应。现在用作网关的网络设备 下,单独使用ICMP搜索会无效。(2)无法发现设备类型 

一般都支持SNMP代理,网络拓扑信息主要包含在MIB 和设备之间的连接关系。 

中,通过对MIB中拓扑信息的获取,就可以分析出网络 的拓扑连接情况。使用SNMP的最大优点是信息自动随 3校园网网络拓扑发现方法 

着网络状况的变化而更新,通过SNMP获取的拓扑信息 通过以上几种网络拓扑发现方法的分析比较,可以 总是反映网络最新的状况。该方法存在的不足有:(1)无 看出它们各有优点和不足,因此,在实际应用中,若能 

法发现网络中不支持SNMP协议或没有安装SNMP代 将几种方法结合使用,将能够达到更好的效果。结合我 理的网络设备;(2)路由表中包含了大量的冗余信息;(3) 校校园网的实际情况,现提出如下的分层网络拓扑发现 

存在多目路由的问题,不利于直观地反映网络拓扑的连 方法: 

按情况。所以,基于SNMP的网络拓扑发现方法比较适 (1)利用SNMP协议发现网络核心层设备; 

合用于发现网络中的主干拓扑,反映网络的整体状况。 (2)利用ARP协议来发现网络汇聚层设备; 

基金项目:本文由西华师范大学大学生科技创新基金项目资助,项目编号42 708080

 (3)利用ICMP协议来发现网络接入层设备。 3.1核心层网络设备的发现 网络的核心层的主要功能是实现骨干网络之间的优 

化传输,核心层网络就是整个校园网的主干网络。我校 

校园网的主干网络设备都是支持SNMP协议的,因此, 可以利用SNMP协议进行网络拓扑发现。 用SNMP读取入口设备(路由器)的IP路由表, 

并存入数据库,然后再从数据库中读取下一路由地址字 段。通过循环且不重复地从数据库中读取下一路由地址 字段便可实现对树的层次遍历。具体算法描述如下: 

初始化路由器队列,子网队列,连接队列; Wl1ile(路由器队列非空) f 

从路由器队列中取出一个路由器,为当前路由器; 

访问其路由表; 把路由表中的ipRouteNextHop不重复地放到路由 

器队列中; 

把各ipRouteDest不重复地放到子网队列中; 

把当前路由器和ipRouteNextHop的连接不重复地 放到连接 

队列中; If(ipRouteNextHop和ipRouteDest在同一个子网) 

{ 

把ipRouteNextHop和ipRouteDest的连接放到连 接队 列中;} If(ipRouteNextHop和当前网关的地址相同) 

{ 把当前网关和ipRouteDest的连接放到连接队列中。 

} 

} 3.2汇聚层网络设备的发现 在对核心层支持SNMP的设备进行发现之后,对于 

大多数不支持SNMP协议或者是禁用了SNMP的网络 

设备,使用ARP协议来进行网络拓扑发现。由于有以太 

网接口的网络设备都支持ARP协议,并在本机维护着一 张用于IP地址与以太网网卡地址问的地址解析和转换的 

ARP表,并且在统一以太网网段内的所有活动主机的地 址信息一般都在ARP表中,因此,可以利用ARP表进 

行拓扑搜索。具体步骤如下: 

向目的主机发送ARP请求,如果该主机存在且处 

于活动状态,则将到一个ARP回应,提取ARP报文的 发送端硬件地址字段,就可以得到目的主机的MA C地 址,从而惟一确定子网内的网络设备,由此来标志网络 

设备。同时,还可以利用ARP回应报文的硬件类型字段 

来发现目的主机所处子网的类型:1一以太网,2--实验 

太网,3--X.25,4-令牌网,5一混沌网(chaos),6-- IEEE 802.X,7一ARC网络。这样可以对原来用SNMP 

协议生成的核心层网络设备拓扑图进行细化。 

3.3接入层网络设备的发现 通常将网络中直接面向用户连接或访问网络的部分 称为接入层。接入层网络连接的主要是低端的交换机和 

用户的主机,网络结构简单,网络设备种类比较单一, 

因此可以使用ICMP中的ping和traceroute工具进行拓 

扑发现。具体方法是: (1)通过ping发送ICMP报文(类型码为8,代码 为0),每一个被ping的主机向源主机发一个ICMP回 

应应答包(Echo Reply),包中包含应答和时延等信息。 

(2)对所有ping通的主机进行taceroute,这样就可 以依次发现并记录所有活动主机的路由信息。 

4小结 

本文根据现有基于SNMP、ARP和ICMP的拓扑发 现方法,结合我校校园网的具体情况,提出了按照核心、 

汇聚、接入三层网络进行分层拓扑发现的方法。下一步 

的工作重点就是如何通过软件来实现这个拓扑发现方法, 

并画出实时的网络拓扑结构图。 

参考文献: [1]李明江.sNMP简单网络管理协议[M】.电子工业出版 

社,2007. 

[2]吴海峰.基于SNMP的网络拓扑发现算法【J】.大连理工 大学学报,2005年1 0月. [5】王伟莉,陈雷.网络拓扑发现算法的研究与实现[J]. 

沈阳工业大学学报,2004,26(2). [4]申彦.校园网物理发现系统的实现[J].计算机工程与设 

计,2007年3月. [5】杨国政,陆余良.计算机网络拓扑发现技术研究[J].计 

算机工程与设计,2006年l 2月. 

作者简介:金洪颖(1 983),女,现任西华师范大学计算 

机学院通信工程教研室教师,硕士研究生在读。 收稿日期:20】O-08--04

相关主题