文档库 最新最全的文档下载
当前位置:文档库 › 毕业论文模板 班级-学号-姓名-

毕业论文模板 班级-学号-姓名-

苏州大学本科生毕业设计(论文)

目录

(小二、黑体、居中,样式LW居中标题:ALT+C)

摘要 ........................................... (1)

Abstract........................................... .. (2)

前言........................................... . (3)

第一章绪论 (4)

1.1 开发背景 (4)

1.2 关于国内外同类系统的分析 (4)

1.3 TOPOLOGY网管软件的任务与目标 (6)

1.4 本文所作的工作 (7)

第二章 SNMP、MIB与TOPOLOGY开发环境 (8)

2.1 SNMP (8)

2.2 SNMP操作和SNMP报文传输 (9)

2.3 SNMP V2和SNMP V3 (10)

2.3.1 SNMP V2协议 (11)

2.3.2 SNMP V3协议 (12)

2.4 管理信息库MIB (12)

2.5 TOPOLOGY开发环境 (14)

第三章 TOPOLOGY系统总体设计 (15)

3.1 TOPOLOGY系统总体结构 (15)

3.2 TOPOLOGY系统各功能模块设计 (15)

3.3 模块之间的协调 (15)

第四章 TOPOLOGY网络拓扑发现模块的设计与实现 (16)

4.1 基于SNMP的主干网拓扑发现 (16)

4.2 子网内拓扑发现 (16)

第五章TOPOLOGY网络拓扑图生成/布局模块的设计与实现 (17)

第六章总结与展望 (18)

6.1 课题总结 (18)

6.2 进一步开发的展望 (19)

参考文献

致谢

(1级目录:四号、黑体;其他:四号、宋体;间距:固定值22磅)

摘要

(小二、黑体、居中,样式LW居中标题:ALT+C)

随着网络的高速发展,网络管理变得越来越复杂,网络管理软件的研究与开发伴随网

络的不断发展也越来越受到人们的重视。本文基于SNMP协议、MIB库,详尽阐述了作者设计的TOPOLOGY网管软件的系统设计,以及它的四大模块——网络拓扑发现、网络拓扑生成与布局、查询MIB、功能模块协调与切换的主要设计思想和实现方法,论文中着重研究和讨论了对网络拓扑的发现、生成、布局的设计实现算法。在传统主网拓扑发现算法的基础上,作者提出两种新的补充算法,使得拓扑更加完整,具有一定的创新性。论文所提出的拓扑布局算法采用环型算法与启发式算法相结合,使得布局更加合理,也是该网管

软件的特色和创新做法。论文在最后还探讨了对系统进行进一步开发的展望。

(小四、宋体、间距:固定值22磅,样式LW中文摘要:ALT+Z)关键词:拓扑发现,布局,SNMP,MIB,WinSNMP

作者:XXX

指导教师:YYY

Abstract

(小二、黑体、居中,样式LW居中标题:ALT+C)

With rapid development of network, network management becomes more and more complex. Meanwhile, the research and development of network management software are also paid more and more attention to by people. Based on SNMP and MIB, this thesis has accounted in detail for the system design of Network Management Software TOPOLOGY developed by this author. The main designing thoughts and implementation schemes of four modules include network topology discovery, topology generation/layout, MIB polling and modules coordination /switching. The thesis has examined and discussed with focus on the designing and implementing algorithms of network topology discovery, generation and layout.On the basis of traditional backbone network discovery algorithm, the author gives out two new algorithms for supplement to make the topology more complete, and the new algorithms are creative on a certain extent. Topology layout algorithm presented by this thesis combines the elicitation algorithm to the ring algorithm to make the layout more rational and this is also the characteristic and creative way in this network management software. In the end, the prospect of further development to this system is also explored.

(四号、Times New Roman、间距:固定值22磅,样式LW英文摘要:ALT+E)

Keywords: Topology Discovery; Layout; SNMP; MIB; WinSNMP

Written by XXX

Supervised by YYY

前言

(小二、黑体、居中,样式LW居中标题:ALT+C)

课题概述,本研究主题范围内国内外相关的研究发展趋势,本论文所要解决的问题,论文主要研究内容,研究或开发设计的方法,实用价值与意义等。

