6.7 简单网络管理协议SNMP

思维导图:

 

 

6.7 简单网络管理协议(SNMP)

6.7.1 网络管理的基本概念

  1. 定义:网络管理涉及硬件、软件、人力资源的使用、整合和协调,目的是监控、测试、配置、分析、评估和控制网络资源。
  2. 目的:提供合理成本下的实时性能和服务质量。
  3. 网络复杂性:由不同厂家、运行不同协议的节点(如路由器)组成,状态不断变化。
  4. 管理需求:读取和更新节点上的状态信息。
图6-21 网络管理的一般模型
  1. 管理站(管理器)
    • 核心组件,高性能工作站,有图形界面。
    • 由网络管理员操作,负责向被管设备发送命令。
    • 网络运行中心(NOC)。
    • 管理程序转换为管理进程。
    • 管理者可以是硬件或软件。
  2. 被管设备
    • 包括主机、路由器、打印机等。
    • 每个设备中有多个被管对象。
    • 被管设备有时称为网络元素。
图6-22 网络管理代理程序
  1. 代理(Agent)
    • 在被管设备中运行,与管理站通信。
    • 执行管理程序的命令,采取本地行动。
SNMP的关键组件
  1. SNMP协议:允许管理程序与代理程序的交互。
  2. 管理程序:运行SNMP客户程序。
  3. 代理程序:运行SNMP服务器程序,响应管理站请求。
网络管理基本原理
  • 对象管理需最小化对原对象的影响。
SNMP发展
  1. 发布年份:1988年。
  2. 主要功能:监视网络性能,检测网络错误,配置网络设备。
  3. 版本:SNMPv1, SNMPv2, SNMPv3(最新,增强安全性)。
SNMP的三个部分
  1. SNMP本身:定义管理站与代理间的交互。
  2. 管理信息结构(SMI):定义命名对象和对象类型的规则。
  3. 管理信息库(MIB):在实体中创建命名对象,规定类型。
编程比较
  • SMI、MIB和SNMP分别对应程序设计中的语言规则、变量声明和变量操作。

我的理解:

可以通过类比于一个城市的公共交通系统来帮助理解:

1. 网络管理的定义与目的

想象网络是一个庞大的城市,网络管理就像是城市管理,目的是确保交通(数据流)流畅,服务(网络服务)高效,并保持成本在合理范围内。就像城市管理者需要监控交通流量、维护道路、规划新的交通路线一样,网络管理也涉及监控、维护和优化网络资源。

2. 网络的复杂性

网络就像一个由不同公司运营的复杂交通系统。有公共汽车、地铁、火车和飞机等,它们使用不同的运行规则(协议)并在不同的路径上移动。网络的这种复杂性需要一个有效的管理方法来确保一切顺畅运行。

3. 网络管理模型

  • 管理站(管理器):想象它是交通控制中心,从这里可以监控和控制整个城市的交通系统。控制中心下达指令,如调整信号灯,改变地铁运行时间等。
  • 被管设备:这些设备类似于城市中的各种交通工具和交通基础设施,如公交车、地铁站等。

4. 代理(Agent)

代理程序可以比作每个交通工具上的驾驶员或控制系统,它们接收来自交通控制中心的指令,并按照这些指令操作。

5. 简单网络管理协议(SNMP)

SNMP就像是交通控制中心和交通工具之间使用的无线通信系统。控制中心通过这个系统发送指令给公交司机或地铁控制室,并接收来自这些交通工具的状态报告。

6. SNMP的组成部分

  • SNMP:这部分就像是定义无线通信如何进行的规则。
  • 管理信息结构(SMI):类似于定义交通信号和标志的规则。
  • 管理信息库(MIB):想象成一个包含所有交通工具、信号灯和路线信息的数据库。

7. SNMP与编程的对比

把SNMP、SMI和MIB比作编程,就像是在创建一个交通控制软件。SMI提供编程语言(规则),MIB定义数据(如车辆类型、路线),而SNMP则是实际控制交通的代码。

 

6.7.2 管理信息结构SMI

1. SMI的功能
  • 被管对象的命名:确保所有被管对象都有标准的命名方式。
  • 数据类型定义:指定存储被管对象的数据类型。
  • 管理数据的编码:规定网络上传送的管理数据的编码方式。
2. 被管对象的命名
  • 对象命名树:所有被管对象都位于一个结构化的对象命名树上。
  • 树结构:以标准制定单位如ITU-T, ISO作为顶级节点。下层节点代表不同的组织和网络元素。
3. 被管对象的数据类型
  • ASN.1标准:使用ISO制定的抽象语法记法1 (ASN.1) 定义数据类型。
  • 简单类型与结构化类型
    • 简单类型:直接使用ASN.1定义的基本类型。
    • 结构化类型:类似于编程中的结构体或数组,组合多个简单类型或同类型数据。
