(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf_第1页
(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf_第2页
(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf_第3页
(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf_第4页
(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf_第5页
已阅读5页,还剩74页未读 继续免费阅读

(信号与信息处理专业论文)forces协议中间件的研究与实现.pdf.pdf 免费下载

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

文档简介

f o r c e s 协议中间件的研究与实现 摘要1 下一代网络的一个重要特点是开放可编程。i e t f 路由领域的 f o r c e s ( f o r w a r d i n ga n dc o n t r o le l e m e n ts e p a r a t i o n ) 工作组提出了转 发件与控制件分离的路由器体系结构,这种体系结构的路由器能够满 足下一代网络开放可编程的要求,是下一代路由器的一个发展方向。 本文作者所在的课题组是i e t ff o r c e s 协议的制定者之一,当前课题 组正在开发基于f o r c e s 架构的路由器原型系统。 本文主要研究f o r c e s 协议中间件的实现,是f o r c e s 架构路由 器结构模型的核心组成部分之一。首先,介绍了f o r c e s 协议中间件 的实现基础,主要包括f o r c e s 需求( r f c 3 6 5 4 ) 、f o r c e s 体系结构 ( r f c 3 7 4 6 ) 、f o r c e sf e 模型、协议层和传输匹配层,重点介绍了 协议层。其次,从f o r c e s 协议中问件在协议层和传输匹配层的体系 结构分析了f o r c e s 协议中间件的总体设计和实现的若干个关键技 术,关键技术主要包括:( 1 ) 通过心跳检测实现了系统的可靠性;( 2 ) 在分析简单计数机制存在的不足基础上,分析了本文采用的差值定时 器计数法是如何解决第一种定时器管理机制存在的不足:( 3 ) 分析讨 论了本文实现模块接口的两种方法:函数过程接口、消息事件接口; 。资助项目:国家自然科学桀会项目“转发件和控制件分离( f o r c e s ) 删络体系结构及关键技术研究” f 6 0 5 7 3 1 1 6 ) ;国家自然科学草令项目“松散耦合型分布式路由_ ; ;的若十二关键技术研究”( 6 0 6 0 3 0 7 2 ) :浙江省 科技厅重点科研项日“拱于开放町编程结构的新一代路由器的开发”( 2 0 0 5 c 2 1 0 1 3 ) i 浙江省教育厅高校科 t o f 计划重点项日“螭十f o r c e s 结构的分布式路由器的关键技术t i j f 5 e ”( z 0 6 6 2 ) 。 ( 4 ) 分析了f o r c e s 消息的匹配问题;( 5 ) 分析了f o r c e s 消息发送 与接收。接着,介绍了f o r c e s 协议中间件提供的a p i 及其使用说明。 然后,详细讲述了f o r c e s 协议中间件在协议层和传输匹配层的各个 模块的具体实现。最后,对实现进行了功能性测试和分析。测试结果 初步验证了f o r c e s 协议中间件实现的正确性,为验证f o r c e s 协议 的可行性和推动i e t ff o r c e s 协议标准的制定提供了重要的实验依 据。 关键词:f o r c e s ,中间件,开放可编程,心跳检测,定时器管理 r e s e a r c ha n di m p l e m e n t a t l 0 no nf o r c e s p r o t o c o lm i d d l e ,a r e a b s t r a c t o n eo ft h ei m p o r t a n tc h a r a c t e r i s t i ca b o u tt h en e x tg e n e r a t i o nn e t w o r ki so p e n p r o g r a m m a b l e f o r c e s ( f o r w a r d i n ga n dc o n t r o le l e m e n ts e p a r a t i o n ) i saw o r k i n g g r o u pi ni e l l pr o u t i n ga r e a i tp r o p o s e dar o u t e ra r c h i t e c t u r ew i t ht h ep h y s i c a l s e p a r a t i o no ft h ef o r w a r d i n ge l e m e n t ( f e ) a n dt h ec o n t r o le l e m e n t ( c e ) r o u t e r s w i t ht h i sa r c h i t e c t u r em e e tt h ed e m a n d so ft h en e x tg e n e r a t i o nn e t w o r k sv e r yw e l l , a n ds u c ha r c h i t e c t u r ei so n et r e n do f n e x tg e n e r a t i o nr o u t e r s o u rr e s e a r c ht e a mi sk e y p a r t i c i p a n t si nt h ef o r c e sw o r ka n da u t h o r so ft h ef o r c e sp r o t o c o l ,a n dn o wi s d e v e l o p i n gr o u t e rp r o t o t y p e b a s e do nf o r c e sa r c h i t e c t u r e t h i st h e s i sp r i m a r i l yr e s e a r c h e so nt h ei m p l e m e n t a t i o no ff o r c e sp r o t o c o l m i d d l e w a r ew h i c hi so n eo ft h ei m p o r t a n tc o m p o n e n t si nd e s i g nm o d e l f i r s t l y , w e i n t r o d u c et h ef o u n d a t i o no fi m p l e m e n t a t i o n0 nf o r c e sp r o t o c o lm i d d l e w a r e ,s u c ha s ; t h er e q u i r e m e n tf o rf o r c e s ( r f c 3 6 5 4 ) ,f o r c e sa r c h i t e c t u r e ( r f c 3 7 4 6 ) ,f o r c e sf e m o d e l ,p r o t o c o ll a y e ra n dt r a n s p o r tm a p p i n gl a y e r p r o t o c o ll a y e ri si n t r o d u c e di n d e t a i l s e c o n d l y , w et a l ka b o u tt h ed e s i g no ff o r c e sp r o t o c o lm i d d l e w a r eb y d e s c r i b i n gt h ea r c h i t e c t u r eo ff o r c e sp r o t o c o lm i d d l e w a r eo np r o t o c o ll a y e ra n d t r a n s p o r tm a p p i n gl a y e r e s p e c i a l l y , w ea n a l y s es o m ek e yi m p l e m e n t a t i o nt e c h n i q u e s , s u c ha s :( 1 ) w ei m p l e m e n tt h es y s t e mr e l i a b i l i t yw i t hh e a r t b e a td e t e c t i o n ;( 2 ) w e a n a l y s et h ed i s a d v a n t a g eo fg e n e t i ct i m e rm a n a g e m e n t o nt h eb a s i so ft h i s ,t h i s t h e s i st a l ka b o u th o ww er e s o l v et h i sq u e s t i o n ;( 3 ) w ea n a l y s et w os c h e m e so ft h e i i m p l e m e n t a t i o no ft h em o d u l ei n t e r f a c ew h i c ha r ea d o p t e di nt h i st h e s i s ;( 4 ) w e a n a l y s et h ew a yh o w t om a t c ht h ef o r c e sm e s s a g e s ;( 5 ) w ea n a l y s et h ew a yh o wt o s e n da n dr e c e i v ef o r c e sm e s s a g e s i ns u c c e s s i o n , w ei n t r o d u c et h ea p lw ep r o v i d e a n de x p l a i nt h eu s eo ft h i sa p i t h e n , w ee x p l a i nt h ei m p l e m e n t a t i o no fm o d u l e so n p r o t o c o ll a y e ra n dt r a n s p o r tm a p p i n gl a y e ri nd e t a i l f i n a l l y , a c c o r d i n gt ot h em e s s a g e t y p ew h i c hi sd e f i n e db yf o r c e sp r o t o c o l ,w et e s tt h ei m p l e m e n t a t i o na n da n a l y s et h e t e s t i n gr e s u l t s t h et e s t i n gh a sp r o v i d e di m p o r t a n tp o s i t i v ea r g u m e n tf o rt h ef e a s i b i l i t y o ff o 疋e sp r o t o c o l ,a n dh a sc o n t r i b u t e dt ot h ei e t ff o r c e sw gf o rt h ef o 把e s p r o t o c o ls t a n d a r d i z a t i o np r o c e s s k e y w o r d s :f o r c e s ,m i d d l e w a r e ,o p e np r o g r a m m a b l e ,h e a r t b e a td e t e c t i o n , t i m e rm a n a g e m e n t 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 本人为获得浙江工商大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作 了明确的说明并表示谢意。 签名: 日期:o 净月姗 关于论文使用授权的说明 本学位论文作者完全了解浙江工商大学有关保留、使用学位论文 的规定:浙江工商大学有权保留并向国家有关部门或机构送交论文的 复印件和磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部 分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制 手段保存、汇编学位论文,并且本人电子文档的内容和纸质论文的内 容相一致。 保密的学位论文在解密后也遵守此规定。 签名:聿鳖蜂 导师签名:幽垒堕竺 日期:川年旧姗 第一章绪论 第一节课题背景 一、开放可编程网络的产生 到目前为止,几乎所有的网络设备( 如交换机、路由器等) 都是封闭系统, 它们的硬件和软件几乎是由同一个网络通信商独家研制开发的。除了可以修改某 些配置参数之外,用户、网络服务提供商以及网络运营商无法使用编程工具和环 境对网络设备进行编程来开发新的业务和增加新的功能。这种封闭开发方法还带 来不同厂商网络设备的互连、互通、互操作性的问题。 但是,未来的网络应该是宽带化、智能化、一体化的网络,它应该有很强的 灵活性、安全性和可靠性;未来的网络还应该是一种能提供多种服务的网络( 如 语音服务、视频点播服务、专线服务等) ,而且应该允许网络提供商以及网络运 营商快速开发和布置新的网络服务;未来的网络更应该在一定程度上允许用户按 照自己的意愿和要求控制网络所提供的服务,按照自己定义的协议传输信息,使 网络个性化。 开放可编程技术是实现上述网络设想的一个重要技术途径,从而引发了对开 放可编程网络技术的热门研究。目前,世界上已经有好几个国际性论坛或工作组 正在研究开放可编程网络的框架和体系结构。以下是几种主要的体系结构以及相 应的管理协议。 ( 一) i e e ep 1 5 2 0 参考模型与编程接口标准 i e e ep 1 5 2 0 t 1 1 提出了一个五层四类接口的层次化开放可编程参考模型,从上 到下为:网络用户层一v 接口一网络增值服务层一u 接口一网络基本服务层一l 接口一虚拟网络组件一连接控制管理c c m 接口一网络物理组件。i e e e p l 5 2 0 是 第一个从系统结构角度定义丌放可编程网络组件的模型,但其模型思想并未得到 充分认可,p 1 5 2 0 未通过任何具体的接口协议或标准。 ( - - ) 通用交换机管理协议g s m p 通用交换机管理协议g s m p ( g e n e r a ls w i t c hm a n a g e m e n tp r o t o c o l ,g s m p ) 已有三个版本,v e r s i o n i 1 【习是为面向连接的开放可编程a t m 交换机设计的管理 编程接口协议,g s m p v 2 0 【3 j i 曾j j n t x a t m 交换机q o s 的资源管理,g s m p v 3 o 【4 】 将应用对象扩展到所有面向连接的网络组件如f r 和m p l s 交换机。e g s m p 协 议【5 】是对g s m p 协议的一个扩展,它旨在将g s m p 扩展到开放可编程i p 路由器 上。 ( - - ) m s f 的体系结构和编程协议 m s f l 6 1 ( m u l t i s e r v i e es w i t c h i n gf o r u m ,m s f ) 试图通过使用开放可编程思想 实现多种不同网络问的可互操作性,并制定互操作协议。m s f 提出的体系结构 将开放可编程网络分成四个面,即应用面( a p p l i c a t i o np i a n o 、控制面( c o n t r o l p i a n o 、交换面( s w i t c h i n g p l a n e ) 和适配面( a d a p t a t i o n p l a n e ) ,m s f 本身不制 定任何具体协议标准。 ( 四) i e t f f o r c e s 协议 国际互联网工程任务组( i n t e r n e te n g i n e e r i n gt a s kf o r c e ,i e t f ) 路由领域 ( r o u t i n ga r e a ) f o r c e s m ( f o r w a r d i n ga n dc o n t r o le l e m e n ts e p e r a t i o n ,转发件 与控制件分离) 工作组是当今开放可编程网络最受关注的组织。f o r c e s 工作组 制定f o r c e s 协议使路由器转发件与控制件通信标准化。 二、f o r c e s 协议的产生 路由器是i p 网络的核心,在开放可编程网络中,作为网络核心的路由器理 所当然应该具有开放可编程的特性。回顾路由器的发展过程,从单处理器到多处 理器,从通用处理器到a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ) ,路由器在 路由查找和报文转发速度方面取得了很大进步,但在灵活性方面始终没有很大的 改进。于是人们研究出了一种既能满足性能要求又能满足灵活性的处理器,这就 是网络处理器。 2 由于网络处理器能同时满足开放可编程网络在性能和灵活性方面的需求,因 此,网络处理器在开放可编程网络中扮演着重要的角色。随着网络处理器在路由 器中的广泛应用以及路由、网络管理协议软件的成熟,迫切需要制定一种标准协 议使网络处理器技术和这些第三方的软件形成一个完整的功能实体。为此i e t f 成立了f o r c e s 工作组。f o r c e s 工作组的基本思想是把i p 路由器分成转发件 ( f o r w a r d i n ge l e m e n t s ,f e ) 和控制件( c o n t r o le l e m e n t s ,c e ) ,认为一个口路 由器是一个网络单元( n e t w o r ke l e m e n t ,n e ) ,n e 可由多个f e 、多个c e 和连 接它们的f o r c e s 协议标准构成。当前,f o r c e s 工作组己经完成了f o r c e s 需求 i s ( f o r c e sr e q u i r e m e n t s ,r f c 3 6 5 4 ) 、f o r c e s 框架i g ( f o r c e sf r a m e w o r k , r f c 3 7 4 6 ) 的制定,已经基本完成f o r c e s 协谢1 0 j 和f o r c e sf e 模型“) ( f o r c e sf e m o d e l ) 的制定。 我们课题组一直在参与f o r c e s 工作组的工作,是该工作组的主要成员。在 2 0 0 3 年9 月我们向f o r c e s 工作组提交了自主设计的通用路由器管理协议 ( g e n e r a lr o u t e rm a n a g e m e n tp r o t o c o l ,g r m p ) ,经f o r c e s 专家组验证,g r m p 完全符合f o r c e s 需求和f o r c e s 框架对标准协议提出的要求。最终f o r c e s 工 作组在g r m p 协议以及其他几家机构提出的f a c t 以及n e t l i n k 2 协议的基础上 制定了f o r c e s 协议草案。 三、中间件的产生 ( 一) 中间件的概念 随着计算机技术、网络技术及分布式计算技术的发展,使原来构建在两层客 户机服务器体系结构上的计算机应用系统的局限性越来越明显;硬件、网络协 议以及操作系统的异构性使得分布式运算系统过于复杂。如何屏蔽异构系统的差 异性,为用户和开发人员提供一种标准的、独立于计算机硬件和操作系统的开发 和运行环境成为业界面临的一大挑战,在这种背景下,中间件技术应运而生了。 中间件【l2 】( m i d d l e w a r e ) 是基础软件的一大类,属于可复用软件的范畴。顾 名思义,中间件处于操作系统、网络和数据库之上,应用软件的下层,总的作用 是为处于自己上层的应用软件提供运行与丌发的环境帮助用户灵活、高效地开发 和集成复杂的应用软件。 关于中间件的定义很多,普遍被接受的一种是:中间件是一种独立的系统软 件或服务程序,分布式应用软件借助它可在不同的技术之间共享资源。中间件处 于客户机服务器的操作系统之上,管理计算机资源和网络通讯。这个定义表明, 中间件是一类软件,而非一种软件:中间件不仅仅实现互连,还要实现应用之间 的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。 ( - - ) 中间件的分类 传统上认为中间件可以分为以下三类。 1 、事务处理中间件 事务是对共享的系统资源所完成的一件工作,它通常由一系列操作所组成。 事务必须具有a c i d ( a t o m i c i t y 、c o n s i s t e n c y 、i s o l a t i o n 、d u r a b i l i t y ) 属性。原 子性( a t o m i e i t y ) 指的是:一个事务要么完整地执行( 即做完上述系列操作中的 每一个) ,要么根本不执行,而绝对不会出现只执行一部分操作的情况。一致性 ( c o n s i s t e n c y ) 指的是:一个事务执行完成,必定进入某个稳定状态,若进入的 是另一个不一致的状态,则这一事件将被丢弃而不执行。隔离性( i s o l a t i o n ) 指 的是:一个事务与另一个事务并行作用于一个共享资源时,前一个事务的进行与 后一事务的进行是完全地隔离开的。耐久性( d u r a b i l i t y ) 指的是:当一个事务 完成时,即使系统或共享资源发生崩溃,该事务执行的结果也不会因此而丢失。 事务处理监视器则是为维护事务的a c i d 属性而设计的软件进程。根据x o p e i l d t p 模型,本地的事务管理可由数据库系统( 内含事务处理功能的) 来完成, 事务处理中间件则主要用于对分布式计算环境中产生的事务进行监控和管理。这 是因为数据库虽然对本地的事务管理己可应付,但通过一个广域网进行分布式事 务管理并不是数据库的强项,特别是一笔事务处理涉及异构数据库时更是如此。 事物处理中间件把自己的事务管理功能和数据库已有的事务管理能力有机地结 合在一起,实现对分布式事务处理的全局管理。 4 2 、消息中间件 消息中间件( m e s s a g e - o r i e n t e dm i d d l e w a r e ,m o m ) 指的是利用高效可靠的消 息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集 成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通 信,并支持多通信协议、语言、应用程序、硬件和软件平台。消息中间件适用于 任何需要进行网络通信的系统,负责建立网络通信的通道、进行数据或文件发送。 消息中间件的一个重要作用是可以实现跨平台操作,为不同操作系统上的应用软 件集成提供服务。 消息中间件提供了一个完整的处理环境,允许开发者及用户连接不同系统之 间的数据和代码,或采用一致的界面进行应用处理的互连。消息中间件提供了一 个高层应用接口,为不同系统提供操作核心。消息中间件产品的工作主要是通过 将信息以消息的方式在程序间传递来完成的。 消息中问件一般可以分为两种形式:消息传递( m e s s a g ep a s s i n g ) 和消息队 列( m e s s a g e q u e u i n g ) 。消息传递在建立大型的分布式应用中比较常见,其主要 的模式是广播订阅( p u b l i s h s u b s c r i b e ) 方式。采用该方式,应用程序既可以订阅, 也可以广播。该通信模型提供了位置透明性。程序只需要简单地将消息以主题方 式发送出去,由中间件来负责将消息传递给所有订阅该主题的程序。 消息队列方式允许程序无需直接建立起连接即可发送和接收消息。程序只需 简单地将消息发送给消息队列,由消息队列负责消息的传递,对应用程序完全透 明。消息队列采用异步方式,为信息提供了一个安全的存储方式。 3 、分布式中间件 分布式中间件实现了真正的通用软件总线,具有优良的互操作性和应用程序 集成能力。这些应用程序可以位于网络的任何地方,彼此实现透明协作,即使是 向不同供应商购买的产品也可以协同工作。 ( 三) 中间件的优点 世界著名的咨询机构s t a n d i s h g r o u p 在一份研究报告中归纳了中间件的十大 优越性: 缩短应用的开发周期 节约应用的开发成本 减少系统初期的建设成本 降低应用开发的失败率 保护已有的投资 简化应用集成 减少维护费用 提高应用的开发质量 保证技术进步的连续性 增强应用的生命力 具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个 简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上 不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负 担。 中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系 统的维护、运行和管理的工作量,还减少了计算机总体费用的投入。s t a n d i s h g r o u p 的调查报告显示,由于采用了中间件技术,应用系统的总建设费用可以减 少5 0 左右。 其次,中间件作为新层次的基础软件,其重要作用是将不同时期、在不同操 作系统上的开发应用软件集成起来,彼此像一个天衣无缝的整体协调工作,这是 操作系统、数据库管理系统本身做不了的。中间件的这一作用,使得在技术不断 发展之后,我们以往在应用软件上的劳动成果仍然物有所值,节约了大量的人力、 财力投入。 第二节国内外研究现状 一、f o 疋e s 协议 当前,f o r c e s 工作组己完成了f o r c e s 需求和f o r c e s 框架的制定,目前正 6 在制定f o r c e s 协议和f e 模型( f em o d e l ) 。f o r c e s 协议草案在2 0 0 4 年初由 g r m p l n 】、f a c t 、n e t l i n k 2 三个候选协议合并产生,f o r c e s 协议至今还没有生 成r f c 。所以现阶段的很多工作主要是研究实现f o r c e s 结构系统,还没有其他 组织在研究f o r c e s 协议的实现,本文的所有研究工作都具有一定的创新性。 下面介绍几个基于f o r c e s 体系结构的系统实现。 ( 一) i n t e lc p - p d k 网络处理技术论坛【1 4 1 ( n e t w o r kp r o c e s s i n gf o r u m ,n p f ) 是由7 0 多家网络 行业公司组成的一个组织,负责制定通用规范,旨在推动和加快基于网络处理技 术的网络和电信产品的开发i n t e l 公司基于n p f 标准开发出了一套控制平面软 件开发套件( c o n t r o lp l a n e - p l a t f o r md e v e l o p m e n tk i t ,c p p d k ) ,c p p d k 作为 i n t e li x a - s d k 4 1 【1 5 i ( i n t e m e te x c h a n g ea r c h i t e c t u r e s o f t w a r ed e v e l o p m e n tk i t ) ( a s d k 是i n t e l 为其网络处理器提供的一套集成开发环境) 的一个组件提供。 i n t e l 在其c p p d k 中说明使用f o r c e s 协议作为其控制平面和转发平面的通信标 准,但是并没有在其中实现f o r c e s 协议。而且,i n t e i 公司在其i n t e li x a s d k4 1 s o f t w a r ef r a m e w o r kp r o d u c tr e l e a s en o t e s 1 6 】中提到,c p p d k 在i x a s d k4 1 以 后版本中不再提供。 ( 二) 我们的工作 我们在通用处理器上开发c e ,以l i n u x 为软件平台;在i n t e li x a s d k 4 1 的基础上开发f e ,以网络处理器【1 7 1 1 8 ( n e t w o r kp r o c e s s o r , n p ) 硬件平台,以 v x w o r k s o g 为软件平台。我们依据最新的f o r c e s 协议草案( i n t e m e td r a f t ) ,对 f o r c e s 协议中间件进行研究与实现。我们的优势是在实现f o r c e s 体系结构的 同时,能较快地把f o r c e s 工作组的进展反映到我们的系统实现上来。本文实现 的f o r c e s 协议中间件提供了大量的a p l ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ,应 用编程接口) ,实现了异构环境的通信,屏蔽了异构系统中复杂的操作系统和网 络协议,可以提供给其它组织使用,缩短开发周期,降低开发成本。 ( 三) f i e x i n e t f l e x i n e t l 2 0 j 【2 1 j 也是基于f o r c e s 体系结构。和我们一样,该项目的转发件是 基于网络处理器。和我们课题组不同的是控制件全部采用j a v a 而不是像我们工 作组那样采用了c 、j a v a 两种编程语言。 ( 四) d i s t r i b u t e dc o n t r o lf o rd e c e n t r a l i z e dm o d u l a rr o u t e r s 瑞典的m h i d e u ,o h a g s a n d ,es j o d i n 实现的路由器【冽也是基于f o r c e s 结构的。其系统控制件基于u n i x 和z e b r a 路由软件,转发件采用通用l i n u x 。 二、中间件 最早具有中间件技术思想及功能的软件是i b m 的c i c s ,但由于c i c s 不是 分布式环境的产物,因此人们一般把t u x e d o 作为第一个严格意义上的中间件产 品。t u x e d o 是1 9 8 4 年在a t & t 的贝尔实验室开发完成的,但由于分布式处理当 时并没有在商业应用上获得像今天一样的成功,t u x e d o 在很长一段时期里只是 实验室产品,后来被n o v e l l 收购,在经过n o v e l l 并不成功的商业推广之后,1 9 9 5 年被现在的b e a 公司收购。 尽管中间件的概念很早就已经产生,但中间件技术的广泛应用却是在最近十 几年之中。b e a 公司1 9 9 5 年成立后收购t u x e d o 才成为一个真正的中间件厂商, m m 的中间件m q s e r i e s 也是9 0 年代的产品,其它许多中间件产品也都是最近 几年才成熟起来。 国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期。可以 说,在中间件领域,国内的起步时间并不比国外晚多少。近几年来,中间件软件 正在中国市场进入一个高速增长的发展时期,市场规模与日俱增,越来越多的国 内企业开始进入这一领域。 目前,在中间件领域,国外厂商仍处于领先地位,其中最著名的是全球最大 的独立中间件厂商b e a 公司,i b m 、o r a c l e 、m i c r o s o f t 、h p 、s u n 等国外大厂商 也早已涉足中间件领域。国内的软件开发商,主要包括:中创、东方通、东软、 中软、刨智、托普和清华北美、深圳金碟等。 第三节本文的研究内容 本文研究内容是国家8 6 3 计划项目“支持多服务交换的开放可编程路由器管 理协议g r m p ”的重要组成部分之一,主要研究f o 疋e s 协议中间件的实现。首 先,在分析了f o 吒e s 工作组提出的f o r c e s 需求、f o 疋e s 体系结构以及f o r c e s f e 模型的基础上,详细分析了协议层和传输匹配层。重点介绍了协议层,主要 包括:f o r c e s 协议的工作阶段、消息格式、语法规则和消息种类。在对f o r c e s 协议有了比较深入理解的基础上设计了f o r c e s 协议中间件在协议层和传输匹配 层【2 3 】l “】【2 5 1 的体系结构,分析了f o r c e s 协议中间件实现过程中的若干个关键技 术。最后,详细描述了系统中各个模块的实现和测试。 第四节本文的主要贡献和创新点 首先,国内外对f o r c e s 协议的研究大多数仅仅停留在理论上的研究,很少 有组织或团体参与具体的实现。因此,我们所做的工作为验证f o r c e s 协议的可 行性提供了重要的依据,也为其它组织或团体研究f 0 疋e s 协议提供了重要的参 考。 其次,本文以中间件的形式实现了f o r c e s 协议,提供了很多的a p i ,可以 直接提供给其它组织使用。这样,其它组织就不需要再花大量的时间、精力和财 力来理解f o r c e s 协议,可以把主要精力放在应用上,可以缩短开发周期,降低 开发成本。 最后,在实现过程中实现了一些关键技术,主要包括:( 1 ) 用心跳消息进行 故障检测,保证系统的可靠性;( 2 ) 采用差值定时器计数的定时器管理方案有效 解决了传统定时器管理存在的不足;( 3 ) 用两种方式实现了模块间的接口:函数 过程接口、消息事件接口;( 4 ) 用f o r c e s 消息头部中的c o r r e l a t o r 字段实现 了f o r c e s 消息的匹配;( 5 ) f o r c e s 消息发送与接收。 第五节本文结构 本文的正文部分共分为六章,现将其内容概述如下: 9 第一章绪论。主要介绍了本文的研究背景和国内外相关内容的研究现状, 并总结了研究内容、主要贡献和创新。 第二章f o r c e s 协议中间件的实现基础。首先介绍了f o r c e s 需求、f o r c e s 体系结构以及f o r c e sf e 模型。在此基础上,从协议层和传输匹配层详细介绍 了f o r c e s 协议,主要包括:f o r c e s 协议的工作阶段、f o r c e s 协议的消息格式、 f o r c e s 协议的语法规则和f o r c e s 协议的消息种类。 第三章f o r c e s 协议中问件的总体设计及关键技术。从f o r c e s 协议中间件 在协议层和传输匹配层的体系结构描述了f o r c e s 协议中间件的总体设计。另外, 详细讲述了实现中的几个关键技术,主要包括:( 1 ) 心跳检测技术;( 2 ) 定时器 管理技术:( 3 ) 模块接口方案:( 4 ) f o r c e s 消息匹配;( 5 ) f o r c e s 消息发送与 接收。 第四章f o r c e s 协议中白j 件的具体实现。首先,介绍了本文实现的中间件提 供的a p i 及其使用说明。其次,详细描述了f o r c e s 协议中白j 件在协议层的实现, 主要包括:初始化模块、封装模块、解封装模块、连接模块、配置模块、查询模 块、事件模块、重定向模块、心跳模块。最后,详细描述了f o r c e s 协议中问件 在传输匹配层的实现,主要包括:整体协调模块、连接管理组件模块、仲裁组件 模块。 第五章f o r c e s 协议中白j 件功能性测试与分析。首先描述了搭建的测试平 台,然后分别测试了f o r c e s 协议中规定的各种消息类型。 第六章总结和展望。对现有研究工作做了总结,并对进一步的研究工作提 出了自己的想法和见解。 o 第二章f o r c e s 协议中间件的实现基础 第一节f o r c e s 需求 f o r c e s 需求中对f o r c e s 架构路由器的体系结构、f e 模型、f o r c e s 协议和 传输匹配层提出了一系列的需求。这些需求中有些是必须要满足的,有些是可以 选择的。 一、体系结构的需求 c e 与f e 可以通过多种连接方式进行连接( 如以太网、总线、删) : f e 必须具备基本的功能才能加入n e ,在基本功能以外,f e 可以根据需 要添加其他功能: 支持f e 间的数据包转发; c e 与f e 共同组成一个路由器功能实体; 需要一个认证机制对请求加入n e 的c e 或f e 进行认证: f e 需提供状态监控和状态报告机制; 支持c e 冗余和c e 故障反应机制; 支持重定向功能; 支持r f c l 8 1 2 f u j 中定义的路由器功能; c e 中支持路由器拓扑结构查询; n e 支持上百个f e 和上万个端口; 支持c e 、f e 动态的加入或离开n e : 可以在结构中引入管理机制( 如:s n m p l 2 7 】【2 8 】) 。 二、f e 模型的需求 支持各种逻辑功能块的不同实现方式; 能够描述各个逻辑功能块在f e 中的顺序; 提供灵活的结构,支持属性的修改和新功能的加入。 三、协议层的需求 转发件( f e ) 及逻辑功能块( l f b ) 的可控制性; 通信的安全性; 系统可扩展性; 支持多跳控制; 支持消息的优先级; 通信的可靠性: c e 与f e 连接方式的多样性; 支持c e 的冗余和故障恢复; 支持对数据包重定向; 支持i n t e r - f e 、i n t r a - f e 拓扑结构的上报; 支持c e 、f e 动态加入和离开n e : 支持批消息; 支持异步事件的上报; 支持f e 统计信息的查询; 抵御d o s ( d e n y o f s e r v i c e ,d o s ) 攻击。 四、传输匹配层的需求 通信的可靠性; 通信的安全性; 拥塞控制; 支持p l 层组播、多播和单播; 不同的消息使用不同的封装; 支持消息的优先级; 抵御d o s ( d e n yo f s e r v i c e ,d o s ) 攻击。 第二节f o r c e s 体系结构 f o r c e s 框架中定义了f o r c e s 的体系结构,f o r c e s 的体系结构如图2 1 所 2 不 f p :c e - f e 接口 f i :f e o f e 接口 f r :c e c e 接i = l f c :c em a g e r - c e 接1 2 1 f f em a n a g e r - f e 接口f i :c em a n a g e r - f e m a n a g e r 接口 f i f f e ,j 部接口 图2 - 1f o r c e s 体系结构 在f o r c e s 框架定义中,把一个网络单元( n e t w o r ke l e m e n t ,n e ) 作为一 个独立的管理实体,从外部看,一个n e 就相当于网络中的一个路由或者交换设 备。由图2 1 中可以看出,一个n e 由一个或多个c e 和一个或多个f e 组成, c e 和f e 间的通信按照f o r c e s 协议的规定来完成,这个连接点称为f p 参考点, 注意f p 参考点可以经由一跳( s i n g l eh o p ) 也可以经由多跳( m u l t i h o p s ) 网络 实现。目前,f o r c e s 工作组重点制定c e 和f e 之间的通信标准,其它接口标准 的制定暂不考虑。同时,每个网络单元都有一个c e 管理者( c em a n a g e r ) 和一 个f e 管理者( f em a n a g e r ) 。在n e 初始化阶段,f em a n a g e r 通知它所控制的 f e 由哪个c e 控制,这个过程叫做c ed i s c o v e r y ;同样,c em a n a g e r 通知它所 控制的c e 可以控制哪些f e ,这个过程叫做f ed i s c o v e r y 。在n e 初始化完成后, c em a n a g e r 和f em a n a n g e r 不再对c e 和f e 进行控制。 c e 上主要运行如r i p 、o s p f 、b g p 等路由协议和一些信令协议( 如:r s v p ) , s n m p ( s 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 ) 网管服务器也运行在c e 端。 f e 上主要实现对数据包的分类、路由查找和转发等处理,如i p v 4 i p v 6 转 发模块( i p v 4f o r w a r d e r ) 、分类器( c 1 勰s i f i e r ) 、调度器( s c h e d u l e r ) 等。 第三节f o r c e sf e 模型 在f e 内部,根据对数据包进行的不同处理,可将其分成不同的逻辑功能块 ( l o g i cf u n c t i o nb l o c k ,l f b ) 。l f b 及其属性都是可以由c e 通过f o r c e s 协议 进行控制的,各个l f b 之间通过数据通道( d a t a p a t h ) 相互连接。这种连接关系 也是由c e 通过f o r c e s 协议进行定义,以形成不同的l f b 拓扑结构,进而实现 动态资源配置以完成各种

温馨提示

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

评论

0/150

提交评论