全文共分为X章。第一章……,第二章……,第三章……。

[前言篇幅:1页]

格式说明:

(1)中文:除各级标题外,正文一律为

(小四、宋体、间距:固定值22磅,样式LW正文:ALT+Q)

(2)英文:除各级标题外,正文一律为

(四号、Times New Roman、间距:固定值22磅)

第一章绪论

(小二、黑体、居中,样式LW标题1:ALT+1)

[标题前空一行]

1.1 开发背景

(小三,宋体,加粗,样式LW标题2:ALT+2)

[标题后空一行]

随着网络的高速发展,网络管理变得越来越复杂,网络管理软件的研究与开发伴随

网络的不断发展也越来越受到人们的重视。同时,随着计算机网络的使用越来越广泛,用户对网络的依赖也越来越大,网络的可靠性成为越来越重要的问题。网络管理是一个解决方案,它寻求最大限度地利用现有的网络资源,增加网络的可用时间,提高网络设备的网络性能、服务质量和安全性。因此,研究网络管理具有重要的意义[1]。

目前国内的企业网、园区网系统所使用的网络管理软件大多都是从国外引进的;如IBM公司的Netview,HP公司的OpenView,Cisco公司的Ciscoworks,3Com公司的Transen等。这些网络平台一般价格昂贵,不具备良好的中文界面,信息资源方面的管理能力相对较弱,其中一些只能管理本公司的产品(如Cisco Works、Transen等),有些还需要第三方产品的辅助。虽然它们提供了丰富的API,但许多对于开发园区网络管理系统是不必要的,并且大多数网络管理员不具备二次开发的能力,这就造成资金和资源的浪费。所以根据我国互联网的实际应用,结合园区网的自身需求,自主设计与开发一个成本低、效率高的通用型网络管理系统是十分必要的。

1.2 关于国内外同类系统的分析

针对网络管理的需求,许多厂商开发了自己的网络管理产品,其中一些形成了一定的规模,占有大部分的市场。主要有:

(1) Sun NetManager

Sun NetManager是不依赖于协议的分布式管理体系结构网络管理系统。它是第一个重要的开发平台,如果SunNet Manager要被最终用户直接使用,需要第三方厂商开发出来的应用系统来实现,主要功能有:拓扑结构图、自动管理、链接管理、浏览工具和API。

Sun NetManager在拓扑管理方面,仅能发现IP网络设备,能判断SNMP(TCP Socket161)是否处于Active状态以及网络设备是否有多个端口(router),不能发现非IP设备。

(2) HP OpenView Network Node Manager(NNM)

HP OpenView是第一个出现的网络管理系统,是一个广泛使用、获得大多数认可的网络管理系统。它主要给第三方网络管理应用程序开发人员提供开发平台,同时也可向用户提供最终的可安装产品,主要功能:自动发现网络拓扑结构、性能与吞吐量的分析、故障报警和历史数据分析。

OpenView的网络拓扑自动发现功能很好,启动后能立即自动发现本网段的结点,网段中的路由器(或网关)、子网以图标的形式显示在图形上。为了进一步搜索子网,只需点亮响应的子网图标,并置其为被管。不能在运行时手工加入与本网段非直连的管理对象。

(3) IBM Tivoli NetView

IBM Tivoli NetView检测TCP/IP 网络、显示网络拓扑结构、相关信息和管理事件以及SNMP陷阱、监控网络运行状况并收集性能数据。Tivoli NetView通过可扩展性和灵活性满足大型网络管理人员的使用需要,以管理关键任务。它还提供了强大的信息过滤能力,可通过设置阀值来减少部分冗余报警。

IBM的网络拓扑功能在同类产品中并不突出。

(4) Cisco Works:由Cisco公司开发。它使用Cisco的专门技术——CDP(Cisco Discovery Protocol)对本公司的网络产品进行精确的搜索。但CDP只能搜索本公司的网络产品,对其它厂家的网络产品不具备兼容性, 主要功能: 自动安装管理器、与NetView 的接口、通用命令管理器、设备监控、路径工具和实时图形。

CDP支持对VLAN的拓扑发现,前提是网络设备必须是Cisco的产品。

