大三论文写作基于SNMP的网管程序设计.docx

上传人:b****5 文档编号:8006244 上传时间:2023-01-27 格式:DOCX 页数:7 大小:89.80KB
下载 相关 举报
大三论文写作基于SNMP的网管程序设计.docx_第1页
第1页 / 共7页
大三论文写作基于SNMP的网管程序设计.docx_第2页
第2页 / 共7页
大三论文写作基于SNMP的网管程序设计.docx_第3页
第3页 / 共7页
大三论文写作基于SNMP的网管程序设计.docx_第4页
第4页 / 共7页
大三论文写作基于SNMP的网管程序设计.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

大三论文写作基于SNMP的网管程序设计.docx

《大三论文写作基于SNMP的网管程序设计.docx》由会员分享,可在线阅读,更多相关《大三论文写作基于SNMP的网管程序设计.docx(7页珍藏版)》请在冰豆网上搜索。

大三论文写作基于SNMP的网管程序设计.docx

大三论文写作基于SNMP的网管程序设计

基于SNMP的网管程序设计

 

基于SNMP的网管程序设计

摘要

用编写程序来管理网络设备非常复杂,是必须要做好的工作。

用简单网络管理协议SNMP(simpleNetworkManagementProtocol)进行网络系统的管理具有强大的优势,不需要做复杂的编程工作,是目前最流行的网络管理解决方案。

从软件工程的观点来看,SNMP实现了网络管理的简捷易行性。

文章对SNMP协议作了深入的研究,并使用SNMP协议进行网络管理的实现技术。

关键词:

SNMP网络管理管理信息库

Abstract

Writingprogramstomanagenetworkdevicesisacomplexprogrammingtask.Itmustworkverywell.Butsimplenetworkmanagementprotocol(SNMP)hasthepowerfuladvantagesofnetworkmanagement.SNMPshedtheliabilityofthedemandingsoftwareimplementationtask,andithasbecomethemostpopularnetworkmanagementsolutioninusetoday.Fromasoftwareengineeringviewpoint,ithaveshownhowtohidecomplexityfromtheimplementationofnetworkmanagementsoftware.ThepaperincludestheresearchandimplementationofSNMP.

Keywords:

SNMPnetworkmanagementMIB

.

目录

摘要1

1引言1

1.1SNMP的发展1

2网络管理体系2

2.1主要任务2

2.2基本结构和关系2

2.3设计原则及一般要求2

2.4SNMP协议的实现要求3

3SNMP协议的实现要求4

3.1操作的实现4

3.2网络管理编码的格式4

4SNMP的实现6

结论和致谢7

参考文献8

1引言

目前,互联网的规模已扩大到各行业和人们的日常工作和学习中,如何对网络进行有效的管理,发挥络的最大效益,是网络构建中的热点问题。

网络管理的核心是网络管理系统,它是保证网络系统可靠、高效、经济、安全运行的重要手段。

要提高管理水平和服务质量,降低运行成本,使用简单网络管理协议(SNMP)进行网络系统管理具有强大的优势,而且也是目前最流行的网络管理解决方案。

1.1SNMP的发展

20世纪80年代初期,根据国际互联网工程任务组(IETF)制订的简单网络管理协议标准,Internet体系结构委员会提出了简单网络管理协议的第一个版本SNMPv1。

1993年又正式发表了第二个版本SNMPv2,增加了一些更强的网管协议功能。

最新版本的SNMPv3既保持了SNMPv1和SNMPv2易于理解和实现的特性,又增强了网络管理的安全性能。

使用SNMP协议,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备设置、接收网络事件警告等。

现在绝大多数的网络设备都支持SNMP协议,SNMP已经用于管理几乎所有IP网络的网络设备。

SNMP采用了Client/server和manager/agent网络系统结构模型,代理和管理实体通过SNMP协议中的标准消息进行通信,每个消息都是一个独立的数据报。

SNMP使用UDP(用户数据报协议)作为传输层协议进行无连接操作。

由于SNMP简单和易于实现,现在它已不是最初的基于IP网络的网络管理协议,而是作为一种事实上的网络管理标准被广泛应用。

2网络管理体系

2.1主要任务

网络管理的主要任务就是使用网络管理协议有效地管理网络设备,使其可靠、安全、正常地运转,保证网络畅通。

网络设备主要包括路由器、交换机、网关、网桥、计算机系统等。

这些网络设备可以发送和接收信息,通常由网络管理员进行管理。

