基于SNMP网络管理系统的设计与实现-毕业论文.doc

上传人:豆**** 文档编号:29950888 上传时间:2022-08-02 格式:DOC 页数:52 大小:2.73MB
返回 下载 相关 举报
基于SNMP网络管理系统的设计与实现-毕业论文.doc_第1页
第1页 / 共52页
基于SNMP网络管理系统的设计与实现-毕业论文.doc_第2页
第2页 / 共52页
点击查看更多>>
资源描述

《基于SNMP网络管理系统的设计与实现-毕业论文.doc》由会员分享,可在线阅读,更多相关《基于SNMP网络管理系统的设计与实现-毕业论文.doc(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、本科毕业设计(论文)题目:基于SNMP网络管理系统的设计与实现院 (系): 计算机科学与工程学院专 业: 班 级: 学 生: 学 号: 指导教师: 2014年 6月大学毕业设计(论文)任务书院(系) 计算机 专业 网络工程 班 姓名 张朋飞 学号 1.毕业设计(论文)题目: 基于SNMP网络管理系统的设计与实现 2.题目背景和意义: 在当前的网络普遍应用的情况下,网络管理技术已经成为了计算机网络领域内的热门研究课题。当前计算机网络的发展特点是规模不断扩大,复杂性不断增加,异构性增高,网络管理的难度。因此,为保证网络的安全,可靠的运行,及时地发现,并处理各种突发网络故障, 越来越重要。 3.设计

2、(论文)的主要内容(理工科含技术指标):(1)了解对网络管理及SNMP相关知识; (2)基于SNMP网络管理模块的分类和具体实现;读取局域网内主机的信息如系统描述信息,进程信息,路由信息等;监控主机的联网状况如IP地址,处理器及内存的使用情况;线路故障检测;网络可达性情况。(3)通过读取的数据对计算机网络情况进行管理。(4)用VC编程实现;要求软件文档齐全,界面友好,易于操作。(5)书写1.5万字的论文,要求书写整齐规范,无错误,有创新性。 4.设计的基本要求及进度安排(含起始时间、设计地点):在校内完成设计。基本要求:(1) 要求学生每周与指导教师联系一次,及时反映问题,及时解决。(2)在校

3、设计期间,遵守校纪校规,外出要请假。(3) 保持实验室卫生整洁,爱护设备。 进度安排: 第14周:搜索相关资料,熟悉开发工具。 第58周:搜索相关资料,熟悉开发工具,并进行开题报告的准备和答辩。 第9-12周:构建软件雏形。 第3-15周:对系统做一个整体的测试和修改。 第16-18周:毕业论文的完成和答辩的准备。 5.毕业设计(论文)的工作量要求 实验(时数)*或实习(天数): 120天 图纸(幅面和张数)*: 无 其他要求: 论文结构合理、格式符合规范,字数15000以上 指导教师签名: 年 月 日 学生签名: 2013年12月4 日 系(教研室)主任审批: 年 月说明:1本表一式二份,一

4、份由学生装订入附件册,一份教师自留毕I-22 带*项可根据学科特点选填基于SNMP网络管理系统的设计与实现摘要随着互联网的发展,计算机局域网也在各大中小型企事业单位得到充分的重视与长足的发展。为了使局域网能正常、高效、稳定、安全、可靠地运行,管理员必须对局域网络进行有效的管理。SNMP协议目前已成为网络管理的标准协议,采用SNMP协议开发基于Windows系统的网络管理软件,在实际工作中有着广泛的应用需求。本论文通过简要介绍课题研究的背景和研究意义,并就网络管理系统、SNMP协议、管理信息库、信息管理结构等相关理论及原理进行阐述。针对某局域网络的现状和管理需求,结合网络管理实际情况,设计了一种

5、应用于中小型局域网络的基于SNMP协议的C/S模式的网络管理系统,并对其中的核心技术进行了详细介绍。论文以模块化的方式,设计该网络管理系统,并对配置管理、性能管理、故障管理和网络可达性等功能的实现阐述了其设计思路和实现方法。并给出了部分功能的运行效果。关键词:局域网;网络管理;SNMP;管理信息库;管理信息结构Research and Implementation of Network Management System based on SNMPAbstractWith the development of the Internet, the Local Area Network (LAN)

6、 has been attached great importance from enterprises and developed significantly. Administrators have to manage the LAN efficiently in order to keep the LAN running properly, effectively, steady and reliably. Simple Network Management Protocol (SNMP) currently is the standard protocol of the LAN man

7、agement. Developing the software of the LAN management under SNMP basing on Windows system is highly demanded in reality. This thesis introduces the background and research significance of the LAN management. And it also introduces the LAN management system, SNMP, Management Information Base (MIB),

8、Structure of Management Information(SMI)and related concepts. This thesis focuses on the appearance and management demand of a LAN, combines the reality of LAN management, introduces the develop workflow and design mind of Client/Server (C/S) management system basing on the SNMP for medium and small

9、 LAN and in special the core technology. This thesis illustrates the designing ideas and implementation for configuration management, performance management, fault management and network reachability within the LAN management area. Besides, it visualized the running effects of modules with screensho

10、ts. Keywords: LAN; network management; SNMP;MIB; SMIII目录中文摘要I英文摘要II1 绪论11.1课题背景11.2国外研究现状11.3课题意义21.4论文结构22 网络管理32.1网络管理的发展与标准化32.2网络管理的功能42.3网络管理软件的分类53 简单网络管理协议63.1SNMP协议框架63.1.1管理信息结构(SMI)63.1.2管理信息库(MIB)83.1.3 SNMP协议93.2 SNMP+开发包113.2.1 SNMP+简述113.2.2 SNMP+核心类114 基于SNMP网络管理的研究134.1需求分析134.2功能分析1

11、34.3系统详细设计144.4系统用到的主要连接功能的设计194.5本系统的系统结构图如下205 基于SNMP网络管理的实现215.1代理设备的配置215.2配置管理的实现235.3性能管理的实现265.4线路故障管理的实现265.5网络可达性检测的实现276 总结29致 谢30参考文献31毕业设计(论文)知识产权声明32毕业设计(论文)独创性声明33附录34461绪论1 绪论1.1课题背景计算机网络技术从二十世纪七十年代开始到现在已经经历了四十多年的时光,从七十年代的广域网技术到八十年代的微机局域网技术以及九十年代后不断兴起的 Internet 与综合业务数字网 ISDN,直到今天蓬勃发展的

12、移动互联网,计算机网络技术已日趋成熟。今天,计算机网络作为信息社会的基础设施已经日益深入到国民经济和社会生活各个方面,使人们工作生活方式发生了巨大变化,计算机网络已成为人们日常生活中必不可少的交际工具。与此同时,随着网络规模的扩大、多厂商产品的互联,网络复杂性不断增加,网络的异构性越来越高,各种网络软件提供的服务对网络的性能要求越来越高。如果没有一个高效的网络管理系统进行管理,那么很难保证为广大用户提供满意的服务。网络管理和维护在整个网络运行中越来越受到重视,研究与开发能满足需要的网络管理系统工具有很好的实用价值与良好的发展前景。1.2国外研究现状 近几年,随着网络规模的逐步扩大、应用的逐渐复

13、杂,各个企事业单位、政府机构都面临着网络的管理难、控制难、维护难等问题。目前许多企业都依赖于ERP/CRM等电子信息系统,而金融、银行、保险等行业对网络的依赖性就更强,如果企业的网络发生故障或者运行状态不佳,数据流受到阻塞,关键资料就不能得到有效共享,导致运营效率下降,从而影响企业的生产效率,甚至会给企业经营带来巨大的损失。与此同时,如何保障网络的畅通无误,如何及早发现并排除潜在的故障隐患,有效地管理好网络,保障网络的安全稳定运行,成为IT管理人员甚至是企业领导层都必须面对的问题,许多网络经营管理机构或单位不得不付出极大的人力、物力对网络进行管理。今天,人们己经清楚地意识到,计算机网络的管理和

14、运行是计算机网络领域中的关键技术之一,特别是大型计算机网络的建设,更应该把网络的管理和运行作为十分重要的建设内容。网络管理,就是监视、组织和控制网络通信服务和信息处理所必需的各种活动的总称,确保网络长时间、正常的运行,并当其出现故障的时候尽快的发现、修复故障,使其最大限度的发挥其应有的效益。许多厂商开发出了自己的网络管理产品,它们都采用了标准的网络管理协议,提供了具有各自特色的解决方案,比较典型的有Sun公司的NetManager、HP公司的Open View、Cabletron Systems公司的Spectrum Enterprise Manager 5.0、Loran Technolog

15、ies公司的Kinnetics 2.0。1.3课题意义 在互联网时代,如何保证网络的安全和业务的正常运行已经是一个及其重要的问题,这就需要一个网络安全的统一管理平台来保证网络平台的正常运行。在这个信息安全管理平台下,实现设备协同工作,优化网络和系统资源的有效利用,保障网络和应用系统安全正常地运行具有重要的现实意义。随着全球网络经济、信息技术的迅猛发展,各类基于网络的业务应用平台越来越多,网络设备的安全产生了各种各样的问题,网上泄密、网上诈骗、黑客攻击、系统崩溃等一系列涉及计算机信息安全的事件时有发生,计算机病毒的侵害更是持续以极高的速度增长。一些重要应用的计算机信息系统在信息安全管理、技术措施

16、等方面还存在着很多薄弱环节。为了解决上述网络设备的安全问题,需要研究设计一个通用的网络安全管理平台,统一的管理各种网络设备和资源,并在统一的模型上实现安全策略和设备联动策略。而本文的研究课题就是对网络中的Windows主机信息进行采集,并在整个网络管理平台上实现对Windows主机信息的统一监测和管理。1.4论文结构 本论文结构如下:第一章,绪论。介绍了网络管理的概念和发展历史,网络管理的国内外研究情况以及所面临的问题,然后介绍本论文的研究意义以及研究的内容。第二章,网络管理。对现存的一些网络管理体系进行介绍,并指出它们存在的问题,引出SNMP技术。第三章,简单网络管理协议。对具体SNMP协议

17、框架进行了详细的介绍,并介绍了SNMP+技术和核心类。第四章,基于SNMP网络管理的研究。提出对Windows主机信息进行监测的需求并进行分析,对系统的整体架构、系统用到的主要连接,功能服务等进行详细设计。第五章,基于SNMP的网络管理的具体实现。在上一章的基础上,对基于SNMP网络管理系统进行分析和具体实现,完成设计要求的所有功能。第六章,总结。对论文的研究工作作了总结,并对未来进行了展望。2网络管理2 网络管理网络管理是指对网络的运行状态进行监测和控制,使其能够有效、可靠、安全、经济地提供服务。从这个概括可以看出,网络管理可以包括两个任务:一是对网络的运行状态进行监测;二是对网络的运行状态

18、进行控制。通过监测了解当前状态是否正常,是否存在瓶颈问题和潜在的危机;通过控制对网络状态进行合理调节,提高性能,保证服务。2.1网络管理的发展与标准化网络管理技术是伴随着计算机、网络、通信技术的发展而发展的。信息社会对网络的依赖程度越来越高,网络的高效、可靠的运行管理也越来越重要。在 网 络 管 理 技 术 的研究、发展和标准化方面,国际标准化组织ISO(International Organization for Standardization)和 Internet 体系结构委员会IAB(Internet Architecture Board)及其下属的工作组都作了卓有成效的工作。他们所制定

19、的基于 OSI 参考模型的公共管理信息服务与协议 CMIS/CMIP(Common Management Information Services/Protocol)和基于 TCP/IP 的简单网络管理协议SNMP(Simple Network Management Protocol)已经成为目前网络管理系统中运用较为广泛的两种协议。(1) CMIS/CMIP 协议CMIP主要针对 OSI七层协议参考模型而设计,用来提供标准的公共管理信息服务 CMIS。网络管理进程使用 ISO 参考模型中的第七层,OSI 的低层没有特别为网络管理定义的协议。CMIP 管理体系结构如图 2.1 所示。图 2.

20、1 CMIP 通信结构图在 OSI 管理信息通信中,管理者和管理代理调用公共管理信息服务元素CMISE 来进行管理信息的交换。CMISE 向上提供服务访问点与管理者或代理交换原语,向下通过联系控制服务元素 ACSE 和远程操作服务元素 ROSE 按照公共管理信息协议 CMIP 收发 CMIP PDU(协议数据单元)。CMIP PDU 需要传输层提供面向连接的传输服务。由于历史和现实的原因,国际标准化组织依据 OSI/RM 模型制定的七层协议标准始终未能得到业界和社会的广泛支持和应用,相应地,符合 OSI 网络管理标准的可供使用的产品也几乎没有。尽管如此,OSI 的网络管理标准协议还是具有十分重

21、要的参考意义。(2) SNMP 协议80 年代后期,Internet 的迅速发展和网络管理的薄弱,使 Internet 体系结构委员会决心定义自己的一套标准化网络管理体系结构与协议。1988 年,Internet结构委员会完成了 SNMPv1,1993 年,又发表了 SNMPv2,管理功能和安全性能都得到了加强,后来又发表了 SNMPv3,使得安全问题彻底解决。与 CMIP 相比,SNMP 最大的特点是简单性和可扩展性。“Simple is the best”,确实如此,简单化使网络管理容易实施,系统资源占用较少,用户可以更容易根据需要对 SNMP 进行编程。此外,由于它的设计简单、协议容易更

22、新且可以方便的扩展,很快得到了各网络设备生产厂家的广泛支持,并使之成为了事实上的网络管理工业标准。目前,几乎所有厂家生产的网络设备都支持 SNMPv1、SNMPv2 管理功能,有很少部分设备支持 SNMPv3,但 SNMPv3 推广应用的趋势是毋庸置疑的。2.2网络管理的功能国际标准化组织 ISO 一直致力于网络管理的标准化,定义了网络管理的五大功能:配置管理、性能管理、安全管理、计费管理和故障管理。通过这五大网络管理功能,IP 网管系统就能够实时调整网络状态、充分提高每个被管对象的利用率,使网络不发生故障或拥塞、网络中的各种资源得到更加高效的利用,在保证网络的可用时间和设备的利用率、网络性能

23、、服务质量的同时,实现网络正常、高效地运行。(1) 配置管理配置管理主要是发现网络拓扑结构关系、监视和管理网络设备的配置情况。目标是掌握和控制网络和系统的配置信息以及网络内各设备的状态和连接关系,这些信息对于维护一个稳定运行的网络是十分重要的。配置管理最主要的作用是可以增强网络管理者对网络配置的控制,它是通过对设备的配置数据提供快速的访问来实现的。(2) 性能管理性能管理的目标是衡量和呈现网络特性的各个方面,使网络的性能维持在一个可以接受的水平上。性能管理使管理人员能够监视网络运行的关键参数,如吞吐率、利用率、错误率、响应时间等。此外,性能管理能够指出网络中哪些性能可以改善以及如何改善。从概念

24、上讲,性能管理包括监视和调整两大类功能。监视功能主要是指跟踪网络活动,调整功能是指通过改变设置来改善网络的性能。性能管理的最大作用在于帮助管理员减少网络中过分拥挤和不可通行的现象,从而为用户提供稳定的服务。(3) 安全管理安全管理的目标是按照一定的策略来控制对网络资源的访问,以保证网络不被侵害,并保证重要的信息不被未授权的用户访问。安全管理是对网络资源以及重要信息的访问进行约束和控制。它包括验证网络用户的访问权限和优先级、检测和记录末授权用户企图进行的非法操作。安全管理的许多操作都与实现密切相关,依赖于设备的类型和所支持的安全等级。安全管理中涉及的安全机制有:身份验证、加密、密钥管理及授权等。

25、(4) 计费管理计费管理的目标是跟踪个人和团体用户对网络资源的使用情况,对其收取合理的费用。这一方面可以促使用户合理地使用网络资源,维持网络正常的运行和发展,另一方面,管理者也可以根据情况更好地为用户提供所需的资源。计费管理的主要作用是:网络管理者能测量和报告基于个人或团体用户的计费信息,分配资源并计算用户通过网络传输数据的费用,然后给用户开出账单。 (5) 故障管理故障管理的目标是自动检测网络硬件和软件中的故障并通知用户,以便网络能有效地运行。故障管理的步骤包含:判断故障症状;隔离该故障;修复该故障;记录故障的检测过程及其结果。故障管理的功能包括:接收差错报告并做出反应;建立和维护差错日志并

26、进行分析;对差错进行诊断测试;对故障进行过滤;同时对故障通知进行优先级判别;追踪故障,确定纠正故障的方法措施。2.3网络管理软件的分类(1) 网元管理软件 一般由设备厂商提供,各厂商采用专有的管理MIB库,以实现对厂商设备本身的细致入微的管理,包括可以显示出厂商设备图形化的面板等,如安奈特公司的AT-View Plus,思科公司的Cisco View和华为网络公司的Quidview等。(2) 通用网络管理软件 主要用于掌握全网的状况,作为底层的网管平台来服务于上层的网元管理软件等。如安奈特公司的AT-SNMPc,可以提供一个第三方的网管平台,支持对所有 SNMP设备的发现和监控,可集成厂商设备

27、的私有MIB库,实现对全网(多厂商)设备进行识别和统一的管理。从而避免了厂商专用型网络管理系统无法实现对全网设备的统一管理,用户往往采用多台网管工作站分别安装不同的系统,进行分别管理的局限性,有利于简化管理和降低成本。这类产品还有惠普公司的HP OpenView、CA公司的Unicenter、IBM公司的Tivoli NetView等。国内的如游龙科技的SiteView、网强信息技术公司的网强网管和青鸟网硕等。3 简单网络管理协议3.1SNMP协议框架SNMP 管理框架由三部分组成:管理信息结构 SMI(Structure of Management Information)、管理信息库 MI

28、B(Management Information Base)和简单网络管理协议SNMP(Simple Network Management Protocol)。SNMP属于 TCP/IP 的应用层协议,用到的传输层服务是面向无连接的用户数据报协议 UDP(User Datagram Protocol),UDP 无需建立流控制与建立连接,所以 SNMP 为应用实体间的通信降低了开销,减轻了网络负担,不保证报文的正确到达,但可以通过轮询机制与事件驱动两种方式访问,增强了通信的可靠性。SNMP 的网络管理体系遵循了 ISO 的网络管理模型,是由管理节点 Manage与代理节点 Agent 组成。每个

29、代理节点上保存了一个管理信息库和代理进程,管理节点运行网络管理应用进程与每个代理节点上的代理进程通信,进行数据采集。SNMP 的管理模型如图 3.1:图 3.1 SNMP 管理模型3.1.1管理信息结构(SMI)管理信息结构 SMI 是 SNMP 的基础部分,定义了 SNMP 框架所使用的信息的组成、结构和表示,为描述MIB对象和协议如何交换信息奠定了基础。RFC1155与RFC1442分别定义了SNMPv1版的管理信息结构和SNMPv2的管理信息结构。无论哪个版本的管理信息结构都由三部分组成:对象标识符 OID(Object Identifier)、对象信息的描述和对象信息的编码。(1) 对

30、象标识符 OID对象标识符也就是被管对象的命名。ISO 与 ITU-T 提供了一个全局命名树,为需要命名的被管对象分配树下的一个节点。被管对象占有全局命名的一棵子树,这棵树通常称为 MIB 树,如图 3.2 所示。对于 SNMP 来说,树状结构的命名方式最大的好处是便于加入新的网络管理对象,具有良好的可扩展性,新加入的被管对象只是其父节点子树的延伸,对其他节点不会产生影响。 图 3.2 MIB-II组织结构SMI 为 MIB 树上的每个节点分配了一个数字标识,同时为了便于记忆和理解,又为每个节点提供了一个文本方式的对象描述符。一个完整的对象标识符是从 MIB 库的根开始到此被管对象所对应的节点

31、沿途上所有节点的数字标识或名字标识,中间以“”间隔而成的。例如 MIB-II 中的一被管对象 sysName 的对象标识符表示如下:名字表示:iso.org.dod.internet.mgmt.mib-2.system.sysname数字表示:1.3.6.1.2.1.1.5(2) 对象信息描述SMI 规定被管对象的描述必须包括四个方面的属性:对象类型SYNTAX、存取方式 ACCESS、状态 STAUS 和对象说明 DESCRIPTION。SMI 规定的数据类型分为两类:通用数据类型(universal data type)和泛用数据类型(application-wide data type)

32、。对象的存取权限分为四类:只读 read-only、只写 write-only、读写 read-write和不可访问 not-accessible。对象的状态有三种:必备 mandatory、可选 optical 和过期 obsolete。对象的说明是对此对象的意义的一般性文字描述。下面是 MIB-2 中 TCP 功能组的对象 tcpMaxConn 的完整描述:tcpMaxConn OBJECT-TYPESYSTAXINTEGERACCESS read-onlySTATUS mandatoryDESCRIPTION “The limit on the total number of TCP c

33、onnections the entity can support.In entities where the maximum number of connections is dynamic,this object should contain the value -1.” : tcp 5 (3)对象信息编码网络管理系统和网管代理进程之间的通信必须对对象信息进行统一编码,SMIl 规定了对象信息的编码采用基本编码规则 BER(Basic Encoding Rules)。BER 编码有三个字段:1) 标签(Tag):存储关于标签和编码格式的消息。2) 长度(Length):记录内容字段的长度。

