(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.pdf_第1页
(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.pdf_第2页
(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.pdf_第3页
(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.pdf_第4页
(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(计算机软件与理论专业论文)基于netconf的网络配置管理系统的设计与实现.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 进行网 络配置管理的协议标准嘲t c 研师。 本文结合网络配置管理的需求深入研究了n e t c o n f 协议的内 容和研究现状,并在此基础上提出了一种基于n e t c o n f 的网络配置 管理系统的设计方案。该方案基于客户服务器的网络部署结构,分 管理端和代理两部分。采用了层次化和面向对象设计的思想,降低了 系统各模块之间的耦合性,提高了系统的可扩展性。客户与服务器之 间利用s s l 协议通信保障了数据传输的安全性和完整性。 最后,本文给出了该设计方案的原型实现,采用了w i n d o w s 和u n i x 两种开发平台保障了系统的可移植性,可以进行系统、网卡 和路由表等信息的配置管理。管理功能上支持n e t c o n f 协议的所有 操作、管理端与代理之间的能力交互、多管理端对同一个代理的并行 访问,支持包括确认提交、错误回滚以及超时回滚在内的事务控制机 制,同时能够完成配置管理的日志审计。 关键词网络配置管理,简单网络管理协议,n e t c o n f , x m l a bs t r a c t a st h em o s tb a s i cf u n c t i o no fn e t w o r km a n a g e m e n t ,c o n f i g u r a t i o n m a n a g e m e n ti sav e r yi m p o r t a n tr e s e a r c ht o p i cf o rt h ei n t e m e t c u r r e n t l y t h es i m p l en e t w o r km a n a g e m e n tp r o t o c o l ( s n m p ) i st h em o s tw i d e l y u s e d t e c h n o l o g y i nn e t w o r k m a n a g e m e n t ,b u ti t c a n t s a t i s f y t h e r e q u i r e m e n t so fc o n f i g u r a t i o nm a n a g e m e n td u et oi t sl i m i t a t i o n s r e c e n t y e a r s t h e r eh a v eb e e ns o m er e s e a r c h e so nx m l - b a s e dn e t w o r k c o n f i g u r a t i o nm a n a g e m e n t ,w h i c hi sm o r ep o w e r f u lo nd a t am o d e l i n g , d a t at r a n s m i s s i o na n dc o n f i g u r a t i o nm a n a g e m e n to p e r a t i o n s i e t fi s s u e d t 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 es t a n d a r do fx ,b a s e d n 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 r2 0 0 6 c o m b i n i n g w i t ht h e r e q u i r e m e n t s o fn e t w o r k c o n f i g u r a t i o n m a n a g e m e n t ,t h i sp a p e rm a k e sf u r t h e rr e s e a r c h e so nt h ec o n t e n t sa n d t h e r e s e a r c hs i t u a t i o no ft h en e t c o n fp r o t o c 0 1 t h e nad e s i g ns c h e m eo f n e t c o n f 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 ts y s t e mi sp r o p o s e d , w h i c hu s e sac l i e n t s e r v e ra r c h i t e c t u r em o d e lc o m p o s i n gb yt h em a n a g e r a n dt h ea g e n t t h es t r a t i f i e da n do b j e c t - o r i e n t e dd e s i g np a t t e r n sa r e a d o p t e dt o r e d u c et h ec o u p l i n gb e t w e e nm o d u l e sa n di m p r o v et h e e x t e n s i b i l i t yo f t h es y s t e m a n dt h ess l p r o t o c o li sa d o p t e dt oe n s u r et h e s e c u r i t ya n di n t e g r a l i t yo ft h ec o m m u n i c a t i o n sb e t w e e nt h em a n a g e ra n d t h ea g e n t f i n a l l y , t h i sp a p e rg i v e st h ei m p l e m e n t a t i o no ft h ed e s i g ns c h e m e , w h i c hu s e sb o t hw i n d o w sa n du n i xa st h ed e v e l o p m e n tp l a t f o r m st o s a t i s f yt h er e q u i r e m e n t so fp o r t a b i l i t y i tc a nm a n a g et h ec o n f i g u r a t i o n so f s y s t e m ,i n t e r f a c ea n dr o u t i n gt a b l e a n d i t s u p p o r t s a l ln e t c o n f o p e r a t i o n sa n dc a p a b i l i t i e se x c h a n g ea sw e l la sa u d i t i n g ,c o n c u r r i n g m a n a g e m e n t sa n dt r a n s a c t i o nm e c h a n i s m si n c l u d i n gc o n f i r m e dc o m m i t , r o l l b a c ko ne r r o ra n dr o l l b a c ko nt i m e o u t k e yw o r d s :n e t w o r k c o n f i g u r a t i o nm a n a g e m e n t ;s n m p ;n e t c o n f ; x 仃, 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了论文中特另, j d n 以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得中南大学或其他单位的学位或证书而使用过的材料。与我共 同工作的同志对本研究所作的贡献均己在论文中作了明确的说明。 作者签名: 苤至红日期:j 竺卫年土月盟日 学位论文版权使用授权书 本人了解中南大学有关保留、使用学位论文的规定,即:学校有 权保留学位论文并根据国家或湖南省有关部门规定送交学位论文,允 许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内 容,可以采用复印、缩印或其它手段保存学位论文。同时授权中国科 学技术信息研究所将本学位论文收录到中国学位论文全文数据库, 并通过网络向社会公众提供信息服务。 作者签名:监导师签名型年_ 嗍吐年土月丑日 硕十学位论文第一章绪论 第一章绪论 当前计算机网络的发展特点是网络规模不断扩大,复杂性不断增加,网络的 异构性越来越高。一个网络往往由若干个大大小小的子网组成,集成了多种o s 平台,包括不同厂家公司的网络设备和通信设备等。如果没有一个高效的网络管 理系统对网络进行深度管理,那么很难保证为广大用户提供令人满意的服务。而 网络配置管理作为网络管理系统中的重要组成部分,已经成为互联网中的一个重 要研究课题。 1 1 网络配置管理概述 1 1 1 网络管理概述 按照i s o 的定义,网络管理是指规划、监督、设计和控制网络资源的使用和 各种活动情况,以使网络的性能达到最优。通俗的讲,网络管理就是通过某种方 式对网络状态进行调整和优化,使网络能正常、高效的运行,并使网络中的各种 资源得到更加高效的利用,一旦网络出现故障能及时做出报告和处理,并协调、 保持网络的高效运行等【l 】。网络管理应完成两个任务,一是对网络的运行状态进 行监测,二是对网络的运行状态进行控制【2 】。通过监测可以了解当前网络状态是 否正常,是否出现危机和故障;通过控制可以对网络状态进行合理分配,保证网 络性能,提供网络应有的服务。监测是控制的前提,控制是监测的结果。 网络管理的目标是对网络资源进行合理的分配和控制,以满足网络运营者的 要求和网络用户的需要,使网络资源可以得到最有效的利用,使整个网络更加经 济的运行,并提供连续、可靠和稳定的服务【3 】。从根本上来讲,网络管理就是要 满足运营者和用户对网络的有效性、开放性、可靠性、综合性、安全性和经济性 的需求。 为了标准化系统的管理功能,i s o 在i s o i e c7 4 9 8 - 4 文档中定义了网络管理 的5 个系统管理功能域,即配置管理、故障管理、性能管理、计费管理和安全管 理【4 】。 1 1 2 网络配置管理定义 配置管理是网络管理中最早出现,也是网络中最基本的管理功能,负责监控、 硕士学位论文第一章绪论 设置网络和被管设备的配置信息,追踪配置对网络硬件和软件的影响【5 j 。 资源清单的管理是所有配置管理的基本功能,资源开通是为满足新业务及时 的配置资源,业务开通是为端点用户分配业务和功能【们。配置管理的作用包括确 定设备的地理位置、名称和有关细节,记录并维护设备参数表;用适当的软件设 置参数值并配置设备功能;初始化、启动和关闭网络及其相应设备;维护、增加 和更新网络设备以及调整网络设备之间的关系。配置管理对资源的管理信息库 ( m i b ) 建立资源数据,并对其进行维护。配置管理可以根据网络管理人员的命令 自动调整网络设备配置,以保证整个网络的性能达到最优。 配置管理可以管理的网络信息包括【7 】: ( 1 ) 网络设备的拓扑关系( 存在性和连接关系) ; ( 2 ) n 络设备的域名、i p 地址( 即寻址信息,用来标识一个设备) ; ( 3 ) n 络设备的运行参数; ( 4 ) 网络设备的备份操作条件; ( 5 ) n 络设备的配置更改条件。 配置管理将定义、收集、监视和修改这些配置数据。这里的配置数据包括管 理范围内所有设备的任何静态和动态信息。配置数据不仅仅由配置管理功能使 用,还被网络管理的其它功能广泛使用。配置管理通过修改被管对象的属性来控 制被管对象。 配置管理的对象是一个逻辑的概念,既可以是软件、也可以是硬件。它可以 是路由器、交换机等网络节点设备,也可以是服务器上的网络服务进程【8 】。配置 管理的基本功能应包括以下几个方面: ( 1 ) 设置被管系统或被管对象的参数( 如路由器的路由表) ; ( 2 ) 初始化、启动和关闭被管对象; ( 3 ) 收集被管系统状态的数据,以便管理系统能够识别被管系统中状态变化 的发生; ( 4 ) 改变被管系统或被管对象的配置; ( 5 ) 定义和修改被管对象间的关系; ( 6 ) 通过网络发布新软件; ( 7 ) 生成配置状态报告。 1 1 3 网络配置管理需求 网络配置管理的主要需求包括: ( 1 ) 提供配置管理必须的基本操作,这些操作可以提供基本的网络配置功 能,使系统能够方便的进行网络配置管理; 2 硕士学位论文 第一章绪论 ( 2 ) 提供尽可能完备的高层配置管理操作,用于提供尽可能丰富的配置管理 功能,如r o l l b a c k ,c o m m i t 等; ( 3 ) 明确区分只读信息和配置信息,这样可以很好的把网络监控和网络配置 管理区分开,有利于系统模块化,而且提高了配置管理的安全性; ( 4 ) 管理技术要尽量简单,这包括三方面的内容:配置管理接口尽量简单, 便于使用和调试;产品升级和维护费用尽量少;在实际使用中能够高效运行并使 用较少系统资源。 1 2 课题研究背景 s n m p 9 05 】是目前最常用的网络管理协议,提供了从网络设备中收集网络管 理信息的途径,也为设备向网络管理工作站报告问题和错误提供了解决方案。它 采用u d p 传输,实现简单,技术成熟,很大一部分的网络设备生产厂家都实现 了对s n m p 的支持。但随着应用的深入,s n m p 在安全可靠性、管理操作效率、 交互操作和复杂操作的实现上存在的严重缺陷和不足都已经暴露出来,不能满足 现有网络的管理需求。 s n m p 在设计的时候虽然想同时实现监控管理和配置管理功能,但是目前的 研究认为,s n m p 在配置管理方面是比较薄弱的。首先,安全性难以保障, s n m p v l 和s n m p v 2 的安全机制脆弱,通信不加密,所有通信字符串和数据都 以明文形式发送,攻击者一旦捕获了网络通信,就可以利用各种嗅探工具直接获 取通信字符串,虽然s n m p v 3 增加了身份验证、加密和访问控制等三个安全机 制,但目前还没有广泛应用;然后,原子操作难于支持复杂的配置管理操作,多 个网络配置管理操作往往具有较强的相关性,而s n m p 协议基于原子操作,无 法有效的为配置管理的相关性提供支持,而且仅仅使用g e t 和s e t 这两个简单 的操作不能实现网络配置管理的很多高层功能,如c o m m i t ,r o l l b a c k 等;最后, s n m p 的数据传输效率低下,s n m p 使用u d p 协议进行数据传输,不仅对报文 大小有很大的限制,而且报文的重传需要在应用层中实现,此外,操作的原子性 使得读取大量数据需要通过多个操作完成,增加了网络的负担。因此s n m p 不 适合用来进行网络配置管理。 与此同时,x m l t 场】得到了迅猛发展,应用越来越广泛,出现了大量与之相关 的技术如:x 1 1 1 1s c h e m a t l 7 1 ,x m lp a t hl a n g u a g e ( x p a t h ) 1 5 】,e x t e n s i b l es t y l e s h e e t l a n g u a g e ( x s l ) t 1 9 1 ,x m l r p c t 2 0 1 ,w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ( w s d l ) 2 1l 等 等。x m l 所具有的高度结构性、可扩展性、以及广泛的市场支持,使得它在网络 管理领域应用越来越广泛,尤其是非常适合网络配置管理的需求。 基于x m l 的网络配置管理【2 2 。2 6 】的主要思想是利用x m l 的强大的数据表示能 硕十学位论文第一章绪论 力,使用x m l 文法描述被管理数据和管理操作,使管理信息成为计算机可以理解 的数据库,提高计算机对网络配置管理数据的处理能力,从而提高网络配置管理 能力。 基于x m l 的网络配置管理技术主要具有以下优点: ( 1 ) x m l 具有强大的数据表示能力; ( 2 ) 能方便高效的进行大量数据的传输; ( 3 ) 存在大量成熟的相关技术的支持,便于进行数据处理。 因此,基于x m l 的网络配置管理具有广阔的发展前景。i e t f ( i n t e m e t e n g i n e e r i n gt a s k f o r c e ) 对基于x m l 的网络配置管理进行了标准化和规范化,成立 了n e t c o n f 工作小组,并于2 0 0 6 年1 2 月正式定义了基于x m l 进行网络配置 管理的协议标准n e t c o n f f 2 7 1 。 1 3 课题研究现状 在i e t fn e t c o n f 小组的努力下,n e t c o n f 协议得到了很大的发展,该 小组在2 0 0 6 年提出了基于s s h ( s e c u r es h e l l ) 的n e t c o n f 协议【2 引、基于 s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) 的n e t c o n f 协议1 2 9 】和基于b e e p ( b l o c k s e x t e n s i b l ee x c h a n g ep r o t o c 0 1 ) 的n e t c o n f 协议【3 0 1 ,在2 0 0 8 年提出了n e t c o n f 事件通知机制【3 。 与此同时,部分网络设备的国际知名厂商也在该领域内付出了大量努力,并 且开发出了相关的产品。 瑞典的t a i l fs y s t e m s 是基于x m l 的网络管理软件和工具的领导厂商,该公 司开发出了c o n f d l 3 2 1 、i n s t a n tn e t c o n fa g e n t 3 3 1 和c o n f m 3 4 1 等三种支持 n e t c o n f 协议的网络管理产品。c o n f d 是一个基于x m l 的网络设备管理的软 件解决方案,具备事务控制、回滚机制、访问控制机制和验证机制等特点,使用 同一套数据模型为用户提供了通用的跨协议的管理接口,包括c l i ;w r e b 、s n m p 和n e t c o n f 等四种,可以使用户有效降低开发成本,提高产品面向市场的速度。 i n s t a n tn e t c o n f a g e n t 是一个向嵌入式网络管理系统添加n e t c o n f 接口的可 移植工具,主要具备以下几个特点:通过n e t c o n f 接口技术快速拓展现有的嵌 入式管理系统使其支持n e t c o n f 协议;使用c 9 9 开发,可移植性好;良好地 支持n e t c o n fr f c 4 7 4 1 和4 7 4 2 ;支持事务机制、验证机制和回滚机制;支持 多线程结构;内存占有率低。c o n f m 是一个基于n e t c o n f 的网络管理系统的 管理端,用于扩展e m s n m s 应用程序的配置管理能力,它支持事务控制、验证 机制和回滚机制,良好地支持n e t c o n fr f c 4 7 4 1 和4 7 4 2 。 s i l i c o n & s o f t - w a r es y s t e m s ( s 3 ) 【3 5 】公司下的一个分支e m b e d d e d m i n d t 3 6 l 提供 4 硕士学位论文第一章绪论 了支持包括c l i 、w e b 、s n m p 和n e t c o n f 在内的通用接口的网络管理软件, 开发出了符合n e t c o n f 协议标准的网络代理m i n d a g e n tn e t c o n f ,并可 以用于路由器、交换机等设备。 虽然两家公司都提供了基于n e t c o n f 的网络管理系统产品,但它们有个共 同的特点就是技术不公开,需要付费获取产品,不便于我们的研究。 在这种情况下,开源社区开发出了一套基于n e t c o n f 的网络配置管理系统 - y e n c a 旧,但是该系统是在2 0 0 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 和相关网络管理产品的研究。文献【3 8 1 通过研究当前语义网领域的最新成果,提出了基于本体的n e t c o n f 网络配置管 理被管对象的标准化建模的方法,使用x m l 定义静态和动态的数据管理信息,用 w e b 本体语言定义被管对象之间的关系,从语义层面整合现有网络管理信息模 型,用语义网规则语言描述具有语义的管理行为信息,初步建立了基于 n e t c o n f 的智能网络配置管理本体框架,并通过斯坦福大学的p r o t e g e 工具对 网络配置管理本体进行了建模和规则推理工作,通过o w l s 建立了n e t c o n f 的w e b 服务本体模型。文献【3 9 1 提出了一种基于n e t c o n f 的网络管理系统的管 理端的体系结构,并使用j a 、,a 进行了实现,但没有给出代理端的详细设计与实 现。 国内知名网络厂商华为通信技术公司也投入了人力对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 fd a t a m o d e l s ”1 4 0 ,提出了b o o l e a n 、d a t e t i m e 等n e t c o n f 数据类型的定义,但目前 尚未提出基于n e t c o n f 的网络配置管理系统。 1 4 研究内容及论文章节安排 1 研究内容 作为一种新的网络管理协议,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 的网络配置管理系统框架的研究与设计工作是 很有意义的。 总的来说,本文主要研究内容包括: ( 1 ) 结合网络配置管理的需求,深入研究n e t c o n f 协议的内容及研究现状, 5 硕士学位论文第一章绪论 为基于n e t c o n f 的网络配置管理系统的设计方案的提出打下理论基础。 ( 2 ) 提出一种基于n e t c o n f 的网络配置管理系统的设计方案,该方案要满 足n e t c o n f 协议的操作、能力交互和事务控制等方面的功能要求,要具有良好 的安全性、可扩展性和可移植性。 ( 3 ) 对提出的基于n e t c o n f 的网络配置管理系统的设计方案进行原型实现, 至少要可以进行系统、网卡和路由表等网络配置信息的管理。 2 本文的章节安排 论文全文共分为六章,组织结构如下: 第一章,介绍了网络管理的定义及目的,讨论了网络配置管理的研究背景, 介绍了网络配置管理的研究现状。 第二章,介绍n e t c o n f 协议,包括协议结构、协议操作、报文格式、协议 能力、通信过程以及协议的特点。 第三章,主要讨论了基于n e t c o n f 的网络配置管理系统的总体设计目标和 系统总体框架。 第四章,介绍了系统的详细设计与实现。 第五章,给出了系统的运行界面,并对系统进行测试。 第六章,总结了本文的研究工作,指出了本系统存在的一些问题,并给出了 我们需要进一步研究的课题和方向。 6 硕士学位论文第二章n e t c o n f 协议及其特点 2 1 协议结构 第二章n e t c o n f 协议及其特点 n e t c o n f 协议使用客户服务器模型,采用s , a r i l 作为配置数据和协议消息 内容的数据编码方式,建立在安全可靠的传输层基础上,以简单的远程过程调用 ( r p c ) 方式实现操作和控制。 层次示例 内容层 : 操作层 3 r p e ) 昙 : 传输协议层 图2 一ln e t c o n f 协议概念模型 如图2 1 所示,n e t c o n f 的逻辑模型为层次结构,从概念上分为以下4 个 层次:内容层、操作层、r p c 层和传输协议层。每一层作为上层服务的提供者向 上提供服务,并作为下层服务的客户对下层服务进行调用。这种层次结构由于每 一层最多只影响上下两层,同时只要给相邻层提供相同的接口,允许每层用不同 的方法实现,可以为软件重用和扩展提供强大的支持。 1 内容层 内容层描述了网络管理所涉及的配置数据,它基本上依赖于设备厂商。协议 起草者认为内容层超出了它的范围,应该另行制订标准的数据定义语言和内容, 但当前还没有制订出支持n e t c o n f 协议的标准管理信息模型。 2 操作层 操作层定义了一组基本操作,这些操作可以作为r p e 方法调用。除了基本操 作,n e t c o n f 还提供了被称之为c a p a b i l i t i e s 的附加能力。n e t c o n f 可利用 网络设备发布的特征调整管理应用的行为。 3 r p e 层 r p c 层表示了基于x m l r p c 的通信模型。x m l r p c 是一套允许运行在不同操作 7 硕士学位论文第二章n e t c o n f 协议及其特点 系统、不同环境的程序实现基于i n t e m e t 远程过程调用的规范和一系列的实现。 这种远程过程调用使用t c p 作为传输协议,x m l 作为传送信息的编码格式。一 个x m l r p c 系统包括r p cc l i e n t 和r p cs e r v e r 两部分,r p cc l i e n t 发起请求,r p cs e r v e r 接收并处理请求,然后发送响应给r p cc l i e n t 。基于x m l r p c 的优点,n e t c o n f 使用x m l r p c 作为协议的通信模型。 4 传输层 传输层在被管设备和管理应用之间建立通信路径。n e t c o n f 并没有规定传 输协议层必须要采用哪些具体协议,它推荐采用安全的通信协议,如s s l 、 s s h t 4 、b e e p 4 2 4 3 1 、s o a p t 删等。 2 2 协议操作及报文格式 n e t c o n f 提供各种操作来管理设备配置和获取设备信息,总共包括 g e t c o n f i g 、g e t ,e d i t c o n f i g ,c o p y c o n f i g 、d e l e t e c o n f i g ,l o c k ,u n l o c k ,c l o s e s e s s i o n 和k i l l s e s s i o n 等9 种,各个操作的功能如表2 1 所示。 表2 - 1 协议操作功能 操作名功能 获取设备配置信息 获取设备配置信息和状态信息 修改设备配置信息 拷贝设备配置信息 删除设备配置信息 锁定设备的配置信息,用于事务控制 解锁设备的配置信息,用于事务控制 关闭会话 强制关闭会话 作为一种基于x m l 的网络配置管理协议,n e t c o n f 使用x m l 作为协议 的报文格式。此外,由于n e t c o n f 使用基于x m l r p c 的通信模型,n e t c o n f 采用 元素封装操作请求消息,采用 元素封装操作响应消息,采 用 元素封装操作失败时的错误消息。 1 元素 元素是用来封装从客户端发往服务器的n e t c o n f 请求。 具有强制性的属性”m e s s a g e i d ”,它是由r p e 的发送端决定的一个字符 串,例如一个序列增长的数字,r p c 的接受端结束到后,不直接解码和解析该字 符串,而是保存下来,直接用在 中,例如: 2 元素 用来回复n e t c o n f 操作,它也具有一个强制性属性 ”m e s s a g e i d ”,对应的值为它所响应的 的”m e s s a g e i d ”值。值得注意的是:如 果 中出现了额外的属性,则通信的对方在答复时,即发送钟c r e p l y 时必 须返回在钟c 中定义,而没有修改的属性。只有这样,通过x m l 通信时,双方 才能根据属性中语法读懂其中的语义。 响应的所有命名和参数都封装在 元;素中,例如: 对于更新、拷贝、删除等非获取操作,当操作成功时,n e t c o n f 将 消息封装在 中发送,例如: 9 硕十学位论文 第二章n e t c o n f 协议及其特点 3 元素 当n e t c o n f 的请求操作因错误而失败时, 将在 q 暇 送。当有多个错误发生时 可能饱含多个错误 ,但服务器并 不要求支持发现多个错误。 主要包括如下几个参数: ( 1 ) 错误发生在哪层t r a n s p o r tr p clp r o t o c o la p p l i c a t i o n ; ( 2 ) 错误发生条件标识串; ( 3 ) 错误的严重性e r r o r1w a r n i n g ; ( 4 ) 特定数据模型错误或者执行错误条件标识字符串; ( 5 ) x m l 中发生错误的节点的x p a t h 路径: ( 6 ) 人性化的错误信息; ( 7 ) 协议或者特定数据模型错误内容。 例如: 响应: r p c m i s s i n g - a t t r i b u t e e r r o r m e s s a g e i d r p c 1 0 硕士学位论文第二章n e t c o n f 协议及其特点 2 3 协议能力 在n e t c o n f 中,一种能力为一个操作或几个操作的组合,设备或管理端以 能力为单元描述它们对网络配置管理的支持。n e t c o n f 会话以能力交互开始, 设备将其能力通知给网络管理端,管理端丢弃它不支持的能力。设备可以扩展新 的能力,但这并不影响其与现有网络管理端的通信,因为经过能力交互,管理端 可以丢弃它不支持的能力。 基本能力( b a s ee a p a b i l i t e s ) 总共包括即写即运行( w r i t a b l e r u n n i n gc a p a b i l i t y ) 能力、候选配置能力( c a n d i d a t ec o n f i g u r a t i o nc a p a b i l i t y ) 、确定提交能力、错误回 滚能力( r o l l b a c ko ne r r o rc a p a b i l i t y ) 、验证能力( v a l i d a t ec a p a b i l i t y ) 、显式启动能 力( d i s t i n c ts t a r t u pc a p a b i l i t y ) 、u r l 能力( u r lc a p a b i l i t y ) 和x p a t h 能力( x p a t h c a p a b i l i t y ) 等八种。 其中,即写即运行能力用于设备支持直接向r u n n i n g 配置数据集写入数据; 候选配置能力的描述为设备支持对候选配置数据的修改,删除,添加,并且通过 来使得候选数据集会变为r t m n i n g 配置数据集;确定提交能力用于事务 控制,服务器将支持 、 参数的 ,当超时 6 0 0 s ( 默认) 时,提交操作将回滚;错误回滚能力用于保障事务的一致性,当发生 错误时将配置恢复到修改前的状态;验证能力用于在提交候选配置之前审查配置 的语法和语义错误;显式启动能力表示设备支持运行和启动配置数据集的分离, 必须使用从r u n n i n g 到s t a r t u p 显式的操作 来保证s t a r t u p 和r u n n i n g 同步;如果n e t c o n f 会话双方都支持在 和 a l p 使用 元素,则 该管理系统具有u r l 能力;x p a t h 能力表示n e t c o n f 会话双方支持在r p c 请 求与响应中使用x p a t h 表达式。 在实际的应用中,各种能力由系统实现者自行设计实现,并且可以通过自定 义,扩展实际系统所支持的配置能力集。 2 4 协议通信过程 n e t c o n f 是面向连接的,要求在服务器和客户端之间建立持久可靠的连接, 并且该连接必须提供认证、数据完整性和机密性机制,而这些都依靠底层的传输 层协议来实现。n e t c o n f 并不关注底层通信过程,而是完全基于远程过程调用, 其基本通信过程如图2 2 所示。 硕十学位论文 第二章n e t c o n f 协议及其特点 甲c l i e n t 固 ,2 底层验证,建立连接,并开启会话 、 3 发送携带有能力扩展信息的 , 4 发送携带有能力扩展信息的 5 请求 ,6 响应 、 7 请求关闭连接 、 ,8 处理完操作,释放锁与资源,关闭连接 l 一4 步建奇= 起连接,打歼会话,并进行能力扩展协商: 其中2 - 3 步的时问次序不确定: 双方都禁止出现等待对方回复而不发送 的情况 5 6 步客户端通过( r p c 向服务器发送操作请求, 服务器通过 响应客户端请求 这是一个循环的通信过程 客户端通l 立 请求正常火闭连接, 或者通过 请求强制荚州连接; 服务器根据要求处理操作释放锁与资源, 关闭会话,释放连接。 图2 2 协议通信过程 从图2 2 中可以看到,进行一次完整的n e t c o n f 会话的具体通信过程如下: 首先管理端请求建立连接,代理端接收连接,由底层传输协议进行安全验证 并建立会话; 然后,管理端和代理端进行能力交互,通告双方所支持的能力,双发在此基 础上进行进一步的会话; 接着,双方进入实际操作阶段,管理端发送g e t c o n _ f i g 、e d i t c o n _ f i g 等r p c 操 作请求,代理端接收请求执行操作然后返回r p c 响应给管理端,这个过程可以重 复多次; 最后,管理端发送 请求,请求关闭会话,当代理端接到这个 操作命令后,释放会话锁定的相关资源,关闭会话连接。 2 5 协议特点 作为网络配置管理的标准化解决方案,n e t c o n f 协议具有以下优点: ( 1 ) 强大的数据建模能力n e t c o n f 使用x m l 进行建模,首先,它可以方便 的表示层次嵌套的数据,支持更加丰富的数据类型;其次,管理信息方便,可以 借助一些工具( 如c v s ) 对以文本格式存储的管理信息进行管理,便于管理设备 和管理信息的同步;最后,管理信息便于计算机所处理,使用x m l 文法将管理信 息组织成计算机可理解的数据库,可以方便的进行管理信息的分析和处理。 1 2 硕士学位论文第二章n e t c o n f 协议及其特点 ( 2 ) 提供事务控制管理功能n e t c o n f 协议通过确认提交能力、加锁解锁 操作以及错误回滚能力为事务控制提供了解决方案,保证了配置管理的正确性、 完整性和原子性。 ( 3 ) 具备良好的可扩展性在n e t c o n f 协议里,可以方便的添加新的操作 和被管信息,从而扩展其管理能力。 ( 4 ) 存在大量已有成熟技术支持便于实现数据的处理功能,也可以降低开 发成本。目前可以用于n e t c o n f 的成熟技术包括:x m l 、d o ma p i s 、x p a t h 、 x s l 、x s c h e m a 等。 ( 5 ) 高效的数据传输能力使用x m l 文档用来描述被被管信息和通讯消息, 对消息的大小没有限制,从而可以功能高效的传输数据并能保证数据的完整性。 此外,可以使用s o a p 、s s h 、s s l 等高层传输协议来保证传输的安全性。 但是,由于n e t c o n f 协议的报文和数据模型都是x m l 格式的,所以在性 能方面有一定的不足,可以开发一个专用的高效x m l 解析器,提升x m l 解析速度 从而提高协议的整体性能。 2 6 本章小结 本章首先简单介绍了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 的网络配置管理系统的研究是有意义的。 1 3 硕士学位论文第三章系统总体框架 第三章系统总体框架 基于n e t c o n f 在网络配置管理方面的优点,本章给出了一个基于 n e t c o n f 的网络配置管理系统的总体框架。首先介绍系统需要达到的具体目 标,然后根据目标提出了一个基于n e t c o n f 的网络配置管理系统的总体框架设 计方案,给出了系统中各模块的功能介绍,最后介绍了系统的工作流程。 3 1 系统设计目标 在功能上,需要满足以下七个目标: ( 1 ) 完全遵循印c4 7 4 1 实现g e t 、g e t c o n f i g 、e d i t c o n f i g 、l o c k 、u n l o c k 等标准 协议操作。 ( 2 ) 实现管理端和代理端之间的数据传输的保密性和相互的身份认证。 ( 3 ) 实现管理端和代理端的能力交互。 ( 4 ) 支持原型系统与内容层数据模型的结合,实现一个验证功能校验网络管 理数据是否符合数据模型。 ( 5 ) 支持事务控制机制,实现确认提交、错误回滚以及超时回滚等功能。 ( 6 ) 支持多线程机制,实现多管理端并行访问功能。 ( 7 ) 支持日志审计机制,实现对修改、删除等关键配置更新操作的日志记录。 在设计上,需要保证系统具有以下特点: ( 1 ) 良好的安全性 n e t c o n f 协议推荐使用安全协议实现传输层,如s s h ,s s l ,b e e p 等,系 统应选用其中一种或多种协议作为原型系统的传输协议,提供认证和加密机制, 保障n e t c o n f 网络管理会话的安全性。 ( 2 ) 良好的可拓展性 为了方便开发者对系统的扩充,使开发者可以在不改变核心代码的情况下完 成对系统的扩展,系统需要具备良好的可扩展性,而这种扩展性具体体现在操作 层的操作扩展性以及内容层的被管信息的可扩展性上。 ( 3 ) 可移植性 系统需要具有良好的可移植性和跨平台性,支持w i n d o w s 系列和u n i x 系列等多种操作系统。 1 4 硕十学位论文第三章系统总体框架 3 2 系统总体架构 天 n e t c o n f n e t c o n f 代理 管理端 代理发现 r p c 请求 解析器 用户界面 r p c 响应生 + 成器 r p c t p c 请求生成器 通 请求 通 +、r 信信 处 处 操作处理器 理 器 r p c 理 响应 嚣 + r p c 响应解析器 被管信息处理器 1 日志存储器 图3 一i 系统总体架构 从图3 1 中可以看到,系统架构分n e t c o n f 管理端和代理两个部分。其中 管理端提供管理人员与设备的交互通信界面,包括代理发现、用户界面、r p c 请 求生成器、r p c 响应解析器和通信处理器等五个模块;代理提供管理人员所需的 配置数据的采集、存储和处理,包括通信处理器、r p c 请求解析器、操作管理器、 r p c 响应生成器、被管处理器、日志存储器等六个模块。 3 2 i 管理端 管理员通过系统管理端进行网络配置管理操作,获取配置信息或发出修改命 令进行配置修改。由于需要为管理员提供丰富的配置功能和良好的操作界面,本 系统设计的管理端是一个w i n d o w sg u i 应用程序,共包括代理发现、用户界面、 r p c 请求生成器、r p c 响应解析器和通信处理器等五个模块。 代理发现模块用于自动发现局域网内部署的n e t c o n f 代理。 用户界面模块完成系统与终端网络管理员之间的交互,显示网络管理信息, 并提供网络管理操作界面。网络管理员通过操作用户界面上的接口,实现相应的 1 5 硕士学位论文第三章系统总体框架 网络配置管理。 r p c 请求生成器用于生成x m l r p c 请求。它将管理员通过用户界面模块进行 的图形化操作转换成符合n e t c o n f 协议格式的x m l r p c 操作请求。 通信处理器模块用于实现管理端

温馨提示

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

评论

0/150

提交评论