当前位置: 首页 > news >正文

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

四、SNMP原理

SNMP的工作原理基于客户端-服务器模型。其中,网络管理系统是客户端,而网络设备是服务器。客户端向服务器发送请求消息(即"Get"或"Set"命令)来获取或修改服务器的信息。服务器收到请求消息后,会返回相应的响应消息(即"GetResponse"命令)给客户端。

SNMP整体架构上有些类似于Client/Server,其主要的工作组件主要有三个:

1)SNMP Manager:用于管理网络中的多个设备对其进行读和写的操作。类似于Server.

2)SNMP Agent:运行在网络设备上,通常都需要手动开启。作为SNMP代理,在收到SNMP Manager发出请求后,对请求的内容进行解析,然后对设备进行配置,将配置的结果作为Response 回复给Manager.

3)SNMP MIB: MIB(信息管理库)用于交互的一种数据模型,就是交互的规则。MIB同样存在于网络设备中。定义和描述了如何管理设备上的资源。Manager和Agent之间的交流的信息就是MIB的内容。

可以看到一个Manager可以管理网络中的多个设备。而每台设备上运行着SNMP Agent用于和 Manger信息交互,交流的内容需要符合MIB的规范。

1、MIB(信息管理库)

MIB(Management Information Base,信息管理库) 定义和描述了如何管理设备上的资源。可以将其理解成用于交互的一种数据模型,也就是交互的规则。MIB(管理信息库)是一个虚拟数据库。

MIB同样存在于网络设备中。Manager和Agent之间的交流的信息就是MIB的内容。

它包含有关使用SNMP进行管理的网络对象的所有正式描述。MIB数据库是分层的,在MIB中,每个管理对象都通过对象标识符(OID)进行寻址。

指明了被管理设备所维护的变量(即能够被代理进程查询和设置的信息)。

(1)MIB在数据库中定义了被管理设备的一系列属性:

· 对象标识符(Object IDentifier,OID)

· 对象的状态

· 对象的访问权限

· 对象的数据类型等

· MIB给出了一个数据结构,包含了网络中所有可能的被管理对象的集合。因为数据结构与树相似,MIB又被称为对象命名树

(2)常见MIB节点

用于查询或修改的节点:

用于告警通知的节点:

MIB节点的最大访问权限表明网管能够通过该MIB节点对设备进行的操作:

not-accessible:无法进行任何操作。

read-only:可以读取信息。

read-write:可以读取信息和修改配置。

read-create:可以读取信息、修改配置、新增配置和删除配置。

设备在生成告警时,不仅会上报当前发生的告警类型,同时会绑定一些变量。比如当发送接口linkDown告警时,需要同时绑定接口索引,接口的当前配置状态等变量。

iflndex:接口索引(编号)

ifAdminStatus:管理状态,即接口是否被shutdown:1,undo shutdown;2 shutdown

ifOperStasuts:接口当前的操作状态,即接口的链路层协议状态:1,Up;2,Down 。    ifDesc接口描述。

想要实现的是通过Manager去管理网络上的Agent(其实就是管理设备)那么如何管理呢?

比如Manager想要获取Agent1的GigabitEthernet0/0/0/1的IP地址。

这时就需要在Agent1上先约定好一个内容,比如当Agent接收到1.1这个字符串时,就会将接口的信息返回给Manager.

之后如果Manager发送1.1就能获取到接口的信息了,但发送别的内容,Agent是无法识别并工作的。MIB本质就是这样,确定了如1.1这样的一组规则,去规范信息交互的访问方式。

其实,这里的1.1就是MIB中的一个对象,在MIB中还以层级的方式存在着许多这样的对象,将网络的设备的资源抽象成形如1.1对象。通过这些对象,Manger和Agent就可以实现很好的交流了。

真正的MIB类似与下图,而这里形如1.3.6.1.1.1.2这样连接起来的字符串称为ASN,其实就是对应了设备上的各种资源,Manager和Agent也通过它们进行交流。

2、SNMP的信息交互

NMS和被管理设备的信息交互分为两种:

NMS通过SNMP协议给被管理设备发送修改配置信息请求或查询配置信息请求。被管理设备上运行的代理进程根据NMS的请求消息做出响应。

被管理设备可以主动向NMS上报告警信息(Trap)以便网络管理员及时发现故障。

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

· SNMP规定通过MIB(管理信息库)去描述可管理实体的一组对象。


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

相关文章:

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

四、SNMP原理 SNMP的工作原理基于客户端-服务器模型。其中,网络管理系统是客户端,而网络设备是服务器。客户端向服务器发送请求消息(即"Get"或"Set"命令)来获取或修改服务器的信息。服务器收到请求消息后,会返回相应的响…...

基于STM32和人工智能的自动驾驶小车系统

目录 引言环境准备自动驾驶小车系统基础代码实现:实现自动驾驶小车系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统4.4 用户界面与数据可视化应用场景:自动驾驶应用与优化问题解决方案与优化收尾与总结 1. 引言 随着人工智能和嵌入式系统技术的…...

简单介绍vim

文章目录 前言一、Vim的特点二、安装Vim三、设置Vim配置文件的位置:编辑配置文件:添加配置选项:保存并退出编辑器:快速配置验证设置: 总结 前言 Vim是一款强大的文本编辑器,被广泛用于各种编程和文本编辑任…...

使用本地数据对transformers模型进行微调训练

模型 transformers模型是使用比较多的模型,奈何各个都是体积大,找了一个使用人多不是很大的模型进行训练。 需要魔法 bert-base-uncased模型仓库地址 huggingface下的所有仓库都是git的,也就意味着你可以使用 git clone 可以下载仓库内所有的…...

