(信号与信息处理专业论文)转发与控制分离(forces)协议软件的研究与实现.pdf_第1页
(信号与信息处理专业论文)转发与控制分离(forces)协议软件的研究与实现.pdf_第2页
(信号与信息处理专业论文)转发与控制分离(forces)协议软件的研究与实现.pdf_第3页
(信号与信息处理专业论文)转发与控制分离(forces)协议软件的研究与实现.pdf_第4页
(信号与信息处理专业论文)转发与控制分离(forces)协议软件的研究与实现.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

浙旺工商大学硕士学位- 宅文 转发与控制分离( f 0 r c e s ) 协议软件的研究与实现 捕要 为了更好的满足下一代网络开放性和灵活件的要求,人们越来越关注开放可编程网 络的研究。国际强联网工程任务组( i n t e m e t e n g i n e e r i n g t a s k f o r c e ,i e t f ) 路出领域的 f o r c e s ( f o r w a r d i n g a n dc o n t r o le l e m e n ts e p a r a t i o n ) 工作组提出了转发什与控制什分离 的路由瓣体系结构,这静体系结构的路由器毙够满足下一代网络开放性和灵活性的要 求,是下一代路由器的个发展方向。f o r c e s 工作组目前致力于转发件( f o r w a r d i n g e l e m e n t ,f e ) 与控制 牛( c o n t r o le l e m e n t ,c e ) 之间标准通信协议f o r c e s 协议的制 定。本文作者所在的课题组是砸t ff o r c e s 协议的制定者之- 。 本文主要研究了f o r c e s 协议软件的实瑰。首先我们按照f o r c e s 框架和需求文件 设计了软件在f e 和c e 端的体系结构。其次,我们介绍了f o r c e s 协c 义软件的若干实 现技术,主要包括:( 1 ) 在f e 端利用v x w o r k s 中的消息队列机制从下层软件模块获得 路由重定向数据包,并使用路由器虚拟接口技术和l p 隧道技术解决路由协议软件与转 发件分离的翔题。( 2 ) 拳| 用v x w o r k s 中的纛f 1 狗机制实现定时器,以实现在f e 端向 c e 端发送心跳消息以及接收c e 的心跳消息。( 3 ) 利用软件模块之问的回调机制来实 现f e 端异步事锌向c e 端的上报。( 4 ) 在c e 端我们设计实现了基于逻辑功能块( l o g i c a l f u n c t i o nb l o c k ,l f b ) 接口信息盟示l f b 拓扑结构的算法。最后,基于上述研究,我 们对f o r c e s 协议软件送行了部分功能性测试,包括f o r c e s 配置消息测试、f o r c e s 查询消息测试、异步事件向c e 端上报测试和路由重定向消息的测试。测试结果初步验 证了f o r c e s 协议软f | ;孛宴现豹正确性,为f o r c e s 协议的可行性帮推动i e t ff o r c e s 标 准协议的制定提供了重要的实验依据。 关键词:开放可编程,f o r c e s ,协议软件,路由器,v x w o r k s 浙江工商大学硕+ 学位论文 r e s e a r c h0 nf o r c e sp r o t o c o ls o f r w a r ea n dt h e i m p l i ! m e n t a :n 0 n a b s t r a c t t om e e tt h eo p e na n df l e x i b i l i t yr e q u i r e m e n to ft h en e x tg e n e r a t i o nn e t w o r k s ,p e o p l e p a ym o r ea n dm o r ea t t e n t i o nt ot h er e s e a r c ho ft h eo p e np r o g r a m m a b l en e t w o r k s 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 g ( w o r k i n gg r o u p ) i ni e t f ( i n t e r n e t e n g i n e e r i n gt a s kf o r c e ) r o u t i n ga r e a f o r c e sp 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 e p h y s i c a ls 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 h a na r c h i t e c t u r ei so n et r e n do fn e x tg e n e r a t i o nr o u t e r s n o wf o r c e si sd e f i n i n gt h es t a n d a r d p r o t o c o l t h ef o r c e sp r o t o c o lf o rt h ec o m m u n i c a t i o n sb e t w e e nc ea n df e t h er e s e a r c h t e a mw en o ww o r ko ni so n eo ft h ea u t h o r so ft h i sp r o t o c 0 1 t h i st h e s i sp r i m a r i l yr e s e a r c ho 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 ls o f t w a r e f i r s t l y , w ed e s i g nt h es o f t w a r ea r c h i t e c t u r eb o t hi nf ea n dc eb a s e do nf o r c e sf r a m e w o r k a n df o r c e sr e q u i r e m e n t s s e c o n d l y , w ei n t r o d u c es o m ek e yi m p l e m e n t a t i o n t e c h n i q u e s , s u c ha s :( 1 ) u s et h ev x w o r k sm e s s a g eq u e u e sm e c h a n i s mt og e tr o u t i n gr e d i r e c tp a c k e t s f r o mt h el o w e rs o f t w a r em o d u l e ,a n du s et h er o u t e rv i r t u a li n t e r f a c ed e v i c ed r i v e rt e c h n i q u e a n di pt u n n e lt e c h n i q u et os o l v et h ep r o b l e mr e s u l tf r o mt h es e p a r a t i o no fr o u t i n gp r o t o c o l s f r o mf e ( 2 ) u s et h ev x w o r k sw a t c h i n gd o gm e c h a n i s mt or e a l i z et h et i m e rf o rf o r c e s h e a r t b e a tm e s s a g e 0 ) u s ec m l b a c km e c h a n i s mt or e p o r tf e a s y n c h r o n o u se v e n t st oc e ( 4 ) d e s i g na na l g o r i t h mt og r a p h i c a l l yd i s p l a yt h el f b ( l o g i c a lf u n c t i o nb l o c k ) t o p o l o g yb a s e d o ni n t e r - l f bi n t e r f a c e r e l a t i o n s f i n a l l y , w ed os o m ef u n c t i o n a l i t yt e s t i n go nf o r c e s p r o t o c o ls o f t w a r e ,i n c l u d i n gf o r c e sc o n f i gm e s s a g et e s t ,f o r c e sq u e r ym e s s a g et e s t , i i 塑翌三塑查兰堡兰垡笙奎 一 a s y n c h r o n o u se v e n t st e s t a n dr o u t i n gr e d i r e c tm e s s a g et e s t t h et e s t i n gr e s u l tp r i m a r i l y v a l i d a t e st h ec o r r e c t n e s so ft h ef o r c e sp r o t o c o ls o f t w a r ei m p l e m e n t a t i o n t h et e s t i n gh a s p 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 t f o rt h ef e a s i b i l i t yo ff o r c e sp r o t o c o l ,a n dh a s c 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 r c e sp 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 :o p e np r o g r a m m a b l e ,f o r c e s ,p r o t o c o ls o f t w a r e ,r o u t e r v x w o r k s i 浙江工商大学硕十学位论文 第一章绪论 第一节研究背景 一、开放可编程网络的产生 下一代网络的一个重要特点是开放性。开放性网络可以根据所处网络的不同,提供 功能的不同而划分为几个模块,每个模块能独立发展,互不干涉,又能有机地组合成一 个整体。同时这种开放性也表现在各运营商可根据自己的需求来选择市场上的优势产 品,而不必担心不同设备间的互连互通。另外,随着网络应用领域的迅速扩大,新特性、 新需求不断地出现和变化,要求下一代网络具有足够的灵活性,能快速地对新业务、新 需求做出响应。基于下一代网络开放性和灵活性的要求,提出了开放可编程网络的概念, 按照开放可编程基本思想,路由器、交换机这些网络通信节点的资源应是通过标准化接 口开放可编程控制的。 开放可编程网络有以下优点: ( 1 ) 允许网络功能的快速配置和重组,实现智能化的动态网络,可大大加快和方便 网络升级及服务层新业务的展开,并降低运营成本和风险。 但) 允许网络资源的综合、灵活利用,可为解决服务质量( q u a l i t yo fs e r v i c e ) 问 题提供灵活的资源管理环境。 ( 3 ) 可使网络组件的控制器和转发器产品分离,有利于使社会分工细化,排除垄断、 增强良性竞争,专一化也可使产品进步加快。 目前开放可编程网络的研究主要集中在体系结构和接口协议的制定上,到目前为 止,主要提出了以下几种系统结构以及相应的管理协议。 ( 一) i e e ep 1 5 2 0 参考模型与编程接口标准 i e e ep 1 5 2 0 1 】提出了一个五层四类接口的层次化开放可编程参考模型,从上到下 为:网络用户层一v 接口一网络增值服务层一u 接口一网络基本服务层一l 接口一虚 拟网络组件一连接控制管理c c m 接口一网络物理组件。i e e ep 1 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 l 1 2 1 是为面向连接的开放可编程a t m 交换机设计的管理编程接口协 议,g s m p v 2 0 【3 l 增加了对a t m 交换机q o s 的资源管理,g s m p v 3 0 1 4 】将应用对象 扩展到所有面向连接的网络组件如f r 和m p l s 交换机。e g s m p 协议1 5 j 是对g s m p 协 议的一个扩展,它旨在将g s m p 扩展到开放可编程l p 路由器上。 ( 三) m s f 的体系结构和编程协议 m s f l 6 】( m u l t i s e r v i c 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 l a n e ) 、控制面( c o n t r o lp ) 、交换面( s w i t c h i n g p ) 和适配面( a d a p t a t i o np ) ,m s f 本身不制定任何具体协议标准。 ( 四) i e t ff o r c e s 协议 国际互联网工程任务组( i n t e r n e t e n g i n e e r i n g t a s k f o r c e ,i e t f ) 路由领域( r o u t i n g a r e a ) 转发与控制分离( 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 ,f o r c e s ) 工作组是 当今开放可编程网络最受关注的组织。f o r c e s 工作组1 7 l 制定f o r c e s 协议使路由器转发 件与控制件的通信标准化。 二、f o r c e s 协议的产生 路由器是i p 网络的核心,在开放可编程网络中,作为网络核心的路由器理所当然 应该具有开放可编程的特性。回顾路由器的发展过程1 8 j ,从单处理器到多处理器,从通 用处理器到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 ) ,路由器在路由查找和报文转 发速度方面取得了很大进步,但在灵活性方面始终没有很大的改进。于是人们研究出了 一种既能满足性能要求又能满足灵活性的处理器,这就是网络处理器。 由于网络处理器能同时满足开放可编程网络在性能和灵活性方面的需求,因此,网 络处理器在开放可编程网络中扮演着重要的角色。随着网络处理器在路由器中的广泛应 用以及路由、管理方面协议软件的成熟,迫切需要制定一种标准协议使网络处理器技术 和这些第三方的软件形成一个完整的功能实体。为此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 ) ,认为一个m 路由器是一个网络单元( n e t w o r ke l e m e n t , 2 浙江工商大学硕士学位论文 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 ( f o r c e sr e q u i r e m e n t s ) 、f o r c e s 框架【1 0 i ( f o r c e s f r a m e w o r k ) 的制定,已经基本完成f o r c e s 协议【1 1 1 和f o r c e sf e 模型【1 2 i ( f o r c e sf e m o d e l ) 的$ i j 定。 我们课题组一直在参与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 r m 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 协议草案。 第二节研究现状 f o r c e s 协议草案在2 0 0 4 年初由g r m p 、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 3 】( 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 l p l a n e - h 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 4 l ( i n t e r n e t e 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 ) ( i x 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 l 公司在其i n t e li x a 。s d k4 1s 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 l l 5 】中提到, c p p d k 在i x a - s d k 4 1 以后版本中不再提供。 ( 二) 我们的工作 我们在通用处理器上开发c e ;以网络处理器为硬件平台,以v x w o r k s 为软件平台, 在i n t e li x a - s d k 4 1 的基础上开发f e 。我们依据最新的f o r c e s 协议草案( i n t e r n e t d r a f t ) ,对f o r c e s 协议软件进行研究与实现。我们的优势是在实现f o r c e s 结构系统 浙江t 商大学硕士学位论文 的同时,能较快地把f o r c e s 工作组的进展反映到我们的系统实现上来。 ( 三) n e 】【i n e t f l e x i n e t 1 6 1 【1 7 】也是基于f o r c e s 结构。和我们一样,该项目的转发件是基于网络处 理器。和我们课题组不同的是控制件采用j a v a 而不是c c + + 作为编程语言。 ( 四) 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 l l ,0 h a g s a n d ,p s j o d i n 实现的路由器【1 8 1 也是基于f o r c e s 结构的。 其系统控制件基于u n i x 和z e b r a 路由软件,转发件采用通用l i n u x 。 第三节本文的研究内容和主要贡献 一、研究内容 本文在对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 协议进行了详细分析。首先分析了f o r c e s 协议的分层结构, 解释了协议层( p r o t o c o l l a y e r ,p l ) 和传输映射层【1 9 【加i ( t r a n s p o r t m a p p i n g l a y e r ,t m l ) 的概念和t m l 服务原语,然后对f o r c e s 协议的工作阶段、消息格式、语法规则和消 息种类进行了分析。在对f o r c e s 有了比较深入理解的基础上设计了f o r c e s 协议软件 在f e 和c e 端的体系结构,介绍了f o r c e s 协议软件的若干实现技术。本论文所依托 的课题为“支持多服务交换的开放可编程路由器管理协议g r m p ”国家8 6 3 计划项目。 二、主要贡献 首先对路由器中的f o r c e s 协议软件的体系结构进行了设计,其次对f o r c e s 协议 软件开发中几个关键技术进行了研究与实现。 ( 1 1 路由重定向消息处理 利用v x w o r k s 中的消息队列机制从下层软件模块获得路由重定向数据包;使 用路由器虚拟接口技术和口隧道技术解决路由协议软件与转发器分离的问题。 ( 2 ) f e 端异步事件的上报 实现c e 对f e 端异步事件的订阅、取消订阅;利用回调机制实现f e 端异步 事件向c e 的上报。 ( 3 1f e 端心跳消息的实现 浙江t 商大学硕士学位论文 利用v x w o r k s 中的看门狗机制实现定时器,以实现在f e 端向c e 端发送心跳 消息以及接收c e 端的心跳消息。 ( 4 ) c e 端l f b 拓扑结构图的图形化显示 在c e 端设计基于l f b 接口信息显示l f b 拓扑结构的算法。 最后对所做的实现进行了功能性测试,初步验证了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 协议的继续研究提供参考。 第四节本文的篇章结构 第一章,首先介绍了本课题的研究背景,从开放可编程网络的产生引出了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 sf e 模 型的需求和f o r c e s 协议的需求。第二节从宏观上给出了f o r c e s 的体系结构,并对结 构作了简要的分析。第三节介绍了f o r c e s 工作组提出的i p 路由器转发件的模型,对 几个关键的概念进行了解释。第四节中重点介绍了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 si p 路由器实现的模型,包 括物理模型和逻辑模型。然后对所设计的f o r c e s 协议软件的体系结构进行了介绍,包 括f e 端的架构和c e 端的架构。最后讲述了f o r c e s 协议实现的几个关键技术,包括 如何实现f o r c e s 消息的接收与发送、f e 端异步事件的上报、路由重定向消息的处理、 f e 端心跳消息的实现和c e 端l f b 拓扑结构图形化显示。 第四章讲述了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 第一节f o r c e s 需求 f o r c e s 需求中对f o r c e si p 路由器的框架( 体系结构) 、f e 模型和f o r c e s 协议 提出了一系列的需求。这些需求中有些是必须要满足的,有些是可以选择实现的。 一、体系结构的需求 ( 1 ) c e 与f e 可以通过多种连接方式进行连接( 如以太网、总线) ( 2 ) f e 必须具备基本的功能才能加入n e ,在最基本功能以外,f e 可以根据需要添 加其他功能 f 3 ) 支持f e 间的数据包转发 ( 4 ) c e 与f e 共同组成一个路由器功能实体 ( 5 ) 需要一个认证机制对请求加入n e 的c e 或f e 进行认证 ( 6 ) f e 需提供状态监控和状态报告机制 ( 7 ) 支持c e 冗余和c e 故障反应机制 f 8 1 支持重定向功能 ( 9 ) 支持r f c l 8 1 2 1 2 l j 中定义的路由器功能 ( 1 0 ) c e 中支持路由器拓扑结构查询 ( 1 1 ) n e 支持上百个f e 和上万个端口 ( 1 2 ) 支持c e 、f e 动态的加入或离开n e ( 1 3 ) 可以在结构中引入管理机制( 如:s n m p ) 二、f e 模型的需求 ( 1 ) 支持各种逻辑功能块的不同实现方式 ( 2 ) 能够描述各个逻辑功能块在f e 中的顺序 ( 3 ) 提供灵活的结构,支持属性的修改和新功能的加入 浙江工商大学硕士学位论文 三、f o r c e s 协议的需求 ( 1 ) 转发件( f e ) 及逻辑功能块( l f b ) 的可控制性 ( 2 ) 通信的安全性 ( 3 ) 系统可扩展性 ( 4 ) 支持( 多跳) 控制 ( 5 ) 支持消息的优先级 ( 6 ) 通信的可靠性 ( 7 ) c e 与f e 连接方式的多样性 f 8 1 支持c e 的冗余和故障恢复 ( 9 ) 支持对数据包重定向 ( i 0 1 支持i n t e r - f e 、i n t r a f e 拓扑结构的上报 ( 1 1 ) 支持c e 、f e 动态加入和离丌n e ( 1 2 1 支持批消息 ( 1 3 1 支持异步事件的上报 ( 1 4 ) 支持f e 统计信息的查询 ( 1 5 ) 抵御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 所示。 浙江工商大学硕士学位论文 刚ff i ff i f 图2 1f o r c e s 结构模型 f p :c e f e 接口 f i :f e f e 接口 f r :c e c e 接口 f c :c e m a n a g e r 和c e 之问的接口 f f f e m a n a g c r 和f e 之间的接口 f i :c em a n a g e r 和f em a n a g e r 之间的接口 f i f :f e 外部接口 f 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 e m a n a g e r 通知它所控制的f e 由哪个c e 控制,这个过程叫做c e d i s c o v e r y ; 8 浙江工商大学顶士学位论文 同样,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 e m a n a g e r 和f e m 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 转发模块( 1 p v 4 f o r w a r d e r ) 、分类器( c l a s s i f i e r ) 、调度器( s c h e d u l e r ) 、米表( m e t e r ) 、网络地址转换 ( n e t w o r k a d d r e s st r a n s l a t i o n ,n a t ) 等。 第三节f o r c e s f e 模型 f o r c e sf e 模型主要定义了两个部分,一个是f e 粗层,另一个是f e 细层。f e 粗 层包括f e 的属性、能力和f e 内各逻辑功能块( l o g i c a lf u n c t i o nb l o c k ,l f b ) 之间 的拓扑结构。f e 细层包括f e 内各个l f b 的种类、数据结构和数据通道( d a t a p a t h ) 。 按照f o r c e sf e 模型,f e 的基本结构如图2 2 所示。 到c e 上 f o r c e s 协议终端点 i i 通道f 图2 - 2 f o r c e s f e 模型里f e 的内部结构 按照f 0 r c e s f e 模型,f e 内的资源被表示成各种不同功能的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 消息来控制。c e 可以根 据需求构造出不同的l f b 拓扑结构、进而实现动态资源配置以完成各种不同的口类型 服务。这是f 0 r c e s 体系结构口路由器最大的不同和优势。 典型的l f b 如分类器( c l a s s i f i e r ) 、调度器( s c h e d u l e r ) 、i p v 4 或1 p v 6 转发器 9 浙江工商大学烦士学位论文 ( f o r w a r d e r ) 、米表( m e t e r ) 等。 第四节f o r c e s 协议 一、f o r c e s 协议的分层结构 第二章第二节中讲过,f o r c e s 协议作用在c e 与f e 之间的f p 参考点,我们称作 f o r c e si n t e r f a c e 。f o r c e si n t e r f a c e 可以再进行细化,如图2 3 所示。 c ep l l a y e r c e t m l l a y e r 、 , r c e sp l :s s a g e o v e f e c i f i c e n c a p s dt r a n s p o r t , f e t m l l a y e r f ep l l a v e r 图2 - 3f o r c e s 接口 从图2 3 可以看出,f o r c e s 接口可以分为两层,协议层( p r o t o c o ll a y e r ,p l ) 和 传输映射层( t r a n s p o r tm a p p i n gl a y e r ,t m l ) 。 ( 一) p l 层 p l 层是真正意义上的f o r c e s 协议层,f o r c e s 协议的消息格式和语法都定义在这 一层,这将会在下面几节中详细讲述。 ( 二) t m l 层 t m l 连接着c e 端和f e 端的p l 层,它为p l 层提供服务,负责p l 层f o r c e s 消 息的传输。在c e 和f e 传递消息的时候,p l 层把消息传到t m l 层,t m l 层再把消息 传给目的t m l 层,目的t m l 层收到消息后,依据消息的种类传递给对应的p l 层。 t m l 层的职责是如何传递p l 层的消息,既然是传递消息,就要涉及到传输层的 1 0 浙江= i := 商大学硕士学位论文 可靠性、多播、拥塞控制、消息次序等问题,这些闯题就是t m l 层需要解决的主要问 题。t m l 层可能有多种标准( 不同的标准基于下层所用的传输方式的不同而提供不同 的功能) ,只要c e 端与f e 端都采用相同的t m l 标准,就能保证互操作性。 ( 三) t m l 原语 由于t m l 层可能存在多种标准,t m l 标准的制定者要使用p l 层时,必须对p l 层提供t m l 服务原语。我们根据所采用的t m l 层的实际情况在p l 层和t m l 层之间 定义了一套服务原语。 ( 1 ) t m l o p e n 语法规则: f dt m l o p e n ( ) 参数: 无 返回值: f d :调用t m l o p e n ( ) 原语返回的文件描述符。 f d = 0 :t m l o p e n ( ) 原语调用成功并返回了大于等于零的文件描述符。 f d ack i n d i c a t o r ( 2b i t ) :是否要求确认消息 n o a c k 佃0 1 :无论在什么情况下都不需要进行确认 s u c c e s s a c k ( 叭) :此条消息成功则进行确认 u n s u c c e s s a c k ( 1 0 ) :此条消息失败则进行确认 a c k a i i ( 1 1 ) :所有情况均须进行确认 p r i o r i t yf 3b i t s ) :消息优先级 目前f o r c e s 工作组对这3 个b i t 位如何分配尚未确定 t h r o t t l ef l a g 目前尚未确定 b a t c hf 2b i t s ) :是否属于批消息 目前支持三个层次的批消息,一个t m l 层消息包含多个p l 层消息; 一个p l 层消息包含多个f e 属性或l f b 属性的操作:对一个f e 或l f b 有多个操作。 o 1 o 1 1 1 1 1 s m m m m m m t o o 0 o 0 o o o 浙江工商大学硕士学位论文 a t o m i c i t yf 1o rm o t eb i t s ) :是否属于原子操作 ( - - ) f o r c e s 消息体( f o r c e sb o d y ) f o r c e s 消息体格式如图2 - 6 所示。 t l v t y p ev a r i a b l e 删l e n g t h v a l u e a t ao fs i z e 删l e n g t h ) 图2 - 6 t 1 结构图( 3 2b i t sa l i g n e d ) t l vt y p e 1 r i 中数据的类型。无论此t l v 在哪个层次,这个类型是 个全局的类型,这样设计的目的是为了协议的调试方便。 v a r i a b l e t l ,v l e n g t h 一t l v 的长度。 v a l u e 一t l v 中的d a t a 部分,考虑到扩展性,v a l u e 可以是一个t i , 另外,这种t l 、,嵌套的形式( n e s t e dt l v ) 可以和x m l 格式很好的映射,即 可以根据x m l 文件生成对应的t l v 嵌套格式。 四、f o r c e s 协议的语法 f o r c e s 协议的b n f 表达【1 7 1 ( b n f 的语法请参考r f c 2 2 3 4 ) 如下。 p l l e v e lp d u ( p r o t o c o ld a t au n i t ) := c o m m o n h e a d e r1 + i j b s e l e c t t 【 l 邱s e l e c t t l := l f b c l a s s i dl f b i n s t a n c e l d1 o p e r - t l v o p e r t i := 1 + p 御d 气t a - v p a t h d a t a - t l v := p a t h 【d a t a l 】 p a t h := f l a g s1 d c o u n ti d s 【s e l e c t o r 】 s e l e c i d r := k e y f 0 - 1 i d a m := d a l l a r a w - t u v r e s u l r - t 【1 * b 气t h d a i a t i k e y i n f o 一1 1 ,v := k e y i dk e y _ d a t a d 出ra w t i := e n c o d e dd a t aw h i c hm a yn e s tda 工ara 1 1 旺s 从f o r c e s 协议的b n f 表达式可以看出,一条f o r c e s 消息由c o m m o nh e a d e r 加 一个或多个l f b s e l e c t t l v 组成;一个l f b s e l e c t - t l v 由l f b c l a s s i d 加l f b l n s t a n c e 1 6 浙江丁商大学硕士学位论文 再加上一个或多个o p e r t i v 组成;一个o p e r 一1 1 由一个或多个p a t h d a t a t l v 组成;一个p a t h d a t a t l v 由p a t h 或p a t h 加d a t a 组成,其中p a t h 由f l a g s 、 i d c o u n t 、i d s 和可选的s e l e c i o r 组成,s e l e c t o r 由k e y i d 加k e yd a t a 组成; d a t a 可能是d 加r a ra w 一1 r i 、r e s u l t - t l v 、p a t h d a t a - t l v 三种t l 、,中的一种。 在l f b s e l e c t - t l v 中,l f b c l a s s l d 用来区分l f b 的种类( 在此,f e 也视为一种 l f b 叫做f eo b j e c tl f b ) ,l f b i n s t a n c e l d 用来区分同种类型的l f b 的不同实例。 f o r c e s 协议语法最关键的部分是p a t h - d a t a t l v ,p a t h d a t a t l 、,中的p a t h 是定位f e 或者是l f b 属性的路径,d a t a 是此属性的值,f l a g s 字段代表此 p

温馨提示

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

评论

0/150

提交评论