(5) 国外其它网管软件产品

TRANSCEND由3Com公司开发。该产品的自动拓扑搜索功能简单,只能检测出当前局域网中的主机,不能确定各个主机的互连情况,不能确定主机的接口类型。TRANSCEND只能对本公司的网络硬件设备产品进行较为精确的搜索,显示出其网络设备各个端口的状态,但不能发现其它厂商的网络设备,运行速度很慢,对机器的硬件配置及内存容量要求较高。

Net Walker由Fujitsu公司开发,是一种较好的网络管理产品。能较好的搜索到当前网络中运行的网络设备,较精确地确定网络互连情况和网络接口。能够实时地反映网络当前状态,对有故障的网络设备能较快的检测到并进行报警。但只能运行在UNIX环境中,不能在Windows环境中运行,运行速度较慢,对网络的搜索需要大量的时间。

PloyCenter On NetView(PNV)由DEC公司开发。它是在HP OpenView和IBM Tivoli NetView的基础上开发而成的,具有一些前两者所没有的特点。PNV提供了一个通用的网络管理平台,它支持多种网络管理协议,具有分布安全性,提供登录确认。它能

动态发现设备,按其在协议栈中所处的位置进行摆放,建立连接关系。它还实现了收集并图形化显示当前数据和历史数据和支持关系数据库等功能。

(6)国内网管软件

国内自主开发的网络管理软件较少。上海金桥网络工程中心开发了在Windows PC 平台上使用的网络管理软件GoldView,该软件基于简单网络管理协议SNMP(Simple Network Management Protocol)实现了对TCP/IP网络的拓扑发现。然而,由于各种原因,该软件在国内未能推广使用。南京飞博的IP View是一款在Linux平台下使用Java 自主开发的专业网管软件,采用B/S结构。北京游龙科技的SiteView对服务器进行监测的功能十分强大。IP View和SiteView都具有较强的通用性,在国内市场上占有率较高。

网络管理也是国内高校网络研究的热点,目前取得了一些阶段性的成果。如清华大学的CIMS网络监控管理系统,北京航空航天大学开发的网络管理系统,东南大学的网络管理系统Watcher,以及上海交通大学与日本合作开发的Walker中文版网络管理系统。

1.3 TOPOLOGY网管软件的任务与目标

本课题基于SNMP网管协议与通用MIB库,致力于网络拓扑自动发现与生成、为TOPOLOGY通用管理平台开发出主要的网络管理功能模块,并进行网络主机与设备的状态检测,实现网络管理系统。要求完成如下主要工作:

(1)网络拓扑发现模块的设计与实现,自动发现目标网络的拓扑结构与其包含的设备,为TOPOLOGY 提供准确完整的网络拓扑信息。自动发现网络主干拓扑,确定路由器与路由器,路由器与子网的连接情况;自动发现子网拓扑,确定子网内网络设备的状态;确定子网内网络设备的类型;确定子网内网络设备的网络接口;确定子网络接口的状态。

(2) 网络拓扑图生成/布局模块的设计与实现,用于将网络拓扑信息布局到计算机屏幕上,形成网络拓扑图,将路由器与路由器,路由器与子网以及主机与主机的连接情况用图形的方式清晰地显示,要求美观、调整方便灵活。

(3)MIB信息查询模块的设计与实现,完成读取指定网络设备MIB库中信息,为TOPOLOGY用户提供网络管理信息,实现网络主机与设备的状态检测。

由于TOPOLOGY是一款投入实际使用的网管软件,所以本课题特别强调开发成果的通用性、鲁棒性和实时性。

通用性:主要针对网络拓扑自动发现,具体表现为两方面的通用性:

(1) 要求能够发现各种类型的设备(如:路由器、三层交换机、主机等);

(2) 要求能够发现多个厂商制造的网络设备。

鲁棒性:按照TOPOLOGY系统规划,本课题所承担的研究开发内容在投入使用后

要求能够持续运行不中断,系统要求稳定、可靠性好。

实时性:网络管理系统一般要求系统尽快反映网络的现时工作情况,本课题也对实时性有相当要求。TOPOLOGY要求本课题所开发的模块在投入使用后,将拓扑结构及发现到的网络故障信息尽快如实反映在屏幕上。