4. 编码方法
  • 基本编码规则(BER):使用ASN.1的BER进行数据编码。
  • TLV编码:数据元素由三部分组成 - 类型(Type)、长度(Length)、值(Value)。
    • 类型(T字段):定义数据类型。
    • 长度(L字段):指出值字段的长度。
    • 值(V字段):具体的数据值。

 我的理解:

管理信息结构SMI的三个主要功能:

  1. 被管对象的命名:这就像给城市里的每个建筑物、街道或公园分配一个独特的地址。在网络管理中,每个被管对象(如路由器、交换机、服务器上的特定部分)都需要一个唯一的标识符,以便准确地定位和管理它们。

  2. 数据类型定义:类似于在建筑规划中使用的蓝图或规格说明书。在网络管理中,不同类型的被管对象会有不同的数据结构和属性。SMI定义了这些数据结构的格式和类型,确保信息的一致性和准确性。

  3. 管理数据的编码:想象成一种特殊的“邮政编码”系统,用于在网络中发送和接收关于被管对象的信息。这个编码系统确保信息能被正确地解读和处理,无论它被发送到网络中的哪个部分。

关于具体概念的理解:

  • 对象命名树:网络中的每个被管对象都被放置在一个庞大的、层级结构化的“命名树”中。每个节点在这棵树上都有唯一的位置,就像在一个家族树中每个成员都有其独特的位置。

  • 数据类型(简单和结构化)

    • 简单类型:这些是基本的、不可分割的数据类型,类似于建筑中的基本材料(如砖、木材)。
    • 结构化类型:它们由简单类型组成,类似于使用基本材料建造的复杂结构(如房间、楼层)。
  • 编码方法(TLV编码):在网络通信中,信息被编码为一个包含三个部分的结构:类型(T)、长度(L)和值(V)。这就像邮件的格式,其中包含寄件人(类型),信封大小(长度)和信件内容(值)。

通过这样的解释和类比,可以更容易地理解管理信息结构SMI的重要性和其在网络管理中的作用。这个结构确保了网络管理的有效性和一致性,就像城市规划和邮政系统确保城市运行的效率和有序。

6.7.3 管理信息库(MIB)

1. MIB的定义
  • 概念:MIB是管理信息的集合,它是互联网网管框架中被管对象的虚拟信息存储器。
  • 作用:管理程序使用MIB中的信息来管理网络,例如读取或重新设置这些值。
2. MIB的内容
  • 信息类别:包括路由器状态、流量统计、错误报文等。
  • 设备示例
    • 路由器:维持网络接口状态、流量、丢弃的分组等信息。
    • 调制解调器:维持传输的字符数、传输速率、接受的呼叫等信息。
3. MIB子树结构
  • 例子:图6-22展示了节点mib-2下面的MIB子树。
  • 信息类别举例(表6-6):
    • system:主机或路由器的操作系统。
    • interfaces:各种网络接口。
    • ip:IP软件。
    • 其他:如ICMP、TCP、UDP软件。
4. MIB变量
  • 命名和定位:基于对象命名树,每个MIB变量有一个唯一的标识符。
  • 实例举例
    • ipInReceives:收到的IP数据报数,标识符为1.3.6.1.2.1.4.3。
    • sysUpTime:系统运行时间,标识符为特定值。
  • 变量类型:可以是简单的整数或更复杂的结构(如路由表)。
5. MIB变量与实际设备的映射
  • 数据映射:MIB变量的逻辑定义与路由器等设备的内部数据结构可能不同。当查询到达设备时,设备上的代理软件负责完成这种映射。

 我的理解:

1. MIB的定义与作用

  • MIB类似于一个大型仓库:想象MIB是一个包含各种重要网络设备信息的巨大数据库,如一个仓库存放着各种物品的详细信息。在这个“信息仓库”中,每个被管对象(如路由器、交换机等)都有自己的存储区域,记录着它们的状态、性能数据等。

2. MIB的内容

  • 设备信息:类似于仓库中各种物品的标签。例如,路由器的信息标签可能包括网络接口状态、流量数据等;而调制解调器的标签则包含发送和接收的字符数、传输速率等。

3. MIB子树结构

  • 结构类似于目录系统:MIB的结构可以类比于一个精心组织的文件夹系统。每个文件夹(节点)包含特定类别的信息,如系统信息、接口信息等。这种结构使得查找特定信息变得直观和系统化。

4. MIB变量

  • 变量命名与定位:每个MIB变量有一个唯一的标识符,就像每个文件在计算机中有一个唯一的路径。例如,标识符1.3.6.1.2.1.4.3可能指向一个特定的网络接口的流量统计数据。
  • 变量类型:MIB变量可以是简单数值(如整数)或复杂结构(如整个路由表),类似于不同类型的文件或数据格式。

5. MIB变量与实际设备的映射

  • 数据映射:这就像是将仓库中的信息标签映射到实际物品上。即使仓库中的标签(MIB变量的逻辑定义)与物品的实际存放方式(路由器内部的数据结构)不同,仓库管理员(代理软件)能够找到并提供正确的物品(数据)。

 

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

