【杂记-浅谈SNMP网络管理标准协议】

一、SNMP概述、作用、优点

概述
1、SNMP,Simple Network Management Protocol,简单网络管理协议、利用网络管理网络,网络管理员利用SNMP平台在网络上的任意节点完成信息查询、信息修改和故障排查等工作,工作效率得以提高。
2、SNMP广泛应用于TCP/IP网络管理标准,该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。
3、SNMP采用轮询机制,提供最基本的功能集,适合小型、快速、低价格的环境使用。SNMP管理站和SNMP代理之间是松散耦合。他们之间的通信是通过UDP协议完成的。,因而受到绝大多数设备的支持,同时保证管理信息在任意两点传送,便于管理员在网络上的任何节点检索信息,进行故障排查。
4、SNMP为不同的设备定义为一个统一的接口和协议,使得管理员可以是使用统一的外观面对这些需要管理的网络设备进行管理。通过网络,管理员可以管理位于不同物理空间的设备,从而大大提高网络管理的效率,简化网络管理员的工作。
作用
1、一般情况下,SNMP管理站通过UDP协议向SNMP代理发送各种命令,当SNMP代理收到命令后,返回SNMP管理站需要的参数。但是当SNMP代理检测到网络元素异常的时候,也可以主动向SNMP管理站发送消息,通告当前异常状况。
2、网络管理员需要向设备获取数据,所以SNMP提供了读操作;管理员需要向设备执行设置操作,所以SNMP提供了写操作;设备需要在重要状况改变的时候,向管理员通报事件的发生,SNMP提供Trap操作。
优点
SNMP屏蔽了设备间的物理差异,SNMP仅提供最基本的功能集,使得管理任务与被管理设备的物理特性、网络类型相互独立,因而可以实现对不同设备的统一管理,管理成本低。设计简单、运行代价低,SNMP采用尽可能简单的设计思想,其在设备上添加的软件/硬件、报文的种类和报文的格式都力求简单,因而运行SNMP给设备造成的影响和代价都被最小化。

二、SNMP的基本组件

1、NMS,Network Management System,网络管理系统,NMS是运行可以执行网络管理任务软件的服务器,NMS负责采样网络中Agent的信息,并接受Agent的Trap。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,Management Information Base,管理信息库。MIB是一个数据库,指明了被管理设备所维护的变量,是能够被Agent查询和设置的信息。管理信息(MIB)库可以理解成为agent维护的管理对象数据库,MIB中定义的大部分管理对象的状态和统计信息都可以被NMS访问。MIB是一个按照层次结构组织的树状结构,每个被管对象对应树形结构的一个叶子节点,称为一个object,拥有唯一的数字标识符.MIB在数据库中定义了被管理设备的一系列属性:对象的名称、对象的状态、对象的访问权限和对象的数据类型等。通过MIB,可以完成:1.Agent通过查询MIB,可以获知设备当前的状态信息。2.Agent通过修改MIB,可以设置设备的状态参数。

三、SNMP的版本、端口

版本
1、SNMPv1:SNMP的第一个版本,它提供了一种监控和管理计算机网络的系统方法,它基于团体名认证,安全性较差,且返回报文的错误码也较少。它在RFC 1155和RFC 1157中定义。
2、SNMPv2c:第二个版本SNMPv2c引入了GetBulk和Inform操作,支持更多的标准错误码信息,支持更多的数据类型。它在RFC 1901,RFC 1905和RFC 1906中定义。
3、SNMPv3:鉴于SNMPv2c在安全性方面没有得到改善,IETF颁布了SNMPv3版本,提供了基于USM(User Security Module)的认证加密和基于VACM(View-based Access Control Model)的访问控制,是迄今为止最安全的版本。SNMPv3在RFC 1905,RFC 1906,RFC 2571,RFC 2572,RFC 2574和RFC 2575中定义。
端口
SNMP消息传输通过UDP进行,通常使用UDP端口号161/162,有时也使用传输层安全性(TLS)或数据报传输层安全性(DTLS)协议。
1、代理进程接收请求信息:UDP协议,161端口。
2、NMS与代理进程之间的通信:UDP协议,161端口。
3、NMS接收通知信息:UDP协议,162端口。
4、代理进程生成通知信息:任何可用的端口。
5、接收请求信息:TLS/DTLS协议,10161端口
6、接收通知信息:TLS/DTLS协议,10162端口。

