基于snmp协议网吧管理软件开发技术解析_第1页
基于snmp协议网吧管理软件开发技术解析_第2页
基于snmp协议网吧管理软件开发技术解析_第3页
基于snmp协议网吧管理软件开发技术解析_第4页
基于snmp协议网吧管理软件开发技术解析_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机软件工程论文软件工程论文:基于Snmp协议网吧管理软件开发技术解析摘 要: 由于公司业务不断扩大,外部网吧由最初的几家发展到现在的20多家,每家都使用一台QNO FVR360路由器,由于位置分散,不易管理,需要开发一套简单的网管软件,以便于网管的日常维护。在此解析了基于Snmp协议访问网络设备的开发方法。关键词:Snmp;网络;.NET;Oracle1概述1.1 Snmp协议SNMP是一系列协议组和规范,它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。只需要知道网络设备的管理IP,就可以查看网络设备的状态,无需登录名或密码。1.2开发工具Oracle+Ajax+Vss+VS2008。1.3基础设置为保障使用Snmp协议与网络设备相连,必须要把网络设备的防火墙关掉或者在防火墙设置中允许Snmp协议通过。2获取路由器参数值主要是通过已知的网络设备管理IP和交换机的OID来查询实现,例如Qno FVR360路由器系统时间标识为..0。但大多数时候网络设备的OID信息是未知的,如何知道OID属性值成为要点。一种方式是通过厂家获取,另一种方式是通过软件获得。在这里介绍一下通过软件怎样获得。可以通过软件GetIf来获得,这款软件对于网管来说并不陌生,通过它可以知道当前设备的状况,能把网络设备的OID信息、端口状态、路由表、ARP、支持的协议以及网络设备中mac-address-table中的信息都读了出来。GetIf使用:(1)打开Getif在Host name输入IP地址后,点击“Start”,如果连接成功会在最下面状态栏中出现SysInfovariables Ok提示,如图1所示。(2)在MBrowser标签卡中察看Oid值,例如察看系统时间。如图2所示,点击iso-org-dod-internet-mgmt-mib-2-sysUpTime-sysUpTime后运行Start后出现system.sysUpTime.0:0:1:53:43.00,点击后在最下角出现Oid值为..0,其他属性Oid也按此方法查找。3获取网络设备属性值.NET可以通过调用SnmpSharpNet库,来获得网络设备属性值。具体操作如下。(1)下载SnmpSharpNet库,并进行引用。(2)编写调用类库。public class SnmpWorkpublic SnmpWork()#region通过oid字符数组获得相应的值public static DictionarygetOIDValue(stringhost,stringoid)/返回变量Dictionarydic=new Dictionary();OctetString community=new OctetString(public);AgentParameters param=new AgentParameters(community);param.Version=SnmpVersion.Ver1;IpAddress agent=new IpAddress(host);UdpTarget target=new UdpTarget(IPAddress)agent,161,2000,1);Pdu pdu=new Pdu(PduType.Get);foreach(string singleoid in oid)pdu.VbList.Add(singleoid);SnmpV1Packet result=(SnmpV1Packet)target.Request(pdu,param);if(result!=null)if(result.Pdu.ErrorStatus=0)for(int i=0;iresult.Pdu.VbList.Count;i+)dic.Add(result.Pdu.VbListi.Oid.ToString(),result.Pdu.VbListi.Value.ToString();target.Close();return dic;#endregion(3)界面调用代码。stringoidvalue=new string“..0”,”..1.10.4”;Dictionarydi=MENUGlobal.SnmpWork.getOIDValue(devi,1,oidvalue);string sysTime=dioidvalue0;string receiveByte=dioidvalue1; 4数据库设计由于只是针对同一型号的路由器进行操作,所以数据库设计比较简单。4.1设备表create table SNMPDEVICE(ID INTEGER not null,-设备编号DEVICENAME VARCHAR2(64),-设备名称DEVICEIP VARCHAR2(64),-设备管理IP地址ISLOCK INTEGER default 1,-是否锁定(0:锁定;1:开启)PORT INTEGER,-端口号REALNAME VARCHAR2(32),-设备所属维护人员用户名TELEPHONE VARCHAR2(16)-维护人员联系电话)4.2表OIdcreate table SNMPOID(DEVICEID INTEGER not null,-设备编号ID INTEGER not null,-Oid编号OIDVALUE VARCHAR2(64)not null,-Oid值OIDNAME VARCHAR2(64),-Oid名称ISLOCK INTEGER default 1,-是否锁定(0:锁定;1:开启))4.3网络设备历史数据create table SNMPHISTORY(DEVICEID INTEGER not null,-设备编号OIDID INTEGER not null,-Oid编号VALUE VARCHAR2(64),-值HISTORYDT DATE not null-时间)5结 语Snmp是一种简单的网络管理协议,简单、灵活、功能强大、易于实现和调试,是开发网管软件的首选协议。但是在开发之前需要考虑一些问题:(1)网络设备是否支持Snmp协议。(2)Snmp传输层协议是基于UDP的,所以需要采取其他方式保证其安全。(3)如果需要定时轮询取值,需要根据网络状况来设定定时时间。(4)保护好网络安全,防止恶意攻击。参考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论