(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf_第1页
(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf_第2页
(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf_第3页
(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf_第4页
(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(计算机软件与理论专业论文)面向通信设备的构件化网络协议栈体系.pdf.pdf 免费下载

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

文档简介

摘要 软件构件化是2 l 世纪软件工业发展的大势趋,构件化思想在软件领域被广泛地应用。 把网络协议结和构件思想结合在一起实现是目前网络协议体系结构发展的方向,特别是在基 于通信设备的软件开发方面。本文针对传统网络协议栈的缺点,结合嵌入式通信应用的些 特殊需求,融合协议构件化的设计方法,提出了网络子协议构件框架n s p c f 用于实现构 件化的网络协议栈。 n s p c f 系统建立在基于构件的通信系统模型上,内容涵盖构件拆分、组装,构件的管 理和使用,构件的开发,构件的标准接口等多个方面。本文重点论述了网络协议构件化和协 议构件的操作系统支持等两个主要内容。 网络协议构件化主要是协议的拆分与组装。不同的协议应用需要特定的拆分、组装方式 与之适应。本文讨论了几种不同粒度、策略的拆分方法,并在构件化通信系统模型的基础上 进行推广。同时根据协议构件组装模型,提出了量化特制的组装方法。以几个典型的网络协 议为例,讨论了协议构件化的过程。 为了支持网络协议,操作系统和构件开发还要遵循一定的构件接口标准规范。通过这个 接口规范,协议构件可以跨系统、跨平台、跨网络传输地在操作系统上运行,被开发平台和 构件库所开发和管理,在整个体系结构中起到了中间层的作用。 操作系统需要增加对协议构件的支持,根据构件标准接口完成对接口的实现。同时还包 括对协议构件的本地管理与维护。针对通信设备的特点,本文使用软件模拟,硬件开发板测 试等方法,研究了l i n u x 操作系统对构件支持的性能,并对l i n u x 做了一定的改进。 构件库与构件开发平台也是n s p c f 框架的重要组成部分,本文只作简单介绍。 关键词:网络协议构件化,r q s p c f c b c s 模型。构件标准接口。量化组装。构件库, 构件开发平台 面向通讯设备的构件化网络协议栈体系 a b s t r a c t c o m p o n e n tt e c h n i q u ei s o n et r e n do fs o f b , v a r ed e v e l o p m e n ti nt h e2 1c e n t u r y t h i n k i n gi n c o m p o n e n ti sa p p l i e dt os o f t w a r ef i e l d sw i d e l y o n eo ft h er e s e a r c hd i r e c t i o n si s t oc o m b i n e c o m p o n e n tt e c h n i q u e w i t hn e t w o r kp r o t o c o l se s p e c i a l l yp r o t o c o l so nc o m m u n i c a t i o nd e v i c e t h i s p a p e ra n a l y s c s d e f e c to ft r a d i t i o n a ln e t w o r kp r o t o c o l s t a c k ,a c c o r d i n g t oc h a r a c t e r i s t i co f c o m m u n i c a t i o n a p p l i c a t i o n so ne m b e d d e ds y s t e m ,c o n s t r u c t sn e t w o r k ss u b - p r o t o c o lc o m p o n e n t f r a m e s p c f ) t h r o u g hn s p c f , t h i sp a p e rd e m o n s t r a t e si m p l e m e n t a t i o no fc o m p o n e n t - b a s e d n o w o r k p r o t o c o ls t a c k n s p c f s y s t e mi sb u i l to nc o m p o n e n t b a s e dc o m m u n i c a t i o ns y s t e mm o d e l n s p c fc o n s i s t s o fp r o t o c o ld i s a s s e m b l i n g ,a s s e m b l i n g , p r o t o c o lc o m p o n e n td e v e l o p m e n t ,c o m p o n e n ts t a n d a r d i n t e r f a c ea n ds oo n t h i s p a p e rp u t se m p h a s i s o nc o m p o n e n t - b a s e dn e t w o r kp r o t o c o la n d o p e r a t i n gs y s t e ms u p p o r t i n gf o rp r o t o c o lc o m p o n e n t r e s e a r c ho nc o m p o n e n t - b a s e dn e t w o r k p r o t o c o l i n c l u d e s p r o t o c o ld i s a s s e m b l i n g a n d a s s e m b l i n g ,d i f f e r e n tp r o t o c o l sn e e dd i f f e r e n td i s a s s e m b l i n ga n da s s e m b l i n gm e t h o d s t h i sp a p e r d i s c u s s e ss e v e r a lk i n d so f s t r a t e g i e sa n dg e n e r a l i z e so nc o m p o n e n t - b a s e dc o m m u n i c a t i o ns y s t e m m o d e l a b o u tp r o t o c o la s s e m b l i n g , t h i sp a p e rc o n s t r u c t saq u a o t i z a t i o n - o r i e n t e da s s e m b l i n gm o d e l o fc o m m u n i c a t i o ns e r v i c e a n dt a k i n gs e v e r a lt y p i c a lp r o t o c o l sf o re x a m p l e ,t h i sp a p e rd e s c r i b e s p r o c e s so f d i v i d i n gp r o t o c o l si n t oc o m p o n e n t s o p e r a t i n gs y s t e m a n d c o m p o n e n td e v e l o p m e n ta l s oc o n f o r m t od e f i n i t ec o m p o n e mi n t e r f a c e s t a n d a r d b yc o m p o n e n ti n t e r f a c es t a n d a r d ,p r o t o c o lc o m p o n e n t sc a nr l l t l c r o s sp l a t f o r m b e m a n a g e db yc o m p o n e n tl i b r a r ya n dd e v e l o p m e n tp l a t f o r m i ta c t sa sam i d d l el a y e ri nt h ew h o l e a r c h i t e e t u r e i no r d e rt o s u p p o r tp r o t o c o lc o m p o n e n t , o p e r a t i n gs y s t e ms h o u l di m p l e m e n tp a r t s o f c o m p o n e n ti n t e r f a c eb yi n t e r f a c es t a n d a r d a n di t a l s om a n a g e sl o c a lp r o t o c o lc o m p o n e n to n c o m m u n i c a t i o nd e v i c e t h i sp a p e rr i s e ss e v e r a lp l a t f o r m si n c l u d es o f t w a r ee m u l a t o r , d e v e l o p m e n t b o a r dt ot e s tt h ep e r f o r m a n c eo fs y s t e m i ta l s od o e ss o m em o d i f i c a t i o nt o i m p r o v es y s t e m p e r f o r m a n c e c o m p o n e n tl i b r a r ya n dd e v e l o p m e n tp l a t f o r ma r ea l s oi m p o r t a n tp a r t so fn s p c f b u tt h i s p a p e ro n l yd e s c r i b e st h e mi nb r i c k k e y w o r d s :c o m p o n e n t - b a s e d n e t w o r k p r o t o c o l s t a c k , n s p c f , c b c s ,p r o t o c o l c o m p o n e n ti n t e r f a c e , q u a n t i z a t i o n - o r i e n t e d a s s e m b l i n gm o d e l ,c o m p o n e n tl | b r a t ,, d e v e l o p m e n tp l a t f o r mo f p r o t o c o lc o m p o n e n t 面向通讯设备的构件化网络协议栈体系 第l 章面向通讯设备的嵌入式网络应用与构件技术 1 1 嵌入式网络应用 目前,以计算机和软件为核心的数字化技术取得了迅猛发展,通信技术与互联网应用 迅速普及,消费电子、计算机、通信( 3 c ) 一体化趋势日趋明显,数字化时代已经来临。 嵌入武通信设备是数字化时代的一大主流产品,与之相关的嵌入式软件和嵌入式操作系统在 产业发展中扮演着极其重要的角色。这些嵌入式产品,不仅为嵌入式市场展现了美好前景, 注入了新的生命;同时也对嵌入式系统技术, 支持日趋增长的功能密度、灵活的网络联接、 特别是软件技术提出新的挑战。这主要包括 轻便的移动应用和多媒体的信息处理,此外 当然还需对付更加激烈的市场竞争。因此嵌入式技术成为了当前研究的热点,在路由器、手 机、信息家电等产品上有着广泛的应用。 从2 0 世纪8 0 年代起,嵌入式操作系统开始得到蓬勃发展。如今已有几十种商业操作 系统可供选择,出现了许多相互竞争的产品,如v x w o r k s ,p s o s ,p a l mo s ,n e c u l e u s , w i n d o w sc e ,h o p e n 和嵌入式l i n u x 等。嵌入式系统是以应用为中心、以计算机技术为基 础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计 算机系统。智能化、小型化、专用性、移动性成为嵌入式系统的重要特征。同桌面系统不同, 嵌入式系统使用专用的硬件环境。运行其上的嵌入式软件必须紧紧依附于硬件,通常都是为 特定的硬件体系结构量身定做,紧密依赖于特定的硬件抽象层h a l 与板级支持包b s p 。因 此,软硬件具有相同的生命周期。同时,为了提高运行速度和可靠性,嵌入式软件常常被固 化在硬件中。 基于嵌入式系统的产品可以说是五花a f - i ,而i n t e r a c t 技术与嵌入式系统的紧密结合, 已经使得网络化成为嵌入式产品的一大功能。例如高速路由器、个人数字助理、无线移动手 机、机顶盒、家庭网关、智能家用电器等,正在通信领域担当着重要的角色。为适应嵌入式 分布处理结构和应用需求。面向通信设备的嵌入式系统要求配备标准的一种或多种网络通信 接口。针对外部联网要求或者设备相互关联( 如防盗报警,灯光能源控制。影视设备和信息 终端交换信息) ,嵌入设备必需配有硬件通信接口,同时也需要提供相应的通信组网协议软 件和物理层驱动软件。嵌入式系统与i n t e m e t 的真正结合、嵌入式操作系统与应用设备的无 缝结合代表着嵌入式网络应用发展的真正未来。 1 1 1 现代高速路由器发展 路由器技术是融合现代通信技术、计算机技术、网络技术、微电子技术、大规模集成 电路技术,光电子技术及光通信技术的核心技术。路由器的最基本功能是进行数据包的转发, 并因此连接不同的子网。 传统上路由器工作于o s i 模型的网络层( 第3 层) ,其主要任务是进行数据包的转发工 s 面向通讯设备的构件化网络坍议栈体系 作,同时为了维护和使用路由器,带有配置和管理路由器的功能。随着人们对网络带宽的需 求的增加,上层应用的逐步丰富,特别是多媒体数据传输的需要,要求原有的网络提供各种 不同的服务和网络质量。新一代的通讯和网络设备需要更强的处理性能,更短的开发周期和 更低的运行成本。这些要求都使得处于网络互联核心地位的路由器的设计研究显得更加重 要。高速路由器,主要指主干网上的路由器,更是起到关键性的作用。也常常在技术上成为 瓶颈。 路由器体系结构的发展经历了好几代的变化。从最早期的单总线、单c p u 结构发展到 单总线、多c p u 再到多总线多c p u 。到现在,高速i p 路由器中多借鉴a t m 的方法,采用 交叉开关方式实现各端口之间的线速无阻塞互连。a s i c 技术的发展到网络处理器的出现, 对于提高路由器速度有着重要意义,在路由器硬件设计中大量使用。目前,业界科研人员正 致力于开发高速、高性能、高吞吐量、低成本的新一代路由器,其内部结构所展现出的主要 发展趋势为: 第一,越来越多地使用网络处理器,c m o s 集成技术的提高使很多功能可以在专用的 通用处理器上实现。形成构件化的开发前景。原来由软件实现的功能、也可以由硬件完成的, 现在通过软硬件的适当搭配来完成; 第二,向并行处理的方向发展,全面采用交换背板结构,开发更加全面的并行处理: 第三,进一步发展在光纤连接上进行的线速选路技术,实现吉、太比特速率,为i n t e m e t 过渡到全光基础设施奠定基础。 通信技术的发展使得路由器提供的服务质量步步提高。首先体现在速度的不断提高: 从几十兆的比特率,到采用光接口的高速路由器。光接口的单端口速度也很快从o c 1 2 ( 6 2 2 m b p s ) 跳到o c - 4 8 ( 2 5 g b p s ) 再到o c - 1 9 2 ( 1 0 g b p s ) ,还有最新的o c 一7 6 8 ( 4 0 g b p s ) 。 另一方面,m 网络带宽的增加,以为基础的包交换数据开始逐步取代已发展了近百年的 电路交换通信方式,甚至有希望取代广播和电视的功能。因此,区分语音电话数据、实时视 频数据、因特网浏览数据等各种业务类型,提高服务质量( q o s ) 成为路由器发展的趋势, 同时也是以路由器为核心的蹙个i p 网络的发展方向。 对q o s 的支持来自软件和硬件两个方面。从硬件方面说,更快的转发速度和更宽的带 宽是基本前提。而软件上,则表示为新的网络协议体系结构。基于分散控制的q o s 策略 d i f f s e r v ( d i f f e r e n t i a t e ds e r v i c e ) ,多协议标记交换( m p l s ) ,以伊为核心的i po v e rs d h 、i p o v e rd w d m ,网络设备与网络管理者之间信息交互的智能化,这些都是高速路由器发展的 技术方向。 1 1 2 无线通信平台 手机是目前世界上发展最为快速的通讯类产品之一,它的发展集中体现了嵌入式技术 在通讯行业的应用状况。手机融合了嵌入式通讯技术、嵌入式操作系统技术、嵌入式数据管 理系统技术、无线网络技术,成为信息技术时代的典型产品。未来几年。移动通信业将进入 一个快速增长的时期。从国际大环境来看,无线语音市场的竞争基本上已趋于结束。c d m a 6 面向通讯设备的构件化网络协议栈体系 的商用和g p r s 网络的建设使人们赋予移动电话全新的概念。新的增长点必将来自无线数据 业务,亦即无线互联网的使用。 未来的手机将不仅仅是一个通话工具,而是将变成一个移动的娱乐和事务处理的个人 信息终端,电话、p d a 、数码相机和m p 3 播放器功能将逐渐融合,话音业务的重要性将让 位给新兴数据业务,这些数据业务包括高速上网、实时信息服务、新闻娱乐、下载游戏、无 线购物、交通信息、个人信息管理软件及效率提升工具等。移动终端的两大分支移动计 算终端( p d a 、h p c 等) 和移动通讯终端( 手机) 也将日趋融合,并将逐渐演化成基于高 性能芯片和高带宽无线协议的移动计算与通讯终端。 在这方面,智能手机就是一个典型代表。智能手机的操作系统基本以p a l m 、w i n c e 、 e p o c 三种操作系统为主,可作为高端2 5 g 智能手机,可进行多方通话;可与桌上电脑进行 资料更新、交换;结合无线连接互联网,高速浏览图文网站,收发电子邮件,是兼具手机和 掌上电脑两种功能于一身的信息终端。 移动嵌入式软件是智能手机的核心,而移动嵌入式操作系统又是手机软件的基础和龙 头。作为智能手机体系中的指挥中心和联系枢纽,移动嵌入式操作系统负责管理系统的所有 硬件资源,并支持无线互联,同时为嵌入式应用软件提供软接口( 体现为一系列的a p i ) 。 移动嵌入式系统在体系结构上会出现主流的产品,采用的核心处理芯片越来越趋向于同构 化但不可能由国外公司、国外产品垄断全部市场。在技术发展的带动下,在政府的大力支 持下,我国自主研制的移动嵌入式软件正在迅速成长。 另外,无线通讯平台的研究还将大力推动智能交通行业的发展。汽车电子化是现代汽 车发展的重要标志之一。汽车电子系统包括车载系统与地面系统两大范畴。车载系统主要包 括发动机与传动系统、通讯系统、舒适娱乐系统、安全系统四大类。其中核心的通讯技术都 依托于移动嵌入式系统。 移动设备的设计正逐步向基于模块化平台设计方法发展。目前主要的半导体厂商都推 出了面向移动智能终端设备市场的模块化的平台解决方案,如n 的o m a p 通用开发平台、 摩托罗拉的i 2 5 0 i 3 0 0 蜂窝电话开发平台和i n n o v a t i v eb l u e t o o t h 平台,以及i n t e l 基于x s c a l e 的架构等。移动嵌入式系统需要能够在多个平台上进行移植。首先要求的就是硬件无关性。 为了支持广泛的硬件平台,统一多个硬件平台所需的接口在终端部分的物理层将普遍采用 硬件抽象层h a l 技术,满足不同平台之间的差异性。 1 1 3 信息家电 信息家电- i a ( i n f o r m a t i o n a p p l i a n c e ) 是计算机通讯技术与传统家用电器相结合的创新 产品。信息电器包括家用p c 、机顶盒、h p c 、p d a 、d v b 、无线数据通讯设备、视频游戏 设备、w e b t v 等所有能通过网络系统交换信息的信息处理设备。信息家电产品涉及到目前 嵌入式技术的所有领域。开发信息家电产品对于我国发展嵌入式技术、提高国家科技综合实 力意义重大。 信息家电以其功能先进,使用简单,成本低廉的特点迅速发展。由于信息家电软件系 7 面向通讯设备的构件化网络协议栈体系 统均采用无硬盘、低价格嵌入式方案,是嵌入式操作系统的主要应用对象。未来中国每年的 信息电器市场容量将达2 0 0 0 万台以上,仅此一种产品,嵌入式操作系统的市场估值就达4 0 亿元。以后的5 1 0 年是机顶盒的黄金时期,总需求量可达1 亿1 5 亿台。总产量将达到 6 0 0 - 1 5 0 0 亿元人民币。 机顶盒是信息家电领域的重要产品。机顶盒类产品的主要功能就是提供模拟音频和视 频接口,使现在的模拟电视机能正常接收节目;同时,还能提供数字电视、数字广播接口, 提供交互式功能的接口装置。机顶盒一般可分为三类:数字电视机顶盒( 使模拟彩电能够接 收数字电视信号) 、网络电视机顶盒( 通过电视机能够浏览互联网) 、v o d 数字机顶盒( 基 于宽带网实现上网和双向视频点播功能) 。 机顶盒与数字电视的推广可以满足人们对不同信息电器设备的具体使用要求。通过网 络接入提供电子节目指南( e p g ) 、准视频点播( n v o d ) 、网络游戏、交互式多媒体教育、 股票行情与交易、电子邮件、1 n t e r n e t 信息浏览、运行商的个性化服务等等,将软件平 台技术方案和有线电视运营商、数字电视应用开发商、信息电器终端厂商合作。为网络运营 商、有线电视增值业务运营商提供高性能、易操作、低成本的软件系统平台。 由于数字电视终端产品具备硬件平台多样性和应用个性化的特点,对嵌入式软件产品 要求强大的网络和多媒体处理能力、易用的界面和支持车富的网络应用的功能。因此嵌入式 浏览器、嵌入式多媒体套件、嵌入式g u i 、嵌入式中文系统、嵌入式应用套件、嵌入式数字 电视通讯与协议模块软件成为数字电视终端设备嵌入式软件平台中的主要要素。 随着机顶盒的广泛应用,嵌入式操作系统面临良好的市场机遇。嵌入式操作系统在机 顶盒中起着举足轻重的作用,机顶盒将为嵌入式操作系统和网络应用软件的发展提供新的市 场。 1 1 4 普式计算与网络计算机( n c ) 计算机发展到今天,进入了计算模式的第三个时代普适计算( 或无所不在的计算) 时代。 普适计算是无所不在的、随时随地可以进行计算的一种方式。普适计算的本质在于空 间中会充斥着各种各样的无线的嵌入式设备,它们的尺寸大小不一样,提供的功能不样, 存在的形式也不样,唯一的共同点就是它们都在不停的计算着。这些计算设备隐藏在空间 的角落里,但是却无时无刻不在为我们提供各种各样的服务。 普适计算的最大特点就是它的透明性,即设备和服务的移动性应该是透明的。除了前 面所提到的,其透明性还表现在有效进行身份认证等安全策略,对不平衡负载的屏蔽,对新 加入或已经离开发设备的发现机制,各种环境及资源的有效利用准确感知用户意图等。 另外,普适计算主要是针对小型嵌入式移动设备而言,比如掌上电脑、b p 机、车载智 能设备、笔记本计算机、手表、智能卡、智能手机、机顶盒、p o s 销售机、屏幕电话等新 一代智能设备。这些设备相对个人计算机而言资源相对匮乏。因此,嵌入式操作系统必须合 理利用有限的资源。 8 面向通讯设各的构件化网络协议栈体系 在这种新的网络计算模式下,所有的应用软件和数据都在服务器上运行和存储,客户 端几乎不做任何计算,因此可以没有硬盘、光驱、软驱等设备,也不必有强大的c p u ,网 络计算机( n c ) 因此应运而生。网络计算机是连接到网络上的终端设备,也可以称之为网 络终端计算机或简称网络终端,即专用于宽带网络计算环境的瘦客户机。它可以简化到只有 显示器、键盘、鼠标,多的可有密码键盘、i c 卡读卡机和其他的身份验证设备。在某些应 用中甚至可接软盘驱动器作为辅助输入手段。 网络计算机目前有四种模式:w b t 模式、) ( - t e r m i n a l ( x 终端) 模式、b s ( 浏览器 服务器) 模式、l i n u x 本地机模式。n c 与服务器通过应用协议频繁发生交互,所以两者之 间的通信协议是保障n c 正常工作的关键。 网络计算机的出现来自于网络技术的发展。带宽是网络计算机发展的瓶颈,而现在宽 带网络的发展已是不可逆转的趋势,这是网络计算机将大行其道的原因。客户机“变瘦”有 利于信息安全和强化管理,同时,具有低价位、特别适合于行业及群体用户的需要。此外, x m l 等技术越来越成熟,也使得网络计算机和p c 机比较起来优势日益明显。 1 1 5 网络处理器 网络处理器( n e t w o r kp r o c e s s o r 简称n p ) 【l 】被认为是推动下一代网络发展的一项核 心技术。网络处理器是一种可编程的设备( 比较典型的是一种芯片) 它被经过专门设计和 高度优化来完成各种网络功能。事实上,网络处理器不仅仅是指菜一类设备或产品,而更广 泛地代表了一种网络设计的技术理念。网络处理器本质上是对一个日益复杂的多目标系统 ( 典型的是网络高速度和服务多样化这两个并存的目标) 进行优化的过程,优异的性价比和 高度的灵活性是网络处理器在碑网络设备开发方面的两个主要优势。 在网络发展初期,网络设备一般通过在c p u 上运行相关软件来实现各种网络功能。随 着网络带宽的增长速度逐渐超过了c p u 处理能力的增长速度。网络设备开始更多地采用 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 ,特定用途集成电路) 技术。然而,a s i c 最大 的缺点是缺乏灵活性。当前的服务功能既要求处理的高速度,又要求实现的灵活性,因此网 络设备需要能够灵活地满足各种服务和应用的不同需求。 正是在c p u 和a s i c 技术都无法满足灵活和高效这种双重要求的情况下,出现了网络 处理器技术。网络处理器通过息好的体系结构设计和专门针对网络处理优化的部件,为上层 提供了一个可编程控制的环境,可以很好地解决硬件加速和软件可扩展的折衷问题。 网络处理器可用于开发从第2 层到第7 层的各种网络服务和应用,例如交换、路由、 虚拟。专用网、多协议标记交换、服务质量、计费、负载均衡、安全和监测以及3 g 通信等, 也用于各种用户端、网络边缘,接入和网络核心,骨干的设各。网络处理器是体系结构设计日 趋成熟的结果。 网络处理器的本质在于其可编程性,从而改变a s i c 灵活性差的缺点。网络处理器的本 质还可以通过流水线实现指令级的并行,通过硬件线程实现线程级的并行,通过片内多处理 器结构实现处理器级的并行等不同级别的并行处理。并且网络处理器体系结构的模块化包含 9 面向通讯设各的构件化网络协议栈体系 了硬件层面和软件层面两方面的模块化,在高性能的基础上获得很好的可扩展性和灵活性。 这些技术特点都是9 目络处理器竞争优势所在。 1 2 嵌入式网络协议栈的局限性 嵌入式通信设备的网络应用在软件上很大程度依赖于网络协议栈的设计与实现。如今 的通信系统结构一般是分为若干层次,每一层实现固定的一组功能。i n t e m e t 在不同层次使 用了一组不同但互补的协议,这组协议常被称为i n t e m e t 协议族【2 】,通常叫t c p i p 协议族。 无论是t c p i p 协议族还是o s i 网络模型,都采用了层状结构来构造i n t e r n e t 通信系统。这 种通信系统是基于单块式( m o n o l i t h i c ) 体系结构的,即纳入的协议是以单块方式设计并加 以实现的。 但是,随着网络技术的不断发展,以及一些新应用不断增长和变化的要求,这种通用 的单块式结构的协议栈往往不能满足需求。具体来说,有些功能并没有得到现有协议栈很好 的支持,如对吞吐量和延时的不同需求,这样的需求还包括同步、多播等。同时,传统的协 议也不能很好的利用现今先进的传输技术和高速网络的优势,这些新技术具有很高的带宽和 低出错率,使得制约性能的瓶颈从传输转移到各网络节点的协议处理能力上。而另一方面, 传统的协议功能( 例如差错控制机制) 往往限制了某些特定应用的性能。 具有新特征、新需求的新网络及新应用的出现已导致大量的协议产生和必要的修改与 扩展。由于上述原因,一些更加灵活的体系结构随之产生。最典型的就是基于构件的开发在 网络协议特别是路由协议上的应用。这种结构利用构件技术把单一的网络协议分割成多个独 立的构件,每一个构件都可以被新的构件更新、替换;一组相关的构件提供特定的服务。因 此,整个通信系统就可以通过选择相应的网络协议构件进行组装来得到。 1 3 基于构件的嵌入式应用 在传统的系统开发技术下,随着软件系统的复杂性不断增长,开发周期越来越长而维 护费用越来越高,应用系统严重依赖于操作系统和特定的网络服务,开放性很差。于是集软 件复用、分布式对象计算、企业级应用开发等技术为一体的“基于构件的软件开发”( c b s d , c o m p o n e n tb a s e ds o r t w a r ed e v e l o p m e n t ) 应运而生。软件构件技术是建立在面向对象技术之 上的,它提供了比面向对象技术更为高级的抽象,通常是对一组类进行封装,通过固定的接 口来调用该构件所提供的方法。构件技术成为了嵌入式操作系统和嵌入式应用软件的发展趋 势。 1 3 。l 基于构件的嵌入式操作系统 嵌入式系统是用于执行独立功能的专用计算机系统。它由微电子芯片和嵌入在r o m 、 r a m 和f l a s h 存储器中的嵌入式操作系统、控制与应用软件开发来实现各种自动化处理 任务的电子设备或装置。 嵌入式系统通常是面向特定应用的,具有低功耗、体积小、集成度商。移动能力强等 1 0 面向通讯设备的构件化网络协议栈体系 特点。嵌入式系统的硬件和软件都必须高效率地设计,强调硬件软件的协同性、整合性与可 裁减,因而对操作系统也提出了新的要求。 目前的嵌入式操作系统要求以应用为中心,以计算机技术为基础,软件硬件可裁剪、 适应应用系统对功能、可靠性、成本、体积、功耗的严格要求。因此,构件化的嵌入式操作 系统符合嵌入式系统的发展趋势。 首先,构件化嵌入式操作系统能够更好地支持嵌入式软件的开发。传统的嵌入式操作 系统往往是单内核系统,难以采用构件技术进行软件开发。由此带来了软件开发周期长,重 用性差、维护和更新、系统不易于用户定制等缺点。新一代构件化嵌入式操作系统采用构件 技术,具有开发时间短、支持构件重用、高度可配置性、良好的可移植性等优点,能够满足 现在和将来复杂嵌入式应用的需求。 其次,构件化嵌入式操作系统还能够满足网络分布式计算环境的要求。随着网络技术 的发展,嵌入式设备联网的趋势日渐明显。嵌入式操作系统的运行环境也从孤立的单机环境 发展为复杂的网络分布式环境,应用服务形式也出现了向以构件为基本服务单位发展的趋 势。促使我们必须研究嵌入式系统的系统构件技术和服务构件技术,适应普适计算的需求。 最终开出发构件化的嵌入式操作系统来满足分布武计算环境下的应用需求。 为了研究具有高度可配置性、重用性、自适应性、可移植性和健壮性的新型构件化嵌 入式操作系统,向用户提供灵活、透明的构件服务,各种构件技术和基于构件、中间件技术 的嵌入式操作系统应运而生。国内外有许多流行的,针对嵌入式应用、基于构件的操作系统。 o s l o t :可以说是一个针对特定领域的软件构件集合,其目的是为了简化i n t e lx 8 6 硬件 平台上独立系统的构建。使用o s - k i t 提供的构件能够更加轻松的完成系统组装。本质上, o s - k i t 是一个代码片段的集合,构件的组合完全留给内核开发人员来完成。系统本身没有 提供任何工具。这个系统没有针对嵌入式做特殊的版本。 c o y o t e :的目的在于支持通信协议的构件,例如,原子组播( a t o m i cm u l t i c a s t ) ,群组远 程过程调用( g r o u pr p c ) 。这些协议被称为“组合协议”,代表了系统中基础的构件。组 合构件构建了一个层次化的通信协议栈,可以认为它们是粗粒度的模块。c o y o t e 系统可配 置性的核心在于支持事件和事件处理器,由事件激发协议的执行。 u i c ( u n i v e r s a l l yi n t e r o p e r a b l ec o r e ) :是美国伊利诺伊大学计算机系c u i u c ) 开发的一 个中间件操作系统,它可以自适应各种不同的环境,其最大的特点就是动态重配置。u i c 只 是一个抽象的框架,具体的应用背景决定了它的功能和需要加载的模块。u i c 通过静态配置 和动态配置相结合,在运行的时候加载构件,改变系统结构。u i c 屏蔽了不同构件之间的差 异,为应用程序提供统一的接口。使应用程序运行在相对同构的环境中,同时还非常适合于 资源有限的嵌入式系统。 1 3 2 基于构件的嵌入式网络协议栈 传统的单块式网络协议栈通常被划分成不同的层次,每一层次负责相应的通信功能。 一个协议族,由不同层次上的多种协议构成,每个协议负责不同的功能。这种网络协议结构 l l 面向通讯设备的构件化网络协议栈体系 和面向过程的服务设计模式越来越不能满足网络增长和发展的需求:开发难度大、维护困难、 升级困难、服务性能不高。这些缺点严重阻碍了计算机网络的发展。 基于构件的软件开发c b s d 的出现为这样的问题带来了一线转机,其中主要的代表有 c o m 、e j b 、c o r b a 等他们的主要构架思想是分布式、封装性,扩展性、复用性的结合。 最典型的就是中间件在通讯协议中的应用。面向中间件编程中的中间件也可以想象成构件的 代理构件( 或虚拟构件) 。如果通讯协议是h t t p ,中间件就成了防火墙:如果协议对来往 消息作了备份,系统可以容错:如果协议根据服务器繁忙程度分配消息,就是负载均衡;如 果一个事件是由几个分事件台成,代理构件可以执行事务处理:如果怕病毒,就把构件放到 远程,同时不给它文件支持。把这些功能实现在一个进程里,该进程就叫应用服务器。 c b s d 模式对于开发应用层网络协议是绰绰有余。特别是企业级w e b 构件。e j b 是当前 广泛流行的企业级跨平台的服务器程序的开发模式,因为这样的服务本身对操作系统没有多 大依赖性,b s d 是当前世界公认的应用层网络接口,对于不支持这个标准的系统,可以很 方便的在系统支持的接口之上构架一个虚拟层来模拟出一个b s d 这样的接口,实际上j v m ( j a v a v i r t u a l m a c h i n e ) 也正是这样做的。 然而对于运行在内核模式下的网络协议,如数据链路层的a r p ( a d d r e s sr e s o l u t i o n p r o t o c 0 1 ) 、i p 层的路由协议、协议层的t c p ,这样的事情就要复杂得多。首先,这些协议 都是网络功能的提供者,对于传统模型需要网络服务支撑的分布式功能将无法再利用,其次, 对于这些协议构造虚拟机是很繁琐且不易实现的,再次,e j b 等的跨平台特性的应用将使网 络协议的运行速度降低几个数量级,这对于运行于核心模式的网络协议是无法接受的。因此, 为了实现基于构件的网络协议栈,必须对现有模型进行改善和扩充,其特性除要求满足 c b s d 的最基本要求外,还要对运行速度、执行效率、系统安全性有严格要求,同时在不影 响这些特性下实现跨平台和分布式调度和管理。 与单块式网络协议栈不同,构件化网络协议栈可以包含一组协议功能,这些功能可用 来构成提供适当通信服务的协议。因此,单块式协议栈提供的是预定制的静态通信服务,而 构件化协议栈则提供了一种组合式服务,使应用程序能组装任意数目的不同功能的通信服 务。因此具备了更好的可复用性,可组装性,可扩展性。特别是在路由协议研究领域,由于 路由算法的不断更新,互联网络的复杂性和多样性以及性能、安全方面的多变性,单块的路 由协议不能灵活适应需求。然而,借助于构件技术,路由协议可以在底层网络协议栈的基础 上形成一套具有通用接口的路由协议构件。构件化的路由协议就实现了从静态的组织结构到 灵活多变的通信服务组合的转换。 从图卜1 可以看出协议构件化以后。各层协议构件之间的关系。使用了网络协议的通讯 构件,从各种协议构件中选择符合需求的模块,按照协议层重新组装使用,显示了极大的灵 活性。 1 2 面向通讯设各的构件化网络协议栈体系 图i - i 基于构件的网络协议 1 3 面向通讯设备的构件化网络协议栈体系 第2 章网络子协议构件框架n s p c f 2 1 网络协议构件化定义 传统上一个应用程序通常是由单个二进制文件组成的。当应用程序由编译器生成之后 一般不会发生任何变化任何改动都需要软件的重新编译。构件技术把单个的应用程序分割 成多介独立的部分( 构件) ,这样某一块构件就可以独立的被新的构件更新、替换。应用程序 更具有动态性、灵活性易于定制。这种构件技术的对象是应用程序。应用程序被分割、组 装成构件对象。从构件技术的实现来看,它规定了种普遍使用的抽象“标准”,即规定了 一组相同的结构类接口以实现动态交流。下图2 - i 就是一个典型的客户及服务器动态交流的 抽象申请过程:服务器与客户之间通过接口机构来提供和使用服务。 传递 踺酆 盼 图2 1 客户与服务器的动态交流 在课题中将要构件化的对象是大量的网络协议,而不是二进制的应用程序。这些网络 协议也应该贯穿了构件技术的思想。一个协议族比如t c m p ,就是一组不同层次上的多个 协议的组合。每一层的各个协议都提供了不同的服务。每一个协议都可以分解成多个模块( 构 件) 。例如h t t p 可以分解成n i c n a m e w h o i s 模块,u r l 模块;最基本的t c l n e t 协议也 可分为连接、网络虚拟终端、传输控制等模块,这就是协议的构件化。通过对网络协议构件 化后。上层的协议可以根据不同的需要,选取下层协议的构件,对本层协议进行定制,极大 的增强了协议的灵活性从而也将使协议的实现更具灵活性。 网络协议构件化是基于构件的嵌入式操作系统的一个重要思想。协议构件化吸取了构 件化思想的精髓,使用比面向对象技术更为高级的抽象。协议构件提供了b i n a r y 级的可重 用性,使程序开发周期缩短,分工更加明细,使整个协议栈体系具备了更好的可配置性。高 效性,可重用性,可扩展性和可表达性。协议构件化解决了软件存在的四个基本问题:基本 的构件互操作性,协议版本升级,实现语言无关性以及透明的跨进程互操作性。 为了能够给通信设备提供结构化的协议服务,前人对此进行了不少工作。【3 】提出了对 混合型的功能模块划分,允许由一组协议功能配置得到的协议与预先设计的协议构件的组 合,以提供更大的灵活性的体系结构。d ac a p o ( d y n a m i c c o n f i g u r a t i o no f p r o t o c o l s ) 4 】l q 1 4 徘g 面向通讯设备的构件化网络协议找体系 样也是一个基于功能的体系结构,它并不区分各个连接,而采用同一个协议配置。而 a v o c a 【5 】是一个基于构件的通信协议系统实现,用构件来实现一些协议功能,其所有的构 件都使用统一的接口。这些研究都推进了以模块化和构件为基础的通信协议的发展。 2 2n s p c f 体系结构 2 2 1 n s p c f 组成 前面已经提到了运用c b s d 方法于网络协议开发的局限性。将c o m 、f o b 等技术用于 实现网络协议特别是运行于核心模式的网络协议,在跨平台和运行性能方面都存在着缺陷。 对于网络协议的c b s d 实现不能采用原有的实现模型,必须现有模型进行改善和扩充,其 特性除要求满足c b s d 的最基本要求外,还要对运行速度、执行效率、系统安全性有严格 要求,同时在不影响这些特性下实现跨平台和分布式调度和管理。这就是本文提出的网络协 议子构件框架系统n s p c f ( n e t w o r k ss u b - p r o t o c o lc o m p o n e n tf t a m e ) 。 n s p c f 主要由四个部分组成:协议构件、协议构件操作系统、构件库、构件开发平台。 传统的通讯协议以需求为指导进行模块化改造与拆分,形成协议子构件集合。协议子构件由 构件库进行管理、组装,提供通讯设备服务。而在通讯设备上必须进行构件支撑改造,以满 足协议子构件对特定硬件的支持并提供实时的通讯服务。协议构件可以由第三方开发商来实 现,为了便于构件的开发和维护,n s p c f 还提供了构件开发平台负责构件的开发,储存管 理,提供统一的构件加载接口。本文将把重点放在协议构件和协议构件操作系统上,构件开 发平台和构件库也是课题的一部分,将简单介绍。 图2 - 2 网络协议子构件框架系统n s p c f 2 2 2 n s p c f 特征 n s p c f 具有传统c b s d 具有的一切特征包括封装性、复用性、扩展性,同时提供一 组扩展特性,诸如系统安全、动态加载、跨平台、分布式、开放性,这样即可以将c b s d 的先进思想运用到网络协议的开发上,使协议的开发更方便、效率更高、维护升级简便,又 1 5 面向通讯设备的构件化网络协议栈体系 不失网络协议对速度、安全等的要求。 n s p c f 框架继承于c b s d ,基本执行模块是与对象等价的构件,构件可以有自己的数 据成员和接口函数,但所有的数据成员都是私有的,只有接口函数才能被定义为p u b l i c 的接 口,构件之间的数据交换是通过p u b l i c 的接口函数进行的。构件

温馨提示

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

评论

0/150

提交评论