1.4 本文所作的工作

本文以笔者在研发TOPOLIGY网管软件中所做的工作为基础,围绕MFC框架结构、SNMP协议和MIB库,讨论TOPOLOGY网管软件的研究、设计与实现,详尽阐述了TOPOLOGY网管软件的系统设计,以及它的四大模块——网络拓扑发现、网络拓扑生成与布局、查询MIB、功能模块协调与切换的主要设计思想和实现方法.

TOPOLIGY网管软件由课题组黄逊、徐家燕和吴可旸三人共同完成。其中,笔者的主要工作为:

(1) 系统分析、系统设计、界面设计;

(2) 对网管软件使用和涉及的重要相关MIB库中的项目进行分析、对网管软件与SNMP Agent交互的过程和进行网管软件开发的具体方法进行了详尽的分析;

(3) 设计了主干网拓扑生成/布局、子网拓扑生成/布局的算法

(4) 编写了主干网拓扑生成/布局模块、子网拓扑生成/布局模块协调模块、MIB查询、功能模块协调与切换、界面设计等方面的代码,进行了系统测试;

网管软件TOPOLOGY遵循公用MIB规范,做到兼顾普遍性、通用性和实用性,对异构型的多个厂家生产的网络互联设备组成的网络做到了普遍适用。在传统主网拓扑发现算法的基础上,论文提出两种新的补充算法,使得拓扑更加完整,论文提出的算法具有一定的创新性。拓扑布局算法采用环型算法与启发式算法相结合,使得布局更加合理,也是该网管软件的一大特色和创新做法。

TOPOLOGY网管软件由项目组三人共同开发,本论文对笔者所作的工作进行了详细的阐述,同时对课题组共同开发的TOPOLOGY网管软件的相关的其它重要部分也进行了必要的讨论。

第二章 SNMP、MIB与TOPOLOGY开发环境

TOPOLOGY网管系统基于SNMP、MIB,软件开发平台采用了MS Visual

C++6.0,并使用了MFC程序开发框架,在本章中对这些技术背景先作简单介绍。

2.1 SNMP

1988年,Internet体系结构委员会(IAB)提出了简单网络管理协议SNMP的第一个版本SNMP V1[8],后来又发表了SNMP V2、SNMP V3。SNMP是基于TCP/IP 协议的各种互联网络的管理标准,由于它满足了人们对通用网络管理标准的需求,而且本身简单明了,实现起来比较容易,占用的系统资源少,所以已成为事实上的工业标准。

OSI网络管理一般采用管理器(Manager)/代理(Agent)的管理模型。OSI的网络管理组织模型包括以下几个重要的组成部分:

(1) 被管对象MO(Managed Object):可以用一定的数据表示方法表示,通过网管协议进行管理的被管理对象。

(2) 管理进程(Manager Process):通常位于控制台(Console)上,它和代理进程通信,发出管理操作指令,接收来自代理的信息。

(3) 代理进程(Agent Process):通常位于网关、路由器等被管对象中,监视被管对象的状态,响应管理进程的管理请求、报告被管对象的属性、执行被管对象的操作等。

(4) 管理信息库MIB(Management Information Base):MIB一部分位于Manager 上,一部分位于Agent中。MIB实际上是一个提供被管元素信息的数据库,它由一系列被管对象及其属性、操作、通知、行为等构成,是OSI标准所提出的被管对象的数据表达格式。

在管理过程中,管理员通过控制台(Console)向Manager发出管理请求,通信模块将请求发送给指定的Agent;Agent对被管对象执行相应的管理命令,或获取被管对象的属性值,或操作被管对象;Agent也可以在被管对象出现异常时,主动产生事件报告,通过通信模块发送给Manager,Manager经过处理后在控制台显示。

SNMP的组织模型和OSI标准表述的组织模型基本一致,只是采用的术语有细微的差别。在组织模型中所涉及的管理构件基本相同,包括Manager、Agent、管理信息库MIB和被管对象。每一个被管设备需要具备:

(1) 管理信息库MIB

(2) 监视、操作MIB的SNMP Agent

2.2 SNMP操作和SNMP报文传输

