搜档网
当前位置:搜档网 › C#下利用SnmpSharpNet进行snmp开发

C#下利用SnmpSharpNet进行snmp开发

C#下利用SnmpSharpNet进行snmp开发
C#下利用SnmpSharpNet进行snmp开发

C#下利用SnmpSharpNet进行snmp开发

最近需要在c#下面开发snmp的应用,其实我的需求很简单,就是通过一个oid可以获

得一个值。在网上搜索了一些,发现很多文章都是你抄袭我我抄袭你,基本上拷贝下来是不能运行的,还有的一些利用系统库,有一些用付费的库。

在网上搜索了一下,发现有一个库相当的好用,SnmpSharpNet。官方网站为

https://www.sodocs.net/doc/ed869604.html,/。如果有需要请到官方网站上去下载开源的二进制文件,其中各个的介绍也相当的全面。在进行开发之前请先导入引用。

在snmp的语句中有两种语句,snmpget/snmpwalk我觉得这两个是我用的最多的,snmpget就是通过oid进行查找,而snmpwalk可以返回一个组中的数据。下面两段程序演示了具体怎么使用。

snmpget:源地址:https://www.sodocs.net/doc/ed869604.html,/getexample.html

using System;

using https://www.sodocs.net/doc/ed869604.html,;

using SnmpSharpNet;

namespace snmpget

