产品
产品中心
< 返回主菜单
产品

交换机

交换机所有产品
< 返回产品
交换机
查看交换机首页 >

无线

无线所有产品
< 返回产品
无线
查看无线首页 >

云桌面

云桌面产品方案中心
< 返回产品
云桌面
查看云桌面首页 >

安全

安全所有产品
< 返回产品
安全
查看安全首页 >
产品中心首页 >
行业
行业中心
< 返回主菜单
行业
行业中心首页 >

SNMP是什么(二)

随着网络技术的日益发展,网络中存在的设备种类及组网规模不断增加,利用SNMP协议的原理机制能够快速,高效,准确地获取设备的运行状况,实施科学高效的管理。本文就SNMP协议的工作原理进行详细的介绍。

  • 发布时间:2022-11-25

  • 点击量:

  • 点赞:

分享至

我想评论

1 前言
上文通过《SNMP是什么(一)》已对SNMP基本部件进行了简单介绍,包括SNMP网络管理系统、SNMP代理和MIB管理信息库,并对SNMP的应用场景进行了说明。接下来本文将重点介绍SNMP是什么的工作原理部分。
                                                                                 
2 SNMP工作原理
2.1   SNMP版本介绍
SNMP从发展至今一共诞生了3个版本,分别是SNMPv1、SNMPv2c和SNMPv3,下文将进行逐一介绍SNMP版本类型。
2.1.1  SNMPv1
SNMPv1是SNMP协议的第一个正式版本,在RFC 1157中定义。SNMPv1基于团体名认证,安全性较差,且支持的错误码信息也比较少。
2.1.2  SNMPv2c
SNMPv2c也是基于共同体(Community-Based)的管理架构,在RFC 1901中定义。SNMPv2c在兼容SNMPv1的基础上增加了GetBulk等新的协议操作。支持更多的数据类型和错误码信息。
2.1.3  SNMPv3
由于SNMPv2c在数据安全性方面没有得到改进,为此,IETF(The Internet Engineering Task Force,国际互联网工程任务组)推出了SNMPv3版本,在RFC 2571中定义。SNMPv3通过对数据进行鉴别和加密,在安全性方面进行了增强。
SNMPv3主要定义了安全方面的扩展能力,通过对数据进行鉴别和加密,提供了以下的安全特性:
确保数据在传输过程中不被篡改。
确保数据从合法的数据源发出。
加密报文,确保数据的机密性。
2.2   SNMP操作类型
SNMP协议通过定义各种操作类型,来完成NMS和Agent之间的信息交互。本文将介绍如下几种操作类型。
读取类Get操作
设置类Set操作
告警类Trap操作
2.2.1  读取类Get操作
1. Get操作
Get操作是由NMS主动发起,为的是可以获取特定管理对象的值。报文中会携带有Get请求标志,请求对应的MIB的节点信息,一次Get操作只能获取一个节点信息。具体的Get操作交互过程如下。
例如NSM需要获取被管理设备MIB节点sysName(被管理设备名称),团体名为admin,权限可读写。
图2-1 Get操作原理示意图
                                                                                    
(1) NMS给Agent发送GetRequest报文。报文中Version=1表示是SNMPv1报文,PDU Type=0表示是GetRequest报文,Request ID=x是Get请求的标识,Name1=sysName表示需要请求的MIB节点。
(2) Agent收到报文后,将响应Response报文。报文中Version=1表示使用SNMPv1报文进行应答,PDU Type=2表示是Response报文,Request ID=x表示是上一步骤中GetRequest报文的应答,Value1=Hostname表示被管理设备的名称为Hostname。若Agent获取信息失败,将通过Response报文中的Error Status和Error Index字段携带错误原因和出错位置信息。
2. Get-Next操作
由于Get操作只能一次获取一个MIB节点,为了能够在一次操作中可以获得下一个节点信息,可通过Get-Next操作来完成。具体的Get-Next操作交互过程如下。
例如NMS需要获取被管理设备MIB节点sysName的下一个节点sysLocation(设备的物理位置)信息,团体名admin,权限为只读。
图2-2 Get-Next操作原理示意图
                                                                                       
