SNMP 简单网络管理协议、网络管理

目录

1 网络管理

1.1 网络管理的五大功能

1.2 网络管理的一般模型

1.3 网络管理模型中的主要构件

1.4 被管对象 (Managed Object)

1.5 代理 (agent)

1.6 网络管理协议

1.6.1 简单网络管理协议 SNMP

1.6.2 SNMP 的指导思想

1.6.3 SNMP 的管理站和委托代理

1.6.4 SNMP 网络管理组成

管理信息结构 SMI

SMI 的功能

管理信息库 MIB

1.6.5 SNMP 的协议数据单元和报文

SNMP 的探询操作

SNMP 使用无连接的 UDP

SNMP 的报文格式


1 网络管理

·网络管理包括对硬件、软件和人力的使用、综合与协调,以便对网络资源进行监视、测试、配置、分析、评价和控制,这样就能以合理的价格满足网络的一些需求,如实时运行性能,服务质量等。

·网络管理常简称为网管

1.1 网络管理的五大功能

·故障管理:故障检测、隔离和纠正。

·配置管理:初始化网络、并配置网络。

·计费管理:记录网络资源的使用。

·性能管理:估价系统资源的运行状况及通信效率等。

·网络安全管理:对授权机制、访问控制、加密和加密关键字的管理。

1.2 网络管理的一般模型

1.3 网络管理模型中的主要构件

·管理站也常称为网络运行中心 NOC (Network Operations Center),是网络管理系统的核心。

·管理程序是管理站中的关键构件,在运行时就成为管理进程

·管理站(硬件)或管理程序(软件)都可称为管理者(manager)。Manager 不是指人,而是指机器或软件。

·网络管理员 (administrator) 指的是负责网络管理的人员。

·大型网络往往实行多级管理,因而有多个管理者,而一个管理者一般只管理本地网络的设备。

1.4 被管对象 (Managed Object)

·网络的每一个被管设备(包括设备中的软件)中可能有多个被管对象

·被管设备有时可称为网络元素网元

·在被管设备中也会有一些不能被管的对象。

1.5 代理 (agent)

·在每一个被管设备中都要运行一个程序,以便和管理站中的管理程序进行通信。

·这些运行着的程序叫做网络管理代理程序,或简称为代理

·代理程序在管理程序的命令和控制下在被管设备上采取本地的行动。

1.6 网络管理协议

·网络管理协议简称为网管协议

·网络管理协议是管理程序和代理程序之间进行通信的规则。

·网络管理员利用网络管理协议,通过管理站对网络中的被管设备进行管理。

注意:网管协议本身不管理网络。

1.6.1 简单网络管理协议 SNMP

·简单网络管理协议 SNMP (Simple Network Management Protocol) 中的管理程序和代理程序按客户服务器方式工作。

·管理程序运行 SNMP 客户程序,向某个代理程序发出请求 (或命令)。

·代理程序运行 SNMP 服务器程序,返回响应 (或执行某个动作)。

·在网管系统中,往往是一个(或少数几个)客户程序与很多的服务器程序进行交互。

网络管理的基本原理

若要管理某个对象,就必然会给该对象添加一些软件或硬件,但这种“添加”必须对原有对象的影响尽量小些

1.6.2 SNMP 的指导思想

·最重要的指导思想:尽可能简单

·基本功能:

        1.监视网络性能

        2.检测分析网络差错

        3.配置网络设备等。

·在网络正常工作时,SNMP 可实现统计、配置、和测试等功能。当网络出故障时,可实现各种差错检测和恢复功能。

·虽然 SNMP 是在 TCP/IP 基础上的网络管理协议,但也可扩展到其他类型的网络设备上。 

1.6.3 SNMP 的管理站和委托代理

·整个系统必须有一个管理站

·管理进程和代理进程利用 SNMP 报文进行通信,而 SNMP 报文又使用 UDP 来传送。

·若网络元素使用的不是 SNMP 而是另一种网络管理协议,SNMP 协议就无法控制该网络元素。这时可使用委托代理 (proxy agent)。委托代理能提供如协议转换和过滤操作等功能对被管对象进行管理。

1.6.4 SNMP 网络管理组成

·SNMP 的网络管理由三个部分组成:

        ·SNMP 本身

        ·管理信息结构 SMI (Structure of Management Information)

        ·管理信息库 MIB (Management Information Base)。

·SNMP 定义了管理站和代理之间所交换的分组格式

