




已阅读5页,还剩69页未读, 继续免费阅读
(计算机软件与理论专业论文)netconf数据模型与netconfsnmp转换网关.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 为了弥补s n m p 在网络配置管理方面存在的数据模型表示能力 差、配置管理操作效率低、复杂配置配置操作不易实现的缺陷,基于 x m l 的网络配置管理技术应运而生。i e t f 组织针对基于x m l 的网 络配置管理技术进行了标准化和规范化,并于2 0 0 6 年1 2 月正式定义 了基于x m l 进行网络配置管理的协议标准n e t c o n f 。随着 n e t c o n f 协议的逐渐成熟,n e t c o n f 数据模型和 n e t c o n f s n m p 转换网关成为了研究的热点。 本文首先针对数据模型展开了研究工作。本文首先讨论了 n e t c o n f 数据模型的设计原则,分析比较了现有数据模型的建模语 言x s d 和y a n g 。在此基础上,结合实际应用中n e t c o n f 系统的 需求,提出了一种改进的n e t c o n f 数据模型d m y a n g 。该数据模 型具有易读性、强大的数据表示能力、可扩展性、安全性、兼容性等 优点。在该数据模型基础上,针对快速开发n e t c o n f 网络配置管理 系统的需求,设计并实现了一个n e t c o n f 代理生成器。利用该生成 器,开发者只需定义被管信息的数据模型,就能通过生成器生成新的 n e t c o n f 代理,从而简化了n e t c o n f 代理的开发过程。 同时,为使n e t c o n f 管理兼容大量已经存在的s n m p 代理方, 本文给出了一个n e t c o n f s n m p 转换网关的设计与实现过程。在设 计中使用了基于d o m 的转换方法实现了n e t c o n f 和s n m p 两个管 理应用之间配置操作和管理数据的相互转换。在网关设计中采用了 d m y a n g 描述网关的数据模型,并给出了s m i 描述的m i b 文本到 d m y a n g 的数据模型的基本转换规则。在实现上使用了x m l 、 s n m p + + 和s s l 等相关技术,可以实现n e t c o n f 管理端对s n m p 代理端的管理,并保障网关与n e t c o n f 管理端的数据传输的安全 - l 生。 关键词:n e t c o n f ,数据模型,代理生成器,n e t c o n f s n m p 网关 a bs t r a c t s n m ph a ss o m ed e f i c i e n c i e si nt h ea r e ao fc o n f i g u r a t i o n m a n a g e m e n t ,s u c ha sp o o rr e p r e s e n t a b i l i t yo fd a t am o d e l ,l o we f f i c i e n c y o fc o n f i g u r a t i o no p e r a t i o na n dd i f f i c u l t yi nr e a l i z a t i o no fc o m p l e x c o n f i g u r a t i o no p e r a t i o n t oc o m p l e m e n tt h e w e a k n e s s e s o fs n m p x m l b a s e dt e c h n o l o g yo nc o n f i g u r a t i o nm a n a g e m e n ti sb e i n gp u to nt h e r e s e a r c ha g e n d a i e t fi s s u e dt h ef o r m a ld e f i n i t i o no fn e t c o n fa st h e s t a n d a r do fx m l b a s e dn e t w o r kc o n f i g u r a t i o nm a n a g e m e n ti nd e c e m b e r 2 0 0 6 w i t ht h ed e v e l o p m e n to ft h en e t c o n fp r o t o c 0 1 t h en e t c o n f d a t am o d e la n dt h en e t c o n f s n m pg a t e w a yh a sb e e nt h er e s e a r c h h o t s p o t c u r r e n t l yt h en e t c o n fp r o t o c o ld o e sn o te s t a b l i s has t a n d a r dd a t a m o d e l t h e r e f o r e an e wd a t am o d e lt h a ts u i t a b l ef o rn e t c o n ft h e p r o t o c o l i s u r g e n t t o d e v e l o p f i r s t l y , t h i sp a p e r r e s e a r c h e dt h e n e t c o n fd a t am o d e l t h ep a p e ra n a l y s e dt h ed e s i g np r i n c i p l eo fd a t a m o d e l a n dc o m p a r e do fx s da n dy a n gw h i c ha r et h ee x i s t i n gd a t a m o d e lo ft h en e t c o n fd a t am o d e l i n gl a n g u a g e a c c o r d i n gt ot h e f u n d a m e n to fr e s e a r c ha n da n a l y s i s ,t h i sp a p e rd e s i g n e d an e wn e t c o n f d a t am o d e ld m y a n gt h e r ea r es o m ea d v a n t a g e si nd m y a n gs u c h a s r e a d a b i l i t y , p o w e r f u lr e p r e s e n t a b i l i t y , s e c u r i t y ,e x t e n d a b i l i t y , c o m p a t i b i l i t y o nt h eb a s eo ft h ed a t am o d e l ,w ed e s i g na n di m p l e m e n ta n n e t c o n fa g e n tg e n e r a t o r , w h i c he n a b l et h ed e v e l o p e rt oi n c r e a s et h e m a n a g e m e n ti n f o r m a t i o ni t e m s o fn e t c o n fa g e n t t h e r e f o r et h e d e v e l o p m e n to fn e t c o n fa g e n tw a ss i m p l i f i e d a tt h es a m et i m e ,t h e r em u s tb en e t c o n f s n m pg a t e w a y b e t w e e nn e t c o n f b a s e dm a n a g e ra n ds n m pa g e n tt ob ec o m p a t i b l e w i t ht h el a r g en u m b e ro fa l r e a d ye x i s t i n gs n m pa g e n t s i nt h i sp a p e r , a n e t c o n f s n m p g a t e w a yi sd e s i g n e da n di m p l e m e n t e d i nt h ed e s i g n , w eu s et h ed o m b a s e dt r a n s f o i t nm e t h o df o rp r o t o c o lo p e r a t i o na n dd a t a i n t e r a t i o nt r a n s l a t i o nb e t w e e na g e n t sa n dm a n a g e r s i nt h eg a t e w a y , w e u s et h ed m y a n gt od e s c r i b et h ed a t am o d e l a n dt h eb a s i cc o n v e r s i o n r u l ef o rs n m pm i bt r a n s f o r mf r o ms m it od m y f 气n gi sp r e s e n t e d i n t h er e a l i z a t i o n ,w eu s ex m l ,s n m p + + ,s s l ,a n do t h e rr e l a t e d t e c h n o l o g i e s 。阢c a nr e a l i z en e t c o n gm a n a g e m e n tt o w a r d sd e v i c e s s u p p o r t i n gs n m p a n de n s u r et h es e c u r i t yo ft h ec o m m u n i c a t i o n sb e t w e e n t h em a n a g e ra n dt h eg a t e w a y k e yw o r d s :n e t c o n f , d a t am o d e l ,n e t c o n fa g e n tg e n e r a t o r , n e t c o n f s n m pg a t e w a y 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了论文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得中南大学或其他单位的学位或证书而使用过的材料。与我共 同工作的同志对本研究所作的贡献均已在论文中作了明确的说明。 d r p。 一 作者签名: 兰型墨:日期:盥年三月丛日 学位论文版权使用授权书 本人了解中南大学有关保留、使用学位论文的规定,即:学校有 权保留学位论文并根据国家或湖南省有关部门规定送交学位论文,允 许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内 容,可以采用复印、缩印或其它手段保存学位论文。同时授权中国科 学技术信息研究所将本学位论文收录到中国学位论文全文数据库, 并通过网络向社会公众提供信息服务。 日期:垫卫年三月堑日 硕士学位论文第一章绪论 1 1 课题的研究背景 第一章绪论 随着网络技术的发展,网络中的被管理对象的种类、数量、规模都在不断的 增长,从而导致网络管理的难度也在不断加大。传统的s n m p 卜5 ( s i m p l en e t w o r k m a n a g e m e n tp r o t o c o l ,简单网络管理协议) 由于其具有简单、面向数据以及无状态 等特性,被广泛地应用在网络管理的监视领域,但由于其在数据模型表示能力、 配置管理操作效率、复杂配置配置操作的实现上存在着缺陷,不适合用来进行网 络配置管理【6 1 。当前主要的用来配置网络的技术如c l i ( c o m m a n dl i n ei n t e r f a c e ) 缺乏标准的配置管理数据模型,在不同厂商、甚至相同厂商不同版本的设备上的 配置接口就会存在很大的差异,而且c l i 不适合机器操作,不适合配置整个网络。 为了弥补s n m p 在网络配置管理方面的缺陷,人们开始将x m l 7 】技术运用 于网络配置管理。基于x m l 的网络管理技术具有强大的数据表示能力、高效安 全的数据传输能力,并且能够提供丰富多样的网络配置管理操作,能够很好的满 足当前的网络配置管理的需求【& m 】。i e t f 针对基于x m l 的网络配置管理技术进 行了标准化和规范化,并于2 0 0 6 年1 2 月正式定义了基于x m l 进行网络配置管 理的协议标准- n e t c o n f 【】。目前,n e t c o n f 协议得到了主流厂商如 j u n i p e r l l 2 】、t a i l f 1 3 j 4 】等的支持,正逐渐成为业界标准。随着n e t c o n f 协议的 逐渐成熟,n e t c o n f 数据模型( n e t c o n f 协议的被管理信息的描述规范) 和 n e t c o n f s n m p 转换网关成为了n e t c o n f 研究的热点。 当前n e t c o n f 协议还没有一个标准的数据模型。不同的研究所和国际大公 司都以不同的角度给出了不同的解决方案,典型的如t a i l fs y s t e m s 公司提出的 n e t c o n f 数据模型专用建模语言y a n g ”】、n o r t e ln e t w o r k s 公司的s h a r o n c h i s h o l m 和n o r t e ln e t w o r k s 公司的s a n d e e pa d w a n k a r 联合提出用x m l s c h e m a 1 6 】描述的n e t c o n f 数据模型【l j ”。但是因为针对数据模型的建模理论 和评价机制还不完全,并且由于各大网络设备厂家之间在数据模型的问题上无法 达成统一的共识,所以i e t f 组织至今都没有给出一个标准的数据模型。 n e t c o n f 的数据模型的研究已经成为n e t c o n f 网络管理的技术瓶颈,需要建 立一种新的适合n e t c o n f 协议数据模型来解决这个问题。 另一方面,虽然基于n e t c o n f 协议管理拥有很多的优点,但是由于s n m p 广泛应用,网络中仍然存在着大量的支持s n m p 的网络设备,短时间依旧无法 硕士学位论文 第一章绪论 用基于n e t c o n f 的网络管理完全替代s n m p t l 8 】。因此,对于n e t c o n f s n m p 转换网关的研究是十分需要的。 由于不同的被管理对象需要有不同的代理,针对其扩展性的需求,一些公司 开发了一些自动生成工具,如t a i l f s y s t e m s 公司提出了利用x m l 数据模型自动 生成n e t c o n f 管理程序的方案,并在其专用的开发系统中得到了应用,但是他 们没有公布出具体实现的技术【1 9 】。目前并没有针对通用目的的代理生成工具,因 此研究通用的可扩展的代理生成技术是非常有必要的。 1 2 课题的研究现状 1 2 1 数据模型的研究现状 自从i e t f 组织推出了n e t c o n f 协议之后,对n e t c o n f 数据模型的研究 马上成为网络管理领域的研究热点。n e t c o n f 协议规定采用x m l 描述网络设 备的管理信息,数据模型提供一种统一的描述系统管理信息的格式和规范,用于 把所有管理数据组织成便于存储和处理的x m l 文档。当前n e t c o n f 数据模型 常用的建模语言有x m ls c h e m a t l 6 】和y a n g t l 5 1 。 x m ls c h e m a 是应用的最广泛的x m l 数据模型建模语言。s a l l d e 印 a d w a r k e r 向i e t f 组织提交了n e t c o n f 数据模型的草梨2 0 之1 1 ,给出了使用x m l s c h e m a 定义n e t c o n f 数据模型的方法和数据模型的框架。但是这些草案没 有得到i e t f 组织的认可。 t a i l fs y s t e m 公司向i e t f 组织提交了一个专门针对于n e t c o n f 设计的数 据模型建模语言y a n g 的草案【l5 1 。i e t f 组织专门成立了n e t m o d 工作组专门 研究y a n g 的语法和使用规范,并于2 0 0 8 年1 1 月提交了到2 0 0 9 年3 月相继提 交了3 个草案f 2 2 乏4 】推动y a n g 的标准化进程。但是,现在y a n g 还处于草案阶 段,并没有公布r f c 文档确定其成为数据模型的标准。 随着y a n g 的研究的深入,研究者开发出了y a n g 的语法校验和转化工具 p y a n g 和y a n 舀o 【2 5 】。p y a n g 是一个用p y t h o n 编写的y a n g 的语法校验器,它同时 支持由y a n g 来生成对应的d s d l 、x s d 和y i n 数据模型定义文件。y a l l 群。是 一款y a n g 的语法校验器和转化器,可以将y a n g 转化为x s d ,m i b ,x m l 。 国内知名网络厂商华为通信技术公司也投入了人力对n e t c o n f 进行 研究,并于2 0 0 7 年5 月1 7 同向i e t f 提交了草案( d a t a t y p e sf o rn e t c o n f d a t a m o d e l s 2 6 l ,提出了n e t c o n f 数据模型有关数据类型的定义,并且提出把s m i m i b 应用于n e t c o n f 协议的方法,以及提出了获取s m im i b 的新的操作原语, 对i e t f 中n e t c o n f 数据模型的研究做了大量的工作。 2 硕士学位论文第一章绪论 国内高校也开始了对n e t c o n f 数据模型的研究。同济大学熊齐邦教授提出 了基于本体的n e t c o n f 网络配置管理被管对象的标准化建模的方法,应用w 3 c 组织定义的语义网本体语言o w l 进行被管理对象的本体建模,通过语义网规则 语言s w r l 形式化定义了s n m p m i b 中语义管理信息,并通过s w r l 描述了网 络管理中的行为信息,将n e t c o n f 网络配置管理协议与被管理对象的本体模型 有机的结合在一起【2 他8 1 。 目前针对数据模型的研究还相对落后,缺少一套系统的建模理论和详细的评 价机制来帮助研究人员分析和建立数据模型,这导致了i e t f 组织一直没有确立 一个标准的数据模型。 1 2 2n e t c o n f s n m p 网关的研究动态 由于目前几乎所有的网络设备都支持s n m p ,所以最终要实现基n e t c o n f 的网络管理必然要经历两种技术共存的过渡时期。这里面包括两个主要问题: 一是采用的体系结构,二是如何实现数据模型的转换【1 8 】。 韩国p o s t e c h 大学的网络管理实验室在基于x m l 网络管理方面做了大量 的研究【2 9 。3 1 1 。如图1 - l 所示,m i j u n gc h o i 、j a m e s w h o n g 等人提出了四种将基于 x m l 的网络管理与传统基于s n m p 相结合的方法,并提出了x m l s n m p 网关的 方案。 m m 图1 - 1 管理端和代理端可能的组合方式图 a v a y a 实验室【3 2 j 主要研究如何基于x m l 接口从s n m p 代理上读写管理信 息。他们定义并实现了一种从s m im i b 映射到x m l 文法定义的机制,并提出 了一个基于x m l 的从s n m p 代理上取得和修改m i b 信息的协议。 德国f r a n ks t r a u s s 开发了一个m i b 处理库l i b s m i 3 3 j 。它的功能十分强大, 它可以把s m im i b 转化成x m ls c h e m a 。但是l i b s m i 在转换时会出现信息的 丢失,在转换时候,很多m i b 的性质都会被忽略掉。 3 硕士学位论文第一章绪论 德国b r a u n s e h w e i g 工业大学提出了一个将s n m p 代理提供的管理信息无缝 集成到基于x m l 系统的方法【3 4 1 。这种方法可以自动完成由s m im i b 定义到x m l s c h e m a 定义的转换,这意味着从s n m p 管理信息到x m l 文档的相应转换。 另外,他们还给出了一个s n m p 到x m l 的网关,这个网关允许在运行时取回此 类x m l 管理信息。 j p m a r t i n f l a t i n 在其论文【”】中给出了一个s n m p m i b 到x m l 转换的方法实 例。但在文章中只给出了m i b 中s y s t e m 组与i n t e r f a c e 组的转换结果,并没有给 出整个m i b 转换的算法。 国内高校也开始了对n e t c o n f s n m p 转换网关的研究的研究。其中华中师 范大学的肖德宝教授根据n e t c o n f 和传统网络管理兼容性网关的具体需求,提 出了一种基于策略和n e t c o n f 的通用网关模型。该通用转换模型可以实现综合 网络管理中多种网络管理协议格式的统一自动转换【3 6 。3 7 】。此外,肖德宝教授在其 论文【3 8 3 9 】咩一提出了一种针对n e t c o n f 数据模型的评价框架,从7 个方面对现有的 数据模型作出了评价,为数据模型的研究提供了帮助。 在国内,有关n e t c o n f s n m p 转换网关和数据模型的研究还相对落后。特 别是在数据模型转换策略的实现上以及在n e t c o n f 框架下实现对s n m pm i b 的管理对象的存取的实现技术上还有待进一步的研究。 1 3 研究工作介绍及论文章节安排 根据当前n e t c o n f 的研究现状,本文深入的分析了现有的n e t c o n f 数 据模型的特点,并且结合n e t c o n f 网络管理系统的开发经验。我们提出了一个 n e t c o n f 数据模型的解决方案d m y a n g ,并且将这个数据模型应用于当前我 们开发的n e t c o n f 网络管理系统当中。同时,为了解决n e t c o n f 与s n m p 的兼容性问题,本文设计并实现一个n e t c o n f s n m p 的转换网关,用于完成对 n e t c o n f 和s n m p 管理操作和管理数据的交互转换。 论文的主要研究内容如下: ( 1 ) 针对当前需要建立一个适合n e t c o n f 协议的数据模型的问题,研究 数据模型的基本原理和设计原则,提出一个改进的n e t c o n f 数据模型 d m y a n g ,它能够完整的定义出n e t c o n f 网络配置管理系统管理端和代理端 的被管理数据。 ( 2 ) 针对快速开发n e t c o n f 系统的需求,研究利用n e t c o n f 数据模型 自动生成n e t c o n f 代理的方法,设计并实现一个n e t c o n f 代理生成器。 ( 3 ) 为了解决n e t c o n f 与s n m p 的兼容性问题,研究基于s m i 格式m i b 与d m y a n g 之间的数据模型的转化策略,研究s n m p 到x m l 数据转换的机 4 硕士学位论文第一章绪论 制,设计并实现一个n e t c o n f s n m p 的转换网关。 本文的结构安排如下: 论文共分为六章。第一章是论文的绪论部分,第二章到第五章是论文的主体 部分,第六章是论文的结束语部分。 第一章,介绍了基于n e t c o n f 数据模型的研究背景以及存在的问题,介绍 了课题研究的意义。 第二章,主要讨论了数据模型的基本概念,介绍了基于n e t c o n f 数据模型 的设计思想,并且重点介绍了本文设计的数据模型d m y a n g 。 第三章,代码生成器的设计与实现,提出了n e t c o n f 代码生成器的设计思 想和实现框架,说明了利用n e t c o n f 数据模型生成n e t c o n f 代理程序的具 体过程。 第四章,n e t c o n f s n m p 转换网关的设计,重点描述了网关的结构、数据 模型和协议操作的转换策略。 第五章,网关的详细设计与实现,详细的分析了网关的各个功能模块的设计; 对网关实现中用到的关键技术做详细的说明,包括s n m p 管理技术、x m l 技术 等;然后针对实际环境对网关进行了测试,并对测试结果进行了说明和分析。 第六章,总结了本文的研究工作,并给出了我们需要进一步研究的课题和方 向。 5 硕士学位论文第二章n e t c o n f 数据模型 第二章n e t c o n f 数据模型 本章首先介绍了数据模型和n e t c o n f 协议的基本概念,在此基础上对现 有的数据模型建模语言进行分析和比较,并选定了y a n g 作为数据模型的建模 语言。本文根据实际的设计需要,在y a n g 基础上进行了补充和改进,进而提 出了n e t c o n f 数据模型的解决方案d m y a n g 。 2 1 数据模型的基本概念 模型是对现实世界数据特征的抽象。在网络管理领域常用数据模型和信息模 型来描述网络管理对象的数据特征【柏】。 抽象的模型 具体的模型 图2 1 数据模型与信息模型的关系 如图2 1 所示,信息模型和数据模型都可以用来描述被管理对象的语义信息, 一个信息模型通常可以衍生出多个数据模型,信息模型是抽象的,而数据模型是 具体的模型。 信息模型是一种概念的抽象的模型。它描述管理对象在一个抽象的层次,信 息模型通常独立于具体的系统实现和具体的传输协议。信息模型关注的是管理信 息之间的关系,它可以采用一种非正式的语言来描述管理信息,例如自然语言和 英语。 数据模型是一种具体的详细的模型。它描述管理对象在一个低级别的抽象层 次上,它与具体的系统实现和具体的网络管理协议有着密切的关系。数据模型更 加关心实现的细节,它需要一种j 下规的建模语言来表示被管理信息,例女i s m i 4 、 x m ls c h e m a 16 1 、y a n g t l 5 】等等。一般而言,数据模型需包含三个要素:数据 结构、数据操作、数据类型。其中数据结构主要描述配置信息的类型、内容、性 质以及数据之间的联系,它是数据模型的基础,数据操作和数据的约束的是在数 据结构上实现的。数据操作主要描述在相应的数据结构上的操作类型和操作方 式。数据类型描述数据的取值范围,以保证数据的正确和有效。如表2 1 所示, 6 硕士学位论文第二章n e t c o n f 数据模型 信息模型和数据模型都可以描述简单变量系统名,它们的描述方式不同。信息模 型可以直接用英文来描述系统名,数据模型采用严格的建模语言o r a n g ) 限定了 系统的数据结构( 1 e a f ) 、数据操作( c o n f i g ) 、数据类型( s t r i n g ) 。 表2 - 1 信息模型和数据模型描述系统名的对比 信息模型描述系统名 s y s n a m ei s a na d m i n i s t r a t i v e l y - a s s i g n e dn a m ef o rt h i s m a n a g e dn o d e b yc o n v e n t i o n ,t h i s i st h en o d e s f u l l y - q u a l i f i e dd o m a i nn a m e i ft h en a m ei su n k n o w n ,t h e v a l u ei st h ez e r o l e n g t hs t r i n g 数据模型( y a n g ) 描述系统名l e a f s y s n a m e t y p es t r i n g ; c o n f i gt r u e ; d e s c r i p t i o n ”系统名称”; ) 具体来说,数据模型的工作就是将网络管理对象的语义信息表示成一种计算 机和管理员能够阅读、理解和使用的形式,对一个具体的网络管理模型而言,问 题的实质就是采用一种数据模型定义语言清晰的描述被管理的网络资源,并使之 能够方便的运用在网络管理系统中。 2 2n e t c o n f 协议介绍 n e t c o n f 协议是一种基于x m l 的网络配置管理协议【_ 7 1 。它运用x m l 进行 数据编码,并使用一个简单的基于r p c 的机制在管理端与代理端之间的通信。 n e t c o n f 协议以x m l 格式定义消息,这样既能方便管理配置信息,又能提供 来自不同厂商的设备之间的互操作性。 如图2 2 所示,n e t c o n f 协议从概念上分为4 个层次:内容层、操作层、 r p c 层和传输协议层。 图2 - 2n e t c o n f 协议的逻辑模型 内容层主要用于描述网络管理所涉及的配置信息和状态信息。在n e t c o n f 7 硕+ 学位论文 第二章n e t c o n f 数据模型 协议中要求管理配置信息能够以x m l 文档的格式来存储,它需要一种标准的数 据定义语言描述这个x m l 文档的内容,从而建立管理信息的抽象模型。当前还 没有制订出支持n e t c o n f 协议的标准数据模型。 操作层定义了网络配置管理所需的基本配最操作和高层配置操作。基本配置 操作完成简单的获取、修改等配置功能,包括g e t 、g e t c o n f i g 、e d i t c o n f i g 等命 令;高层配置操作完成关闭会话、加锁、解锁等配置功能,包括c l o s e - s e s s i o n 、l o c k 、 u n l o c k 等命令。此外,协议还提供了被一组称之为“能力”的可选扩展功能,用于 完成拷贝、提交、回滚等的支持事务处理的配置功能,包括c o n f i r m e d c o m m i t 、 r o l l b a c k o n - e r r o r 等命令。 r p c 层提供了一种简单的不依赖于传输协议的通信机制。它采用一种基于 x m l r p c 的通信模型,客户端将配置请求报文封装在 元素中发送给服务 端,服务端采用 元素封装操作响应或采用 素封装错误报 告回复给客户端。 传输层用于确定n e t c o n f 客户端和服务端进行通信的方案。n e t c o n f 推 荐采用s s h 4 2 1 、s s l 4 3 1 、b e e p 4 4 1 、s o a p 4 5 】等协议作为传输层协议,但是并没有 强制规定传输层必须采用哪种具体的传输协议,传输层可以采用任何一种安全的 面向连接的传输协议。 2 3n e t c o n f 数据模型建模语言的设计原则 n e t c o n f 数据模型是基于n e t c o n f 网络配置管理框架的,它采用x m l 表 示网络管理信息。该数据模型需要适应n e t c o n f 网络配置管理协议的需要: 数据模型能够易于计算机和管理员的理解;能够方便的表示各种层次化的数 据;能够方便扩展出新的数据类型和数据结构;可以表示协议要求的对数据 的新的操作;能够兼容s n m pm i b 。基于这些思路,参考文献1 3 8 - 3 9 】和文献 4 6 】 的基础上,结合实际运用的需要,本文确定了n e t c o n f 数据模型的设计原则: ( 1 ) 易读性。数据模型所需要的最基本的特征是易读性,能够满足人的易 读性和计算机的易读性。人的易读性是指管理员可以直接阅读和理解数据模型, 并且可以方便的书写和使用数据模型,这就要求数据模型建模语言有良好的语法 格式,方便管理员记忆和使用。计算机的易读性是指数据模型能够方便的被计算 机理解,使其能够方便的应用于的网络管理系统的快速开发中。对于不同的数据 模型建模语言来说,其语法解析的难度是不一样的。在设计数据模型时,需要考 虑到数据模型是否能够方便的被语言分析器解析出其语义信息。 ( 2 ) 数据表示能力。传统的网络管理的数据模型在复杂数据类型和配置信 息的表示方面存在着缺陷。针对于n e t c o n f 的网络配置管理的需要,新的数 8 硕士学位论文第二章n e t c o n f 数据模型 据模型要求支持数据类型的多样性和能够方便的表示配置和状态信息。数据类型 的多样性是指数据模型所支持的数据类型可以表示出数据所需要的不同的属性 值,使得这些数据可以简单、清晰的表示出来。配置信息是一组可写的管理数据, 状态信息是一组只读的管理数据。针对配置管理的需要,n e t c o n f 数据模型需 要能够明确的标识出数据是配置信息还是状态信息。 ( 3 ) 可扩展性。随着网络技术的不断的发展,网络的异构性和复杂性不断 增强,这需要数据模型具有良好的扩展性,能够适应以下的扩展性需求:数据 结构的扩展性。数据模型在不影响已有的数据结构的前提下,能够添加新的数据 结构。数据类型的扩展性。数据模型能够方便的扩充新的数据类型,以满足多 样化的管理数据的表示需求。数据操作的扩展性。不同的数据结构可以支持不 同的数据操作,数据模型应该能够声明新的数据操作,以适应数据结构的扩展而 衍生的数据操作的扩展。数据元素的扩展性是指能够方便的对已存在的数据定 义进行修改,能够对其原有数据定义进行添加、删除、修改。 ( 4 ) 安全性。数据模型的安全性定义是保证数据完整性和一致性的关键, 主要包括访问控制和锁机制两方面。其中,数据的访问控制权限用于精确的表示 数据可以支持的操作,数据访问控制权限可以分为粗精度和细精度的两种。粗精 度的访问控制权限表示一个设备或一组数据的数据所支持的操作,细精度的访问 控制权限表示单个管理对象支持的操作。数据模型需要支持对访问控制权限的声 明。而锁机制包括加锁、解锁两个操作,它们是n e t c o n f 协议中新加入的配 置管理操作,用于事务控制。但是协议中并没有严格的给出加锁、解锁的操作的 粒度,在数据模型中应该给出一个清晰的加锁机制的声明。 ( 5 ) 兼容性。兼容性是指n e t c o n f 数据模型需要支持与s n m pm i b 的转 化。当前s n m p 是运用的最广泛的网络管理技术,各个厂家都实现了大量的 s n m pm i b 库。为了使这些已有的管理信息库能够继续的使用下去,数据模型 的兼容性就成为了n e t c o n f 数据模型需具备的一个非常重要的因素。新的 n e t c o n f 数据模型必须能够表示出s n m pm i b 的管理信息,完成对已有配置 信息的兼容。 2 4 对现有的n e t c o n f 的数据模型的建模语言的分析比较 n e t c o n f 协议规定采用x m l 文档来描述配置管理信息,同时需要一种数据 模型建模语言来规定x m l 文档的存储格式和内容。当前x m ls c h e m a 与y a n g 是 运用的最广泛的n e t c o n f 数据模型建模语言。本节对这两种建模语言进行分析 比较。 ( 1 ) x m l s c h e m a 9 硕士学位论文 第二章n e t c o n f 数据模型 x m ls c h e m a 是w 3 c 组织公布的标准的x m l 数据建模语言【1 6 】,它是从d t d 的基础上发展而来。它可以方便的描述出x m l 文档的结构。与其它的x m l 建模 语言相比,它的优势在于定义了庞大的数据类型集合,包括三十七种内置的数据 类型,如i n t ,s h o r t ,d o u b l e ,l o n g 等常用的数据类型,而且它提供了对用户自定义数 据类型的支持,用户可以根据需要灵活扩展各种所需的数据类型。同时,x m l s c h e m a 文件本身就是一个x m l 文档,因此它继承了x m l 的可扩展性,能够方便 的扩展管理信息的数据结构,满足扩展性的需求。但是x m ls c h e m a - - 个很明显 的缺陷就是语法太复杂,这使得用户不方便阅读,也不方便使用它来定义 n e t c o n f 的数据模型。 ( 2 ) y a n g y a n g 是一种专门针对n e t c o n f 数据模型而设计的建模语言【r 7 1 ,它最突出 的特点是具有良好的易读性,注重语义的表示,能够方便的表示x m l 管理数据。 y a n g 以模块( m o d u l e ) 作为一个基本的数据定义单元,每一个模块都可以定 义一个完整的内聚的数据模型。模块的定义信息通常由数据类型定义和管理信息 定义组成。一个模块可以细分为若干个子模块( s u b m o d u l e ) ,模块之间可以相互引 用。一个模块可以使用 i n c l u d e ”调用子模块,用“i m p o r t 调用外部的模块。 在模块的内部,采用树型逻辑结构组织数据。y a n g 将管理信息抽象成4 种基本的数据结构:叶子节点( 1 e a d 、叶子列表( 1 e a f - l i s t ) 、列表( 1 i s t ) 、容器 ( c o n t a i n e r ) 。 y a n g 定义了1 3 种基本的内置数据类型,这些内置数据类型即y a n g 定义的 固定的原始类型,包括i n t s 、i n t l 6 、i n t 3 2 、i n t 6 4 、u i n t s 、u i n t l 6 、u i n t 3 2 、u i n t 6 4 、 f l o a t 3 2 ,f l o a t 6 4 ,s t r i n g ,b o o l e a n 、e n u m e r a t i o n ,b i t s ,b i n a r y ,k e y r e f , e m p t y , u n i o n 和i n s t a n e e 。i d e n t i f i e r 。在此基础上y a n g 也提供了数据类型的扩展机制,可 以由基本的数据类型衍生出用户所需的扩展数据类型,满足数据类型多样性的需 求。 ( 3 ) 分析比较 根据2 3 d x 节给出的设计原则,本文从易读性、数据表示能力、可扩展性、 安全性、兼容性等方面对x m ls c h e a m 和y a n g 进行了分析比较,并将比较的 结果表示在表2 2 中。在本文的比较过程中,将建模语言的各种特性划分为了四 个层次,即、+ 、+ + ,分别表示不具有此属性、基本具有此属性、在 此属性上表现良好、在此属性上表现优秀。 从表2 2 中可以看出,x m ls c h e m a 在数据表示能力、可扩展性、兼容性等 方面表现优秀。但是x m ls c h e m a 的语言过于复杂,用户不易掌握,并且计算 机解析x m ls c h e m a 代价很大,需要强大的语法解析工具,不利于建模语言的 1 0 硕士学位论文第二章n e t c o n f 数据模型 推广。同时,x m ls c h e m a 在表示n e t c o n f 协议所新增的加锁、解锁配置方 面也存在不足。 同x m ls c h e m a 相比,y a n g 的语法更容易理解,在人的易读性和计算机 的易读性方面表现优秀。y a n g 是一种专门针对n e t c o n f 数据模型设计的建模 语言,在表示n e t c o n f 协议所新增的加锁、解锁配置操作方面更加方便。 从综合的分析比较来看,y a n g 更加适合作为n e t c o n f 数据模型定义语言。 表2 - 2x m ls c h e m a 与y a n g 的比较 2 5 改进的数据模型d m y a n g y a n g 是一个比较成熟的n e t c o n f 数据模型建模语言,但是在以下方面还 存在着不足:y a n g 没有设备级别的管理信息的定义,不能直观的表示出一台 设备拥有的管理信息;y a n g 对于数据操作的限制不清晰,用c o n f i g 语句来区 别变量的操作权限,对于一个管理对象只有可修改和不可修改两种状态; y a n g 对于表格的定义不恰当。在y a n g 中,列表( 1 i s t ) 实际上是表示一个二维的 表格,叶子列表实际上表示的是一个一维的数组。y a n g 的语法定义允许列表项 的子节点是“非原子 ,即子节点可以是任意类型的数据结构的节点( 叶子节点、 叶子列表、列表、容器1 。这样定义的表格不满足第一范式的约束( 即表中的字 段都是单一属性的,不可再分) ,会导致系统实现该数据结构的难度增加; y a n g 语法集过于庞大,有些语法定义超过了内容层的范围。例如y :f 埘g 的定义 中r p c 语句表示的是r p c 层的内容。 在开发n e t c o n f 网络配置管理系统的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45797-2025道路车辆低压电气系统性能要求及试验方法
- 工程征用土地合同
- 有限公司内部股权转让协议
- 2025-2026年北京市中考英语综合提高练习试卷3
- DB43-T 3160-2024 新能源汽车废旧动力蓄电池综合利用规范企业评价方法
- 2025企业租赁合同诉讼状范本
- 生长发育规律授课田甜工作单位山东医学高等专科学校84课件
- 机电设备安装冷却系统方案
- 水粉基础知识课件
- 建筑工程项目施工人员健康管理方案
- 软件对接方案
- 普通高中语文课程标准解读课件
- 有机化学第十版
- 肾功能不全患者合理用药课件
- 纤维支气管镜(可弯曲支气管镜)临床应用指南(草案)
- 2022年新高考II卷高考语文试卷试题深度解读及答案详解(精校版)
- 一次调频综合指标计算及考核度量方法
- 车辆段平面布置设计
- 数字媒体艺术概论-第一章-概述
- 四大会计师事务所面试题
- GB/T 4669-2008纺织品机织物单位长度质量和单位面积质量的测定
评论
0/150
提交评论