34、3) 内容(Value):实际的数据。一个 BER 编码实际上是一个 TLV 三元组(标签,长度,内容),每个字段都由一个或多个 8 位组成,BER 规定最高位是比特位的第 8 位,在网上传输时从高位开始。3.1.2管理信息库(MIB)管理信息库 MIB 是管理对象的集合,管理对象在 MIB 中按照 SMI 的规定定义,并按树状结构组织起来,反映被管资源的状态,通过读取或设置这些对象的值可以监视或控制网络资源。MIB 中有两种对象:标量对象和表对象。当对一个 MIB 对象进行访问时,目标是特定的对象实例而不是对象类型。SNMP规定标量对象类型只有一个对象实例,标量对象的标识符 OID 后面加上

35、.0 就构成了对象实例;表对象由若干个列对象组成,一个列对象有多个实例,列对象的 OID 后面加上.x(x 代表一个顺序的整数序列)构成列对象的多个实例。目前获得最广泛支持的标准 MIB 是 MIB-II,它定义了十个功能组,包括了十类非常典型的网络信息,MIB-II 功能组如图 3.3。十个功能组分别是:(1) 系统组(system gruop):提供了系统得一般信息。(2) 接口组(interface group):包括了关于主机接口的配置信息和统计信息,它是必须实现的,接口组中的对象可用于故障管理和性能管理。(3) 地址转换组(address translation gruop):包含一