SNMP协议是建立在TCP/IP协议之上的应用层协议,它基于管理器/代理模型,管理器与被管对象之间通过发送SNMP报文来彼此通信。

SNMP的传输报文基于UDP,由三部分组成,如图2-1所示。

图2-1 SNMP的传输报文

(图注格式:五号、宋体、居中,间距:固定值22磅,样式LW图注:ALT+T)

(图像格式:文字环绕:无,居中,样式LW图:ALT+P) 在版本号部分,描述SNMP协议的版本(SNMP V1,SNMP V2还是SNMP V3);共同体名为Community信息,Community字段的作用类似于SNMP Manager和Agent之间的口令, 默认的读Community是“public”,默认的读写Community是“private”。从系统安全性角度,代理可以设置Community参数及相应的访问权限,只读或读写,并要求管理者在发送报文时填写Community。只有在Community相同且相应访问权限相符的情况下,代理才按报文所规定的操作回送相应的响应报文。

SNMP Manager和SNMP Agent之间通过协议数据单元PDU (Protocol Data Unit) 传输管理信息,Data Area部分就是由协议数据单元(PDU)组成,SNMP规定了五种网络管理操作, 这五种原语操作分别有对应的PDU,它们是:

(1)GetRequest SNMP管理者从SNMP代理处获取变量值。

(2)GetNextRequest SNMP管理者从SNMP代理处获取下一个变量值。

(3)SetRequest SNMP管理者设置SNMP代理上的某个变量值。

(4)GetResponse SNMP管理者接收来自SNMP代理的应答。

(5)Trap Trap机制使SNMP Agent向SNMPManager报告某个已经设定好的事件的发生。

这5种类型的PDU除Trap之外的4种PDU格式是相同的,共有5个字段,如图2-2和图2-3所示。

图2-2 GetRequest PDU, GetNextRequest PDU, SetRequest PDU

图2-3 GetResponse PDU

Trap PDU 不同于其它4种PDU 格式,它有7个字段,如图 2-4所示。

图2-4 Trap PDU

PDU 建立于UDP ,每个SNMP 报文被封装成一个UDP 数据报,并通过IP 层发送出去。管理器从UDP 的第161号端口接收除“Trap ”以外的所有报文,Trap 报文从UDP 的第162号端口接收;代理从UDP 的第161号端口接收所有报文。

由于SNMP 是利用UDP 来完成低层数据传输的,所以SNMP 不保证数据传输的可靠性。这种无连接的通信不需维护系统的状态,因而提供了某种程度的健壮性,无论是管理器还是代理的操作都不依赖于对方。当远程代理失败时,管理器依然能继续工作,当代理恢复后,它能发送一个Trap 将状态的改变通知管理器。

此外,SNMP 的原语操作具有原子(Atomic )特性,即执行多变量操作时, 要么全部执行,要么全不执行,对任何一个变量操作的失败都会导致执行过程的恢复(或称回卷 Rollback ) 。

SNMP 在TCP/IP 体系中的结构如图 2-5所示。

图2-5 SNMP 在TCP/IP 体系中的结构

2.3 SNMP V2和SNMP V3

在TCP/IP 协议中,网管协议是变化和发展得非常迅速的应用层协议。在DMI

WBEM等新的网络管理协议、规范出现的同时,SNMP协议本身就经历了V1、V2和V3这三个版本的发展过程。这一方面说明了网络管理在网络发展、应用过程中的重要性,另一方面说明了网管协议的发展还不够成熟。对网管协议的发展过程的深入研究有利于我们认识和解决网管协议中存在的某些问题。

2.3.1 SNMP V2协议

简单性是SNMP Vl标准取得成功的原因之一:但简单性也正是SNMP缺陷所在,因为这种简单性是有代价的,主要休现在以下几个方面:

(1)在Manager和Agent之间的通信应该有安全性保障,SNMP Vl在这方面是通过传输报文中的Community字段加以实现的。SNMP V1假定在Manager和Agent

之间的网络传输是安全的,如果破坏者在Manager和Agent之间对数据包进行截获(Intercept),SNMP V1报文的的一切内容都将是不安全的。

