logo资料库

论文研究-基于SNMP的网络管理系统的设计与实现 .pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn 基于 SNMP 的网络管理系统的设计与实现 韩沛沛* (北京邮电大学计算机学院,北京 100876) 摘要:随着网络的不断发展,网络规模的不断扩大,网络的复杂性程度也在不断的增加,这 迫切的需要一 种新型的可 以满足各 种网络管理 功 能的管理系统 。简单网络 管理协议 SNMP(Simple Network Management Protocol)已成为事实上的工业标准而被广泛使用。本文 基于 SNMP 协议,提出了一种基于 SNMP 的网络管理管理系统。该系统可以监视网络和系 统配置信息,从而可以跟踪系统的硬件和软件操作,还可以对网络设备进行初始化,对网络 设备命名、分配地址、设置参数、规划网络等,能很好地适应网络的经常性变化,如用户需 求变化、资源设备调整、规模扩大、设备线路故障引起的变化等。 关键词: 网络管理;SNMP 协议;配置管理;MIB 中图分类号:TP315 Design and Implementation Of Network Management System Based On SNMP HAN Peipei (Comupter School, Beijing University of Posts and Telecommunications, Beijing 100876) Abstract: With the development of the network, the scale and the complexity of network increase continuously. So a new kind of management system must be brought forward to meet the need of network management. In fact, SNMP(Simple Network Management Protocol) is the most widely used as an industry standard. In this paper, a kind of Network Management System based on SNMP is proposed. The system can monitor network and system configuration information, which can track the system's hardware and software operations. It also can initialize the network device, name network device, address allocation, set parameters and plan Network. The network can be well adapted to network's frequent changes, such as user needs change, resource equipments adjustment and scale up, equipment changes caused by line fault and so on. Key words: Network Management; SNMP Protocol; Configuration Management; MIB 0 引言 随着网络规模的扩大、多厂商产品的互联,网络复杂性不断增加,网络的异构性越来越 高,各种网络软件提供的服务对网络的性能要求越来越高。如果没有一个高效的网络管理系 统进行管理,那么很难保证为广大用户提供令人满意的服务。网络管理和维护在整个网络运 行中的地位越来越重要,所以研究与开发网络管理系统工具有很好的实用性和良好的发展前 景[1-2]。网络管理就是指监督、组织和控制网络通信服务和信息处理所必需的各种活动的总 称。它包括了网络性能管理、网络配置管理、网络故障管理、网络安全管理、网络计费管理 五个管理功能域。它是一个复杂的控制过程,用于控制和管理计算机网络设备连接、系统运 行和资源分配,使之具有最高的运行效率[3],以寻求最大限度的增加网络的可用性,提高网 络设备的利用率、网络性能、服务质量和系统安全,简化多厂商设备组成的混合网络环境的 利用率,控制网络运行成本,并为网络的发展提供长期的规划依据。目前,存在两种主要的 网络管理协议:由因特网网络工程任务组 IETF 制定的基于 TCP/IP 的简单网络管理协议 SNMP(Simple Network Management Protocol)和由国际标准化组织/开放系统互连(ISO/OSI)开 作者简介:韩沛沛(1987 年),男,研究生,计算机科学与技术,. E-mail: peixyz@yahoo.cn - 1 -
中国科技论文在线 http://www.paper.edu.cn 发的公共管理信息服务/公共管理信息协议 CMIS/CMIP(Common Management Information Services/Common Management Information Protocol) [4]。 由于 SNMP 简单且易于实现,因此得到了许多制造商的支持和广泛的应用。因此本文 采用了基于 SNMP 协议来实现网络管理系统。 1 网络管理功能概述 国际标准化组织(International Standards Organization, ISO)将网络管理的功划分为五个管 理功能域(Management Function Area, MFA):网络性能管理、网络配置管理、网络故障管理、 网络安全管理、网络计费管理,分别完成不同的网络管理功能。 1.1 配置管理 网络配置是指网络中每个设备的功能、相互间的连接关系和工作参数,它反映了网络的 结构和状态。网络是经常变化的,如用户需求变化、资源设备调整、规模扩大、设备线路故 障引起的变化等,因此需要调整网络配置。网络配置管理的目标是监视网络和系统配置信息, 从而可以跟踪系统的硬件和软件操作。网络配置管理还对网络设备进行初始化,对网络设备 命名、分配地址、设置参数、规划网络等。 1.2 性能管理 网络性能管理的功能包括:动态监视网络状态,收集网络动态信息;动态评网络性能, 使网络性能达到最佳状态。性能管理活动持续地评测网络运行中的主要性能指标,以检测网 络服务是否达到预定的水平,找到已经发生或潜在的瓶颈,报告网络性能的变化趋势,为网 络管理决策提供依据。性能变量有网络吞吐量、用户响应时间和线路利用率等。根据国际网 络服务组织(International Network Service, INS)在世界范围内统计的结果显示[5]:性能管理已 超过故障管理,成为网络管理中最重要的功能和研究重点之一。 2 SNMP 概述 SNMP 是由 Internet 体系结构委员会 IAB 所制定的,目前大多数厂商的网络产品如交换 机、路由器、MODEM 等都支持 SNMP 协议,SNMP 已经成为网络管理领域中的工业标准。 SNMP 管理框架由三部分组成:管理信息结构 SMI(Structure of Management Information)、管 理信息库 MIB(Management Information Base)和 SNMP 协议。 SNMP 的网络管理体系遵循了 ISO 的网络管理模型,是由管理节点 Manage 与代理节点 Agent 组成。每个代理节点上保存了一个管理信息库和代理进程,管理节点运行网络管理应 用进程与每个代理节点上的代理进程通信,进行数据采集。SNMP 的管理模型如图所示: - 2 -
中国科技论文在线 http://www.paper.edu.cn 图 1 SNMP 的管理模型 2.1 管理信息结构 SMI 管理信息结构 SMI 是 SNMP 的基础部分,定义了 SNMP 框架所使用的信息的组成、结 构和表示,为描述 MIB 对象和协议如何交换信息奠定了基础。 2.2 管理信息库 MIB 管理信息库 MIB 是管理对象的集合,管理对象在 MIB 中按照 SMI 的规定定义,并按树 状结构组织起来,反映被管资源的状态,通过读取或设置这些对象的值可以监视或控制网络 资源。MIB 中有两种对象:标量对象和表对象。 2.3 SNMP 协议 SNMP 协议是 SNMP 网络管理框架的核心部分。SNMP 不允许增加或删除对象实例来改 变 MIB 的结构,只能通过 SNMP 基本操作来获取或修改相应对象的值,并且只可以访问 MIB 中的叶子节点。 SNMP 协议中定义了五种消息类型[6] :Get-Request、Get-Response、Get-Next-Request、 Set-Request、Trap。 1) Get-Request 、Get-Next-Request 与Get-Response SNMP 管理站用Get-Request 消息从拥有SNMP 代理的网络设备中检索信息,而SNMP 代理则用Get-Response 消息响应。Get-Next-Request 用于和Get-Request 组合起来查询特定 的表对象中的列元素。 2) Set-Request SNMP 管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、 删除设备或使某一个设备属性有效/无效等)。 3) Trap SNMP 代理使用 Trap 向 SNMP 管理站发送非请求消息,一般用于描述某一事件的发 生。 - 3 -
中国科技论文在线 3 系统分析与总体设计 3.1 系统需求分析 http://www.paper.edu.cn 软件开发过程的起点是获得对客户业务过程的理解,在了解了本系统的所要求完成的基 本功能需求后,用 UML 用例(UserCase)来描述这些需求。 3.1.1 系统用户角色 该系统涉及的用户仅是网络管理员,管理管理员成功登陆该系统后,可以操作系统的所 有功能模块,以完成所有的网络管理功能。 3.1.2 系统功能需求 系统提供了管理者进行网络管理的功能:配置管理,拓扑管理,自动搜索。系统的用例 图如 4-1 所示。系统各模块具体应提供的功能如下: 管 理 员 登 陆 : 管 理 员 输 入 用 户 名 和 密 码 登 陆 系 统 , 从 而 进 行 相 关 的 网 络 管理操作。 配置管理:主要功能是掌握和控制互联网络的状态,包括互联网络内各设备的状态 及其连接关系。目的是为了实现某个特定功能或使网络性能达到最优。它的作用包 括:确定设备的地理位置、名称和有关细节、记录并维护设备参数表,用适当的软 件设置参数值和配置设备功能;初始化、启动和关闭网络或网络设备;维护,增加 和更新网络设备以及调整网络设备之间的关系等。 拓扑管理:主要功能是及时发现整个网络上的被管设备的之间的连接关系,目的是 为了能更好地对整个网络实施管理。 搜索功能:搜索当前网络上的正在运行的所有支持 SNMP 的网络设备。该系统是配 置管理模块的一个子模块。 退出系统:管理员完成相关的管理操作,退出管理系统。 图 2 系统用例图 - 4 -
中国科技论文在线 3.2 系统结构功能图 http://www.paper.edu.cn 在图形用户界面层,用户可以通过友好的界面查看网络的拓扑结构,网络性能状况,进 行网络配置,生成各种统计报表等;中间层的功能主要是 3 个部分:和用户交互;对代理进 行轮询,状态监控和数据采集;与数据库进行数据交换。存储层主要负责把关系数据库作为 网管信息的存储介质,这些数据包括网络设备的基本信息,网络性能数据等等。 图 3 系统结构功能图 3.3 系统功能组件定义 在本系统的结构框架图中,最重要的部分是中间层,它完成了网络管理的大部分的功能。 中间层又根据不同的功能划分成为许多子系统,例如:性能管理子系统,配置管理子系统, 拓扑管理子系统。 3.3.1 配置管理子系统 该子系统主要利用 SNMP 协议中的 Get,Set 方法对设备 MIB 库中配置的基本信息进行 查询,修改等操作。在一个网络中,主机和路由器这些网络中的被管设备,在 MIB—II 库中 的 system 组和 ip 组中包含着很多的信息:节点信息描述,节点对象标识符,设备已运行时 间,设备用户名,节点名,节点位置,ip 地址信息表,ip 路由信息的路由表。配置管理就是 包括对这些设备的查询,修改。在查询的时候,我们给出一定的查询条件,提取 MIB 库中 相应的设备配置信息出来,并生成配置清单在 web 上以表格的形式显示出来。在进行配置 管理之前,需要用自动搜索模块找出当前网络上正在运行的设备,然后才对这些设备进行配 置管理。 - 5 -
中国科技论文在线 3.3.2 拓扑管理子系统 http://www.paper.edu.cn 主要包括:数据采集,拓扑数据分析,拓扑展示等模块。 数据采集模块:基于 SNMP 的 Table 方法,采用轮询机制对代理进行数据查询, 这些数据主要包括在 IP 路由表中,ipRouteTable 是对路由表的抽象: ipRouteDest:本路由的目的 ip 地址; ipRouteIndex:本路由对应的路由器物理接口索引; ipNexthop:本路由下一跳的 ip 地址; ipRouteType:本路由的类型标识,其中按 direct 值来划分:1,标识 其他路由 2,标识无效路由,3,标识直接关联 4,标 识间接关联; ipRouteMask:恩路由对应的 ip 地址掩码。 拓扑数据分析模块:把从路由器中取出的路由表信息,先转换成一张矩阵表,根 据路由表的 ipRouteDest, ipNexthop 信息,来建立网络上各个设备的联系关系,在 网络上互相之间有联系的设备就在矩阵的相应的位置上置为 1,最后得到了一张 0/1 的矩阵表。 拓扑展示模块:根据 0/1 矩阵表用 Jgraph 技术画出各个网络设备的互联关系,然 后在 web 页面上显示出来,以让使用者很清晰的了解整个网络的连接情况。 3.4 系统软件结构框图 下面是基于 Struts 的网络管理体系结构,它完全遵循 Struts 的 MVC 结构化流程,把视 图,控制器和模型等组件分开进行处理。控制器把用户的请求分配到合适的业务处理单元上, 其中各个业务处理单元(ACTION)会调用不同的处理子系统(配置管理,性能管理,拓扑 管理以及数据存储等)完成各项工作。配置管理,性能管理,拓扑管理等 3 个子系统通过网 络与 SNMP 代理进行通信,以完成网络管理的一些基本功能。 图 4 系统软件架构图 - 6 -
中国科技论文在线 4 系统的简单实现 4.1 实现环境 http://www.paper.edu.cn 由于硬件设备的限制,本系统采用了 AdventNet Simulation Toolkit 软件来模拟了一个网 络环境,网络如图所示: 图 5 系统的实现环境 4.2 配置管理的实现 在该界面中显示出了被管设备的基本信息。 图 6 配置管理的简单实现界面 在 本 页 上 显 示 了 设 备 System 组 的 基 本 信 息 , 其 中 SystemName, SystemContact, SystemLocation 三个变量能修改。本系统修改设备信息的界面如下图所示。 - 7 -
中国科技论文在线 http://www.paper.edu.cn 图 7 设备信息修改界面 在修改设备信息的时候,需要把界面上给出的所有信息都填好才能进行修改,虽然不是 很合乎常理,但是在本系统中主要是为了体现处理修改设备信息的这一功能,所以尽量处理 更多的修改变量。 5 结论 本文通过对网络管理协议 SNMP 的研究,设计并实现了一个基于 Struts 技术 SNMP 网络 管理系统软件。网络管理员可以方便的通过该软件来对网络上的各种设备进行统一的管理, 因为是基于 Web 技术,所以网络管理人员能够以 Web 方式查看、修改这些设备的相关配置。 本系统是一种基于 Web 方式的新型的网络管理系统。首先本系统由于采用了 Java 语言作为 开发手段,所以具有跨平台的特性,可以方便的在不同的操作系统间进行移植。其次采用了 基于 MVC 的 Struts 框架,这就使得本系统具有维护方便、扩展灵活的特点。最后由于采用 了 AdventNet SNMP API,大大缩短开发周期,提高系统灵活性。 [参考文献] (References) [1] Shervin Erfani, Victor B.Lawrence, Manu Malek, and Binay Sugla. Network management: emerging trends and challenges[J]. Bell Labs Technical Journal, 1999, 4(4): 3-22. [2] Luca Deri. Network management for the 90s[R]. Technology Report, IBM Zurich Research Laboratory, 1997 [3] 岑贤道,安常青. 网络管理协议及应用开发. 北京:清华大学出版社, 1998. [4] 雷震甲,网络工程师教程[M]. 北京:清华大学出版社, 2004. [5] 王继龙,计算机网络性能管理技术发展综述[J]. 计算机科学,2000,Vol.27(No.9). [6] 杨家海,任宪坤,王沛瑜. 网络管理原理与实现技术[M]. 北京:清华大学出版社,2007. - 8 -
分享到:
收藏