- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在Windows下实现SNMP协议的编程,可以采用Winsock接口,在161,162端口通过udp传送信息。在Windows 2000中,Microsoft已经封装了SNMP协议的实现,提供了一套可供在Windows下开发基于SNMP的网络管理程序的接口,这就是WinSNMP API。 WinSNMP为在Windows下开发基于SNMP的网络管程序提供解决方案。它为SNMP网管开发者提供了必须遵循的开放式单一接口规范,它定义了过程调用、数据类型、数据结构和相关的语法。 WinSNMP以函数的形式封装了SNMP协议的各部分(在VC++6.0开发环境中体现为wsnmp32.dll、wsnmp32.lib和winsnmp.h),包括PDU、VarBindList以及协议操作的各项函数。并且针对SNMP是使用UDP的特点而设置了消息重传、超时机制等。 基于WinSNMP的应用程序必须通过wsnmp32.dll动态链接库访问WinSNMP API函数, WinSNMP API提供了七大类,约50个API函数。 下面将以SNMPv1协议为例,具体描述WinSNMP的一般编程模式。 一次完整的SNMP基本步骤如下: 一、应用以下三个函数实现WinSNMP通信初始化: 1、SnmpStartup 2、SnmpSetTranslateMode 3、SnmpSetRetransmitMode 二、应用如下函数生成WinSNMP会话句柄: 4、SnmpCreateSession 三、根据设定的IP地址应用如下函数将源和目的主机的IP地址转换为实体句柄: 5、SnmpStrToEntity 四、调用如下函数将设定的Community转换为安全控制的上下文通信句柄: 6、SnmpStrToContext 五、调用如下函数生成并绑定要访问的MIB中的OID: 7、SnmpCreateVbl 8、SnmpSetVb 六、调用如下函数生成SNMP协议通信数据单元: 9、SnmpCreatePdu 七、发送指定OID请求访问: 10、SnmpSendMsg 八、接收从代理返回的请求响应: 11、SnmpRecvMsg 九、清除SNMP通信过程中生成的变量所占用的内存空间: 12、SnmpCleanup 一、WinSNMP发送请求消息 WinSNMP发送请求消息的过程可以分为四个部分,主要有: 1、WinSNMP的初始化 2、PDUs的创建 3、发送信息 4、资源的释放 1、 WinSNMP的初始化 (1) 调用SnmpStartup函数启动WinSNMP。 (2) 调用SnmpCreateSession函数创建一个会话session。 (3) 调用SnmpSetRetransmitMode函数设置重传模式。 (4) 调用SnmpSetRetry函数设置重传次数。 (5) 调用SnmpSetTimeout函数设置超时时间。 其中第3、4、5步都是对本地数据库的操作,完成了对WinSNMP相关参数的设置。 2、 创建协议数据单元(PDUs) 在创建PDU之前,必须先创建变量绑定表(varbindlists)。 调用SnmpStrToOid函数创建读取对象的OID, 例如,用户想获取MIB变量ipInReceives的信息(一个实例的OID为1.3.6.1.2.1.4.3.0),可以采用下面的代码得到该变量对象标识符的二进制表示: LPCSTR name=1.3.6.1.2.1.4.3.0; smiOID Oid; SnmpStrToOid(name,Oid); (2) 调用SnmpCreateVbl函数创建变量绑定表。 HSNMP_VBL m_hvbl=SnmpCreateVbl(session,Oid,NULL);/*NULL表示该OID的值为空*/ (3) 调用SnmpSetVb函数往变量绑定表中添加变量绑定,需先创建一个OID,命名为Oid。 SnmpSetVb(m_hvbl,0,Oid,NULL);/* 0表示往变量绑定表中添加变量绑定,非0值表示修改此位置的变量绑定*/ 3、 发送信息 首先调用SnmpStrToContext和SnmpStrToEntity函数创建共同体(community)字符串和代理entity, 然后,调用SnmpSendMsg函数发送信息。 SnmpSendMsg(session,0,hAgent, hView, m_hpdu); 4、资源的释放 最后,调用SnmpFreeVbl、SnmpFreePdu、
您可能关注的文档
- 09会计电算化四班第一组田鸿盛财务分析.ppt
- 柴油发电机组一般介绍.ppt
- 101125-春盈百货商业空间设计发想.ppt
- 青岛版 一上 第一单元.ppt
- 新定额Q4功能展示交流.ppt
- 1-3 统计基础知识.ppt
- 鲁教版新教材第二单元 探秘水世界单元设计分析.ppt
- 第七讲_环境风险分析概述.ppt
- 岩浆岩石学 第一部分.ppt
- 粒度的基本概念.ppt
- DB23_T 3866-2024冰上龙舟赛事组织服务规范.docx
- DB32 2163-2012 棉纱单位可比综合电耗限额及计算方法.docx
- DB32∕T 2429-2013 棉花田间生长发育观察记载规范.docx
- DB23_T 3820-2024 工业互联网综合平台数据质量管理规范.docx
- DB23_T 3474-2023非煤智慧矿山信息系统技术规范.docx
- DB3201_T 1106-2022 工程地质层划分技术规范.docx
- DB33T 2515-2022公共机构“零碳”管理与评价规范.docx
- DB3301_T 0415-2023 装修垃圾收运处置管理规范.docx
- DB3311/T 106―2019“丽水山居”民宿服务要求与评价规范.docx
- DB3201T 1127-2022 慈善捐赠受赠管理规范.docx
最近下载
- 铁塔室外光电一体箱(技术规范书)-.docx VIP
- 铂科磁材在太阳能逆变器的应用.pdf VIP
- 2025·上海浦东新区·二模智慧藏于“笨办法”:慢工出细活的真谛+审题立意及范文-备战2025年中考语文各地名校模考卷作文导写.docx VIP
- 经血源传播疾病的医院预防控制措施.docx VIP
- 安全操作规程(全套).doc VIP
- (word完整版)苏州工业园区合格证第四版参考题库答案.pdf VIP
- 2025年北京市通州区中考一模从“乐在其中”悟人生真谛”审题立意及范文-备战2025年中考语文各地名校模考卷作文导写.docx VIP
- 2021版 客户侧电能计量装置通用设计要求 第1部分 10kV用电客户电能计量装置.docx VIP
- Q∕SYCQ 4008-2022 工业用液化轻烃原料(打印版).pdf VIP
- 租房合同范本(完美打印版)6篇 .pdf VIP
文档评论(0)