(2)目前的网络中,一般会集成不同厂商的网络产品,网络管理系统也各种各样,而SNMP协议是一种集中式管理模式,它并不支持多个管理程序之间的通信,管理员一般将网络分成几部分,每一个部分使用专用管理站和管理平台。SNMP Vl的这种集中式管理模式不能很好地适应网络的现状。

(3)没有提供成批存取机制,对大块数掘进行存取效率很低。在SNMP V2被推出之前,在1991年推出了RMON MIB(Remote Network Monitoring MIB),RMON MIB 的一个比较明显的优点是它提供了收集、统计网络流量的管理功能,使得SNMP不仅可以管理网络设备,也可以管理网络本身。针对SNMP Vl的不足之处,IAB (Internet Action Board)于1993年初,推出了SNMP V2(RFC1441-RFC1452)。SNMP V2除了保持V1原有的简单易于扩展等优点之外,主要在安全机制、完善功能方面进行了改进:

●完善了安全机制;提供了验证机制(Authentication)、加密机制(Privacy)、

时间同步机制(Synchronized Time Stamp)等,以确保通信的安全。

●继承原有的集中式管理,同时支持分布式管理策略(Distributed Management

Strategy)。网络中存在着一个主管理者,网络可以被逻辑上分割成几部分,每

个部分由一个管理者管理,各部分的管理者可以直接处理管理代理的网络事件,

也可以向主管理者报告。

●提供了一次获取成组数据的能力,效率大大提高:这是通过提供一条操作原语

GetBulkRequest实现的,GetBulkRequest实际上类似于GetNextRequest,

只不过它获取的是“下面多个”变量的值。

另外在前面提到的MIB—II也较MIB—I增加了两个组,对象数量也从114个增加到185个,使MIB—II对被管对象的表示能力大大增加。

2.3.2 SNMP V3协议

导致产生SNMP V2的一个主要原因是对安全性的要求,但是SNMP V2并没能很好地完成安全性方面的工作。在SNMP V2原形系统的实现过程中发现它比人们原先预想的要复杂得多,失去了“简单性”的特点。当开发计划的结束时间到来时,IETF (Internet EnUnerring Task Force) 只好把几乎所有与安全相关的内容从SNMP V2中去掉,从而形成现在看到的最终的SNMP V2草案标准,即RFC 19XX 系列。SNMP V2中最初没有报文的定义,后来又出现了SNMP V2C(Community-based SNMP V2)作为SNMP V2的补充,它增加了V2的报文定义,但与V1的报文非常类似。SNMP V2的开发最终还是失败了,IETF解散SNMP V2工作组,决定把工作留给SNMP NG (Next Generation)即现在的SNMP V3去做。SNMP V3在1993年成为提案标准(Proposed Standard,RFC14XX系列)。由于以上的原因,SNMPV3相对于V2主要增加了安全特性。在SNMP V3中,通常实在以下两个过程中实现安全处理的:

(1)传送/接收报文的过程

(2)处理报文内容的过程

这两个阶段分别对应于报文处理和PDU处理模块,因此在SNMP V3中的安全是指在报文级别实现的安全,而访问控制则对应于在协议操作级别实现的安全。由两者共同实现安全的管理框架。

2.4 管理信息库MIB

管理信息库MIB 是实现SNMP 网络管理的关键因素。MIB的结构被称为管理信息结构SMI(Structure of Management Information),RFC 1155中定义了SMI 。

MIB 库中每个被管对象类型都有名字(Name)、语法(Syntax) 和编码(Encoding) 三方面的定义。名字由一个Object Identifier唯一表示;语法表示、对象的抽象数据结构(如integer、Octet、ipAddress等)是指被管对象的抽象文法结构及其数据表达方法;编码表示对应抽象数据结构的ASN.1编码,SNMP采用ASN.1定义的BER 编码规则。

ASN.1 (Abstract Syntax Notation One)是一种用于描述结构化客体内容和结构的语言,MIB库中每个变量都符合ASN.1语法规则。MIB库中使用了ASN.1中的Integer、Octet String、Null等作为基本类型,同时定义了IpAddress、Counter、Gauge、