{

class Program

{

static void Main(string[] args)

{

// SNMP community name

OctetString community = new OctetString("public");

// Define agent parameters class

AgentParameters param = new AgentParameters(community);

// Set SNMP version to 1 (or 2)

param.Version = (int)SnmpVersion.Ver1;

// Construct the agent address object

// IpAddress class is easy to use here because

// it will try to resolve constructor parameter if it doesn't

// parse to an IP address

IpAddress agent = new IpAddress("127.0.0.1");

// Construct target

UdpTarget target = new UdpTarget((IPAddress)agent, 161, 2000, 1);

// Pdu class used for all requests

Pdu pdu = new Pdu(PduType.Get);

pdu.VbList.Add("1.3.6.1.2.1.1.1.0"); //sysDescr

pdu.VbList.Add("1.3.6.1.2.1.1.2.0"); //sysObjectID

pdu.VbList.Add("1.3.6.1.2.1.1.3.0"); //sysUpTime

pdu.VbList.Add("1.3.6.1.2.1.1.4.0"); //sysContact

pdu.VbList.Add("1.3.6.1.2.1.1.5.0"); //sysName

// Make SNMP request

SnmpV1Packet result = (SnmpV1Packet)target.Request(pdu, param);

// If result is null then agent didn't reply or we couldn't parse the reply.

if (result != null)

{

// ErrorStatus other then 0 is an error returned by // the Agent - see SnmpConstants for error definitions if (result.Pdu.ErrorStatus != 0)

{

// agent reported an error with the request

Console.WriteLine("Error in SNMP reply. Error {0} index {1}",

result.Pdu.ErrorStatus,

result.Pdu.ErrorIndex);

}

else

{

// Reply variables are returned in the same order as they were added

// to the VbList

Console.WriteLine("sysDescr({0}) ({1}): {2}",

result.Pdu.VbList[0].Oid.ToString(), SnmpConstants.GetTypeName(result.Pdu.VbList[0].Value.Type),

result.Pdu.VbList[0].Value.ToString());

Console.WriteLine("sysObjectID({0}) ({1}): {2}", result.Pdu.VbList[1].Oid.ToString(), SnmpConstants.GetTypeName(result.Pdu.VbList[1].Value.Type),

result.Pdu.VbList[1].Value.ToString());

Console.WriteLine("sysUpTime({0}) ({1}): {2}",

result.Pdu.VbList[2].Oid.ToString(), SnmpConstants.GetTypeName(result.Pdu.VbList[2].Value.Type),

result.Pdu.VbList[2].Value.ToString());

Console.WriteLine("sysContact({0}) ({1}): {2}", result.Pdu.VbList[3].Oid.ToString(), SnmpConstants.GetTypeName(result.Pdu.VbList[3].Value.Type),

result.Pdu.VbList[3].Value.ToString());

Console.WriteLine("sysName({0}) ({1}): {2}",

result.Pdu.VbList[4].Oid.ToString(),

SnmpConstants.GetTypeName(result.Pdu.VbList[4].Value.Type),

result.Pdu.VbList[4].Value.ToString());

}

}

else

{

Console.WriteLine("No response received from SNMP agent.");

}

target.Dispose();

}

}

snmpwalk:源代码地址:https://www.sodocs.net/doc/ed869604.html,/walkexample.html walk有两种方法实现,具体看源出处

using System;

using https://www.sodocs.net/doc/ed869604.html,;

using SnmpSharpNet;

namespace sharpwalk

{

class Program

{

static void Main(string[] args)

{

// SNMP community name

OctetString community = new OctetString("public");

// Define agent parameters class

AgentParameters param = new AgentParameters(community);

// Set SNMP version to 2 (GET-BULK only works with SNMP ver 2 and 3)

param.Version = (int)SnmpVersion.Ver2;

// Construct the agent address object

// IpAddress class is easy to use here because

// it will try to resolve constructor parameter if it doesn't

// parse to an IP address

IpAddress agent = new IpAddress("127.0.0.1");

// Construct target

UdpTarget target = new UdpTarget((IPAddress)agent, 161, 2000, 1);

// Define Oid that is the root of the MIB

// tree you wish to retrieve

Oid rootOid = new Oid("1.3.6.1.2.1.2.2.1.2"); // ifDescr

// This Oid represents last Oid returned by

// the SNMP agent

Oid lastOid = (Oid)rootOid.Clone();

// Pdu class used for all requests

Pdu pdu = new Pdu(PduType.GetBulk);

// In this example, set NonRepeaters value to 0

pdu.NonRepeaters = 0;

// MaxRepetitions tells the agent how many Oid/Value pairs to return

// in the response.

pdu.MaxRepetitions = 5;

// Loop through results

while (lastOid != null)

{

// When Pdu class is first constructed, RequestId is set to 0

// and during encoding id will be set to the random value // for subsequent requests, id will be set to a value that // needs to be incremented to have unique request ids for each

// packet

if (pdu.RequestId != 0)

{

pdu.RequestId += 1;

}

// Clear Oids from the Pdu class.

pdu.VbList.Clear();

// Initialize request PDU with the last retrieved Oid pdu.VbList.Add(lastOid);

// Make SNMP request

SnmpV2Packet result = (SnmpV2Packet)target.Request(pdu, param);

// You should catch exceptions in the Request if using in real application.

// If result is null then agent didn't reply or we couldn't parse the reply.

if (result != null)

{

// ErrorStatus other then 0 is an error returned by // the Agent - see SnmpConstants for error definitions

if (result.Pdu.ErrorStatus != 0)

{

// agent reported an error with the request

Console.WriteLine("Error in SNMP reply. Error {0} index {1}",

result.Pdu.ErrorStatus,

result.Pdu.ErrorIndex);

lastOid = null;

break;

}

else

{

// Walk through returned variable bindings

foreach (Vb v in result.Pdu.VbList)

{

// Check that retrieved Oid is "child" of the root OID

if (rootOid.IsRootOf(v.Oid))

{

Console.WriteLine("{0} ({1}): {2}",

v.Oid.ToString(),

SnmpConstants.GetTypeName(v.Value.Type),

v.Value.ToString());

lastOid = v.Oid;

}

else

{

// we have reached the end of the requested

// MIB tree. Set lastOid to null and exit loop

lastOid = null;

}

}

}

}

else

{

Console.WriteLine("No response received from SNMP

agent.");

}

}

target.Dispose(); }

}

}

}

基于SNMP的网络管理软件的配置与使用

华北电力大学 实验报告 实验名称基于SNMP的网络管理软件的配置与使用课程名称网络管理 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:

(一)基于SNMP的网络管理软件的配置与使用 一、实验目的 1.熟悉路由器和交换机并掌握路由器和交换机的基本配置方法和配置命令。 2.练习构建一个由四个路由器和四台主机构成的网络。 3.操作SiteView NNM管理系统,掌握如何添加网元,构建管理系统,并每 一个可被管理的设备进行操作。 4.掌握网络管理软件的使用方法,实现对网络的拓扑发现实时监控,告警设置: 1).应用Siteview软件进行拓扑发现。通过自动和手动两种方式实现。 2).基于SNMP的实时监控。对设备,链路,端口等进行相应的监控。 3).进行告警设置(告警方式)。通过对不同设备,条件等进行告警设置。 二、实验环境 计算机4台、路由器4台、交换机4台、SiteView NNM网络管理软件系统。 三、实验原理 网络设备只有配置了SNMP协议以后,才能够通过SNMP进行监控和管理,因 此,使用网络管理软件之前,需要对所有设备进行配置。主要包括: 1)主机SNMP配置; 2)路由器SNMP配置; 3)交换机SNMP配置。 四、实验步骤: 1、局域网的实现与配置: 网络拓扑图:

路由配置: 1)IP分配: 四台PC的本地连接2的IP分别为: PC1:222.1.3.5 PC2:222.1.2.5 PC3:222.1.1.5 PC4:222.1.4.5 本地连接1 IP: PC51:192.168.1.21 PC52:192.168.1.22 PC53:192.168.1.23 PC54:192.168.1.24 2)地址分配: 路由器R1 S2端地址:222.1.6.1 路由器R1 S3端地址:222.1.7.1 路由器R1与路由器R2间的地址:222.1.6.0 路由器R1与两层交换机1间接口G1 地址:222.1.3.1 路由器R2 S2端地址:222.1.6.2 路由器R2 S3端地址:222.1.5.1 路由器R2与路由器R3间的地址:222.1.5.0 路由器R2与两层交换机2间的地址:222.1.2.1 路由器R3 S2端地址:222.1.5.2 路由器R3 S3端地址:222.1.8.1 路由器R3与路由器R4间的地址:222.1.8.0 路由器R3与两层交换机2间的地址:222.1.1.1 路由器R4 S2端地址:222.1.8.2 路由器R4 S3端地址:222.1.7.2 路由器R4与路由器R1间的地址:222.1.7.0 路由器R4与交换机间的地址:222.1.4.1 PC1地址:222.1.3.5 网关:222.1.3.2 PC2地址:222.1.2.5 网关:222.1.2.2 PC3地址:222.1.1.5 网关:222.1.1.2 PC4地址:222.1.4.5 网关:222.1.4.2

基于SNMP网络管理的研究与应用

基于SNMP网络管理的研究与应用 基于SNMP网络管理是保障网络运行稳定的重要条件,同时也是有效发挥网络利用率的重要前提。文章介绍了基于SNMP网络管理的基本机构,在此基础上设计了一个网络管理系统。在设计出来的网络管理系统中,对传统的SNMP 网络搜索设备的基础上进行了改进,并找出了唯一标识路由器的方法,最后分析了临界区的相关使用。 标签:SNMP网络管理;体系结构;临界区;接口类型;子网系统 SNMP是Simple Network Management Protocol的简称,即简单网络管理协议,它是由简单网关监控协议(即SGMP)转化而来的,它主要的功能就是管理通信线路。随着技术的不断发展与进步,人们开始逐渐修改SGMP,改进后的SGMP就成了现在的SNMP。SNMP具有结构简单、方便实用等优点。技术飞速发展促进了SNMP的发展,其版本也在不断改进和升级。文章主要根据我国中小型企业在管理网络方面的情况,设计了符合我国企业应用的网络管理软件。 1 SNMP网络管理体系结构 SNMP的设计模型是ISO的网络管理模型,一般由两个部分组成,即管理节点和代理节点。在代理节点上,一般都会有一个管理信息库,这个管理信息库是针对被管理对象而设置的,它主要负责数据的采集与传输,最后将所得的信息递交给网管系统。另外,SNMP的优点之一就是简单性,所以它可以监督网络管理的工作,降低系统资源对系统的占用。SNMP的管理模型可以以图表的形式展现出来,具体如图1: 图1 另外,SNMP对操作进行了限制和说明,主要有以下三种模式:(1)Get操作,SNMP主要通过GET语句获得管理对象的具体值;(2)Set操作,通过SET 语句设置管理对象的具体值;(3)Trap操作,通过TRAP语句设置阈值。 另外,SNMP有一个显著特点,它不能通过对象的实例操作改变管理信息库机构,它只能在对象的标志数中进行操作,这就在很大程度上促使SNMP由简单走向更简单。 2 关于网络管理软件的设计 2.1 相关的体系框架 网络管理软件的体系结构一般由四个层次组成。其一,被管网络设备,顾名思义,这个层次主要由一些被管理的相关设备组成。这些设备包括路由器、核心交换机等;其二,数据采集层,它采集的数据覆盖所有被管设备,完成数据采集