36、个表,该表的每一行对应系统的一个物理接口,表示网络地址到物理地址的映像关系。(4) IP 组(IP group):提供了与 IP 协议有关的信息。(5) ICMP 组(icmp group):提供有关 ICMP 实现和操作的有关信息。(6) TCP 组(tcp group):提供了有关 TCP 协议的实现和操作的信息。(7) UDP 组(udp group):提供了关于 UDP 数据报和本地接收端点的详细信息。(8) EGP 组(egp group):提供了关于 EGP 路由器发送和接收的 EGP 报文的信息,以及关于 EGP 邻居的详细信息等。(9) 传输组(transmission gro

37、up):有关每个系统接口的传输模式和访问协议的信息。(10) SNMP 组(snmp group):提供关于系统中 SNMP 的实现和运行信息。图3.3 MIB-II功能组MIB-II 下面的这十个功能组的有些对象已经废弃或者没有定义,所以在实际应用中只对部分对象操作进行网络管理。3.1.3 SNMP协议(1) SNMP操作SNMP 协议是 SNMP 网络管理框架的核心部分。SNMP 不允许增加或删除对象实例来改变 MIB 的结构,只能通过 SNMP 基本操作来获取或修改相应对象的值,并且只可以访问 MIB 中的叶子节点。在 SNMPv1 中,定义了四种基本的协议操作方法:1) Get:用于获