2.2基本结构和关系

大多数网络管理体系[1C3]的基本结构和关系都相同,如图1所示。

终端站点和被管设备(比如路由器、交换机、网关、网桥、计算机系统等)运行使它们在出问题时能发出警报的软件。

网管实体在接收到这些警报时,就要执行一系列的动作,包括发出通知,记录事件日志,系统关闭和自动进行系统维护纠正等。

管理实体也能定时询问终端站点,来检测某些变量的值。

驻留在被管设备中的agent代理软件模块首先编译该网络设备的信息,然后把这些信息存储在管理数据库中,最后把这些信息提供给使用网络管理协议(比如SNMP)的网络管理实体[1]。

管理代理服务器是实体,该实体提供其它实体的管理信息。

图1一个典型的网络管理实体

2.3设计原则及一般要求

agent(代理)是安装、驻留在被管设备上协助网络管理系统完成网络管理任务的一个守护进程,通常也指具有支持某种网络管理协议的被管网络设备。

根据SNMP协议,对于支持SNMP协议的代理,其主要功能是对管理站发送来的SNMP请求做出响应,同时根据设置,向管理站发送中断/通知(trap)消息。

网络中所有支持SNMP协议的被管网络设备都实现了自己的agent。

根据其实现技术的不同,将它分为网络设备的SNMPagent实现技术和主机系统SNMPagent的实现技术。

支持SNMPagent的网络设备包括路由器、交换机、拨号服务器、网关、网桥等。

这些设备在实现SNMPagent时,通常是将SNMPagent作为其操作系统的一部分来实现的。

一般情况下,一个被管网络设备的数据集合不用数据库的定义来描述,但在SNMP术语中,被管设备的数据结构的集合称为管理信息库MIB(ManagedInformationBase),与应用软件中数据库的提法类似。

一个MIB描述了包含在数据库中的对象。

每一个对象都有4个属性:

对象类型(ObjectType)、语法(syntax)、存取(Access)和状态(Status)。

2.4SNMP协议的实现要求

SNMP定义了5个特殊的消息:

得到请求、得到下一个请求、提出请求、得到响应和中断/通知。

这些消息可以收集到网络设备Agent的数据,并对网络设备设置二进制数值,以控制这些设备的行为。

前4个消息的格式如图2所示。

这些消息可以被用来在SNMP中设置特定的值,使得网络设备与其代理取得一致。

中断/通知消息与前4个消息不同,如图3所示。

任何被管理的网络设备的属性都可以被监视,并能由使用这5个消息操作的网络管理应用程序进行设定。

3SNMP协议的实现要求

3.1操作的实现

使用SNMP协议的消息格式进行操作还存在一些问题,它不支持紧急的强制性命令。

SNMPv1还没有管理者与管理者之间进行通讯的标准应用程序接口(API)。

SNMPv2则有一个系统数据库管理协议,其中的系统管理结构(SMI)使用了一些基本的ASN.1定义,如:

整数、八位二进制数串和对象标记符。

ASN.1(AbstractSyntaxNotationone)是由CCITX(X.208)和ISO(ISO8824)开发并标准化的正式语言,ASN.1用于定义应用程序数据的抽象语法、应用程序结构和表示PDU(ProtocolDataUnit协议数据报单元),并为ISO系统管理定义管理信息库。

采用ASN.1数据定义语言描述变量类型之后,还需要将其映像为适于传输的数据格式,即用ASN.1语言书写的变量转换成串行的字字节流在网络中传输。

在ITU-T的X.208、X.209标准中对基本编码规范(BER)[4]进行了详细的定义,将每一个待传输的SNMP字段用3个字段表示,分别是:

标签八位组、长度八位组、内容八位组。

标签字段是关于标签和编码格式的信息,长度字段定义内容字段的长度,而内容则包括实际的待传输数据。

使用ASN.1可以构建复杂的结构和列表,但ASN.1非常复杂且容易出错。

例如:

网管者决定要向一个网络设备发送十进制数“101”时,用ANS.1编码的复杂性就显示出来了。

因为“101是一个整数,所以ASN.1编码“101”就使用简单类型。

3.2网络管理编码的格式

编码的格式为:

标记类型、标记号、长度、值。

其中:

标记类型:

Universal=00

Application=01

ContextSpecific:

10

Private:

11

由于“101”是一个整数,故选择标记类型为00000010。

长度以字节表示:

101=(00000000,00000000,00000000,11000011)2

