简单网络管理协议
被考次数: 20次
被考频率: 高频率
答错率:    42%
知识难度:
考试要求: 掌握     
知识路径:  > 网络技术  > 网络管理  > 网络管理  > 网络管理协议


本知识点历年真题试卷分布
>> 试题列表    
 

 
       SNMPv1
       Internet最初的网络管理框架由4个文件定义,如下图所示,这就是SNMP第1版。RFC1155定义了管理信息结构(SMI),即规定了管理对象的语法和语义。SMI主要说明了怎样定义管理对象和怎样访问管理对象。RFC1212说明了定义MIB模块的方法,而RFC1213则定义了MIB-Ⅱ管理对象的核心集合,这些管理对象是任何SNMP系统必须实现的。RFC1157是SNMPv1的规范文件。
       
       SNMP网络管理框架的定义
       SNMP的通信基础是TCP/IP,它利用了传输层上的用户数据报协议(UDP)。SNMP的协议体系结构如下图所示。
       
       SNMP的通信基础
       其中的一些协议解释如下。
       .BGP(Border Gateway Protocol):边界网关协议。
       .FTP(File Transfer Protocol):文件传输协议。
       .HTTP(HyperText Transfer Protocol):超文本传输协议。
       .SMTP(Simple Mail Transfer Protocol):简单邮件传输协议。
       .MIME(Multi-Purpose Internet Mail Extension):多用途的网际邮件扩展。
       .ICMP(Internet Control Message Protocol):因特网控制报文协议。
       SNMPv2
       SNMPv2的管理信息结构是在总结SNMP应用经验的基础上对SNMPv1 SMI进行了扩充,提供了更精致、更严格的规范,规定了新的管理对象和MIB的文档,可以说是SNMPv1 SMI的超集。SNMPv2 SMI引入了4个关键的概念。
       .对象的定义。
       .表的定义。
       .通知的定义。
       .信息模块。
          对象的定义
          对象的定义是使用对象语法来描述的。在每一个MIB内部的对象都有一个正式的定义,它规定了对象的数据类型、允许的形式、取值范围以及与其他MIB内部对象之间的关系。使用ASN.1符号定义了每一个对象,而且也定义了整个MIB的结构。为了保持对象的简单性,只是使用了ASN.1元素和特性的一个有限子集。其中对象的数据类型通常是UNIVERSAL,但是在MIB-Ⅱ中只有下列数据类型可用于MIB对象的定义。
          .integer(UNIVERSAL 2)。
          .octetstring(UNIVERSAL 4)。
          .null(UNIVERSAL 5)。
          .object identifier(UNIVERSAL 6)。
          .sequence、sequence-of(UNIVERSAL 16)。
          其中,前面4种是基本类型,是组成其他对象类型的基本块。sequence和sequence-of用来构建表。
          在MIB-2中,每个应用程序都定义了自己的APPLICATION数据类型。这里APPLICATION类型是ASN.1的APPLICATION类,它由与特定应用程序相关的数据类型组成。RFC1155中定义的一些应用程序范围类型如下。
          .networkaddress:使用CHOICE结构来定义,允许从许多协议组中选择一种地址格式。
          .ipaddress:由IP定义的32位地址。
          .counter:只能增加不能减少的非负整数。
          .gauge:可增可减的非负整数。
          .timeticks:计算从某一个时刻开始时间的非负整数,以0.01s为单位进行计算。
          .opaque:该类型能够产生任意类型数据。
          与SNMPv1一样,SNMPv2也是用ASN.1宏定义OBJECT-TYPE表示管理对象的语法和语义,但是SNMPv2的OBJECT-TYPE增加了新的内容,如下图所示。
          
          SNMPv2新添内容
          对象宏定义说明如下。
          .UnitsPart:在SNMPv2的OBJECT-TYPE宏定义中增加了UNITS子句。这个子句用文字说明与对象有关的度量单位。当管理对象表示一种度量手段(如时间)时,这个子句是有用的。
          .MAX-ACCESS子句:类似于SNMPv1的ACCESS子句,说明最大的访问级别,与授权策略无关。SNMPv2定义的访问类型中去掉了write-only类,增加了一个与概念行有关的访问类型read-create,表示可读、可写、可生成。还增加了accessible-for-notify访问类,这种访问方式与陷入有关。
          .STATUS子句:这个子句是必要的,也就是说必须指明对象的状态。新标准去掉了SNMPv1中的optional和mandatory,只有3个可选的状态。如果说明管理对象的状态是current,则表示在当前的标准中是有效的。如果管理对象的状态是obsolete,表示不必实现这种对象。状态deprecated表示对象已经过时了,但是为了与旧的实现互操作,实现时还要支持这种对象。
          其他子句的意义和SNMPv1相同。
          表的定义
          由于SMI只支持简单的二维标量表这一种数据结构,因此,与SNMPv1一样,SNMPv2的管理操作只能作用于标量对象,复杂的信息要用表来表示。按照SNMPv2规范,表是行的序列,而行是列对象的序列。SNMPv2把表分为两类。
          (1)禁止删除和生成行的表。这种表的最高访问级别是read-write。在很多情况下这种表由代理控制,表中只包含read-only型的对象。
          (2)允许删除和生成行的表。这种表开始时可能没有行,由管理站生成和删除行。行数可由管理站或代理改变。
          在SNMPv2表的定义中必须含有INDEX或AUGUMENTS子句,但是只能有一个。INDEX子句定义了一个基本概念行,而INDEX子句中的索引对象确定了一个概念行实例。与SNMPv1不同,SNMPv2的INDEX子句中增加了任选的IMPLIED修饰符。假定一个对象的标识符为y,索引对象为i1,i2,…,iN,则对象y的一个实例标识符为y.i1).(i2).…(iN)。
          SMI中表的定义不允许嵌套,也就是说,不允许表中的元素又是另外一个表,这限制了SMI的性能和灵活性。
          表的操作
          SNMPv2允许生成和删除行的表必须有一个列对象,其SYNTAX子句的值为RowStatus, MAX-ACCESS子句的值为read-write,这种列称为概念行的状态列。状态列可取6种值。
          .active(可读写):被管理设备可以使用概念行。
          .notInService(可读写):概念行存在,但由于其他原因(下面解释)而不能使用。
          .notReady(只读):概念行存在,但因没有信息而不能使用。
          .createAndGo(只写不读):管理站生成一个概念行实例时先设置成这种状态,生成过程结束时自动变为active,被管理设备就可以使用了。
          .createAndWait(只写不读):管理站生成一个概念行实例时先设置成这种状态,但不会自动变成active。
          .destroy(只写不读):管理站需删除所有的概念行实例时设置成这种状态。
          这6种状态中除notReady外的5种状态是管理站可以用set操作设置的状态,前3种可以是响应管理站的查询而返回的状态。
          表中概念行的生成可以使用两种不同的方法,分成4个步骤。
          (1)选择实例标识符。针对不同的索引对象可考虑用不同的方法选择实例标识符。
          (2)a管理站通过事务处理产生和激活概念行。b管理站与代理协商生成概念行。
          (3)初始化非默认值对象。管理站用get命令查询所有列,以确定是否能够或需要设置列对象的值。
          (4)激活概念行。
          概念行的挂起:当概念行处于active状态时,如果管理站希望概念行脱离服务,以便进行修改,则可以发出set命令,把状态列由active置为notInService。
          概念行的删除:管理站发出set命令,把状态列置为destroy,如果这个操作成功,概念行立即被删除。
          通知和信息模块
          SNMPv2提供了通知类型的宏定义NOTIFICATION-TYPE,用于定义异常条件出现时SNMPv2实体发送的信息。
          SNMPv2还引入了信息模块的概念,用于说明一组有关的定义。共有以下3种信息模块。
          .MIB模块:包含一组有关的管理对象的定义。
          .MIB的依从性声明模块:使用MODULE-COMPLIANCE和OBJECT-GROUP宏说明有关管理对象实现方面的最小要求。
          .代理能力说明模块:用AGENT-CAPABILITIES宏说明代理实体应该实现的能力。
       SNMPv3
       在SNMPv3中,以前叫作管理站和代理的东西现在统一称为SNMP实体(SNMP Entity)。
       实体是体系结构的一种实现,由一个或多个有关的SNMP引擎(SNMP Engine)和一个或者多个有关的SNMP应用(SNMP Application)组成。下图显示了SNMP实体的组成元素。
       
       SNMP实体组成元素
          SNMP引擎
          SNMP引擎提供下列服务。
          .发送和接收报文。
          .认证和加密报文。
          .控制对管理对象的访问。
          SNMP引擎有唯一的标识snmpEngindID,这个标识在一个上层管理域中是无二义性的。
          应用程序
          SNMPv3的应用程序分为5种。
          (1)命令生成器(Command Generators):建立SNMP Read/Write请求,并且处理对这些请求的响应。
          (2)命令响应器(Command Responders):接收SNMP Read/Write请求,对管理数据进行访问,并按照协议规定的操作产生响应报文,返回读/写命令的发送者。
          (3)通知发送器(Notification Originators):监控系统中出现的特殊事件,产生通知类报文,并且要有一种机制,以决定向何处发送报文,使用何种SNMP版本和安全参数等。
          (4)通知接收器(Notification Receivers):监听通知报文,并产生响应。
          (5)代理转发器(Proxy Repeaters):在SNMP实体之间转发报文。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有