38、取简单的标量对象的值。可以向绑定列表中追加多个标量对象,一次操作获取多个标量对象的值。2) GetNext:可以检索给定变量 OID 的下一个对象实例的值,主要用于检索表对象和遍历未知对象。3) Set:用于设置和更新对象实例的值。4)Trap:Trap 是由代理向管理站发出的异步事件报告,不需要应答报文。在 SNMPv2 中,增加了两种协议操作 GetBulk 和 Inform,前者是用来获取大批数据的,获取表对象时可代替 GetNext,后者提供了管理者与管理者之间传递随机通报的途径。(2) SNMP报文格式在 SNMP 管理中,管理站和代理之间交换的管理信息构成了 SNMP 报文。SNM

39、P 报文由三部分组成,即版本号 Version、团体名 Community 和协议数据单元 PDU。报文头中的版本号是指 SNMP 的版本,0 代表 SNMPv1,1 代表SNMPv2;团体名用于身份认证;SNMPv1 中有五种 PDU 类型,但只有三种 PDU格式。SNMP 报文格式如图 3.4,关于 PDU 中各个字段的含义解释如下: 图 3. 4 SNMPv1 报文格式1) PDU 类型:五种 PDU 之一(GetRequest PDU,GetNextRequest PDU,SetRequest Pdu,GetResponse PDU,Trap PDU)2) 请求标识:赋予每个请求报文唯

