snmp协议的相关资料
SNMP协议相关资料
简介
SNMP 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告)网络管理系统获知网络出现问题。
SNMP的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB,改进后的协议就是著名的SNMP。基于TCP/IP的SNMP网络管理框架是工业上的现行标准,由3个主要部分组成,分别是管理信息结构SMI(Structure ofManagement Information)、管理信息库MIB和管理协议SNMP。
SMI定义了SNMP框架所用信息的组织和标识,为MIB定义管理对象及使用管理对象提供模板。 MIB定义了可以通过SNMP进行访问的管理对象的集合。 SNMP协议是应用层协议,定义了网络管理者如何对代理进程的MIB对象进行读写操作。 SNMP中的MIB是一种树状数据库,MIB管理的对象,就是树的端节点,每个节点都有唯一位置和唯一名字.IETF规定管理信息库对象识别符(OID,Object Identifier)唯一指定,其命名规则就是父节点的名字作为子节点名字的前缀。
组成部分
一个SNMP管理的网络由下列三个关键组件组成:
- 网络管理系统(NMS,Network-management systems)
- 被管理的设备(managed device)
- 代理者(agent) 网络管理系统运行应用程序,以该应用程序监视并控制被管理的设备。也称为管理实体(managingentity),网络管理员在这儿与网络设备进行交互。网络管理系统提供网络管理需要的大量运算和记忆资源。一个被管理的网络可能存在一个以上的网络管理系统。 被管理的设备是一个网络节点,它包含一个存在于被管理的网络中的SNMP代理者。被管理的设备通过管理信息库(MIB)收集并存储管理信息,并且让网络管理系统能够通过SNMP代理者取得这项信息。 代理者是一种存在于被管理的设备中的网络管理软件模块。代理者控制本地机器的管理信息,以和SNMP兼容的格式传送这项信息。
相关资料
- 用C++通过SNMP获取局域网内所有的SNMP设备(代码实现,不用工具),思路也可以
- SNMP MUX Protocol and MIB https://tools.ietf.org/html/rfc1227
《Visual C++开发基于SNMP的网络管理软件(第2版)》.武孟军.2009年.人民邮电出版社.pdf
- net-snmp开发
- snmp++开发实例一
- https://agentpp.com/download.html#SNMP_PP
- [snmp++]读取MIB信息最简单的例子
- SNMP++的深入学习(一)
- SNMP++ 3.3.4 API文档
- SNMP++2.8中文文档
- snmp4j获取mib信息的实例(测试成功)
- Snmp学习总结(七)——SNMP4J介绍
- windows下使用net-snmp实现agent扩展(一)
snmp的c#实现
- 两个开源组件:
- 相关文章:
- http://www.cnblogs.com/wuhuacong/archive/2011/01/10/1931975.html
- http://www.cnblogs.com/luluping/archive/2010/04/16/1713504.html
- http://www.cnblogs.com/s5279551/archive/2010/09/19/1831261.html
- C# SNMP 编程
发现有一个库相当的好用,SnmpSharpNet。官方网站为:http://www.snmpsharpnet.com/
snmp的C++和Java实现库
- net-snmp
- SNMP++ SNMP++v3.x is based on SNMP++v2.8 from HP™ and extends it by support for SNMPv3 and a couple of bug fixes. SNMP++v3.x is a C++ API which supports SNMP v1, v2c, and v3. The v3 support for SNMP++ is provided by courtesy of Jochen Katz (katz07@agentpp.com).
SNMP++v3.x extends the original SNMP++v2.8 code base by the following: SNMPv3 including User Security Model (USM) with: MD5, SHA, and SHA-2 authentication protocols DES (CBC), AES (128/192/256 bit), 3DES (EDE) privacy protocols Thread-safety Bug-fixes
- SNMP4J
SNMP4J is an enterprise class free open source SNMP implementation for Java™ SE. The following SNMP versions and security protocols are supported:
- SNMP v1, v2c, and v3
- MD5, SHA, and SHA-2 authentication protocols
- DES (CBC), AES (128/192/256 bit), 3DES (EDE) privacy protocols SNMP4J as a built-in interface for MIB data (implemented by SNMP4J-SMI-PRO) for seamless usage of MIB object names instead of cumbersome object identifiers (OIDs).
- AgenPro AgenPro is the most advanced and flexible code generation software available for SNMP development today.
With its open-source code generation back-end, AgenPro provides you full control about format, scope, target API, and even programming language of the generated code. Ready-to-use templates are included for:
- SNMP4J-Agent/-AgentX
- AGENT++/AgentX++.
The features are rounded out by a built-in SNMPv1/v2c/v3 agent simulator with live data editing for easy testing of command generator applications.
AGENTPP SNMP software is dedicated to make the simple in Simple Network Management Protocol come true for developing SNMP agents and applications (Java/C++) as well as authoring (SMI) MIBs. Our software packages achieve this objective by a clear and true object oriented design and implementation.
Standard conformance, long term maintainability, and usability are leading goals for any AGENTPP development. As a matter of course, all security relevant APIs are available as open source for maximum transparancy.
VS2017编译SNMP++步骤记录
WinSNMP API
- WINSNMP的简单使用
- WinSNMP API
- [Snmp在Windows下的实现----WinSNMP编程原理]
- (https://blog.csdn.net/weixin_34380948/article/details/89744784)
Nodejs snmp API
Nodejs有几个关于snmp协议的库:
- net-snmp JavaScript implementation of the Simple Network Management Protocol (SNMP)
- snmp-node This is a native SNMP library for Node.js. The purpose is to provide enough functionality to perform large scale monitoring of network equipment.
- snpm snmp for node.js 这个库9年多没更新了,最好别用。
- Android:屏保软件的开发
- CoordinatorLayout
- 从零开始的Spring Security Oauth2(二)
- 简化Swagger使用的自制Starter:spring-boot-starter-swagger,欢迎使用和吐槽
- demo3同通讯录展示的方式分组排序
- Android手势研究(textview及listview对比验证)
- demo2动态加载显示商品详情页
- demo1 动态显示view或弹框 动态隐藏view或弹框
- ios 继承UITableViewController,更改tableview样式
- demo1 动态显示view或弹框 动态隐藏view或弹框
- 从零开始的Spring Security Oauth2(一)
- 细说Android事件传递
- swift基础_ set get方法 理解
- 高仿今日头条(2)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- UCOSii的理解和应用之消息队列
- Linux 编写Shell脚本
- Linux文件权限与归属、文件的特殊权限、文件的隐藏属性
- Linux文件访问控制列表、su命令与sudo服务
- GPS之 NMEA-0183协议
- Zeppelin 安装与初体验
- Hive 安装与配置
- 如何将SAP Cloud for Customer的扩展字段放置到Embedded Component中
- pthread的使用
- shell程序设计
- SAP CDS view权限控制实现原理介绍
- shell程序设计的流程控制
- SAP CRM数据库表CRMD_SRV_REFOBJ和CRMD_SRV_OSSET
- 堆和栈的区别
- 用ABAP模拟JavaScript的柯里化语言特性(Curry)