Java面试题:讨论何时需要创建自定义异常类,并展示如何实现一个自定义异常

在Java中,创建自定义异常类的目的是为了更加清晰和有意义地表示特定的错误情况,增强代码的可读性和可维护性。以下是一些需要创建自定义异常类的常见场景以及如何实现一个自定义异常。 何时需要创建自定义异常类 特定业务逻辑错误: 当业务逻…...

什么是进程

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在了解进程之前,我们需要知道多任务的概念。多任务,顾名思义,就是指操作系统能够执行多个任务。例如,…...

电脑提示d3dcompiler_47.dll丢失的解决方法,实测靠谱的5种方法

在计算机使用过程中,缺失d3dcompiler_47.dll这一系统文件是一个常见问题,尤其是对于游戏和图形密集型应用程序用户来说尤为重要。这个文件是DirectX软件工具包的一部分,主要用于处理图形渲染的应用程序接口的核心元素。当你在运行游戏或某些软…...

SQLserver前五讲课堂笔记

第一讲 基本内容 为什么要学习数据库系统?什么是数据库?什么是数据库系统?什么是数据库管理系统?本课程学什么以及学到什么程度? 重点难点 一组概念的区分:数据库、数据库系统和数据库管理系统熟悉表 的相关要素及术语熟悉数据库系统的构成(工作…...

深度学习项目十六:根据训练好的权重文件推理图片--YOLO系列

文章目录 根据训练好的权重文件推理图片--YOLO系列一、自己构建YOLOv5推理代码1.1 对数据集进行模型训练1.2 对数据集进行模型推理检测1.3 自己编写推理函数1.3.1 针对单张进行推理1.3.2 针对文件夹下的图片进行推理二、自己构建YOLOv8推理代码2.1 对数据集进行模型训练2.2 对数…...

敏感信息加密操作,让开发的系统更加的安全可靠!!

敏感信息加密操作,让开发的系统更加的安全可靠!!Jasypt(Java Simplified Encryption)是一个开源的Java库,用于简化加密操作。https://mp.weixin.qq.com/s/sPBV8Ej46YJsElImodRjAQ...

第四篇:精通Docker构建:Dockerfile的艺术与策略

精通Docker构建:Dockerfile的艺术与策略 1. 开篇:探索Docker的革命 在探讨我们的主题之前,让我们先回顾一下Docker的概念。Docker是一个开源平台,用于自动化应用程序的部署、扩展和管理,这一切都是在轻量级的容器中进…...

Linux下Cmake安装或版本更新

下载Cmake源码 https://cmake.org/download/ 找到对应的版本和类型 放进linux环境解压 编译 安装 tar -vxvf cmake-3.13.0.tar.gz cd cmake-3.13.0 ./bootstrap make make install设置环境变量 vi ~/.bashrc在文件尾加入 export PATH/your_path/cmake-3.13.0/bin:$PAT…...

人工智能体验工程师面试

在面试人工智能体验工程师时,面试官可能会从多个方面来考察候选人的能力和经验。以下是人工智能体验工程师面试题: 基础知识考察: 请简述人工智能、机器学习和深度学习的关系与区别。请解释神经网络的基本原理,以及它在人工智能中的应用。描述一种你熟悉的深度学习模型,并…...

科研——BIBM论文修改和提交

文章目录 引言投递流程Latex翻译流程latex模板使用bib文件正文修改 反馈时间线等待审稿结果 引言 第一轮投递快结束了,这里得加快进度,二十号截至,这里得在截至之前投一下,这里翻译整理一下投递的流程 投递流程 投递链接论文是…...

【bug】配置SpringCloudAlibaba AI的maven依赖问题

问题描述 尝鲜alibaba的ai模块,maven依赖一直报找不到包,报错如下 Unresolved dependency: org.springframework.ai:spring-ai-core:jar:0.8.1原因分析: 由于是按照官方文档配置的,所以检查了很多遍maven配置,加上去…...

人工智能和机器学习的应用日益广泛,在医疗健康领域的具体应用是什么?

人工智能(AI)和机器学习(ML)在医疗健康领域的应用日益广泛,涵盖了从疾病预测、辅助诊断、药物研发到健康管理等多个方面。以下是一些具体的应用实例和成功案例: 疾病预测与辅助诊断:机器学习算…...

前端:鼠标点击实现高亮特效

一、实现思路 获取鼠标点击位置 通过鼠标点击位置设置高亮裁剪动画 二、效果展示 三、按钮组件代码 <template><buttonclass"blueBut"click"clickHandler":style"{backgroundColor: clickBut ? rgb(31, 67, 117) : rgb(128, 128, 128),…...

【计算机网络体系结构】计算机网络体系结构实验-DNS模拟器实验

一、DNS模拟器实验 拓扑图 1. 服务器ip 2. 服务器填写记录 3. 客户端ip以及连接到DNS服务器 4. ping测试...

【profinet】从站开发要点

目录 0、常见缩写及关键字注释 1、profinet简介 2、profinet协议栈 3、profinet数据帧 4、profinet网络解决方案示例 5、Application areas 注&#xff1a;本文主要简述profinet从站开发涉及到的知识点。【不足之处后续慢慢补充】。 0、常见缩写及关键字注释 MRP: Media…...

浮点数的进制转换

浮点数的进制转换涉及到将十进制&#xff08;基数为10&#xff09;的浮点数转换为其他进制&#xff08;如二进制、八进制、十六进制等&#xff09;。以下是将十进制浮点数转换为其他进制的基本步骤&#xff1a; ### 1. 分离整数部分和小数部分&#xff1a; 将浮点数分为整数部…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...