(1) NMS给Agent发送GetNext报文。报文中Version=1表示是SNMPv1报文,PDU Type=1表示是GetNext报文,Request ID=x是Get请求的标识,Name1=sysName表示需要请求MIB节点sysName的下一个MIB节点。
(2) Agent收到报文后,将响应Response报文。报文中Version=1表示使用SNMPv1报文进行应答,PDU Type=2表示是Response报文,Request ID=x表示是上一步骤中GetNext报文的应答,Name1=sysLocation和Value1=Beijing表示sysName的下一个MIB节点为sysLocation,设备物理地址为Beijing。若Agent获取信息失败,将通过Response报文中的Error Status和Error Index字段携带错误原因和出错位置信息。
3. GetBulk操作
若想要在一次的操作中能批量的获取MIB节点信息,可通过GetBulk操作来完成。GetBulk操作的原理与上述的Get和Get-Next基本一致,这里便不再展开赘述,唯一不同的是GetBulk可以在一次的操作中携带多个sysName值,以此来完成批量获取MIB节点的目的。
2.2.2  设置类Set操作
若需要对被管理设备的某些参数进行设置,可通过Set操作来完成。Set操作可以对具有写权限的MIB节点进行设置,报文中会携带有Set请求标志,请求设置对应MIB节点信息。具体的Set操作交互过程如下。
例如NSM需要修改被管理设备MIB节点sysName的值为Admin-Core,团体名为admin,权限可读写。
图2-3 Set操作原理示意图
                                                                               
(1) NMS给Agent发送SetRequest报文。报文中Version=1表示是SNMPv1报文,PDU Type=2表示是SetRequest报文,Request ID=x是Set请求的标识,Name1=sysName表示需要请求的MIB节点,Value1=Ruijie-Core表示需要设置的sysName值。
(2) Agent收到报文后,将响应Response报文。报文中Version=1表示使用SNMPv1报文进行应答,PDU Type=2表示是Response报文,Request ID=x表示是上一步骤中SetRequest报文的应答,Value1=Ruijie-Core表示被管理设备的名称已经被成功设置为Hostname。若Agent设置信息失败,将通过Response报文中的Error Status和Error Index字段携带错误原因和出错位置信息。
2.2.3  告警类Trap操作
当设备发生异常的告警事件后,要求能及时向网管平台上传告警信息,以便进行处理,此时可通过Trap操作来完成。在设备发生特定异常需要通知NMS时,Agent会主动发送Trap报文。如设备某接口网线被拔出,Agent发送linkDown的Trap消息给NMS。Version=1,Community=ruijie,PDU中Enterprise=sysObjectID的取值,Generic Trap=linkDown,Variable Bindings字段将携带接口相关信息。接口网线插回去时,Agent发送linkUp的Trap消息给NMS。NMS接收到Agent发送的Trap报文后不会应答。
图2-4 Trap操作原理示意图
                                                                                      
3 总结
在SNMP版本的演进迭代过程中,满足了不同场景下的使用需求。SNMPv1适合于组网简单,对安全性要求不高的网络;SNMPv2c适用于组网规模较大,但对数据的安全性没有特别的要求的场景;SNMPv3则可以用在不同规模的网络且对数据安全性要求较高的场景,这是一个比较推荐的版本。网络管理员可根据不同需要选择使。SNMP协议同时还提供丰富的操作类型,满足了网络管理员对设备的运行状态进行监测和管理的目的,确保网络能够稳定运行。
                                                                                   
相关链接
SNMP是什么(一)

点赞

更多技术博文

任何需要,请联系我们

返回顶部

请选择服务项目
关闭咨询页
售前咨询 售前咨询
售前咨询
售后服务 售后服务
售后服务
意见反馈 意见反馈
意见反馈
更多联系方式