四、SNMP工作过程、操作类型

工作过程
NMS是一个中心节点,负责收集维护各个SNMP元素的信息,并对这些信息进行处理,最后反馈给网络管理员。Agent运行在各个被管理的网络节点之上,负责统计该节点的各项信息,并且负责与NMS交互,接收并执行管理站的命令,上传各种本地的网络信息。
NMS与Agent通过MIB进行接口统一,MIB定义了设备中的被管理对象。NMS和Agent都实现了相应的MIB对象,使得双方可以识别对方的数据,实现通信。NMS向Agent申请MIB中定义的数据,Agent识别后,将管理设备提供的相关状态或参数等数据转换为MIB定义的格式,应答给NMS,完成一次管理操作。
1、NMS作为整个网络的网管中心,会对设备进行管理。
2、每个被管理设备都包含驻留在设备上的Agent、多个被管对象和MIB,NMS通过与运行在被管理设备上的Agent交互,由Agent通过对设备端的MIB的操作,完成NMS的指令。
3、SNMP的工作原理是将协议数据单元(也称为SNMP GET请求)发送到响应SNMP的网络设备,用户通过网络监控工具可以跟踪所有通信过程,并从SNMP获取数据。
操作类型
SNMP规定了几个操作类型来完成各组件之间的信息交换。
1、Get:NMS发出,从Agent中提取一个或多个参数值。
2、GetNext:NMS发出,从Agent中按照字典序提取下一个参数值。
3、Set:NMS发出,设置Agent的一个或多个参数值。
4、Response:Agent发出,返回一个或多个参数值,Response是GetRequest、GetNextRequest、SetRequest和GetBulkRequest四种操作的响应操作。Agent接收到来自NMS的Get/Set指令后,通过MIB完成相应的查询/修改操作,然后利用Response操作将信息回应给NMS。
5、Trap:Agent发出,用于主动向NMS发出的信息,告知管理进程设备端出现的情况。
6、GetBulk:实现NMS对被管理设备的信息群查询。
7、Inform:被管理设备向NMS主动发送告警。与Trap告警不同的是,被管理设备发送Inform告警后,需要NMS回复InformResponse来进行确认。

五、SNMP的消息构成

一条SNMP消息由:版本号、SNMP共同体名(团体名)、协议数据单元(PDU)构成,数据包的长度不是固定的。
1、version identifier,版本识别符:用于说明现在使用的是哪个版本的SNMP协议,确保SNMP代理使用相同的协议,每个SNMP代理都直接抛弃与自己协议版本不同的数据报。
2、Community Name,团体名:community团体是基本的安全机制,用于实现SNMP网络管理员访问SNMP管理代理时的身份验证。类似于密码,默认值为 public。团体名(Community name)是管理代理的口令,管理员被允许访问数据对象的前提就是网络管理员知道网络代理的口令。如果把配置管理代理成可以执行Trap命令,当网络管理 员用一个错误的分区名查询管理代理时,系统就发送一个autenticationFailure trap报文。
3、PDU,协议数据单元:PDU 协议数据单元是SNMP消息中的数据区, 即SNMP通信时报文数据的载体。PDU指明了SNMP的消息类型及其相关参数.

六、SNMP Traps

涵义
SNMP Traps,SNMP Agent主动将设备产生的告警或事件上报给NMS,以便网络管理员及时了解设备当前运行的状态。有两种方式:Trap和Inform,Trap和Inform的区别在于,SNMP Agent通过Inform向NMS发送告警或事件后,NMS需要回复InformResponse进行确认。
Trap操作工作原理
Trap不属于NMS对被管理设备的基本操作,它是被管理设备的自发行为。当被管理设备达到告警的触发条件时,会通过SNMP Agent向NMS发送Trap消息,告知设备侧出现的异常情况,便于网络管理人员及时处理。
这种Trap信息是受限制的,只有在设备端的模块达到模块预定义的告警触发条件时,SNMP Agent才会向管理进程报告。这种方法的好处是仅在严重事件发生时才发送Trap信息,减少报文交互产生的流量。
Inform操作工作原理
Inform操作也是被管理设备向NMS主动发送告警。与Trap告警不同的是,被管理设备发送Inform告警后,需要NMS进行接收确认,如果被管理设备没有收到确认信息则:将告警或事件暂时保存在Inform缓存中、重复发送该告警或事件,直到NMS确认收到该告警或者发送次数达到最大重传次数、被管设备上会生成相应的告警或事件日志。