40、一的整数,用于区分不同的请求。3) 错误状态:表示代理在处理管理站的请求时可能出现的各种错误。4) 错误索引:当错误状态非 0 时指向出错的变量。5) 变量绑定列表:变量名和对应值的表,说明要检索或设置的所有变量及其值,在检索请求报文中变量的值为 0。在SNMPv2中报文的结构与SNMPv1的一样,只增加了几种PDU类型,但 PDU 格式仍为三种,PDU 格式如图 3.5,GetRequest、GetNextRequest、SetRequest、InformRequest 和 Trap 等 PDU 与 Response PDU 具有相同的格式,减少了 PDU 格式的种类。增加了GetBulkR

41、equest 新PDU类型。 图 3. 5 SNMPv2 PDU 格式3.2 SNMP+开发包3.2.1 SNMP+简述SNMP+是 HP 公司提供的开发基于 SNMP 协议的网络管理应用软件的编程接口,是为开发者提供 SNMP 服务的一系列 C+类。 SNMP+不是协议的附加层,也不是现有 SNMP 引擎的封装,而是最小限度地使用现存的 SNMP 库使开发工作更加方便高效。SNMP+的层次结构图3.6, 图 3. 6 SNMP+参考图3.2.2 SNMP+核心类根据简单网络管理协议 SNMP 的格式和内容,SNMP+封装了如下几个类:SNMP 类、对象标识符类 OID、字符串类 OctetS