·所交换的分组包含各代理中的对象(变量)名及其状态()。

·SNMP 负责读取和改变这些数值。

管理信息结构 SMI

·SMI 定义了命名对象和定义对象类型(包括范围和长度)的通用规则,以及把对象和对象的值进行编码的规则,以确保网络管理数据的语法和语义的无二义性

·但从 SMI 的名称并不能看出它的功能。

·SMI 并不定义一个实体应管理的对象数目,也不定义被管对象名以及对象名及其值之间的关联。

SMI 的功能

        1.被管对象应怎样命名;

        2.用来存储被管对象的数据类型有哪些种;

        2.在网络上传送的管理数据应如何编码。

(1)SMI 规定:所有被管对象必须在命名树上

(2)SMI 使用 ASN.1

·SMI 标准指明:所有的 MIB 变量必须使用抽象语法记法 1 (ASN.1) 来定义。

·SMI 既是 ASN.1 的子集,又是 ASN.1 的超集。

·ASN.1 的记法很严格,使得数据的含义不存在任何可能的二义性

(3)SMI 数据类型

SMI 把数据类型分为两大类

        1.简单类型  2.结构化类型

(4)SMI 使用 ASN.1 制定的 BER 进行数据的编码

·ISO 在制订 ASN.1 语言的同时也为它定义了一种标准的编码方案,即基本编码规则 BER (Basic Encoding Rule)。

·BER 指明了每种数据类型中每个数据的值的表示。 

·发送端用 BER 编码,可将用 ASN.1 所表述的报文转换成唯一的比特序列。

·接收端用 BER 进行解码,得到该比特序列所表示的 ASN.1 报文。

ASN.1 部分数据类型

用 TLV 方法进行编码

·TLV 中的 T 字段定义数据的类型

数据类型

类别

格式

编号

字段(二进制)

字段(十六进制)

INTEGER

00

0

00010

00000010

02

OCTET STRING

00

0

00100

00000100

04

OBJECT IDENTIFIER

00

0

00110

00000110

06

NULL

00

0

00101

00000101

05

Sequence, sequence of

00

1

10000

00110000

30

IPAddress

01

0

00000

01000000

40

Counter

01

0

00001

01000001

41

Gauge

01

0

00010

01000010

42

TimeTicks 

01

0

00011

01000011

43

Opaque

01

0

00100

01000100 

44

·TLV 中的 L 字段定义 V 字段的长度

TLV 中的 V 字段定义数据的值

例如,INTEGER 15,其 T 字段是 02, INTEGER 类型要用 4 字节编码。最后得出 TLV 编码为 02 04 00 00 00 0F。

例如,IPAddress = 192.1.2.3,其 T 字段是 40,V 字段需要 4 字节表示,因此得出 TLV 编码是 40 04 C0 01 02 03。

·TLV 中的 V 字段可嵌套其他数据元素的 TLV 字段

管理信息库 MIB

·MIB 在被管理的实体中创建了命名对象,并规定了其类型。

·管理程序使用 MIB 中的信息,对网络进行管理。

·被管对象必须维持可供管理程序读写的若干控制和状态信息。这些信息总称为管理信息库 MIB (Management Information Base) 。

·管理程序使用 MIB 中这些信息的对网络进行管理(如读取或重新设置这些值)。

·只有在 MIB 中的对象才是 SNMP 所能够管理的

SMI 规定:所有被管对象必须在命名树上

节点 mib-2 所包含的信息类别举例

MIB 变量的例子

1.6.5 SNMP 的协议数据单元和报文

·SNMP 的操作只有两种基本的管理功能:

        “读”操作,用 get 报文来检测各被管对象的状况;

        “写”操作,用 set 报文来改变各被管对象的状况。

·SNMP 的这些功能通过探询操作来实现。

SNMP 的探询操作

·SNMP 管理进程定时向被管理设备周期性地发送探询信息。

·好处:

        1.可使系统相对简单。

        2.能限制通过网络所产生的管理信息的通信量。

·缺点:

        1.不够灵活,而且所能管理的设备数目不能太多。

        2.开销也较大。

陷阱 (trap)

·SNMP 允许不经过询问就能发送某些信息。这种信息称为陷阱,表示它能够捕捉“事件”。

·当被管对象的代理检测到有事件发生时,就检查其门限值。代理只向管理进程报告达到某些门限值的事件(即过滤)。

