基于SNMP的网络拓扑发现技术研究
作者:佚名; 更新时间:2016-01-20
摘要:本文对简单网络管理协议(SNMP)相关理论进行了详细阐述。并在此基础上分析研究了基于SNMP的网络拓扑发现的原理和算法,以此来提高网络管理的效率。
关键词:SNMP;网络拓扑;网络管理
0引文
随着全球化的脚步逐渐加快,网络的重要性更与日俱增。如何有效管理网络也成为了企业、政府和学校等重要的管理课题。网络管理随着信息网络的飞速发展,规模的越来越大,对现代网络管理的功能需求也就越来越复杂,目前这个时期,正是网络管理加速发展的黄金时期,原有的标准被不断的更新,目的就是为了满足日益增长的网络管理功能需求,提高网络管理的效率和降低网络管理的成本。
1 SNMP概述
1.1 SNMP的组成
SNMP主要由三个部分组成:SMI、MIB和SNMP协议。
(1)管理信息结构(SMI)
管理信息结构是管理信息库中的对象定义和编码(以便通过协议传输)的基础,它是对公共结构和一般类型的描述,和标识方法一起,在实现中都要用到。SMI经常被比作数据库的模式。如同模式描述数据库中对象的格式和布局一样,SMI描述MIB中的对象。
(2)管理信息库(MIB)
MIB定义了可以通过网络管理协议进行访问的管理对象的集合。管理信息库中为每个对象说明了具体的对象实例,并为每一个实例绑定了一个值。
(3)SNMP协议
SNMP是NMS和代理之间的异步请求和响应协议。NMS能够发出3个含有不同协议数据单(PDU)的报文。这3个PDU是提取请求GetRequest-PDU,提取下一个请求GetNextRequest-PDU和设置请求SetRequest-PDU。代理则只能发出两个不同的报文:一个是对来自NMS请求做出应答的GetResponse-PDU报文,另一个是陷阱TraP-PDU报文,是代理发现预定义的异常事件发生时主动发出的。利用SNMP协议,对网络设备状态的监视主要通过查询代理MIB中相应对象的值来完成1
SNMP采用了client/Server模型的特殊形式:代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP代理负责回答SNMP管理工作站关于MIB定义信息的各种查询。SNMP代理和管理站通过SNMP协议中的标准消息进行通信,每个消息都是一个单独的数据报。SNMP使用UDP(用户数据报协议)作为第四层协议(传输协议),进行无连接操作"SNMP消息报文包含两个部分:SNMP报头和协议数据单元PDU。SNMP协议主要包括三个主要组成部分:SMI、MIB和SNMPvl协议,后来SNMPv2、
sNMPv3对这三个主要组成部分都作了相应的增强及修改。
1.2 SNMP工作原理
SNMP使用代理/管理站模型。SNMP代理是一个软件,它可以回答来自SNMP管理站的对MIB中定义的各种信息的查询,每个提供MIB信息给管理系统的网络设备都有一个SNMP代理。
SNMP代理和管理系统通过SNMP协议中的标准消息进行通讯,每个消息都是一个单独的数据报,SNMP使用用户数据报协议(Use: Datagram Protocol,UDP)作为传输协议,进行无链接操作,因此SNMP协议不需要依靠在管理系统和代理之间保持连接来传递信息。
在SNMP中主要包括以下五个原语:Get-Request、set-Request、Get-Next-Request、Get-Response和Tran组成,在SNMPv2中又增加了Inform-Request和Get-Bulk-Request,用来完成管理系统对安全部件的管理。管理系统通过Get-Request从拥有管理代理的网络设备中获取信息,管理代理用Get-Response来响应Get-Request消息,Get-Request和Get-Next-Request一起可以用来获取一个表中的对象。使用Set-Request可以对管理代理进行设置。而Tarp是管理代理发送给管理系统的非请求消息2。图1描述了对SNMP的五个原语进行操作。

 
2 基于SNMP的网络拓扑发现
    SNMP是一种基于TCP/IP协议的互连网管理协议。SNMP网络管理框架的一般体系结构由四个主要部件构成,分别是:通信网络、网络协议、网络管理进程和被管网络实体。
SNMP己经成为网络管理的标准,为网络拓扑自动发现带来了巨大的方便,同时也大大
提高了网络拓扑发现的速度。
           网络层拓扑发现算法的任务就是发现被管网络中的子网、路由器以及它们之间的连接关系。网络拓扑结构的各子网通过各自的路由器与其他子网通信,它们都连接到路由器的一个端口上。路由器的一个端口可以连接一个子网,也可以同其他路由器相连。当子网内的某一机器向别的子网发送数据时,数据包首先到达本子网的缺省路由器,缺省路由器检测数据包中的目的地址,根据其路由表确定该目的地址是否在与自己相连的子网中。如果是,则把数据包直接发往目的地,否则转发给路由表中规定的下一个路由器,下一个路由器再进行类似处理,依次类推,数据包将最终到达目的地。可见,通过分析路由器上的路由表,就可以知道网络层的拓扑结构3
2.1网络层拓扑发现用到的MIB组
    MIB-II(RFC-1213)是标准的SNMP MIB,所有的路由器都必须实现它。拓扑发现程序了具有通用性的特点,必然选择MIB-II作为拓扑发现工具。MIB-II由很多不同的组组成,本拓扑发现算法用到的组包括:system 、interfaces和 ip。下面详细介绍这三个组中包含的对象。
   (1)System组
    该组内包含七个对象,分别为:SysDescr, sysObjectlD, sysUpTime, sysContact, sysName,sysLocatio和sysServices。其中sysDescr描述了设备的相关信息,一般包括厂商,型号等。SysObjectlD唯一标识特定厂商的特定类型设备,比如sysObjectlD为1.3.6.1.4.9.5.45,则可以判断该设备为思科公司生产的型号为cisco6506的交换机。SysUptime表示设备从最近一次启动开始正常运行的时间。Contact由网络管理员设定,一般设为网络管理员的联系方式。SysName为设备的名字,算法中会用这个对象来判断不同的IP地址是否属于同一个设备。SysLocation由网络管理员设定,一般设为设各所在地点。SysServices表示了该设备所能提供的服务。
   (2) Interfaces组
核心期刊快速发表
Copyright@2000-2030 论文期刊网 Corporation All Rights Reserved.
《中华人民共和国信息产业部》备案号:ICP备07016076号;《公安部》备案号:33010402003207
本网站专业、正规提供职称论文发表和写作指导服务,并收录了海量免费论文和数百个经国家新闻出版总署审批过的具有国内统一CN刊号与国际标准ISSN刊号的合作期刊,供诸位正确选择和阅读参考,免费论文版权归原作者所有,谨防侵权。联系邮箱:256081@163.com