(通信与信息系统专业论文)snmp代理进程协议强擎的设计与实现.pdf_第1页
(通信与信息系统专业论文)snmp代理进程协议强擎的设计与实现.pdf_第2页
(通信与信息系统专业论文)snmp代理进程协议强擎的设计与实现.pdf_第3页
(通信与信息系统专业论文)snmp代理进程协议强擎的设计与实现.pdf_第4页
(通信与信息系统专业论文)snmp代理进程协议强擎的设计与实现.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 随着计算机网络通信的发展和普及,网络通信在各行各业和社会生 活的各个领域发挥着越来越重要的作用。然而,计算机网络的规模越来 越大,结构也越来越复杂,加强网络管理变得十分重要,网络管理的完 善程度将影响企业合理运作和人们的正常生活。网络管理必将成为未来 网络发展中的重点。 在各种网络管理协议中,简单网络管理协议( s n m p ) 已经成为事 l 实上的标准,由于其简化的操作和t c p i p 应用的广泛性而被当今绝大 多数厂商支持。在这种情况下,加强对s n m p 协议的研究,对于我们 自己的产品开发网络管理功能十分必要。现在,越来越多的网络设备提 供对s n m p 的支持,例如路由器、交换机、调制解调器等,厂商提供 支持s n m p 的产品已是大势所趋,对于我们的“8 6 3 ”课题一多级多点 视听多媒体会议电视系统来说,能够提供基于s n m p 的对于m c u 及其 它软硬件的网络管理功能无疑将是该系统更加易于管理和维护,对于加 、 强性能稳定性和故障的排除工作必将上一个台阶。炙,o , 本文就s n m p 服务器方的协议实现过程展开探讨,在总结了s n m p 的主要内容和管理框架结构的基础上,对于管理代理进程的核心即协议 引擎进行了设计,阐述了s n m p 在代理进程中操作的具体实现过程, 探讨了设计实现代理进程的工作细节,包括与传输系统的接口,以及对 发送和接收s n m p 报文进行编解码等等。 一 a b s tc r af a b s t r a c t w i t ht h ed e v e l o p m e n ta n dp o p u l a r i z a t i o no fc o m p u t e rn e t w o r kc o m m u n i c a t i o n n e t w o r kc o m m u n i c a t i o np l a y sam o r ei m p o r t a n tr o l ei nv a r i o u sf i e l d sa n da s p e c t sb o t h i ne n t e r p r i s e sa n ds o c i a ll i f e h o w e v e lt h em o r el a r g e rs c a l ea n dt h em o r ec o m p l i c a t e d s t r u c t u r ea tc o m p u t e rn e t w o r kh a v er e n d e r e dt h em o r ei m p o r t a n c ei nr e i n f o r c e m e n to n n e t w o r km a n a g e m e n t t h ee x t e n to fc o n s u m m a t i o no fn e t w o r km a n a g e m e n tw i l lh a v e a ni n f l u e n c eo np r o p e ro p e r a t i o no fe n t e r p r i s e sa n dn o r m a ll i f eo fh u m a n i t yn e t w o r k m a n a g e m e n tw i l ls u r eb e c o m e t h ef o c u so f d e v e l o p m e n ti nn e t w o r ki nt h ef u t u r e a m o n g v a r i o u sn e t w o r k m a n a g e m e n tp r o t o c o l s ,s n m p ( s i m p l e n e t w o r k m a n a g e m e n tp r o t o c 0 1 ) h a sb e c o m et h es t a n d a r d o fr e a l i t y i ti s s u p p o r t e db ym o s t m a n u f a c t u r e r s n o w a d a y s b e c a u s ei t s s i m p l i c i t y o n o p e r a t i o n a n dt h ee x t e n s i v e a p p l i c a t i o no ft c p i es t r e n g t h e nt h er e s e a r c ho fs n m p i sm o r ei m p o r t a n tf o ru st o d e v e l o pm a n a g e r i a lf u n c t i o n so no u r o w n p r o d u c t sa tt h i ss t a g e a tp r e s e n t ,m o r ea n d m o r en e t w o r ke q u i p m e n tp r o v i d es t r o n gs u p p o r tt os n m p , s u c ha sr o u t e r , s w i t c h e r m o d e m e t c ,w h i c hi sau n a v o i d a b l et e n d e n c yf o rm a n u f a c t u r e r s b e i n ga b l et op r o v i d e n e t w o r km a n a g e m e n tf u n c t i o n st om c ua n do t h e rs o f t w a r ea n dh a r d w a r eb a s e do n s n m p , i ti su n d o u b t e d l ye a s i e rb o t ho nm a n a g e m e n ta n dm a i n t e n a n c ef o ro u rn a t i o n a l 8 6 3 ”p r o j e c t - - m u l t i p o i n ta u d i ov i d e oc o n f e r e n c es y s t e m ,a n di t w i l ll e a di n t oan e w a g eo nr e i n f o r c e m e n to fs t a b i l i t yo fp e r f o r m a n c ea n do fe x c l u s i o no fb r e a k d o w na t s y s t e m t h i sp a p e ri sd i s c u s s e do nt h er e a l i z i n gp r o c e s so fs n m pa ts e r v e re n d b a s e do n 2 a b s t r a c t t h eg e n e r a l i z a t i o no fm a i nc o n t e n t sa n dt h es t r u c t u r eo fm a n a g e m e n tf r a m e ,w ef o c u s o nt h ed e s i g n i n go f t h ec o r eo f a g e n t p r o c e s s ,n a m e l yt h ep r o t o c o le n g i n ef u r t h e r m o r e w es e tf o r t hs p e c i f i cr e a l i z i n g p r o c e s s o fs n m po i l o p e r a t i o n s h a n d l e db ya g e n t p r o c e s sa n dd i s c u s st h ew o r k i n gd e t a i l so fa g e n tp r o c e s si n v o l v i n gi nd e s i g n i n ga n d r e a l i z a t i o n ,i n c l u d i n gt h ei n t e r f a c eb e t w e e ns n m p a n dt r a n s p o r ts y s t e ma n de n c o d i n g o rd e c o d i n gp r o c e s sf o rs e n do rr e c e i v es n m p p a c k a g e se t c 3 第一章绪论 第一章绪论 简单网络管理协议( s n m p ) 是一个网络管理框架,是作为一种网 络管理解决方案提出来的,是当今世界上得到最广泛应用的框架。最初 的s n m p 框架是设计用来管理如网关、网桥、和路由器等运行t c p i p 协议集的网络设备的,现在已经用于管理所有的网络设备,只要它能支 持代理进程的处理能力。这就包括了从个人数字助理到大型计算机的全 部计算机设备。第一代网络管理框架主要负责监视重要的网络设备和一 些核心的运行统计数据,用网络管理的命令对设备进行控制是非常有限 的,现在的用户是与管理控制台交互的。管理工具和应用程序从大量的 数字化管理数据流中精选出有用的信息,结果储存在各种数据库中以作 进一步分析。t c p i p 基于数据报分组传送概念,它与任何专用、单一 厂家的软硬件平台无关,使任何一个端用户或设备能够与所知的任何其 他端用户或设备实现可靠的通信。s n m p 是基于标准规约实现的一个应 用层协议,使端用户和网络实体能够进行管理和被管理。由于遵循了丌 放标准,s n m p 很容易进行扩展并广为接受。为i n t e m e t 设备如网桥、 路由器和网关等提供网络管理手段的s n m p 原始功能已经大大扩展, 已经包括管理其他种类的设备、其他网络环境和更多的协议栈,以及包 括大量的新功能,这些都使得s n m p 演进并成为流行和有效的网络管 理方案。s n m p 网络管理模型是集中式的,主动的网络管理站只是极少 数,被动的代理进程则很多,它们之阳j 通过管理协议交换管理信息。 s n m p 采用管理进程代理进程模型来监视和控制i n t e m e t 上各种可管理 第一章绪论 网络设备,s n m p 实际上有以下3 个要素组成:一个或多个被管理的网 络设备,每个都含有一个代理。被关的网络实体或节点必须具备在 i n t e m e t 上通信的能力:一个或多个网络管理设备,每个都含有网络管 理站( n e t w o r k m a n a g e m e n t s t a t i o n - - n m s ) ,网络管理进程也必须具备 在i n t e m e t 上通信的能力;代理进程和n m s 之间的协议用于交换管理 信息,这个协议也就是s n m p 。 在s n m p 模型中,网络管理站是一个主动参与者,通常情况下, 在n m s 平台上的用户运行网管应用程序,对想要管理的节点发出读或 写操作请求。节点包含有被动等待状态、准备为请求提供服务的代理进 程,代理将从n m s 发来的请求进行转换,证实该操作是允许的并且是 可能实现的,然后执行该操作,再发送合适的响应,最后又回到等待状 态。代理进程的最重要功能之一是将n m s 的一般化信息请求转换成对 本地数据结构的等效操作。这个功能是由代理的操作支持例程完成的, 它将s n m p 命令映射为本地操作,由于在各种具体应用的情况不同, 所以这种映射在代理上的实现并不相同。代理进程也可以向n m s 发送 “陷阱”报文,“陷阱”是报告异常、预定义的事件的报文。然后n m s 就要与代理进一步交换报文,以判定该问题的性质并决定下一步所要做 的动作。 我们正是基于当前s n m p 被广泛应用,具有广阔的发展前景和潜 力的前提之下。加强了对s n m p 协议的深入探讨和研究,其中特别是 管理系统的代理一端的设计和实现对于非用户方非常重要,本文提出了 代理方实现的具体方案,并给出了代理进程的结构的细节和工作的详细 过程。 第= 章s n m p 协泌概述 第二章s n m p 协议概述 第一节计算机网络管理概述 计算机网络在我们的日常生活中已经变得越来越重要了,它们 可以提供对大量信息快速而有效的访问。我们已经到了如此依赖计 算机网络,以至于网络的崩溃意味着生意或日常生活的崩溃。所以 保持计算机网络的良好运行状态至关重要,网络管理已经成为当今 网络技术的一个重要课题。尽管网络硬件和协议软件包含的自动监 测和重传机制可以避免网络中出现的许多软硬件故障,但网络管理 员还是要监测出并解决这些潜在的问题,因为重传导致整个网络性 能的下降。网络管理软件使管理员能够监视和控制网络的各组成部 分。例如,通过查询主机、路由器、交换机等设备的状态以获取网 络的有关统计资料,通过重新配置路由、网络接口等来控制网络运 行和改善网络性能。 管理互联网的标准协议称为简单网络管理协议( s i m p l e n e t w o r k m a n a g e m e n tp r o t o c o l ,简称s n m p ) 。s n m p 协议精确定义了管理员 如何与代理之间进行通信。比如,s n m p 定义了管理员传送给代理 的请求格式以及代理响应的格式等。s n m p 还定义了每种可能的请 求和响应的确切含义,s n m p 规定s n m p 消息采用标准的抽象语法 表示版本1 ( a b s t r a c ts y n t a xn o t a t i o n 1 ,简称a s n 1 ) 进行编码。协 议没有定义一个很大的命令集,而是采用存取模式( f e t c h - - s t o r e 第二章s n m p 协议概述 p a r a d i g m ) 。该模式有两种基本操作:取操作f e t c h ,用于取出设备中 的数据,存操作s t o r e 用于给设备赋值。每个可以执行存、取操作的 对象都被赋予一个唯一的名字,每个执行存、取操作的命令必须指 明对象的名字。每个存取对象必须给定一个独有的名字,而且这个 名字及其存取操作的意义必须得到管理员和代理程序双方认可。我 们把s n m p 可以存取的所有对象的集合称为管理信息库 ( m a n a g e m e n t i n f o r m a t i o nb a s e ,简称m i b ) 。s n m p 没有指定m i b 变量集,m i b 的设计比较灵活。只要需要,就可以定义新的m i b 变 量,通信协议和对象定义之闻的独立性允许用户可以自定义m i b 变 量。设计新协议软件或新的硬件设备时,设计者就可以定义相应协 议或设备的m i b 变量,以便对他们实行监控。目前已经定义了许多 新的m i b 变量,诸如对应于协议的u d p 、t c p 、i p 、a r p 、和对应 于网络硬件的以太网、令牌环网、f d d i 等,诸如路由器、桥接器、 交换机、打印机等硬件设备都有了相应的m i b 变量。 第二节s n m p 的3 个主要组成部分 一、管理信息结构( s m i ) 管理信息结构是管理信息库中的对象定义和编码( 以便通过协 议传输) 的基础。s m i 是对公共结构和一般类型的描述,和标示方 法起,在实现中都要用到。s m i 经常被比作数据库的模式。就像 模式描述数据库中对象的格式和布局样,s m i 描述m i b 种的对象, s m i 中最关键的原则是管理对象的形式化定义要用抽象语法记法1 ( a s n 1 ) 来描述。 第二章s n m p 协议概述 管理对象的集合,在每个实现中都是作为特定m i b 严格定义 的,在s m i 的正式说法中称为对象类型。对象类型有3 个用来描述 其特性的最基本属性,这些属性使它们在s n m p 实现中得到正确使 用。这3 个属性可以看作是对象类型的外在表现,在各种实现中都 是必不可少的。s n m p 对象类型的3 个定义属性是:名、语法、编 码。 1 对象类型名 对象类型名唯一代表一个对象类,是对象的标示手段。它也称 为对象标识符。它是用一串有序整数表示的,该整数串是遍历由所 有已知s n m p 对象构成的全局树得到的。所有这些已知对象是用层 次化方法定义的。该层次化结构中的节点是供管理机构给各个有兴 趣的组织分配名字用的。这样尽管同组中任意的数字都可以作为 s n m p 对象名进行分配,但这个编号方案约定保证了所产生的所有 名称都是绝对唯一的,因为每个人被分配到它自己得分支下时都知 道整个全局方案。s n m p 层次化命名结构中的每一层都分配了一个 标号( l a b e l ) ,用英语的旬点将每个子层的标号分隔开。层次化结 构中的任何一个名字都是一串用句点分割的标号,高层的标号通常 出现在左边,当友左至右对名字进行解码时,我们就从上到下遍历 了整个命名树。表格中对象的名比简单变量的名还要长,因为它们 还要包含额外的标号,如表象的索引,并且还要指定表象中的字段, 因为所有这些对象标识符都用数字表示,这种组织方法很自然就带 有字典序。它允许n m s 即可以向特定代理请求提取所有的对象, 也可以在事先不知道表格大小的情况下在其中搜索。 2 对象类型的语法 第一章s n m p 协议概述 语法是用抽象语法记法1 ( a s n 1 ) 对对象类结构的形式化定义。 语法定义了对应于具体对象的抽象数据结构。每个对象有4 个标准 属性是必须定义的,这样才能j 下确说明m i b 中的对象。 这4 个属性是: 语法类型 访问模式 状态 名值 语法类型必须在预定义的a s n 1o b j e c t s y n t a x 集合中选择。日 前只定义了1 2 种语法类型,可以划分成3 个基本组:s i m p l e ( 简单) 组,a p p l i c a t i o n w i d e ( 应用) 组和s i m p l y c o n s t r u c t e d ( 简单构造) 组。简单组中包含整数i n t e g e r ,字节串o c t e ts t r i n g ,对象 标识符o b j e c ti d e n t i f i e r 和空值n u l l 。应用组包含i p 地址 i p a d d r e s s ,网络地址n e t w o r k a d d r e s s ,计数器c o u n t e r ,计量表 g a u g e ,时间步进t i m e t i c k s 和任意格式值o p a q u e 。简单构造组则 只包含清单l i s t 和表格t a b l e 。 访问模式是代理对每个对象的每一次操作的允许程度。目前定 义了4 个访问等级:只读、读写、只写和不可访问。只读对象只能 读出但不能写入。读写对象既可读出又可写入。只写对象不可读出 但可以写人。不可访问对象既不能读也不能写。 对象的状态定义了被管结点是否要实现该对象。目前定义了3 种状态:必备状态,任选状态和废弃状态。处于必备状态的对象是 必须实现的,处于任选状态的对象可以实现,也可以不实现。处于 废弃状态的对象已经不再需要实现。名值是一段简短文字,按照 9 第二帝s n m p 协议概述 s n m p 的术语称为对象描述符,等同于相应的对象标识符。 3 对象类型的编码 一旦某对象类型的实例定义并说明了以后,它们的值就可以在 代理和n m s 之间传送,传送时要用a s n l 编码规则对对象类型的语 法进行编解码。s n m p 采用的传输语法记法是基本编码规则( b e r ) 。 二管理信息库( m i b ) m i b 定义了可以通过网络管理协议进行访问的管理对象的集 合。第一组r f c 定义的m i b 称为m i b 】。接下来又添加了对象, 目前已经是标准m i b 对象的超集。这个新的对象集称为m i b i i , 鉴于s m i 给定了管理对象定义的一般框架,管理信息库中为每个对 象说明了具体的对象实例,并为每个实例绑定了一个值。m 1 b 经 常被当作是管理对象的虚拟数据库,原始的m i b l 是为s n m p 的 最小实现来设计的。所定义的大多数对象是为了实现配置管理和故 障管理,特别对路由器和网关。m i b i 中有8 个组共1 1 4 个对象。 修改后的m i b 就是m i b i i 。m i b 1 i 中增加了5 7 个新的对象和两 个新的组,从而拓宽了s n m p 的管理范围。它是向上兼容的,基本 上反映了被管结点复杂性对管理的新需求。比如多协议设备、管理 新媒体类型的对象、管理s n m p 自身的对象等等。 三s n m p 协议 s n m p 是为网络管理服务而定义的应用协议,在1 9 8 8 年8 月首 次定义,很快就在r f c l l 5 7 中达到了正式标准。 s n m p 是n m s 和代理之间的异步请求和响应协议。n m s 能够 发出3 个含有不同协议数据单元( p d u ) 的报文。这3 个p d u 是提 取请求g e t r e q u e s t - p d u ,提取下一个请求g e t n e x t r e q u e s t p d u 和 1 0 第= 章s n m p 掷议概述 设置请求s e t r e q u e s t p d u 。代理则只能发出两个不同的报文:一个 是对来自n m s 请求作出应答的g e t r e s p o n s e - p d u 报文,另一个是 陷阱t r a p p d u 报文,是代理发现预定义异常事件发生时主动发出 的。 利用s n m p 协议,对网络设备状态的监视主要通过查询代理 m i b 中相应对象的值来完成。代理也会发出一些陷阱来引导n m s 的查询以及及时查询。这种s n m p 设计方案称为陷阱引导查询。 s n m p 通过交换s n m p 协议报文来互通管理信息。每个报文都是完 整的和独立的,用u d p 运输服务的单个数据报传送。每个报文都含 有版本标志、s n m p 共同体名和p d u 。版本标志是n m s 和代理都 知道的常量,用于实现版本控制。在s n m p 中,没有版本仲裁。如 果n m s 或代理接收到含有非法的或不支持的版本号的报文,则该 消息被丢弃。在第1 版里,版本字段的值总是0 ,而在s n m p v 2 中, 该值必须是1 。 s n m p 共同体名是一个字符串,代表由特定n m s 和代理组成的 管理组。共同体的成员之间采用一种很简单的口令方案来鉴别身份。 通信中的n m s 和代理采用的这种未加密的、平常文字构成的共同 体名来实现的简单方法被称为琐细鉴别方案( t r i v i a j a n t h e n t i c a t i o n ) 。对s n m p v l 而言,这是唯一的安全措施。共同体名 是个8 位字符串,“p u b l i c ”通常是配置时默认共同体名。 第三节s n m p 参考模型 如图2 1 所示, s n m p 参考模型说明了s n m p 网络管理 。一 一 s n m p 第一章 孙议概述 框架的般化总体结构,包括系统中各个组成部分及其相互关系。 s n m p 参考模型由以下4 个主要部件构成: 互连网络 网络协议 网络管理进程 被管网络实体 网络管理进程 用户界面 雨币磊n 磊 矧矧器 1 12i3 滥i n w s 网络协议 被管网络实体 进程1 程w i b 网络协议 图2 1s n m p 参考模型 s n m p 参考模型有一个网络管理进程,它也是网络设备,通过 网络协议和s n m p 协议与互联网中被管理的网络实体通信。它有4 个主要部件:1 网络管理站。2 网络管理站的m i b 和数据库。3 网 络管理应用程序。4 网络管理用户界面。其中网络管理站是监视控 制代理进程的处理实体,代理进程在互联网中也是起管理作用的。 网络管理站及其代理进程形成一个共同体。它可以对每个代理的 m i b 中的特定对象进行读写操作,即管理相应的网络设备。网络管 理站n m s 也可以将每个代理中有关的管理信息存储在自己的本地 数据库中。网络管理站的m i b 中含有本共同体中所有代理m i b 的 主清单,如果网络管理站要控制每个代理的m i b 变量,那么它必须 第二章s n m p 悱议概述 知道或能够发现该变量的存在,通常网络管理站会在其本地数据库 中存有自己的m i b 和额外的管理信息。网络管理应用程序将s n m p 数据转换成网络管理用户可用的信息,它包括一大堆程序,用于轮 询代理、进行s e t 和g e t 请求,以及处理接受到的陷阱,网络管理应 用程序实现了越来越多的网络管理功能。端用户是通过用户界面来 使用网络管理进程设备的。s n m p 参考模型给出了被管网络实体, 就是含有代理进程的网络设备。它也要用网络协议和s n m p 协议在 互联网上与网络管理进程的n m s 通信。被管网络实体包含2 个关 键部件:1 代理进程。2 代理进程的m i b 。其中代理进程是处理实 体,从所在共同体中的n m s 接受请求,如果请求合法就进行处理, 最后发出适当的响应,代理进程也可以配置成要发送陷阱报文,以 报告异步预定义的事件。代理进程利用操作支持程序操作本地数据 结构以提取和设置它所控制的各个m i b 对象。代理进程的m i b 是 它所关心的变量集合,构成特定代理之管理信息库的m i b 组决定于 该设备的功能和所要管理的资源。 第二章s n m p 的管理信息结构和管理信息库 第三章s n m p 的管理信息结构和管 理信息库 s m i ( 管理信息结构) 是s n m p 网络管理框架三要素之首,它 定义了s n m p 框架所用信息的组织、组成和标识,它还为描述m i b ( 管理信息库) 对象和描述协议怎样交换信息奠定了基础。 s m i 的一个基本用途就是定义s n m p 使用的管理对象。按照 s m i 定义的s n m p 管理对象都具有3 个属性:名字、语法和编码。 图3 1 给出了属性的总结。 管理对象 名字每一个管理对象都有一个唯一的对象表示符作为其名字 语法 每一个管理对象的抽象数据结构用抽象语法记法1 ( a s n1 ) 来定义 编码 管理对象的实例也用a s n1 编码,发送和接受的包含管理对象值的切一 议报文用基本编码规则( b e r ) 来定义 图3 1 管理对象属性 s m i 为m i b 定义管理对象以及协议使用管理对象提供了模板。 它定义了所用的a s n 1 子集以及b e r 规则如何在传输和接收 s n m p 信息中使用。每一个管理对象都有一个名字。所有对象标识 符形成一个层次化结构模型。将来需要加入的所有对象也都分配了 空间,命名结构的层次几乎是没有限制的。命名空间是统一管理的, 第三章s n m p 的管理信息结构和管理信息库 一个对象已经占用的名字不允许其他对象重复使用。对象可以创建, 但永远不能删除。这一层次化结构用一棵全局树来表示,这棵树以 一个没有名字的根结点开始,用挂在根上的结点代表已命名的各种 对象。这种方式表示的不仅仅是s n m p 管理的m i b 对象名。这一全 局命名方案同时也容纳了用来表示组织、规约和其他的相关对象。 只有在命名村上遍历到一棵特定的子树时,才能知道s n m p 的m i b 变量名。对象标识符用点分十进制整数字符串来表示。每个后继的 十进制数代表层次化全局命名结构中的下一层次。对s m i 的完整论 述要包括它的定义语言、传送语法和m i b 管理对象的定义格式。 第一节抽象语法标记1 ( a s n 1 ) a s n 1 ( 抽象语法记法1 ) 提供了种表示数据的标准方法, 这些数据是要在互连网中传输的、因为不同网络的计算设备上的数 据可能采用了互不兼容的表示方式,所以这一标准是十分必要的。 a s n 1 是一种高级的数据类型定义语言,它描述了在网络管理进程 和代理进程之间传输的s n m p 报文的格式。s n m p 始终使用a s n 1 概念中的描述块( m o d u l e ) 来组织a s n 1 对象。a s n 1 中的描述块 是一些相关描述语句的集合。这些描述语句可在s m i 、协议或许多 m i b 对象组中引用。图3 2 给出了一个描述块的大致组成 d e f i n i i o n s := b e g i n e n d 第三章s n m p 的管理信息结构和管理信息库 图3 2a s n 1 描述块语法 s n m p 中的描述块的名 中通常包括给出相应 描述语句所在的r f c 编号。例如,第l 版s m i 的描述块名就是 r f c l l 5 5 一s m i 。链接语句 可以说明在描述块之间的 定义引人和导出。因为s m i 描述块中定义了其在s n m p 中使用的指 南,它的链接语句包含了e v e r y t h i n g 一然后是它导出的对象列 表。声明语句 包含了构成该描述块的一系列 a s n 1 定义语句。a s n 1 不仅是一个形式化的文法,还是个抽象 的记法。也就是说,a s n 1 可用来定义对象,而不必考虑机器之间 的不兼容性。 与s n m p 有关的是3 个主要a s n 1 组件: 定义管理对象数据类型的类型符号 定义数据类型值和实例的值符号 发送和接收用a s n i 编码的信息的传送语法 类型记法和值记法实现a s n 1 的语法定义和它们的值定义。传 送语法是用b e r 定义的一个专题,b e r 是a s n 1 规则的应用之 一。s n m p 中使用的类型符号是用o b j e c t s y n t a x 数据类型定义的, o b j e c t s y n t a x 是用a s n 1 定义的c h o i c e 类型。c h o i c e 类型是一个 类联合( u n i o n - l i k e ) 的数据结构,它可取若干数据类型之中的一种。 对s n m p 来说,o b e c t s y n t a x 数据结构可以是下列3 种数据类型之 一: 简单类型( s i m p l e ) 简单结构类型( s i m p l e c o n s t r u c t e d ) 应用类型( a p p l i c a t i o n - w i d e ) 第 三章s n m p 的管理信息结构和管理信息库 第= 节基本编码规则( b e r ) b e r 是一种算法,它把a s n 1 数据比特编码为适合在互连网 上传输的字节格式。b e r 规定最高位是b i t8 ,最低位是b i t l 。b i t 8 是在网上传输的第一个比特。图3 3 说明了这种格式。 图3 3b e r 的用途 在s n m p 中使用时,a s n 1 和b e r 的一个重要问题是,如何用这 些数据类型来表示一个更大的抽象数据项。这个数据项是由3 个可 变长部分组成的3 元组:包括数据类型的标签、数据长度和数据值。 它通常被称为t l v3 元组。在n m s 和代理进程之间传输的s n m p 信息是一组用a s n 1 编码的复杂的“标签一长度一内容”数据项。 图3 4 给出了s n m p 信息中基本单元的3 个组成部分。 l 标签( 类型标识符) l 长度标识符l 值( 内容) l 图3 4a s n 1 的数据项 1 标签( 类型标识符) 图3 5 列出了标签的3 个部分: 族类比特( c l a s s b i t s ) ( 第8 比特和第7 比恃) f ( f o r m a t ) 比特( “格式”比特) ( 第6 比特) 标签码比特( t a g n u m b e r b i t s ) ( 第5 、4 、3 、2 和1 比特) 第三章s n m p 的管理信息结构和管理! 信息库 图3 5 标签的各个字段 族类比特决定了族类( c l a s s t y p e ) 。简单和简单结构数据类型都 属于通用( u n i v e r s a l ) 族类。应用数据类型的族类与该数据类型同 名,即应用( a p p l i c a t i o n - - w i d e ) 族类。具体上下文( c o n t e x t - - s p e c i f i c ) 族类唯一地标识一种特定的结构类型。这个标签只有在a s n 1 类型 中才有用。这个族类用来定义s n m p 协议中使用的p d u 。专用 ( p r i v a t e ) 族共用于那些因特殊需要而根据约定定义的类型。这些 类型可以单方面定义,用于厂商或企业内部的专门通信。 第6 比特决定数据类型的格式一一是简单类型还是结构类型。 图3 6 给出了这一比特的含义。第3 个字段即标签码的含义和取值 与族类有关。 简单结构格式 第6 比特格式类型 0简单类型 1结构类型 图3 6 格式类型 2 长度标识符 长度标识符( l e n g t hi d e n t i f i e r ) 也采用了一种类似的规则来表 示任意大的长度值。它使用短长指示器( s h o r t l o n gf o r m ) 来 标明长度值是否是单个字节。正如图3 7 所示,这一指示比特就是 长度标识符字节中的m s b 。 8 765432l 图3 7 长度标识符字节 第三章s n m p 的管理信息结构和管理信息库 如果f 比特指示器是0 ,则为短限定格式,低7 位包含的就是 数据的长度值。长度值( 字节数) 可在0 到1 2 7 之间。如果f 比特 指示器是l ,则为长限定格式,其低7 位的值就是后面紧接的长度 字节数目,这些后续字节拼接起来的值就是数据字段的字节数,即 代表数据的长度。 3 值( 内容) 值是各种s n m p 类型的内容,不同类型有不同的内容。长度字段 指定了内容的长度。 第三节s n m p 的管理信息库( m i b ) 管理信息库( m i b ) 是组成s n m p 网络管理框架的第3 个关键 部分。管理信息库是所有可以由s n m p 管理的对象的集合。这些对 象包括由各种i e t f ( i n t e r n e t 工程任务组) 工作组定义的标准对象、 各大学和研究机构为实验建立的对象以及由各厂商和其他团体所定 义的专用对象。图3 8 的i s o c c i t t ( 国际标准化组织国际电报 电话咨询委员会) 命名注册树给出了当前s n m pm i b 对象的3 个 主要分支。 图3 8 s n m p 对象标识层次化结构 第三章s n m p 的管理信息结构和管理信息库 根据命名约定和i n t e r n e t 管理规定,以后的m i b 对象要添加在 注册树中的相应位置上,每个m i b 对象都有唯一的位置,因此也具 有唯一的名字和对象标识符。这唯一的、预分配的对象标识符将对 象放置于s n m p 对象标识符层次化结构中的一个已知位置上。这种 方法本身从概念上把m i b 当成是拥有层层叠叠的分支和节点的层 次化树形结构,并且这种结构可以在加入新对象时不断向下延伸到 任意深度。任何一个分支的最后一个结点都称为叶结点。只有这些 叶结点才能包含具有网络管理站可访问的对象。即使一个对象永不 再使用,对象标识符也不能重新分配,例如,当一个对象的状态已 经变得不推荐使用或废弃了。可以把m i b 看作s n m p 的所有管理对 象组的集合一一称之为m i b 空间。图3 9 抽象地描述了所有可能的 m i b 对象、某个特定网络管理站( n m s ) 可知的对象子集,以及任 何一个特定代理进程可知的对象子集三者之间的关系。组是m i b 中 的一个部分,其中的管理对象表示被管网络设备中的某个特定组成 部分。t c p 、i p 和i c m p 等都有相应的m i b 组。也可以把m i b 空 间看作是所有已定义的m i b 组的总和。 图3 9 对象的m i b 空间 因为网络设备是由各种各样的部件组成的,并根据不同的用途 来决定其组成,如用作一个网络设备或主机设备,所以每个设备都 有m i b 对象的一个特定子集,而该子集中会包含各种m i b 组的对 象。每个代理进程的m i b 子集也经常称作单个的m i b 。这一m i b 第三章s n m p 的管理信息结构和管理竹息库 实际上是一个虚拟数据存储器,它用于记录该代理进程所管理的对 象集合,这些对象也就是网络管理站感兴趣的变量,管理站知道有 这些变量、并要管理它们。 s m i 已经用s n m p 规定的a s n 1 ( 抽象语法记法1 ) 子集定 义了m i b 对象的格式,如图3 1 0 所示。 | 釜毳 圆圈圈 图3 1 0 代理进程的管理信息厍 一个代理进程的m i b 包含n 个对象,而每个对象都有3 个基本 属性。名字,语法和编码。对象名字是对象唯一的、预分配的对象 标识符,该标识符确定了对象在s n m p 之对象标识层次化结构中的 位置。例如,每个代理进程的m i b 中的第一个对象标识符是系统描 述对象,这个m i b 对象是系统组的,其中含有描述被管网络实体的 一个字符 串 。该对象标识符是 i s o i d e n t i f i e d - o r g a n i z a t i o n d o d i n t e r n e t m a n a g e m e n t m i b 一2 s y s t e m s y s d e s e r 或1 3 6 1 2 1 1 1 或 s y s t e m1 s n m p 定义了3 个基本对象类型:表格、表格中的行和非聚 合类型,其中行也称为项目( e n t r y ) ,而非聚合类型的更流行称呼是 叶( 1 e a f ) 。叶是不在表格中的简单变量。对象除了名字外还有语法。 语法是表示对象的抽象数据结构,也就是对象的定义,是用a s n 1 预定义的数据类型中s n m p 所用子集来定义的。对象的编码则是这 一语法及其如何在互连网络中传送的表示。s m i 规定,传送s n m p 报文( 可封装任何m i b 对象) 采用a s n 1 使用的o s l 基本编码规 第二三章s n m p 的管理信息结构和管理信息库 则。s n m p 的被管理对象被分在不同的管理组中,当前m i b - i i 定义 的十个组分别是:1 系统组2 接口组3 地址转换组4 网际协议组 5 i n t e r n c t 控制报文协议组6 传输控制协议组7 用户数据报协议组 8 外部网关协议组9 传输组1 0 s n m p 组。由于篇幅有限,在此不 再详述各个组中的被管理对象。 第四章s n m p 协议传输与操作 第四章s n m p 协议传输与操作 第一节s n m p 的传输接口 s n m p 的第2 个核心组成部分是s n m p 网络管理协议。s n m p 网 络管理协议是应用层协议,使网络管理站能够对每个代理进程的m i b 中的管理对象进行读( 提取、获得,或取回) 、写( 修改、设置,或存 储) 操作。它还定义了陷阱机制使代理进程能够根据某些预设的条件主 动发送告警报文。协议中定义了命令和响应的报文格式,也描绘了高层 管理框架所需的授权和鉴别机制。 所有按协议进行的通信都使用s m i 定义的a s n 1 子集。协议采用 了基本编码规则的一个子集,该子集中只使用定长格式。而且,非构造 符格式总是比构造符编码优先使用。网络管理站通过协议交换s n m p 报文来实现通信。为了确保s n m p 协议的简单性目标,u d p 被选定为 传输协议。每个s n m p 报文必须能够在单个u d p 数据报中传送。标准 规定:任何实现不要求接收大于4 8 4 字节( 3 8 7 2 比特) 的报文,然而 设计时应尽可能考虑接收最大u d p 数据报。网络管理站n m s 和代理 进程在明确定义u d p 端口1 6 1 端口接收除陷阱以外的所有s n m p 报 文,而t r a p - - p d u 这个s n m p 报文则只由网络管理站在明确定义的 u d p 端口1 6 2 上接收。 笙型皇! 型坚! 塑坚堡塑生盟 第二节s n m p 报文的鉴别和授权 s n m p 高层管理的一个重要方面是互相通信的网络管理站和代理 进程双方之间的合法性鉴别和适当的授权。鉴别就是检查、验证报文发 送者身份的过程。授权就是代理进程对收到并经过鉴别的报文的访问权 限所进行的检查。 s n m p 采用琐细鉴别机制,琐细鉴别机制的关键部件是共同体名。 共同体名是一个字符串,它表示各网络管理站和代理进程同属于一个公 共的并是已知的组。虽然共同体名字可以是任意的字节串,但通常都用 可打印的a s c i i 字符串来表示。在代理进程实现中通常都会设置一个默 认的共同体名p u b l i c 。因为有像这样的默认字符串,未知的管理进程也 可以访问代理进程的m i b 。代理进程接收到命令,检查共同体字段时, 它将存储在自己配置中的共同体名字与接收到的报文中的共同体名字 进行字符串比较,若一致,则协议认为报文是可信的,并进行下一步处 理。若两个字符串的比较结果是不一致,则接收到的报文被丢弃。字符 串的比较操作要

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论