七、SNMP的应用

1、网管可以通过SNMP协议管理设备,管理员要对整个网络的设备进行配置和管理,这些设备分布较为分散,管理员到现场进行设备配置是不现实的。当这些网络设备来自不同的厂商,而每个厂商都提供一套独立的管理接口(比如使用不同的命令行),将使得批量配置网络设备的工作量巨大。此时网络管理员可以利用SNMP远程管理和配置其下属设备,并对这些设备进行实时监控。
2、在组网中配置SNMP协议,首先需要在管理端配置SNMP管理程序NMS,同时在被管理设备端配置SNMP的Agent。
3、通过SNMP协议,NMS可以通过Agent在任何时候及时地获得设备的状态信息,实现远端控制被管理设备。Agent可以及时地向NMS报告设备的当前状态信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/26294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于WPF技术的换热站智能监控系统06--实现左侧故障统计

1、区域划分 2、ui实现 这里使用的是livechart的柱状图呈现的 3、运行效果 走过路过不要错过,点赞关注收藏又圈粉,共同致富,为财务自由作出贡献

Linux基础IO【II】

今天,我们接着在上一篇文章的基础上,继续学习基础IO。观看本文章之前,建议先看:Linux基础IO【I】,那,我们就开始吧! 一.文件描述符 1.重新理解文件 文件操作的本质:进程和被打开文件…

PCA降维算法

decomposition.h #pragma once #include <arrayfire.h>namespace decomposition {class PCA{public:af::array zero_centred(af::array

DETR实现目标检测(一)-训练自己的数据集

1、DETR架构 DETR&#xff08;Detection Transformer&#xff09;是一种新型的目标检测模型&#xff0c;由Facebook AI Research (FAIR) 在2020年提出。DETR的核心思想是将目标检测任务视为一个直接的集合预测问题&#xff0c;而不是传统的两步或多步预测问题。这种方法的创新…

cesium 渐变虚线效果 PolylineDashMaterialProperty

cesium中有虚线材质PolylineDashMaterialProperty&#xff0c;可以在这个材质的基础上结合uv设置每个顶点的透明度&#xff0c;就能实现渐变的效果了。 一、原理&#xff1a;在glsl中结合uv设置每个顶点的透明度 vec2 st materialInput.st; material.alpha fragColor.a * (1…

Mongodb在UPDATE操作中使用$pull操作

学习mongodb&#xff0c;体会mongodb的每一个使用细节&#xff0c;欢迎阅读威赞的文章。这是威赞发布的第68篇mongodb技术文章&#xff0c;欢迎浏览本专栏威赞发布的其他文章。如果您认为我的文章对您有帮助或者解决您的问题&#xff0c;欢迎在文章下面点个赞&#xff0c;或者关…

链表题目之指定区间处理

前言 链表中有一些题目是需要知道并且记住对应的技巧的&#xff0c;有一些题目就是基本的链表技巧手动模拟推演注意细节等。 对于需要知道并且记住对应技巧的题目会有专门的一栏进行讲解&#xff0c;此类题目主要有&#xff1a;相交链表、环形链表、回文链表等&#xff0c;这些…

LeetCode | 27.移除元素

这道题的思路和26题一模一样&#xff0c;由于要在元素组中修改&#xff0c;我们可以设置一个index表示目前要修改原数组的第几位&#xff0c;由于遍历&#xff0c;访问原数组永远会在我们修改数组之前&#xff0c;所以不用担心数据丢失的问题&#xff0c;一次遍历数组&#xff…

18. 四数之和 - 力扣

1. 题目 给你一个由 n 个整数组成的数组 nums &#xff0c;和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] &#xff08;若两个四元组元素一一对应&#xff0c;则认为两个四元组重复&#xff09;&#xff1a; 0 …

LVS+Keepalived NGINX+Keepalived 高可用群集实战部署