·过滤的好处: 仅在严重事件发生时才发送陷阱; 陷阱信息很简单且所需字节数很少。

SNMP 是有效的网络管理协议

·使用探询(至少是周期性地)以维持对网络资源的实时监视。

·同时也采用陷阱机制报告特殊事件,使得 SNMP 成为一种有效的网络管理协议。

SNMP 使用无连接的 UDP

·运行代理程序服务器端用 UDP 熟知端口 161 接收 get 或 set 报文,发送响应报文。与熟知端口通信的客户端使用临时端口

·运行管理程序客户端则使用 UDP 熟知端口 162 来接收来自各代理的 trap 报文。

SNMPv1 定义的协议数据单元 (PDU) 类型

SNMP 的报文格式

Get-request 报文 ASN.1 定义

Get-request 报文的 BER 编码

Get-request 报文的十六进制编码

欢迎一起学习~ 

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

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

相关文章

AcWing 122 糖果传递(贪心)

[题目概述] 有 n 个小朋友坐成一圈,每人有 a[i] 个糖果。 每人只能给左右两人传递糖果。 每人每次传递一个糖果代价为 1。 求使所有人获得均等糖果的最小代价。 输入格式 第一行输入一个正整数 n,表示小朋友的个数。 接下来 n 行,每行一个…

2.第一个Electron程序

目录 一、前言二、基本运行结构三、代码详解四、打包 一、前言 原文以及系列文章后续请参考:第一个Electron程序 上一章我们完成了Electron的环境搭建,本章就开始详解如何使用Electron开发一个完整的Electron桌面端程序。 注意开发环境,个…

【王道数据结构】【chapter5树与二叉树】【P158t6】

二叉树按二叉链表形式存储&#xff0c;试编写一个判别二叉树是否是完全二叉树的算法 #include <iostream> #include <queue> typedef struct treenode{char data;struct treenode *left;struct treenode *right; }treenode,*ptreenode;ptreenode buytreenode(char …

2024.2.14

二维数组实现杨辉三角形 #include<stdio.h> #include<string.h> int main(int argc, const char *argv[]) {int n;scanf("%d",&n);int a[n][n];for(int i0;i<n;i){for(int j0;j<i;j){if(j0||ij){ a[i][j]1;}else{a[i][j]a[i-1][j]a[i-1][j-…

docker 2:安装

docker 2&#xff1a;安装 ‍ ubuntu 安装 docker sudo apt install docker.io‍ 把当前用户放进 docker 用户组&#xff0c;避免每次运行 docker 命都要使用 sudo​ 或者 root​ 权限。 sudo usermod -aG docker $USER​id $USER ​看到用户已加入 docker 组 ​​ ‍ …

CSS介绍

本章目标&#xff1a; CSS概述 三种样式表 简单选择器 复合选择器 盒子模型 常用背景样式 浮动 常用文本样式 伪类样式 列表样式 表格样式 定位 一、CSS概述: CSS&#xff1a;cascading style sheets-层叠样式表 专门负责对网页的美化 二、有三种使用方式&…

SpringBoot与虚拟线程,接口吞吐量成倍增加,太爽了!

我们看一下如何在spring-boot中利用loom虚拟线程。 我们将做一些负载测试&#xff0c;看看虚拟线程和普通线程的响应时间如何。 让我们快速设置我们的 Spring Boot 项目。 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http:/…

【开源图床】使用Typora+PicGo+Gitee搭建个人博客图床

准备工作&#xff1a; 首先电脑得提前完成安装如下&#xff1a; 1. nodejs环境(node ,npm):【安装指南】nodejs下载、安装与配置详细教程 2. Picgo:【安装指南】图床神器之Picgo下载、安装与配置详细教程 3. Typora:【安装指南】markdown神器之Typora下载、安装与无限使用详细教…

JavaScript中如何判断数据类型

在JavaScript中&#xff0c;判断数据类型是我们在日常开发中经常会遇到的问题。正确地判断数据类型不仅有助于我们编写出更加健壮的代码&#xff0c;还可以提高程序的可读性和可维护性。本文将为大家介绍几种判断数据类型的方法 使用typeof运算符&#xff1a; typeof运算符可以…