1. SNMP基本操作
  • “读”操作:使用Get报文检测被管对象的状态。
  • “写”操作:使用Set报文改变被管对象的状态。
2. 探询操作
  • 周期性探询:SNMP管理进程定期发送探询信息到被管理设备。
  • 优点:简化系统,减少管理信息通信量。
  • 缺点:不够灵活,设备数量限制,可能导致资源浪费。
3. 陷阱(Trap)机制
  • 概念:不需请求即可发送的信息,用于捕捉特定“事件”。
  • 过滤机制:只报告达到门限值的重要事件。
  • 优点:限制信息简洁,通信量小。
4. SNMP的网络传输
  • UDP使用:SNMP使用无连接的UDP,减少网络传输开销。
  • 端口:服务器端使用端口161接收Get或Set报文,客户端端口162接收Trap报文。
5. SNMP协议数据单元(PDU)
  • 定义:SNMP定义了8种类型的PDU(表6-8)。
  • 类型举例
    • GetRequest:读取一个或一组变量的值。
    • SetRequest:设置一个或多个变量的值。
    • Trap:报告异常事件。
6. SNMP报文格式
  • 组成:包括版本、首部、安全参数和数据部分。
  • 编码:使用ASN.1编码,使人工处理变得复杂。
7. PDU字段
  • 请求标识符:管理进程设置的标识符,用于识别响应。
  • 差错状态和索引:标示操作成功或具体的错误类型。
  • 变量绑定:指明一个或多个变量的名字和值。

 我的理解:

1. SNMP基本操作

  • “读”操作(Get):就像用远程控制器检查家里的智能设备状态,比如查看智能恒温器的当前温度设置。
  • “写”操作(Set):类似于使用远程控制器调整这些智能设备的设置,比如调高恒温器的温度。

2. 探询操作

  • 定期探询:想象一个管理员定时巡视一座大楼的各个房间,以确保一切正常。这个巡视就是SNMP的定期探询,旨在定期检查网络设备的状态。

3. 陷阱(Trap)机制

  • 自动警报:如果大楼的某个房间冒烟或发生水管爆裂,房间内的烟雾探测器或水浸传感器会立即触发警报,通知管理员。这就像SNMP的陷阱机制,在网络设备遇到问题时自动发送警报。

4. SNMP的网络传输

  • 使用UDP协议:SNMP通过UDP发送数据就像寄送快递包裹,它速度快但不保证每个包裹都会准时到达。这是因为UDP是一种无连接的传输方式,它不像邮件挂号那样追踪每一步。

5. SNMP协议数据单元(PDU)

  • 多种PDU类型:每种PDU就像不同类型的表格,用于不同的管理任务。例如,GetRequest PDU就像是一个查询表格,用来请求信息;SetRequest PDU则像是一个更新表格,用于改变设置。

6. SNMP报文格式

  • 复杂的ASN.1编码:SNMP报文的编码就像一种复杂的密码,需要特定的工具或专业知识才能解读。

7. PDU字段

  • 报文识别和错误处理:就像每个快递包裹都有一个独特的追踪号码和状态标签,SNMP报文中的请求标识符、差错状态和索引字段帮助识别和追踪网络请求的进展和问题。

 

 

 

 

 

 

 总结:

重点

  1. 基本概念:理解SNMP作为一个网络管理协议的基本功能,即它是如何帮助监控和管理网络设备和服务的。
  2. 管理信息结构SMI:了解SMI的作用,特别是在定义网络管理中使用的数据类型和结构方面。
  3. 管理信息库MIB:掌握MIB的概念,即如何作为一个存储被管理对象信息的数据库。
  4. SNMP操作:理解基本的“读”(Get)和“写”(Set)操作,以及探询和陷阱(Trap)机制。
  5. 协议数据单元(PDU):了解不同类型的PDU及其用途。

难点

  1. SMI的理解:理解SMI如何定义和命名被管对象,这涉及到对ASN.1标准的理解。
  2. MIB结构和内容:深入理解MIB的层级结构和其中包含的不同类型的数据。
  3. 陷阱(Trap)机制:掌握陷阱机制的工作原理和它与常规探询操作的区别。
  4. SNMP报文格式:理解SNMP报文的复杂结构,特别是在使用ASN.1编码方面。

易错点

  1. 混淆SMI和MIB:不要混淆SMI的作用(定义数据类型和结构)和MIB的作用(存储具体的管理信息)。
  2. 误解操作类型:清楚区分“读”操作和“写”操作的用途,以及它们在网络管理中的应用。
  3. 陷阱(Trap)机制的误用:正确理解陷阱机制的适用场景,避免将其与普通的探询操作混淆。
  4. PDU类型的混淆:各种PDU类型有特定的用途和结构,需要明确区分。

总体来说,SNMP的核心在于其提供的用于网络管理的标准化方法和工具。理解这些概念及其应用是掌握SNMP的关键。在学习过程中,对于复杂的概念如SMI、MIB的层级结构,和ASN.1编码方式需要特别注意。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏驰和徐策

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值