TimeTicks 、Opaque 等类型。IpAddress 表示32位的 Internet 地址 ,由 4 个Octet String 表示。Counter 表示一非负整数,只能递增;Gauge 表示一非负整数,可以递增或递减。

基本编码规则(BER ,Basic Encoding Rules ) 是ASN.l 标准定义的一种传送文法。ASN.1 提供的是抽象文法结构和内容的表示方法,而BER 描述的是在传送过程中内容是如何表示的。每一个BER 编码有三个字段:标签(Tag )字段是关于标签和编码格式的信息;长度 (Length )字段定义数值的长度;内容(Value )字段表示实际的数值。因此,一个编码值又称TLV (Tag ,Length ,Value )三元组。编码可以是基本型或结构型,如果它表示一个简单类型的、完整的显式值,那么编码就是基本型 (primitive );如果它表示的值具有嵌套结构,那么编码就是结构型 (constructed )。

SNMP V1使用MIB-Ⅰ管理信息库,它把规定的114个对象分为8个组;而在MIB-Ⅱ中新增了两个组Transmission 和SMNP 组,对象数量增加到185个,参见表 2-1。

表 2-1 MIB-Ⅱ的对象组

(五号,宋体,居中,间距:固定值22磅,样式LW 表注: ATL+B)

对象在MIB 中的存放形式被称作管理信息结构(SMI Structure of Management Information )。它详细定义了MIB 库的组成结构,规定了描述和标识MIB 变量的一组规则。目前的两个标准数据模型是Internet SMI 和OSI SMI 。

Object Identifier 是一个全局树的整数序列表达,即命名树(如图 2-6所示)。命名树的每个节点分别由一个整型数和一个类型说明加以表示,对象标识符的命名由专门的机构负责,各对象标识符之间共同构成一个属性分层结构。一个对象标识符是由从根出发到对象所在节点的途中所经过的数字标号序列所形成的;例如,所有的MIB 变量都在mib 节点之下,而这个mib 节点则表示成

:

https://www.wendangku.net/doc/1b16178212.html,.dod.Internet.mgmt.mib

相应的数字表示为: 1.3.6.1.2.l 2.5 TOPOLOGY开发环境

……

第三章 TOPOLOGY系统总体设计

3.1 TOPOLOGY系统总体结构

从总体功能上看,TOPOLOGY网管系统主要由网络拓扑、拓扑图生成/布局、MIB 查询和功能模块协调与切换四部分组成。

其中,网络拓扑又可分为主干网拓扑和子网拓扑;拓扑图生成/布局又可分为主干网拓扑图生成/布局和子网拓扑图生成/布局;MIB查询又可分为系统信息查询和一般信息查询与状态检测;功能模块协调与切换又可分为功能模块协调和页面切换,如图3-1所示。

图3-1 系统总体结构

3.2 TOPOLOGY系统各功能模块设计

……

3.3 模块之间的协调

……

第四章 TOPOLOGY网络拓扑发现模块的设计与实现4.1 基于SNMP的主干网拓扑发现

4.1.1 传统的基于SNMP的网络主干拓扑发现方法

……

4.1.2 改进的基于SNMP的网络主干拓扑发现方法

……

4.1.3 模块运行结果

……

4.2 子网内拓扑发现

4.2.1 ARP表(IpNetToMediaTable表)

……

4.2.2 子网拓扑的中所要的数据结构

……

4.2.3 如何判断主机的状态

……

第五章TOPOLOGY网络拓扑图生成/布局模块的设计与实现

第六章总结与展望

6.1 课题总结

本文的论述是基于研发中所做的工作进行的总结,本课题基于SNMP和MIB开展了TOPOLOGY主要网络管理功能模块的研究、设计与开发。详尽阐述了作者设计的TOPOLOGY网管软件的系统设计,以及它的四大模块——网络拓扑发现、网络拓扑生成与布局、查询MIB、功能模块协调与切换的主要设计思想和实现方法,论文中着重研究和讨论了对网络拓扑的发现、生成、布局的设计实现算法。

本设计能很好地将模块化思想运用于开发过程之中,系统结构较合理;模块功能较全,这些模块分别是主干网拓扑、子网拓扑、主干网拓扑图生成/布局、子网拓扑图生成/布局、系统信息查询、一般信息查询、子网信息显示、子网信息查询。所开发的各模块间的协调性好。