基于snmp网络管理系统的设计与实现

本科毕业设计(论文) 题目:基于SNMP网络管理系统 的设计与实现 院(系):计算机科学与工程学院 专业: 班级: 学生: 学号: 指导教师: 2014年6月

1 基于SNMP网络管理的研究 在Windows环境下进行SNMP编程,可以使用WinSNMP API函数。这些函数实现了基本的SNMP功能,但直接使用WinSNMP API函数要复杂得多,幸运的是,目前有许多支持SNMP功能的第三方开发包,如UCD SNMP,PowerTCP 和SNMP++等,使用这些开发包,可以大大简化Windows环境下的SNMP编程工作。 SNMP++是网络管理程序与SNMP代理之间的通信协议,因此SNMP编程也包括两大部分:网络管理程序的开发和SNMP代理软件的开发。 SNMP代理运行在特定的网络设备中,由设备生产商负责开发。本文主要研究在Windows 环境下开发基于SNMP的网络管理程序,不涉及SNMP代理开发方面的内容。 微软的Windows系统(包括Windows NT、Windows 2000、Windows XP、Windows 2003等)支持SNMP,默认是关闭的,可以通过添加组件的方式进行打开并进行简单配置。启动后,代理在主机上启动一个SNMP代理服务器进程,监听从UDP端口161接收的SNMP操作请求。但是还不能使用SNMP获取到系统的信息,因为此时代理支持的MIB-II中还没有定义相关的被管理对象,因此,还需要安装第三方支持的软件。 SNMP第三方软件实际上是一个SNMP子代理,系统中原来的代理称为SNMP主代理,主代理与子代理之间使用特有的协议进行通信。通过安装子代理,可以在系统中扩展主代理不支持的MIB。Net-SNMP就是这样的一款第三方软件,安装后即可为SNMP提供信息。 2 环境配置 使用windows XP 操作系统,软件使用VC++6.0,测试设备,本机,工大瑞普虚拟实验环境,可以模拟如帧中继,路由交换的环境。 从https://www.sodocs.net/doc/ed869604.html, 下载SNMP++开发包,解压后进行编译,形成一个静态链接库,下面的步骤将在VC++6.0开发环境中将SNMP软件包编译成一个静态的链接库。 在VC6中编辑生成snmp_pp.lib文件,操作步骤如下: 1) 在开发环境下,选择“File”->“New…”项,在弹出的窗口中选择“Win32 Static Library”,工程名为“snmp_pp”,如图2.1所示。

基于SNMP的网络管理系统设计与实现