42、tr、时钟类 TimeTicks、32 位计数器 Counter32、64 位计数器 Counter64、量规类 Gauge32、地址类 Address、变量绑定类 Vb、协议数据单元类 Pdu、目标类 Target 和 SNMP 消息类。下面介绍一下开发网络管理应用程序必需的几个 SNMP+核心类。(1) 对象标识符类 Oid SMI 中的对象标识符 Object Identifier 是为 MIB 中每个特定对象指定的唯一标识符,Oid 类就是对 SMI 中对象标识符的封装。Oid 类重载了赋值操作符和各种比较操作符和构造函数,并定义了获取长度、输出字符串、判断有效性的成员函数。(2) 地

43、址类 AddressAddress 类实际上是一系列 C+ 类的集合,这些类包括 IpAddress 、IpxAddress、MacAddress、GenAddress,这些类提供了简单、安全、具有可移植性的网络地址的使用。Address 是一个抽象类,通过纯虚函数定义了统一的接口,在其派生类中实现。(3) 变量绑定类 Vb变量绑定就是一系列对象标识符 Oid 和 SMI 值的组合,Vb 类就是对变量绑定的封装,可以表示成一个关系,一个 Vb 对象包括一个 Oid 对象和一个 SMI值,通过 Vb 提供的接口,可以方便地为 Oid 和 Value 部分赋值,也可以从 Vb对象中取出 Oid 和

44、 Value 的值。(4) 协议数据单元类 PduPdu 是管理者和代理之间进行 SNMP 通信的基本协议数据单元。SNMP 的Pdu 类是对 SMI 协议数据单元的封装,主要用于 Snmp 类的请求或者以回调函数(callback)的参数形式用于异步的请求和通告。通过 Pdu 类提供的接口可以方便的将 Vb 导入或导出 Pdu。(5) 目标类 Target Target 对象表示将要与管理者通信的被管代理。Target 对象不仅包括代理的网络地址,同时还包括重传次数、超时信息、SNMP 协议版本等。Target 是一个抽象类,它只有一个子类 Ctarget,CTarget 类使用 SNMP 基本的共同体信息定义SNMP 代理,这些基本的共同体信息包括读、写共同体名以及代理地址等。(6) Snmp 类Snmp 类是 SNMP+中最重要的的类,它是对 SNMP 会话的封装。SNMP+会话的过程包括 Pdu 的构造、传输和接收,开发者定义 Snmp 类的对象来完成会话的管理。Snmp 类提供了六种基本的方法来完成网络管理应用:get(), set(),get_next(), get_bulk(), inform()和 trap(),如函数名所示,这些方法完成了 SNM

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