101用上述四个字节来编码表示。

UsingBER(00000010,00000100,00000000,00000000,

00000000,

0110101)ASN.1

但是,这些定义和数据结构可以由程序设计人员用C、C++或Java[5]计算机程序设计语言来编制,而不用复杂的ASN.1定义来编码。

程序可以由专门的Run-Time库来翻译。

程序设计员可以在单一库中设置所有需要的数据类型,或对每一种数据类型和在运行时需要数据类别的场合建立独立的类别文件。

用C、C++或Java计算机程序设计语言来编制这些定义和数据结构非常容易,克服了用ASN.1编码既复杂又容易出错的问题,而且用户可以建立自己需要的新的数据类型。

这些数据类型会即时顺序地翻译为SNMP协议消息的ASN.1数据。

以下是建立ASN.1类别(典型的数据结构和算法)的编程。

//Begin

{SNMPDEFINITIONS:

=BEGIN

IMPORTS

//DataTypes

Message:

=SEQUENCE

{IntegerVersion;

OctetStringCommunity;

PDU

}

PDUs:

=CHOICE

{GetRequest-PDU,

GetNextRequest-PDU,

GetResponse-PDU,

SetRequest-PDU,

AndTrap-PDU

}

END

PDUEncoding

}

IntegerRequestID,ErrorStatus,

ErrorIndex;

Sequence

}

ObjectIDObject;

DataTypeValue/Data

}}}

//End

4SNMP的实现

实现用SNMP协议来管理网络的最终目标是简化网络管理,使一般的程序员也能够编写应用程序来管理IP网络设备,而不需要SNMP专家去管理[6]。

SNMP已经同时在client/server和manager/agent网络系统结构中实现了。

ManagerAgent安装、驻留在服务器中,并在后台运行。

客户端管理程序在前台运行。

客户端管理程序提出请求消息,该请求消息转换为SNMP协议消息,SNMP协议消息又被转换为多个IP数据包发送到网络,数据包含有SNMP消息中的所有字段,并用基本编码规范(BER)[4]编码,编码消息发送到Agent,Agent进行解码、图示[3],并将响应发回到客户端。

这时,选择工作组和工作组变量的值就无关紧要了,但要选择特别的OID并调用SNMP对话。

最终,从MIB中获取特别要求的值,并在屏幕上显示。

图2得到请求、提出请求、得到下一个请求和得到响应的消息格式

图3中断/通知(Trap)的消息格式

结论和致谢

从软件工程的观点来看,SNMP显示了实现网络管理的简捷易行性,是目前最为流行、实用、经济、安全可靠的网络管理解决方案。

在本次的论文写作中,除了对论文的查找和运用之外,同时还对论文的额内容,即SNMP有了更深层次的了解,有利于自己以后的学习,以及对以后自己的毕业论文的完成也有了很大的帮助.

我还要感谢与我一起在机房学习SNMP网络知识的同学和朋友,在他们的帮助与共同探讨下,我解决了许多难题,也使我的论文能够顺利完成。

感谢他们在我学习和生活上的帮助。

真诚的感谢所有帮助与支持过我的人!

向你们说声:

谢谢了

参考文献

[1]WilliamStallings.SNMP,SNMPv2,SNMPv3,andRMON1and2[M].PearsonEducation,2002.

[2]斯大林.SNMP网络管理[M].健莲科技译.北京:

中国电力出版社,2001.

[3]U.Warrier,L.Besaw.TheCommonManagementInformationServicesandProtocoloverTCP/IP(CMOT)[S].IETFRFC1095,April1989.

[4]K.McCloghrie,M.Rose.ManagementInformationBaseforNetworkManagementofTCP/IP-basedinternets[S].IETFRFC1156,May1990.

[5]GayHorstmann,GaryCornell.CoreJava2VolumeI,II.PrenticeHallPTR,January1999.

[6]杨家海,任宪坤,王沛瑜.网络管理原理与实现技术[M].北京:

清华大学出版社,2000.

[7]卢红波.SNMP和CMIP网管协议的比较[J].邮电设计技术.2000.

[8]于小红,曾文方,严鹏.网络管理软件的选择和应用[J].计算机应用研究.2001

[9]黄基前.理解SNMP、SNMP++及用VC++6.0实现WindowsSNMP编程[J].光通信技术.2001

[10]贤道,安常青.网络管理协议及应用开发[M].北京:

清华大学出版社,2003

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1