基于SNMP的网络管理系统设计与实现 【摘要】SNMP系统一般情况下采用的客户机或者服务器结构,在系统结构中包含很多种元素,并且十分重要,包括有NMS网路管理工作站、设备和代理等,通常,用其来描述被管理的对象状态或者是NMS和Agent之间的SNMP。NMS特性独立,能将网络管理员和网络管理系统很好的联系起来。工作站需要具备全套的管理软件,管理员获取数据的途径可以通过MIB和用户接口,与此同时,管理员也可以发出相关的管理命令。代理由主机、路由器和网桥等组成,为了使平台更好的让工作站进行管理。当工作站发出信息请求时,代理的职责就是自动应答,这时相关的数据信息就可以自动快速的传达到网管工作站了,网管工作站在对代理提交的数据进行修改,代理此时也可以对一些来自工作站的重要数据信息进行记录报告。 【关键词】网络管理SNMP 信息网络技术信息数据传输 当代信息发展的速度越来越快,计算机网络的应用也随之越来越广泛。网络管理技术作为计算机网络管理领域的重要一员,其研究也被提上日程。现在的网络管理系统仍然存在一些弊端,例如运行不稳定等,因此,必须强化对网络系

统的管理,才能使其稳定发展。SNMP是一种简单的网络管理协议,它是由IETF在SGMP的基础上所研发出来的。在TCP 的应用层管理协议的基础上,其传输层协议使用UDP。其核心在于用一个网络节点进行存放管理信息以及进行代理维护。 1现在的网络信息安全性 自2009年起,互联网在全国的普及范围扩展迅速,使用宽带的用户也逐年增加,但据相关数据表明,互联网发展迅速的同时,病毒的入侵也更加肆虐,浏览器被修改、系统受限的情况也越来越多,甚至达到所有问题的百分之二十以上,同时还伴有信息被盗、计算机被控制等情况。大量的问题现象的出现,更加需要网络从根本上来解决其安全性的问题,包括其软硬件设备和数据的安全,以及在数据传输、储存和使用中的安全。 2对SNMP的简单介绍 SNMP是一种简单的网络管理协议,它是一种网络设备,作用是管理支持代理进程。其核心在于用一个网络节点进行存放管理信息以及通过代理进行维护,通过应用层的管理协议来进行信息库的管理。通过SNMP系统,可以利用远程控制的方式来管理工作站的协议,例如定时检验网络状态,修改一些网络的设备问题,还能及时的对将要出现的问题进行警告。

基于SNMP协议的网络管理系统(数据采集及分析)

摘要 近年来,随着网络技术的发展,计算机网络在我们的日常生活中的作用越来越普遍。我们已经到了如此依赖计算机网络的地步,以至于网络的崩溃可能意味着生意或日常生活的崩溃。因此保持良好的良好运行状态是至关重要的,这就是网络管理的由来。SNMP 是专门设计用在 IP 网络管理网络节点的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告),网络管理系统就可获知网络出现了问题。 本系统即是一个基于SNMP协议的网络管理系统。它通过获取各网络设备的参数并存入数据库,从而帮助网络管理员实现对网络性能的管理。 关键词:网络管理SNMP协议网络设备 Abstract

Along with the development of cross-domain communication technology, the effect in our day-to-day life of computer network was more and more universal in recent years. We had arrived so relying on the condition of computer network, to such an extent as to cross-domain communication collapses probably to signify collapsing of business or day-to-day life. Therefore the good running status that keeps good is essentional, this is the origin of network management.SNMP is one kind of standard agreement specially using at IP's network management network node, and it is one kind of agreement to with application layer. SNMP makes network managemers can manage cross-domain communication efficacy, and discovery and settlement cross-domain communication question as well as the planning cross-domain communication increases. Receiving random news ( and incident report ) by way of SNMP, the network management system can be learned that the cross-domain communication had appeared the question. Namely this system is baseding on the network management system of agreement to with SNMP's. It exists side by side into the data base by way of the parameter to procure each cross-domain communication equipment, thus helps network managers realize the management to the network performance. Keywords: net management SNMP protocol network devices

基于SNMP的网络拓扑发现

