欢迎来到天天文库
浏览记录
ID:37708101
大小:275.82 KB
页数:40页
时间:2019-05-29
《Agent++中文译文》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Contents0Agent++总体说明:(1)Snmp++ Snmp++是为网络管理应用程序开发者提供的具有SNMP服务的一套C++类的集合。它具有基于面向对象模型建立的SNMP应用程序接口,在最小化的范围内使用已经存在的SNMP库,保证了程序的高效和可移植性。对于使用TCP/IP协议的Internet来说,Snmp++封装了底层的Socket操作,提供了简单的API供开发者使用。(2)Agent++ Agent++是在Snmp++的基础上,扩展了Snmp++中的概念,它是用来开发SNMP代理的一套C
2、++类的集合。它继承了Snmp++的优点,封装了绝大部分的SNMP的标准操作,并且利用面向对象的特性,使开发者能够通过派生的子类,重载其中的虚函数,根据应用程序的需要灵活控制程序。在Agent++类库,定义和实现了在SMI和MIB中的文本语法规定,如:Group,Table,TableEntry,Index等。主要的类与文本语法规定的对应关系如表1所示。SNMP协议与Agent++类的表示的对应关系SNMP协议Agent++类网关代理Mib用户MIBMibGroupTableMibTableTableEntryMib
3、TableEntryInstanceMibleafSnmp会话SnmpxPDUPdux变量绑定VBVbx对象标志符(OID)Oidx按照功能划分,Agent++软件开发包由4个模块组成,如图3所示。通信模块消息处理模块操作定位模块MIB管理模块消息接收处理消息接收处理图3Agent++功能模块图通信模块负责接收和发送SNMP消息,它在指定端口(通常是161)接收到来的请求消息,并发送响应消息;在指定端口(通常是162)接收和发送陷阱、信息通知消息。同时,它还要给消息处理模块提供接收到消息、发送消息的工具函数。在Agent
4、++中,属于通信模块的类主要有Snmpx、RequestList、Request等。消息处理模块负责解析输入的请求消息,进行安全验证。它对通信模块传来的SNMP消息进行解析,判断解析结果是否合法,同时,也要把解析出来的社团名(community)与规定的社团名进行比较验证。如果解析结果合法且社团名验证通过,才能进行下一步操作。在Agent++中,属于消息处理模块的类主要有Request等。操作定位模块负责根据消息处理模块解析的结果,在MIB库中查找管理对象。它按照消息中包含的管理对象的对象标志符(OID),查找需要访
5、问的管理对象。在Agent++中,属于操作定位模块的类有Request、Mib、MibGroup、MibTable等。MIB管理模块负责SNMP操作的具体实现。它按照操作类型(读或写),首先判断能否对管理对象进行操作,然后访问MIB库,按照要求读取数据或更新数据。在Agent++中,属于MIB管理模块的类有Request、MibTable、MibTableRow、Mibleaf等。 通信模块消息处理模块和操作定位模块对所有的MIB(包括私有的MIB)都是相同的,开发具体设备的代理时可以直接利用这些模块。MIB管理
6、模块只提供了基本的操作,还需要根据具体的MIB文件,重新定制MIB管理模块。1.Introduction介绍VariousSimpleNetworkManagementProtocol(SNMP)ApplicationProgrammersInterfaces(APIs)existwhichallowthecreationofnetworkmanagementapplications.SNMP++issuchanAPIbutincontrasttomanyothersitofferstheadvantagesofobje
7、ctorientedprogramming.AnobjectorientedapproachtoSNMPnetworkprogrammingprovidesmanybenefitsincludingeaseofuse,safety,portabilityandextensibility.TheSNNP++sourcecode(C++)isfreelyavailablefromtheHewlettPackardCompanyWWWserver[+]aslongastheircopyrightnoticeispreserve
8、d.SNMP++isdesignedtosupportthedevelopmentofSNMPmanagerentitiesinthefirstplace.AGENT++extendsthebasicconceptsofSNMP++tosupportthedevelopmentofSNMPagentsandSNMPe
此文档下载收益归作者所有