学习笔记——网络管理与运维——SNMP(SNMP架构)

三、SNMP架构

1、SNMP结构概述

SNMP被设计为工作在TCP/IP协议族上,基于TCP/IP协议工作,对网络中支持SNMP协议的设备进行管理。所有支持SNMP协议的设备都提供SNMP这个统一界面,使得管理员可以使用统一的操作进行管理,而不必理会设备是什么类型、是哪个厂家生产的。(如下左图)

2、SNMP支持的网管操作

对于网络管理,我们面对的数据是设备的配置、参数、状态等信息,面对的操作是读取和设置;同时,因为网络设备众多,为了能及时得到设备的重要状态,还要求设备能主动地汇报重要状态,这就是报警功能。(如上右图)

SNMP协议之所以易于使用,这是因为它对外提供了三种用于控制MIB对象的基本操作命令。它们是:Get、Set和Trap。

Get: 读取网络设备的状态信息。管理站读取代理者处对象的值。它是SNMP协议中使用率最高的一个命令,因为该命令是从网络设备中获得管理信息的基本方式。

Set: 远程配置设备参数。管理站设置代理者处对象的值。它是一个特权命令,可以通过它来改动设备的配置或控制设备的运转状态。它可以设置设备的名称,关掉一个端口或清除一个地址解析表中的项等。

Trap: 管理站及时获取设备的重要信息。代理者主动向管理站通报重要事件。它的功能就是在网络管理系统没有明确要求的前提下,由管理代理通知网络管理系统有一些特别的情况或问题发生了。如果发生意外情况,客户会向服务器的162端口发送一个消息,告知服务器指定的变量值发生了变化。通常由服务器请求而获得的数据由服务器的161端口接收。

Trap消息可以用来通知管理站线路的故障、连接的终端和恢复、认证失败等消息。管理站可相应的作出处理。

SNMP操作

SNMP Manger和SNMP Agent间的交互主要有三种类型:

1)SNMP Get: 主要是检索设备的信息,Get一种有三种类型:

GET - 从SNMP agent获取固定的对象。

GETNEXT - 检索当前对象的后一个对象,由于MIB本身层级的树形结构,存在后继。

GETBULK - 获取一组固定的对象。

**2)SNMP SET:**主要是修改MIB中的对象,进而修改设备的配置。

3)SBMP Notifications: 是SNMP的主要特性,之前的GET和SET是属于拉的操作,而SNMP正好相反,类似于推的操作,可以由agent发起,将一些信息push到SNMP Manager上。类似于Web Socket. 主要用于通知如认证失败,重启,断开连接等事件。

**Notifications主要有两种形式:**Traps和Informs. 两者间的不同主要在于可靠性,agent在产生Informs给Manager后,如果发送失败,会重新发送。Manager收到后,需要回复确认给agent。

而Traps不同,无论消息发送是否成功,Manager都不需要回复。

3、SNMP管理模型

NMS作为整个网络的网管中心,对设备进行管理。每个被管理设备中都包含驻留在设备上的Agent进程、MIB和多个被管对象。NMS通过与运行在被管理设备上的Agent交互,由Agent通过对设备端的MIB的操作,完成NMS的指令。

SNMP系统包括 :网络管理系统NMS(Network Management Station)、代理进程Agent、被管对象Management object和管理信息库MIB(Management Information Base)四部分组成。如下所示:

查询/修改操作:

· NMS作为管理者,向代理进程发送SNMP请求报文。

· 代理进程通过设备端的MIB找到所要查询或修改的信息,向NMS发送SNMP响应报文。

告警操作:

设备端的模块由于达到模块定义的告警触发条件,通过代理进程向NMS发送消息,告知设备侧出现的情况,这样便于网络管理人员及时对网络中出现的情况进行处理。

1)NMS 网络管理进程

NMS在网络中扮演管理者角色,是一个采用SNMP协议对网络设备进行管理/监视的系统,运行在NMS服务器上。NMS可以向设备上的Agent发出请求,查询或修改一个或多个具体的参数值。NMS可以接收设备上的Agent主动发送的Trap信息,以获知被管理设备当前的状态

2)Agent 代理进程

Agent是被管理设备中的一个代理进程,用于维护被管理设备的信息数据并响应来自NMS的请求,把管理数据汇报给发送请求的NMS。

Agent接收到NMS的请求信息后,通过MIB表完成相应指令后,并把操作结果响应给NMS。当设备发生故障或者其它事件时,设备会通过Agent主动发送信息给NMS,向NMS报告设备当前的状态变化。

3)Managed object 被管理对象

每一个设备可能包含多个被管理对象,被管理对象可以是设备中的某个硬件(如一块接口板),也可以是在硬件、软件(如路由选择协议)上配置的参数集合。

4)MIB数据库

MIB是一个数据库,指明了被管理设备所维护的变量(即能够被Agent查询和设置的信息)。MIB在数据库中定义了被管理设备的一系列属性:对象的名称、对象的状态、对象的访问权限和对象的数据类型等。