基于SNMP的网络拓扑发现 一、SNMP简介 SNMP(Simple Network Management Protocol,简单网络管理协议)是一种基于TCP/IP协议的互连网管理协议。 SNMP诞生于1988年,当时只想把它作为一个短期的网络管理框架,临时用于管理连接到Internet上的设备。但随着SNMP的发展和大量应用,其使用范围已大为扩展,超出了Internet的范围。SNMP逐渐作为一种标准的协议在网络管理领域得到了普遍的接受和支持,成为了事实上的国际标准。 SNMP采用“管理进程/代理进程”模型来监视和控制各种可管理网络设备。其核心思想是在每个网络节点上设置一个管理信息库MIB(Manage Information Base),由节点上的代理负责维护,管理进程通过应用层协议对这些信息库进行访问。 图3.1说明了SNMP网络管理框架的一般体系结构,它由四个主要部件构成,分别是:通信网络、网络协议、网络管理进程和被管网络实体。 网络管理进程被管网络实体

图3.1 简单网络管理协议(SNMP )体系结构 二、 基于SNMP 协议的网络层拓扑发现 SNMP 已经成为网络管理的标准,为网络拓扑自动发现带来了巨大的方 便,同时也大大提高了网络拓扑发现的速度。 路由器 子网 图3.2 网络拓扑结构模型 网络层拓扑发现算法的任务就是发现被管网络中的子网、路由器以及它 们之间的连接关系。图3.2是网络拓扑结构的一个模型。其中,各子网通过各自的路由器与其他子网通信,它们都连接到路由器的一个端口上。路由器的一个端口可以连接一个子网,也可以同其他路由器相连。当子网内的某一机器向别的子网发送数据时,数据包首先到达本子网的缺省路由器,缺省路由器检测数据包中的目的地址,根据其路由表确定该目的地址是否在与自己相连的子网中。如果是,则把数据包直接发往目的地,否则转发给路由表中规定的下一个路由器,下一个路由器再进行类似处理,依次类推,数据包将最终到达目的地。可见,通过分析路由器上的路由表,就可以知道网络层的拓扑结构。 2.1 网络层拓扑发现用到的MIB 组 MIB-II(RFC-1213)是标准的SNMP MIB ,所有的路由器都必须实现它。拓扑发现程序为了具有通用性的特点,必然选择MIB-II 作为拓扑发现工具。MIB-II 由很多不同的组组成,本节的拓扑发现算法用到的组包括:system ,interfaces ,和ip 。下面详细介绍这三个组中包含的对象。

一种基于SNMP的中间网络管理系统解决方案

225 2007年第11期,第40卷 通 信 技 术 Vol.40,No.11,2007 总第191期 Communications Technology No.191,Totally 一种基于SNMP 的中间网络管理系统解决方案 毛期俭, 陈恒志, 肖寒春 (重庆邮电大学,重庆 400065) 【摘 要】文中针对现有光收发设备管理系统的现状和测控技术的发展趋势,提出了多台设备数据集中打包、代理软件化的基于SNMP 的中间网络管理解决思路。同时详细地规划了网络管理层次架构,给出了硬件组成结构设计和软件系统的整体架构。经过测试,该系统解决方案完全满足设计需求。 【关键词】简单网络管理协议;光传输设备网络管理系统;管理信息库 【中图分类号】TP391 【文献标识码】B 【文章编号】1002-0802(2007)11-0225-02 A Solution of Mid-layer Network Management System Based on SNMP MAO Qi-jian, CHEN Heng-zhi, XIAO Han-chun (Chongqing University of Posts & Telecommunications, Chongqing 400065, China) 【Abstract】Considering the trends of Measurement and Control Technology and the status of management system for optical transmission equipments, a solution of Mid-layer network management system based on SNMP, with data together-packed and softwarized agent, is suggested in this paper. The network topology connection is d planned indetail,and the structures of the hardware and the software system are given. The result of the test proves that the solution exactly satisfies requirements of the design. 【Key words 】SNMP;network management of the optical transmission equipment;MIB 0 引言 网络技术的发展,引发了测控领域的深刻技术变革;测控系统沿着网络化方向与可开发性方向的发展是目前控制技术发展的主流。鉴于目前国内光收发器的网管现状以及网络集中管理的理念,引入新的符合监控领域的发展主流的新光收发机的监控方式便成为当务之急。 文中提出了一种管理代理端(SNMP Agent)外置化集中化采用了多台设备数据集中打包(IP 包)、代理软件化解决思路的网络管理方案。首先给出了整个管理体系的网络架构,然后分析了硬件组成结构设计和软件系统的整体架构;随后着重研究了软件系统中的信息管理层次、双地址定位机制和系统与设备间通信的要点。最后,对管理系统分别进行了功能性测试和压力测试,并根据测试的结果对系统做出了优化改进。 1 网络管理层次架构 为了达到工程管理网络的规模,每个代理中心设计网元 管理容量可达500台。每个代理与其所管理的设备同处于一个子网内(局域网),在该局域网内不限制网段与IP。各代理端平等地连接于公网上,在公网上以SNMP 协议的方式与中心网管进行双向管理通信。 网络管理拓扑图如图1所示。在图1中没有标出串口转换设备,从公网向下,各代理端下连接的网元设备均视为并联;但在实际中,这些设备是分组连接在不同的串口转换设 收稿日期:2007-06-12。 基金项目:重庆市科委科技攻关项目(编号:CSTC,2005AC2089)。 作者简介:毛期俭(1946-),男,教授,硕士生导师,主要研究方向为第三代移动通信技术、多媒体通信;陈恒志(1983-),男,硕士研究生, 主要研究方向为第三代移动通信技术、光通信技术;肖寒春(1973-)男,高工,硕士研究生导师,主要研究方向为下一代网络技术。