Keepalived及其工作原理 Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案&#xff0c;可以解决静态路由出现的单点故障问题。 VRRP协议&#xff08;虚拟路由冗余协议&#xff09; 是针对路由器的一种备份解决方案由多台路由器组成一个热备组&#xff0c;通过共用的…

Kolmogorov-Arnold Networks (KANs)

KAN 这是个非常厉害的设计&#xff0c;看完论文我再写评价。 下面是实验&#xff0c;都是作者给出的代码 >>> from kan.KANLayer import KANLayer >>> model KANLayer(in_dim3, out_dim5) >>> (model.in_dim, model.out_dim) (3, 5)>>>…

使用kubeadm命令创建集群问题汇总

使用kubeadm命令创建集群问题汇总 kubeadm init执行命令超时报错 通常是系统没有初始化好&#xff0c;例如swap、selinux、监听地址IP设置错误 kubeadm init部署后报错&#xff0c;修改配置后重新执行初始化报错 需要清空集群配置&#xff08;在需要清空配置的对应节点执行…

五、LVS原理

目录 5.1 LVS 相关原理 5.1.1 LVS集群的体系结构以及特点 5.1.1.1 LVS简介 5.1.1.2 LVS体系结构 5.1.1.3 LVS相关术语 5.1.1.4 LVS工作模式 5.1.1.5 LVS调度算法 5.1.2 LVS-DR集群介绍 5.1.2.1 LVS-DR模式工作原理 5.1.2.2 LVS-DR模式应用特点 5.1.2.3 LVS-DR模式ARP抑制 5.1…

数据仓库之元数据

元数据在数据仓库中的作用至关重要。元数据是关于数据的数据&#xff0c;它描述了数据的内容、结构、位置和业务含义。元数据管理是数据仓库成功实施和运行的核心部分。以下是对数据仓库元数据的详细介绍&#xff1a; 1. 元数据的定义 元数据是描述数据属性的信息集合&#x…

大语言模型学习笔记-1

1. GPT发展历程 GPT-1:通用文本训练特定任务微调GPT-2/GPT-3:扩大与训练数据和模型参数规模&#xff0c;显著提升模型性能&#xff0c;并确立了基于自然语言形式的通用任务解决路径。GPT-3.5:在GPT-3的基础上&#xff0c;通过代码训练、人类对其、工具使用等技术对模型性能不断…

VCS基本仿真

这里记录三种仿真方式&#xff1a; 第一种是将verilog文件一个一个敲在终端上进行仿真&#xff1b; 第二种是将多个verilog文件的文件路径整理在一个文件中&#xff0c;然后进行仿真&#xff1b; 第三种是利用makefile文件进行仿真&#xff1b; 以8位加法器为例&#xff1a; …

一二三应用开发平台应用开发示例(2)——创建应用、模块、实体及配置模型

创建应用 文档管理系统对于开发平台是一个业务应用。 业务应用是通过平台内置的数据字典来维护的&#xff0c;因此访问系统管理模块下的数据字典管理功能&#xff0c;在实体配置分组下找到“应用编码”&#xff0c;点击行记录上的“字典项”。 在打开的新窗口中&#xff0c;在…

神经网络使用Xavier参数初始化的本质

参数初始化的意义和目的 深度学习中的各种参数初始化方法都旨在保持正向传播时数据流方差的稳定与反向传播时梯度流方差的稳定,从而缓解梯度消失或梯度爆炸问题。 先前在反向传播这篇文章里介绍过参数初始化对于深度学习的重要性,本文不再赘述。 在该文最后的例子中可以看…

ELasticSearch数据迁移方案-elasticdump

前言 在企业实际生产环境中,避免不了要对es集群进行迁移、数据备份与恢复&#xff0c;以此来确保数据的可用性及完整性。因此&#xff0c;就涉及到了数据备份与恢复。本章主要以elasticdump工具为主&#xff0c;来迁移数据&#xff1b;如果按照索引来迁移的话&#xff0c;我们的…

超详解——Python 元组详解——小白篇

目录 1. 元组简介 创建元组 2. 元组常用操作 访问元组元素 切片操作 合并和重复 成员操作符 内置函数 解包元组 元组方法 3. 默认集合类型 作为字典的键 作为函数参数 作为函数的返回值 存储多种类型的元素 4.元组的优缺点 优点 缺点 5.元组的使用场景 数据…