课题开发的软件用户操作界面简洁、清晰,人机对话界面友好,经过实际使用,证明其实时性、通用性、实用性和健壮性都达到了设计初期提出的要求,运行结果反映了网络拓扑实际、真实、稳定、可靠。

本课题开发的TOPOLOGY网管软件具有如下特色:

(1) 普遍、通用

通常特定网络设备制造商开发的网管系统一般只能管理自己的设备,而各单位实际的网络往往由多个厂商的产品组成。为了解决这个问题,课题组贯彻围绕SNMP 协议和通用MIB 开发TOPOLOGY 网管功能的思路。SNMP 协议和RFC 规定的通用MIB 是世界上各个厂商都遵守的国际标准,也保证了TOPOLOGY 软件能成为通用型网管系统,可以管理多厂商产品集成的网络。

(2) 改进型主网拓扑算法

目前常见的网络拓扑方法中,基于SNMP协议的网络拓扑发现方法在网络信息自动搜集的准确性和完整性方面表现最好。但该方法存在一个缺点:只适合以路由器作为路由设备的网络,即要求路由设备的路由表信息要完整(下一跳信息包括所有与该设备实际相连的其它路由设备),否则只能发现目标网络的部分拓扑。现今,国内有许多校园网、企业网出于性价比、扩充性、安全性等因素的考虑,采用三层交换机作为主要的网络路由设备,或采用三层交换机和路由器混合使用。由于三层交换机具有二层交换和三层工作的模块,并且一般使用三层交换机的网络会划分成为VLAN,所以三层交换机的路由表下一跳信息不一定包含所有与它相连的路由设备。这样,基于SNMP协议的网络拓扑发现方

法就不能满足拓扑完整性的要求。

本课题提出一个新算法,新算法通过对网络设备进行探测猜想,找出网络当中的关键路由设备,很好地解决了路由表记录不完整而导致拓扑发现失败的问题,新算法在网络拓扑发现的完整性方面作用重大,是课题中的重要创新点。

(3)子网发现完整

子网内设备的发现,传统方法是在规定的网段范围内依次对可能的IP地址发送回送请求ICMP包。由于目前许多服务器和主机安装了防火墙软件,可将ICMP包屏蔽,导致该方法失效。课题基于ARP协议设计开发了子网内的拓扑发现子模块,通过读取路由交换设备ARP表内的记录来发现各个IP设备,该方法有效地绕过了防火墙,获得了使用回送请求/应答ICMP包方法搜集不到的重要信息,避免子网内有效节点信息的遗漏。

(4) 环型算法与启发式算法相结合,拓扑布局分级、合理

网络拓扑图布局算法的设计在采用环型算法的基础上,吸收了启发式布局算法提出的分而治之思想,将网络拓扑布局分为两级来实现。论文精心设计算法与程序,采用记录屏幕节点坐标的方法,使生成拓扑图更清晰。

(5) 系统结构开放,便于扩充

TOPOLOGY网管软件系统结构开放。因此,这为以后系统的日志记录、流量分析、自动报警等功能的扩展提供了方便。

6.2 进一步开发的展望

TOPOLOGY课题的研究开发取得了阶段性成果,整个课题还可以进行后续研究,作进一步开发,主要有:

(1) VLAN层面的通用拓扑发现方法:目前没有统一描述VLAN信息的国际标准,有些厂家将自己产品的相关VLAN信息定义存储在其私有MIB中,很多都不公开,这对研究实现VLAN的拓扑发现造成很大困难。找到一条可行之路,实现通用性VLAN 拓扑发现,具有很高价值。

(2)拓扑图布局算法的深入研究:目前TOPOLOGY的目标客户是园区级网络,网络规模不太大,网络结构不太复杂。但如果今后TOPOLOGY的目标客户升级到大型网络或超大型网络,那么网络拓扑布局算法将上升为研究的重点。同时,针对大规模复杂网络的布局算法研究具有很强的学术价值。

(3) 在网络性能分析与网络故障检测的智能化上也还有极大的研究价值。

上述三个方面将在进一步的开发中予以关注、研究与解决。

相关文档