[NSSRound#17 Basic]WEB

1.真签到 看robots.txt 密码先base32再base64得到md5加密的密文&#xff0c;在线解得到密码为Nss hint用16进制转字符串&#xff0c;提示新生赛遇到过 是一个敲击码加密 账号是ctfer,登录之后源码提示在F111n4l.php 要求nss参数若比较等于732339662&#xff0c;但是不能是数…

关于idea无法检测出lombok,导致代码爆红的处理

为啥需要本地安装lombok插件&#xff1f; 编译错误提示&#xff1a;Lombok 使用注解来自动生成代码&#xff0c;这些代码在编译时会由 Lombok 插件进行处理。如果没有安装 Lombok 插件&#xff0c;IDEA 在编译过程中可能会报告错误&#xff0c;因为它无法识别并处理 Lombok 注解…

【RL】Bellman Optimality Equation(贝尔曼最优等式)

Lecture3: Optimal Policy and Bellman Optimality Equation Definition of optimal policy state value可以被用来去评估policy的好坏&#xff0c;如果&#xff1a; v π 1 ( s ) ≥ v π 2 ( s ) for all s ∈ S v_{\pi_1}(s) \ge v_{\pi_2}(s) \;\;\;\;\; \text{for all…

Python数据科学:Scikit-Learn机器学习

4.1Scikit-Learn机器学习 Scikit-Learn使用的数据表示&#xff1a;二维网格数据表 实例1&#xff1a;通过Seaborn导入数据 def skLearn():scikit Learn基本介绍:return:import seaborn as sns#导入Iris数据集#注&#xff1a;一般网络访问不了iris sns.load_dataset(iris)ir…

助眠神器小程序源码|白噪音|小睡眠|微信小程序前后端开源

安装要求和说明后端程序运行环境&#xff1a;NginxPHP7.4MySQL5.6 PHP程序扩展安装&#xff1a;sg11 网站运行目录设置为&#xff1a;public 伪静态规则选择&#xff1a;thinkphp 数据库修改文件路径&#xff1a;/config/database.php需要配置后端的小程序配置文件&#xff0c;…

[word] word分割线在哪里设置 #其他#经验分享

word分割线在哪里设置 在工作中有些技巧&#xff0c;可以快速提高工作效率&#xff0c;解决大部分工作&#xff0c;今天给大家分享word分割线在哪里设置的小技能&#xff0c;希望可以帮助到你。 1、快速输入分割线 输入三个【_】按下回车就是一条长直线&#xff0c;同样分别…

webgis后端安卓系统部署攻略,超详细Termux攻略

目录 前言 一、将后端项目编译ARM64 二、安卓手机安装termux 1.更换为国内源 2.安装ssh远程访问 3.安装文件远程访问 三、安装postgis数据库 1.安装数据库 2.数据库配置 3.数据导入 四、后端项目部署 五、自启动设置 总结 前言 因为之前一直做的H5APP开发&#xf…

webpack面试解析

参考&#xff1a; 上一篇webpack相关的系列&#xff1a;webpack深入学习&#xff0c;搭建和优化react项目 爪哇教育字节面试官解析webpack-路白 1、Webpack中的module是什么&#xff1f; 通常来讲&#xff0c;一个 module 模块就是指一个文件中导出的内容&#xff0c;webpack…

Amber-Leedcode-Java - 代码随想录打卡第38 - 39天-动态规划汇总

本质上感觉是一个相加的问题&#xff0c;状态的转换&#xff0c;由前一种状态推至下一种状态509. 斐波那契数 较为简单 746. 使用最小花费爬楼梯 62. 不同路径 一开始写的时候被吓到了&#xff0c;但是发现听完一半之后再写还是比较容易的 对于我而言主要是找到逻辑&#xf…

Vue3+Ant-Design-Vue:报错Cannot read properties of null (reading ‘isCE‘)

问题描述 在使用Ant-Design-Vue内置的Table表格组件&#xff0c;实现expand展开行功能时&#xff0c;报错&#xff1a;Uncaught TypeError: Cannot read properties of null (reading ‘isCE‘) 。 报错信息图示&#xff1a; 在GitHub上找到如下描述&#xff0c; 解决方案 网上…

【漏洞复现】和为顺IP-COM WiFi未授权下载漏洞

Nx01 产品简介 深圳市和为顺网络技术有限公司是一家聚焦于商用级网络通信设备的研发与应用&#xff0c;为全球中小型企业提供高速、安全、易维护的网络设备产品和解决方案的公司。 Nx02 漏洞描述 深圳市和为顺网络技术有限公司IP-COM WiFi方案解决专家存在任意文件下载漏洞&am…