通过MIB,可以完成以下功能:Agent通过查询MIB,可以获知设备当前的状态信息。Agent通过修改MIB,可以设置设备的状态参数。

4、SNMP的实现结构

在具体实现上,SNMP为管理员提供了一个网管平台**(NMS,管理站)**负责网管命令的发出、数据存储、及数据分析。被监管的设备上运行一个SNMP代理(Agent)),代理实现设备与管理站的SNMP通信。如下图,

管理站与代理端通过MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现了相应的MIB对象,使得双方可以识别对方的数据,实现通信。管理站向代理申请MIB中定义的数据,代理识别后,将管理设备提供的相关状态或参数等数据转换为MIB定义的格式,应答给管理站,完成一次管理操作。

已有的设备,只要新加一个SNMP模块就可以实现网络支持。旧的带扩展槽的设备,只要插入SNMP模块插卡即可支持网络管理。网络上的许多设备,路由器、交换机等,都可以通过添加一个SNMP网管模块而增加网管功能。服务器可以通过运行一个网管进程实现。其他服务级的产品也可以通过网管模块实现网络管理,如Oracle、WebLogic都有SNMP进程,运行后就可以通过管理站对这些系统级服务进行管理。

5、SNMP定义角色

根据管理者和被管理的设备在网络管理操作中的不同职责,SNMP定义了3种角色。(如下左图)

1)网络管理系统 (管理站、NMS) 是系统的控制台,向管理员提供界面以获取与改变设备的配置、信息、状态、操作等信息。管理站与Agent进行通信,执行相应的Set和Get操作,并接收代理发过来的警报(Trap)。

2)代理: Agent是网络管理的代理人,负责管理站和设备SNMP操作的传递。介于管理站和设备之间,与管理站通信并相应管理站的请求,从设备获取相应的数据,或对设备进行相应的设置,来响应管理站的请求。代理也需要具有根据设备的相应状态使用MIB中定义的Trap向管理站发送报告的能力。

**3)代理服务器:**Proxy是一种特殊的代理,在不能直接使用SNMP协议的地方,如:异种网络、不同版本的SNMP代理等情况,Proxy代替相关设备向管理站提供一种外观,为设备代理SNMP协议的实现。Proxy做了异种网络或不同版本代理和相应SNMP数据请求的转换工作。(如上右图)

在基于SNMP进行管理的网络中,NMS是整个网络的网管中心,在它之上运行管理进程。每个被管理设备需要运行代理(Agent)进程。管理进程和代理进程利用SNMP报文进行通信。

· NMS是一个采用SNMP协议对网络设备进行管理/监控的系统,运行在NMS服务器上。

· 被管理设备是网络中接受NMS管理的设备。

· 代理进程运行于被管理设备上,用于维护被管理设备的信息数据并响应来自NMS的请求,把管理数据汇报给发送请求的NMS。

NMS通常是一个独立的设备,运行网络管理应用程序。网络管理应用程序至少能够提供一个人机交互界面,网络管理员通过人机交互界面完成绝大多数网络管理工作。比较常见的人机交互方式为通过Web页面进行交互,即网络管理员通过带显示器的终端,通过HTTP/HTTPS访问NMS提供的Web页面。


整个华为数通学习笔记系列中,本人是以网络视频与网络文章的方式自学的,并按自己理解的方式总结了学习笔记,某些笔记段落中可能有部分文字或图片与网络中有雷同,并非抄袭。完处于学习态度,觉得这段文字更通俗易懂,融入了自己的学习笔记中。如有相关文字涉及到某个人的版权利益,可以直接联系我,我会把相关文字删除。【VX:czlingyun 暗号:CSDN】

相关推荐
chushiyunen2 分钟前
dom操作笔记、xml和document等
xml·java·笔记
chushiyunen4 分钟前
tomcat使用笔记、启动失败但是未打印日志
java·笔记·tomcat
汇能感知9 分钟前
光谱相机的光谱数据采集原理
经验分享·笔记·科技
H13469489015 分钟前
华为服务器系统备份,想要备份华为服务器系统可以怎么操作?
运维·服务器·负载均衡
杰克崔31 分钟前
分析sys高问题的方法总结
linux·运维·服务器
WSSWWWSSW32 分钟前
安装nfs客户端(centos)
linux·运维·centos
人人题32 分钟前
汽车加气站操作工考试答题模板
笔记·职场和发展·微信小程序·汽车·创业创新·学习方法·业界资讯
深蓝易网33 分钟前
为什么制造企业需要用MES管理系统升级改造车间
大数据·运维·人工智能·制造·devops
小脑斧爱吃鱼鱼1 小时前
鸿蒙项目笔记(1)
笔记·学习·harmonyos
阿linlin1 小时前
OpenCV--图像预处理学习01
opencv·学习·计算机视觉