基于SNMP网络管理的研究与应用

原创性声明 本人郑重声明:所呈交的学位论文是本人在导师的指导下独立进行研究工作所取得的成果,论文中有关资料和数据是实事求是的。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 若有不实之处,本人愿意承担相关法律责任。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 学位论文作者完全了解北京服装学院有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属北京服装学院。学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许学位论文被查阅、借阅和复印;学校可以将学位论文的全部或部分内容公开或编入有关数据库进行检索,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。 保密的学位论文在解密后适用本授权书。 学位论文作者签名: 日期:年月日 导师签名:日期:年月日

基于SNMP网络管理的研究与应用 摘 要 随着网络的普及,计算机网络己经渗透到社会经济的各个领域,对社会经济的发展起着越来越重要的作用。与此同时,网络的规模日趋扩大,网络结构日趋复杂,以及当前网络安全形势的日益严竣,这些因素都极大地增加了整个网络的安全运行和日常管理的难度,构建一个稳定可靠的网络管理系统对网络进行管理,成为一个重要的研究方向。 本文首先介绍了计算机网络发展的相关背景和网络管理的发展历史。对网络管理的相关理论、体系结构、管理协议和发展趋势作了一个阐述。 通过详细分析简单网络管理协议中的网络管理模型、管理信息结构、管理信息库、通信编码规则、传输的报文格式和简单网络管理协议规定的基本操作,为软件的开发提供了理论依据。简单网络管理协议(SNMP),由于其简单和易于实现,己经成为网络管理领域事实上的行业标准,有着广泛的应用。 论文针对当前随着网络应用的普及所带来了网络规模日趋扩大,结构日趋复杂,安全形势日益严竣的现状,并通过分析网络管理的相关理论、体系结构、管理协议和发展趋势,提出自主开发一个实用和稳定的网络管理系统,对网络实际运行和维护有重要意义,本文所开发的系统采用了基于SNMP的网络管理协议模型,应用惠普的SNMP++软件开发包和VC6.0开发平台,实现的功能包括:网络设备接口的流量数据采集、动态在线测量、实时监控、网络异常报警等功能。并且通过对收集的数据分析实现了网络拓朴图发现、网络故障定位。从而为网络的稳定可靠运行和性能优化提供依据。本文所开发的平台为进一步扩充、完善成实用的网络管理系统提供了有益的尝试。 关键词:网络管理;简单网络管理协议;SNMP++;网络流量测量;网络拓朴发现

相关主题