已阅读5页,还剩50页未读, 继续免费阅读
(计算机软件与理论专业论文)嵌入式系统间通信协议的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电大学硕上研究生学位论文摘要 摘要 随着硬件和软件技术的发展,嵌入式系统在各种环境下的应用也日益增多。而嵌入式 系统软硬件资源有限,通常都是单独使用,互相通信很不方便。 为了使嵌入式系统能比较方便地进行互连通信,本文分析总结了一种实用的互连协 议。通常在嵌入式系统中开发通信协议是对t c p i p 协议进行简化后在特定平台上实现, 这样更换平台时上层组件要进行大量的更改。本文介绍的嵌入式系统间的通信协议提供了 一套类似于标准s o c k e t 的通信接口,在系统中实现此协议后可以被上层组件很方便的用来 进行通信,而且更换平台时上层组件只需要很少的改动。 本文介绍的嵌入式系统间的通信协议是一个分层协议,称之为e s c p ( e m b e d d e d s y s t e mc o m m u n i c a t i o np r o t o c 0 1 ) 。e s c p 网络的主要特点是不需要路由器和交换机就能组成 网络,因为网络中的每个系统都有路由的功能。另外它占用资源少,支持多种硬件连接方 式,例如u s b ,u a r t 等,很方便就能组成网络。该协议提供面向连接和无连接的服务, 并且都能保证服务质量。 e s c p 系统分会话层,路由层和设备层三层,文中对每层的功能和实现原理进行了描 述,并对各个通信接口的实现也进行了较详细的说明。文章的最后给出了e s c p 系统在 l i n u x 下的测试结果,并且结合一个简单的数据传输的实例来对系统的性能进行分析,验 证了该方案的可行性。e s c p 协议栈使用方便,对嵌入式系统间通信具有重要的实用价值。 关键词:t c p i p ,嵌入式系统,通信,服务 南京邮电大学硕士研究生学位论文 摘要 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h eh a r d w a r ea n ds o f t w a r e ,t h eu s a g eo fe m b e d d e ds y s t e mi n v a r i o u se n v i r o n m e n t si sm o r ea n dm o r ep r e v a l e n tt h a nb e f o r e h o w e v e r ,t h e r ea r eo n l yal i m i t e d h a r d w a r ea n ds o f t w a r er e s o u r c e si na ne m b e d d e ds y s t e m i ti su s u a l l yu s e ds o l e l y ,a n di s d i f f i c u l tt oc o m m u n i c a t ew i t ho t h e rs y s t e m s t h i sp a p e r p r e s e n t sas e to fu s e f u li n t e r e o n n e c t i o np r o t o c o l st om a k ee m b e d d e ds y s t e m s t o c o n m m n i c a t ee a c ho t h e re a s i e r ,g e n e r a l l y , ac o m m u n i c a t i o np r o t o c o li ne m b e d d e ds y s t e mi s c u ts h o r tf r o mt c p po ng i v e np l a t f o r m ,o n c et h ep l a t f o r mi sc h a n g e d ;t h eu p p e rc o m p o n e n t s n e e dal o to fm o d i f i c a t i o nt h ee m b e d d e ds y s t e mc o m m u n i c a t i o np r o t o c o lp r e s e n t e di nt h i s p a p e rp r o v i d e sas e to fa p it h a tl i k es t a n d a r ds o c k e t ,o n c et h ep r o t o c o li m p l e m e n t i nas y s t e m , i tc a nb eu s e de a s i l yt oc o m m u n i c a t eb yu p p e rc o m p o n e n t s ,a n do n c et h ep l a t f o r mi sc h a n g e d t h eu p p e rc o m p o n e n t so n l yn e e dal i t t l em o d i f i c a t i o n t h ee m b e d d e ds y s t e mc o m m u n i c a t i o np r o t o c o lp r e s e n t e di n t h i sp a p e ri sal a y e r e d p r o t o c o l ,c a l l e de s c et h em a i nf e a t u r eo fe s c pi s t h a tt h er o u t e r sa n ds w i t c h e sa r en o t n e e d e di na ne s c pn e t w o r k ,b e c a u s ee v e r ys y s t e mi ne s c pn e t w o r kh a sr o u t i n gf u n c t i o n i t s u p p o r t sv a r i o u sh a r d w a r ec o n n e c tm e t h o d s ,s u c ha su s b ,u a r t ,a n dc a r lc o n s t i t u t ean e t w o r k c o n v e n i e n t l y e s c pp r o v i d e sc o n n e c t i o n o r i e n t e da n dc o n n e c t i o n l e s ss e r v i c e s ,a n dt h eq u a l i t y o fs e r v i c ei sb o t hg u a r a n t e e d e s c pi sc o m p o s e do ft h r e el a y e r s :e s c ps e s s i o nl a y e r , e s c pr o u t e rl a y e ra n de s c p d e v i c el a y e r i nt h i sp a p e r , e v e r yl a y e r 。sf u n c t i o na n di m p l e m e n tp r i n c i p l ei sd e s c r i b e d ,a n dt h e i m p l e m e n to fc o m m u n i c a t ea p i i sa l s oi l l u m i n a t e d a tt h ee n do ft h i sp a p e r , t h et e s tr e s u l t so f e s c po nl i n u xs y s t e ma r ep r o v i d e d ,a n de s c ps y s t e m sp e r f o r m a n c ei sa n a l y z e dw i t has i m p l e d a t at r a n s f e re x a m p l e ,s y s t e m ss u p e r i o r i t yi sp r o v e d a n de s c pi sc o n v e n i e n tt ou s e ,i th a s g r e a tp r a c t i c a lv a l u ei nc o m m u n i c a t i o nb e t w e e ne m b e d d e ds y s t e m s k e yw o r d s :t c p i p , e m b e d d e ds y s t e m ,c o m m u n i c a t i o n ,s e r v i c e n 南京邮电大学 硕士学位论文摘要 学科、专业:工学计算机软件与理论 研究方向:软件技术及其在通信中的应用 作 者:2 0 0 3 级研究生 潘登指导教师盛塞蕉 题目:嵌入式系统间通信协议的研究 英文题目:r e s e a r c ho i lc o m m u n i c a t i o np r o t o c o lb e t w e e n e m b e d d e ds y s t e m 主题词:t c p i p嵌入式系统通信服务 k e y w o r d s : t c p i pe m b e d d e ds y s t e mc o m m u n i c a t i o ns e r v i c e 南京邮电大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电大学或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:日期 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电大学研究生部办理。 始避名耀吼鳢侈 南京邮乜大学硕士研究生学位论文 第一辛嵌入式系统通信 1 1 嵌入式系统介绍 第一章嵌入式系统通信 嵌入式系统是指以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于 应用系统对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。嵌入式系 统一般指非p c 系统,它通常由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用 户的应用程序等四个部分组成,它是可独立工作的“部件”,用于实现对其它设备的控制、 监视或管理等功能。嵌入式系统已经赢得了巨大的市场,在应用数量上远远超过了各种通 用计算机。 嵌入式系统包括硬件和软件两部分 i 】。硬件部分包括处理器,微处理器、存储器及外设 器件和i o 端口、图形控制器等。嵌入式系统一般不具备像硬盘那样大容量的存储介质, 而大多使用e p r o m 、e 2 p r o m 或闪存( f l a s hm e m o r y ) 作为存储介质。软件部分包括操作 系统和应用程序,有时设计人员把这两种软件组合在一起。操作系统控制着应用程序与硬 件的交互作用:而应用程序控制着系统的运作和行为。嵌入式系统集应用软件和硬件于一 体,具有软件代码少、高度自动化、响应速度快等特点。 嵌入式设备与嵌入式系统有所不同。嵌入式设备是指内部有嵌入式系统的产品和设 备,如掌上p d a 、手机、移动计算设备、电视机顶盒、数字电视、多媒体、汽车、微波 炉、数码相机、家庭自动化系统、电梯、空调、自动售货机、工业自动化仪表与医疗仪器 等各类电器设备。 1 1 1 嵌入式微处理器 嵌入式微处理器是嵌入式系统的核心【2 1 ,其性能直接影响整个系统的性能高低,影响 系统使用的方式和成本。嵌入式微处理器一般具备以下4 个特点: 1 对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而 使内部的代码和实时操作系统的执行时间减少到最低限度。 2 具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为 了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有 1 堕至! ! ! ! ! 生查兰堡主型塞圭兰竺丝苎 塑二:兰壁垒塞妻堑望堕 利于软件诊断。 3 可扩展的处理器结构,能迅速地扩展出满足应用的最高性能的嵌入式微处理器。 4 嵌入式微处理器功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠 电池供电的嵌入式系统更是如此。 据不完全统计,目前全世界嵌入式处理器的品种数量已经超过1 0 0 0 种,流行的体系 结构有3 0 多个系列,其中8 0 5 1 体系占多半。生产这种单片机的半导体厂家有2 0 多个, 共3 5 0 多种衍生产品,仅p h i l i p s 就有近1 0 0 种。现在几乎每个半导体制造商都生产嵌入 式处理器,越来越多的公司有自己的处理器设计部门。 1 1 2 嵌入式操作系统 嵌入式操作系统2 是种支持嵌入式系统应用的操作系统软件,它是嵌入式系统( 包 括硬件、软件系统) 极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内 核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统具有通用操 作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开 发人员从繁忙的驱动程序移植和维护中解脱出来:能够提供库函数、驱动程序、工具集以 及应用程序。与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依 赖性、软件固件化以及应用的专用性等方面具有较为突出的特点。 一嵌入式操作系统的种类 虽然商品化的嵌入式操作系统在2 0 世纪7 0 年代后期才出现,但到2 0 世纪末,成熟 的商品化嵌入式操作系统已经十分丰富了,如p a l m o s ,v x w o r k s ,p s o s ,n u c l e a r ,w i n d o w s c e 以及目前炒得很热的嵌入式l i n u x 等。 通常嵌入式操作系统可以分为两类9 1 :一类是面向控制、通信等领域的实时操作系统; 另一类是面向消费电子产品的非实时操作系统。后者包括个人数字助理( p d a ) 、移动电话、 机顶盒、电子书等。 1 非实时操作系统。早期的嵌入式系统中没有操作系统的概念,程序员通常直接面对 裸机编写嵌入式程序。在这种情况下,通常把嵌入式程序分成两部分,即前台程序和后台 程序。前台程序通过中断来处理事件,其结构一般为无限循环;后台程序则掌管整个嵌入 式系统软、硬件资源的分配、管理以及任务的调度,是一个系统管理调度程序。这就是通 , 堕星塑皇查堂坚生塑塞生竺焦丝苎 笙:至壁垒壅墨垄望堕 常所说的前后台系统。在程序运行时,后台程序检查每个任务是否具备运行条件,通过一 定的调度算法来完成相应的操作。对于实时性要求特别严格的操作可以由中断来完成。在 中断服务程序处理完所发生的事件后,就退出中断,经过后台程序的调度,转由前台程序 完成事件的处理,这样就不会造成在中断服务程序中处理费时的事件而影响后续和其它中 断。实际上,前后台系统的实时性比预计的要差。这是因为前后台系统认为所有的任务具 有相同的优先级别,即是平等的,而且任务的执行又是通过f i f o 队列排队,因而对那些 实时性要求高的任务不可能立刻得到处理。另外,由于前台程序是一个无限循环的结构, 一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其它任务得不到机会被 处理,从而造成整个系统的崩溃。由于这类系统结构简单,几乎不需要r a m r o m 的额 外开销,因而在比较简单的应用场合被广泛采用。 2 实时操作系统。实时系统是指能在确定的时间内执行其功能并对外部的异步事件做 出响应的计算机系统。其操作的正确性不仅依赖于逻辑设计的正确程度,而且与这些操作 进行的时间有关,“在确定的时间内”是该定义的核心,也就是说,实时系统对响应时间 有严格要求。实时操作系统具有规模小,中断处理时间短,任务切换快的特点。实时操作 系统具有如下功能:任务管理( 多任务和基于优先级的任务调度) 、任务间同步和通信f 信号 量和邮箱等) 、存储器优化管理( 含r o m 的管理) 、实时时钟服务、中断管理服务。 目前国际上嵌入式系统的主流是实时多任务操作系统( r t o s :r e a l t i m eo p e r a t i n g s y s t e m ) 。实时多任务操作系统是指具有实时性、能支持实时控制系统工作的操作系统。 其首要任务是调度一切可利用的资源完成实时控制任务,其次才着眼于提高计算机系统的 使用效率,重要特点是要满足对时间的限制和要求。r t o s 是嵌入式应用软件的基础和开 发平台,是一段嵌入在目标代码中的软件,用户的其它应用程序都建立在r t o s 之上。不 但如此,r t o s 还是一个标准的内核,将c p u 时间、中断、i o 、定时器等资源都包装起 来,留给用户一个标准的a p i ,并根据各个任务的优先级,合理地在不同任务之间分配 c p u 时间。r t o s 针对不同处理器优化设计高效率实时多任务内核,是优秀的商品化的操 作系统,可以为几十个系列的嵌入处理器m p u ,d s p ,s o c 等提供类似的a p i 接口,这 是r t o s 基于设备独立的应用程序开发基础。这样一来,基于r t o s 上的c 语言程序便 具有极大的可移植性。同时,在r t o s 基础上可以编写出各种硬件驱动程序、专家库函 数、行业库函数、产品库函数,它们和通用性的应用程序一起可以作为产品销售,促进行 业内的知识产权交流。 r t o s 可划分为如下几个种类: 3 壹里业坠查兰塑兰三! 墅塑竺兰焦堡奎 篓二登堡垒茎墨竺垄笪 传统实时嵌入式操作系统。主要包括:v x w o r k s 、p s o s 、n u c l e u s 、w i n c e 等。 v x w o n s 和p s o s 的用户主要集中在军工、工业控制及电信领域,n u c l e u s 和w i n c e 在消 费类产品中应用较为广泛。 开放源码的嵌入式操作系统。典型代表有嵌入式l i n u x 。因为传统实时嵌入式操作 系统价格比较昂贵,所以许多用户开始使用免授权费的l i n u x 操作系统开发自己的嵌入式 产品。l i n u x 操作系统本质上属于通用操作系统,缺少强实时支持,因此嵌入式l i n u x 在 某些不需要强实时性的嵌入式产品中得到了较多应用,典型的产品有智能手机f 这类产品 中的实时性主要通过专用硬件芯片保证) 、查询终端等。 新型实时嵌入式操作系统。主要包括u c o s i i 、t 1 1 r e m x 等操作系统,它们的出 现,填补了r t o s 操作系统市场的中低端市场,给广大嵌入式产品开发者提供了性价比较 高的选择。 本地实时嵌入式操作系统。近几年,中国也有厂商开始提供自主研发的实时嵌入 式操作系统,典型的有h o p e n 和d e l t a 操作系统。这些产品已经在消费类电子产品和军工 领域中得到了一些应用。 二嵌入式操作系统的发展趋势 嵌入式操作系统【羽伴随着嵌入式系统的发展经历了4 个比较明显的阶段。第一阶段是 无操作系统的嵌入算法阶段,是以单芯片为核心的可编程控制器形式的系统,同时具有与 监测、伺服、指示设备相配合的功能;第二阶段是以嵌入式c p u 为基础、以简单操作系 统为核心的嵌入式系统;第三阶段是通用的嵌入式实时操作系统阶段,是以嵌入式操作系 统为核心的嵌入式系统;第四阶段是基于i n t e r n e t 的嵌入式系统,这是一个正在迅速发展 着的阶段。目前大多数嵌入式系统还孤立于i n t e r n e t 之外,但随着i n t e r n e t 的发展以及 i n t e m e t 技术与信息家电、工业控制技术等结合日益密切,嵌入式设备与m t e m e t 的结合将 代表着嵌入式技术的真正未来。 i 1 3 嵌入式l i n u x 操作系统 由于本论文设计的平台是l i n u x ,故对嵌入式l i n u x 操作系统也进行了一些研究。 嵌入式l i n u x 操作系统3 1 以代码开放、价格低廉、功能强大又易于移植的特性正在被 广泛应用。与传统的实时操作系统( r t o s ) 相比,采用嵌入式l i n u x 这种开放源码的操 4 堕塞l 坚堕查堂! 坚主塑塑兰兰垡笙苎 塑二差堂垒蔓墨竺望堕 作系统的一个好处是l i n u x 开发团体看来会比r t o s 的供应商更快地支持新的i p 协 议和其它协议。例如,用于l i n u x 的设各驱动程序要比用于商业操作系统的设备驱动程 序多,如网络接口卡( n i c ) 驱动程序以及并口和串口驱动程序等。 l i n u x 操作系统本身的微内核体系结构相当简单。网络和文件系统以模块形式罱于微 内核的上层,驱动程序和其它部件可在运行时作为可加载模块编译到或者是添加到内核。 这为构造定制的可嵌入系统提供了高度模块化的构造方法。而在典型情况下该系统需结合 定制的驱动程序和应用程序以提供附加功能。 嵌入式系统也常常要求通用的功能。为了避免重复劳动,这些功能的实现运用了许多 现成的程序( 包括驱动程序) ,它们可以用于公共外设和应用。l i n u x 可以在范围广泛的 微处理器上运行,并早已经有了丰富的应用库。 在嵌入式系统上运行l i n u x 的一个缺点是,l i n u x 系统实时性能较差,故需要添加实 时软件模块。而这些模块运行的内核空间正是操作系统实现调度策略、硬件中断异常和执 行程序的部分。由于这些实时软件模块是在内核空间运行的,因此代码错误可能会破坏操 作系统从而影响整个系统的可靠性,这对于实时应用将是一个严重的弱点。 另方面,现成的r t o s 完全是为实时性而设计的,它由用户而非系统级进程,启动 时分配给某个进程高于其它进程的优先级的方式来实现可靠性。进程在操作系统看来就是 在内存中或硬盘上执行的程序。给他们指定进程i d 或者数字标识符是为了让操作系统跟 踪正在执行的程序和与这些程序相关联的优先等级。这样保证了r t o s 能比l i n u x 提供更 高的可靠性( 可预见性) ,而且这还是一种更加经济的选择。 1 2 嵌入式系统通信 由于嵌入式系统的差异性很大,系统间的通信很不方便,或者根本没法通信,大多数 嵌入式系统都还是孤立的。通常嵌入式系统连到i n t e m e t 上都很不方便,下面介绍一下常 见的嵌入式系统连到i n t e r n e t 的方法。 1 2 1 嵌入式i n t e r n e t 嵌入式i a t e r n e t l 4 :是近) l 年随着嵌入式系统的广泛应用和计算机网络技术的发展而发 展起来的一项新兴概念和技术。随着i n t e r n e t i n t r a n e t 的发展,各种设备都产生了连接性的 南京邮电大学硕士研咒生学位论文蝌一章嵌人式系统通信 需求,从冰箱到电表,似乎所有电器都需要连入互联网。通过为现有嵌入式系统增加因特 网接入能力来扩展其功能,以i n t e r n e t 为介质实现信息交互,这就产生了嵌入式i n t e m e t 技术。 嵌入式i n t e m e t 是嵌入式系统与i n t e r n e t 的结合。嵌入式系统要接入i n t e r n e t 则必须有 对应的通信协议。目前的i n t e r n e t 采用t c p i p 协议,因此嵌入式系统接入i n t e r n e t 最终必 须通过t c p i p 协议按入。嵌入式系统对信息按照t c p i p 协议进行处理,使其变成可以在 i n t e m e t 上传输的i p 数据包。若采用网关方式,在网关前端可以采用适合嵌入处理机和起 控制作用的新协议,通过网关转换后变成标准i p 包接入i n t e r n e t 。由于嵌入式系统自身资 源的限制,处理能力不如台式机强,而t c p i p 本身又很复杂,使得处理通信协议成为嵌 入式系统接入i n t e r n e t 的关键点和难点。 1 2 2 嵌入式i n t e m e t 的实现方案 针对嵌入式系统接入i n t e m e t 的问题一国际国内很多厂商都进行了开发,推出了各 种解决方案。当前的接入方式以及对协议的处理方法可分为如下几类: 1 通过专用的w e b 服务器实现。首先利用简单的网络通讯技术将微处理器组构成一 个子网,再通过专用的w e b 服务器作为子网设备路由器来转换实现嵌入式系统与外部网 的通信。 在嵌入式系统中集成嵌入式w e bs e r v e r f 6 l 实现i n t e r n e t 接入是近几年才出现的一种较 为先进的方案。按照b s 结构,i n t e m e t 上的计算机可以分为浏览器( 客户机) 和服务器, 同样连入i n t e m e t 的嵌入式系统也可以分为浏览器和服务器,即在嵌入式系统中集成嵌入 式w e b 服务器,使其成为典型的“瘦”服务器,并向i n t e m e t 或企业内部网提供高效的管 理接口。嵌入式系统正是通过这种方式与外部浏览器进行信息交换的,这和普通计算机服 务器相同。 2 通过专用的嵌入式网关连接。即嵌入式系统使用简单的网络通讯技术与专用嵌入式 网关连接,运行t c p i p 协议,并提供t c p i p 到用户的简单网络的连接和路由功能。 早期都是采用专用的网关接入方案。主要是针对工控行业的串行设备,嵌入式网关将 内部网络和外部网络隔离开来,在内部通信协议和外部t c p i p 之间起到了协议转换的作 用。其优点是:内部网络的嵌入式设备不需要使用实际的i p 地址:一个网关可以 连接多个设备。但这也是后来专用的网关无法迸一步实现更灵活的接入功能的原因。 南京邮电大学硕士研究生学位论文 第一章嵌入式系统通信 3 把标准网络技术( t c p i p ) 一直扩展到嵌入设备,由嵌入式系统自身实现w e b 服 务器功能,这是解决问题的最佳方案。 采用此方案时,在嵌入式系统中m c u 运算速度和存储器容量的限制下,占用大量系 统资源的t c p i p 协议的实现较为困难。设计思路可以有以下两种:对于高档微处理器系 统,可运行嵌入式实时操作系统,实现较完整的t c p i p 协议;对于低档的8 1 6 位的嵌入 式系统,考虑到其系统速度和内存的限制,需要进行简化,但要保持最基本的功能,即嵌 入式设备一定要转变为w e b 服务器,一定要加上t c p i p 网络协议。 嵌入式t c p i p 协议的实现【”又有硬件和软件两种方式。硬件方式指将t c p i p 协议栈 用硬件方法予以实现,嵌入式系统直接与t c p i p 协议栈硬件芯片连接,由它实现协议的 转换,从而使之与互联网连接。但这无疑增加了硬件成本,对一些功能单一的嵌入式设备, 连接一个完整的t c p i p 硬协议栈,是一个很大的浪费,而且所增加的成本费用是难以接 受的。对于大量低档的嵌入式系统,用软件实现嵌入式t c p i p 协议具有更大的意义。 嵌入式系统与p c 机的差别很大,在嵌入式系统中实现t c p i p 协议与在p c 操作系统 中的实现也有很大的不同。 嵌入式系统的t c p i p 协议( 8 】直接面对硬件,没有一个多任务操作系统平台。m c u 中 的程序一般是顺序执行,与高级操作系统中的多线程并发执行的方式截然不同。在高级操 作系统中,对网卡的驱动采用中断方式,中断与软中断、消息机制等相结合,运行时以分 时为基础,进行动态优先级调度。同时由于p c 机有相对较快的运算速度,使t c p i p 调 用处理的时间较短,从而能对网络通信做出及时响应,网卡的接收缓冲区几乎不可能出现 溢出的情况,同时操作系统还能对其它任务的线程做出响应。而嵌入式处理器的时钟频率 较低,地址、数据总线较窄,对一个i p 包的处理要花更多的处理机时间,势必影响其它 中断和任务的执行。比如:当系统中有实时数据采集、串口通信中断、键盘中断等实时任 务,则容易造成冲突。设计时可以通过合理划分中断处理程序,使中断处理程序尽可能短, 从而使这些任务执行时间较短。 南京邮电人学颂士研究生学位论文 第二章通信协议 2 1 通信协议 第二章通信协议 在网络的基本概念中,分层的体系结构是最基本的。在网络中要做到有条不紊地交换 数据,就必须遵守一些事先约定好的规则,这些规则明确规定了所交换的数据的格式以及 有关的同步问题。这些为进行网络中的数据交换而建立的规则、标准或约定即称为网络协 议e t w o r kp r o t o c 0 1 ) 。 9 1 1 9 6 9 年问世的a r p a n e t 是世界上公认的第一个计算机网络。它具有资源共享、分 布式控制及分组交换等特点,从逻辑上可分为通信子网和资源子网,并采用层次化网络结 构。1 9 7 4 年,i b m 公司首先公布了s n a ( 系统网络体系结构) 。1 9 7 7 年,国际标准化组 织i s o 发立了一个专门委员会s c l 6 ,着手制订开放系统互联的有关标准,并于1 9 7 9 年 提出了开放系统互联模型i s o o s i 。在1 9 8 3 年,国际标准化组织0 s o ) 提出了开放系统互 连参考模型( o p e ns y s t e m si n t e r c o r m e c f i o nr e f e r e n c em o d e l ,缩写为o s i r m ) ,它为网络协 议的层次划分建立起了一个标准的框架,在网络的发展史上发挥了重要的作用。 如前所述,协议是一组规则的集合,是交互双方必须遵守的约定。网络协议实质上是 实体间通信时所使用的一种语言,是计算机网络和分布系统中互相通信的对等实体间交换 信息所必须遵守的规则的集合。网络协议主要由以下三个要素组成:语法,对所表达的内 容的数据结构形式的一种规定,即“怎么讲”:语义,对构成协议的协议元素含义的解释, 即“讲什么”;定时,对事件实现顺序的详细说明。 为实现计算机间的通信,每个计算机互联的功能被划分成有明确定义的层次,并规定 了对等层间进程通信的协议以及相邻层间的接1 2 1 和服务。这种分层的原理具有独立性强、 功能简单、适应性强、利于实现和维护等特点。功能分层可使得本层的功能相对独立,向 上层提供服务,要求下层完成服务。功能相对独立是指只要层间接口不变,改变或修改层 内功能不影响其它层的功能。 2 2 0 s i 参考模型 o s i r m ( o p e ns y s t e m si n t e r c o n n e c t i o nr e f e r e n c em o d e l ) 开放系统互连基本参考模型 简称为o s i t l “。 南京邮电大学硕士研究生学位论文 第二二章通信协议 2 2 1 分层原则 层次结构的好处在于使每一层实现一种相对独立的功能。分层结构还有利于交流、理 解和标准化。 1 每层的功能应是明确的,并且是相互独立的。当某一层的具体实现方法更新时,只 要保持上、下层的接口不变,便不会对邻居产生影响。 2 层间接口必须清晰,跨越接口的信息量应尽可能少。 3 层数应适中。若层数太少,则造成每一层的协议太复杂;若层数太多,则体系结构 过于复杂,使描述和实现各层功能变得困难。 2 2 2 各层概述 o s i 参考模型分为7 层t 分别是物理层,数据链路层,网络层,传输层,会话层,表 示层和应用层。各层的主要功能及其相应的数据单位如下: 1 物理层 定义了为建立、维护和拆除物理链路所需的机械的、电气的、功能的和规程的特性, 其作用是使原始的数据比特流能在物理媒体上传输。具体涉及接插件的规格、“0 ”、1 信号的电平表示、收发双方的协调等内容。 2 数据链路层 数据链路层负责在两个相邻结点间的线路上,无差错的传送以帧为单位的数据。帧中 包含地址、控制、数据及校验码等信息。数据链路层的主要作用是通过校验、确认和反馈 重发等手段,将不可靠的物理链路改造成对网络层来说无差错的数据链路。数据链路层还 要协调收发双方的数据传输速率,即进行流量控制,以防止接收方因来不及处理发送方来 的高速数据而导致缓冲器溢出及线路阻塞。 3 网络层 在计算机网络中进行通信的两个计算机进程之间可能会经过很多个数据链路,也可能 还要经过很多通信子网。网络层将数据链路层提供的帧组成数据包,包中封装有网络层包 头,其中含有逻辑地址信息。网络层关心的是通信子网的运行控制,主要解决如何使数据 壹里堕皇盔兰堡主堕塑竺堂垡丝茎 塑三要霎笪苎:堡 分组跨越通信子网从源传送到目的地的问题,这就需要在通信子网中进行路由选择。另外, 为避免通信子网中出现过多的分组而造成网络阻塞,需要对流入的分组数量进行控制。当 分组要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。 4 传输层 传输层的任务是根据通信子网的特性最佳地利用网络资源,并以可靠和经济的方式, 为两个端系统( 源端和目的端) 的会话层之间,提供建立、维护和取消传输连接的功能, 负责可靠地传输数据。传输层提供的端到端的透明数据传输服务,使高层用户不必关心通 信子网的存在,因此,用统一的传输原语编写的高层软件便可运行于任何通信予网上。同 时传输层还要处理端到端的差错控制和流量控制问题。 5 会话层 会话层的主要功能是组织和同步不同的主机上各种进程间的通信。会话层负责在两个 会话层实体之间进行会话连接的建立和拆除。在半双工通信情况下,会话层提供一种数据 权标来控制某一方何时有权发送数据。会话层还提供在数据流中插入同步点的机制,使得 数据传输因网络故障而中断后,可以不必从头开始而仅重传最近一个同步点以后的数据。 6 表示层 表示层为上层用户提供共同的数据或信息的语法表示变换。为了让采用不同编码方法 的计算机在通信中能相互理解数据的内容,可以采用抽象的标准方法来定义数据结构,并 采用标准的编码表示形式。表示层管理这些抽象的数据结构,并将计算机内部的表示形式 转换成网络通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的表示变换功 能。 7 应用层 应用层是开放系统互连环境的最高层。不同的应用层为特定类型的网络应用提供访问 o s i 环境的手段。网络环境下不同主机间的文件传送访问和管理( f t a m ) 、传送标准电子 邮件的文电处理系统( m h s ) 、使不同类型的终端和主机通过网络交互访问的虚拟终端f v t ) 协议等都属于应用层的范畴。 2 3t c p i p 协议 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但t c w i p 1 0 堕星些里堑堕二! 竺塞生堂垡丝苎 塑三兰望堕坐坚 协议组件允许它们互相进行通信。这一点很让人感到吃惊,n n z n 作用己远远超出了最 初的设想。t c p i p 起源于6 0 年代末美国政府资助的个分组交换网络研究项目,到2 0 世纪9 0 年代已发展成为计算机之间最常应用的组网形式。它是一个真正的_ 丁= 放系统,因 为协议组件的定义及其多种实现可以不用花钱或花很少的钱就可以公开地合法得到。它已 成为“全球互联网”或“因特网”( i n t e r n e t ) 的基础。 网络协议通常分不同层次进行开发,各层分别负责不同的通信功能。一个协议组件, 比如t c p i p ,是组不同层次上的多个协议的组合。t c p i p 通常被认为是一个四层协议 体系吼如图2 1 所示。 应用层 传输层 网际层 网络接口 2 3 1 提供的服务类型 图2 - 1t c p i p 协议族 从通信的角度看,各层所提供的服务可分为两大类,即面向连接的( c o n n e c t i o n o r i e n t e d ) 服务和无连接的( c o n n e c t i o n l e s s ) 服务1 0 1 。 连接就是两个对等实体为进行数据通信而进行的一种结合。面向连接服务具有连接建 立、数据传输和连接释放这三个阶段。面向连接服务是在数据交换之前,必须先建立连接。 当数据交换结束后,则必须终止这个连接。在传送数据时是按顺序传送的。面向连接的服 务比较适合于在定期间内要向同目的地发送许多报文的情况。对于发送很短的零星报 文,面向连接服务的开销较大。 在无连接服务的情况下,两个实体之间的通信不需要先建立好连接,因此下层的有关 南京邮电大学硕蜘丌究生学位论文 第 二章通信协议 资源不需要事先进行预定保留。这些资源将在数据传输时动态地进行分配。 无连接服务的另一特征是它不需要通信的两个实体同时是活动着的( a c t i v e ) 。无连接 服务的优点是灵活方便。但无连接服务不能防止报文的丢失、重复或失序。 无连接服务的特点不需要接收端做任何响应,因而是一种不可靠的服务。这种服务常 被描述为”尽最大努力交付”( b e s te f f o r td e l i v e 忉或”尽力而为“。 2 3 2 网络接口层 网络接口层,有时也称作数据链路层或链路层,通常包括操作系统中的设备驱动程序 和计算机中对应的网络接口卡。它们一起处理与电缆( 或其它任何传输媒介) 的物理接口 细节。 在t c p i p 协议族中,链路层主要有三个目的:为i p 模块发送和接收i p 数据报; 为a r p 模块发送a r p 请求和接收a r p 应答;为r a r p 发送r a r p 请求和接收r a r p 应答。t c p i p 支持多种不同的链路层协议,这取决于网络所使用的硬件,如以太网,令 牌环网,f d d i ( 光纤分布式数据接口) 等。 2 3 _ 3 网际层 有时也称作互连网层,处理分组在网络中的活动,例如分组的路由选择。在t c p i p 协议组件中,网络层协议包括i p 协议( 网际协议) ,i c m p 协议( i n t e r n e t 互连网控制报文 协议) ,以及i g m p 协议( i n t e r n e t 组管理协议l 2 3 4 传输层 传输层主要为两台主机上的应用程序提供端到端的通信。在t c p i p 协议组件中,有 两个互不相同的传输协议:t c p ( 传输控制协议) 和u d p ( 用户数据报卧议) 【儿j 。 t c p 为两台主机提供高可靠性的数据通信,提供的是面向连接服务。它所做的工作 包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设 罱发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应 用层可以忽略所有这些细节。 而另一方面,u d p 则为应用层提供一种非常简单的服务,提供的是无连接服务。它 1 2 堕堡堕里盔堂堡兰竺塞兰兰竺笙兰丝三垦望堕塑望 只是把称作数据报的分组从台主机发送到另一台主机,但并不保证该数据报能到达另一 端。任何必需的可靠性必须由应用层来提供。 2 3 5 应用层 应用层负责处理特定的应用程序细节。几乎各种不同的t c p i p 实现都会提供下面这 些通用的应用程序:t e l n e t 远程登录;f t p 文件传输协议;s m t p 用于电子邮件的简单邮 件传输协议;s n m p 简单网络管理协议。另外还有许多其它应用,不再一一详述。 2 4o s i 与t c p i p 体系结构的比较 2 4 1 协议分层结构 o s i 参考模型采用了七个层次的体系结构,过于复杂,现在流行的网络体系结构中 已经不使用o s i 的表示层和会话层了。 t c p i p 协议采用了四层结构,简化了o s i 模型中一些不是很重要的层。 2 4 2 功能处理 it c p i p 一开始就考虑到多种异构网的互连问题,并将网际协议i p 作为t c p i p 的重 要组成部分。 2 t c p i p 一开始就对面向连接服务和无连接服务并重。 3t c p i p 较早就有较好的网络管理功能。 2 。5 现有协议在嵌入式系统中的应用 嵌入式系统的最显著的特征是资源有限,用途基本上也是固定的。而t c p i p 协议是 很复杂的,在嵌入式设备上难以完全实现,而且由于很多功能并不是必要的,所以在目前 的嵌入式系统中使用t c p i p 协议并不是很好的选择。本文中通信协议的设计思想是,为 嵌入式系统设计一个相对简单,占用资源较少的协议供嵌入式系统之间进行通信,而其中 的服务器节点采用性能较强且包含有t c p i p 协议的系统,能直接连到i n t e r n e t 中,其它 嵌入式系统可以通过此服务器连接到i n t e r n e t 。 13 南京邮电大学硕士研究生学位论文 第三章嵌入式系统通信悱泌( e s c p ) 的设计 第三章嵌入式系统通信协议( e s c p ) 的设计 为了实现嵌入式系统间能方便的进行通信,本文提出了一种嵌入式系统间的通信协议, 称之为e s c p ( e m b e d d e ds y s t e m c o m m u n i c a t i o np r o t o c 0 1 ) ,它提供了一组类似标准s o c k e t 的 通信接口,为p d a ,手机等不同的嵌入式系统提供了一种可靠的通信方式,它负责向不周 的系统封装,传输和分发数据包。设计此协议的i i ! 的是为程序开发人员提供一种简单的通 信方式,而不用去了解各个平台的驱动编程等细节。 3 1e s c p 基本概念 e s c p 类似于t c p i p 协议栈,但与t c p i p 又有很大不同。它不需要路由器和交换机,每 个e s c p l ;) j 、议栈都有路由的功能。它的网络中最多只能有2 5 4 个节点,不但可以用网卡连接,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 表格数据分析课件
- 办公软件课件下载课件
- 变更顺序课件
- 沪教版小学四年级道德与法治期末测试卷2025-2026上学期
- 蚌姑娘绘本课件
- 2026年赛车知识考试题库及参考答案
- 2026年制油工技术考核模拟试卷及答案
- 2026年内蒙护士模拟试卷及参考答案
- 老年营养性皮肤病模拟试卷及答案
- 2026年防爆证考试模拟试卷(含答案)
- 2025-2026学年北京市文汇中学教育集团九年级(上)期中语文试卷
- 基础化学仪器分析课件
- 2025承插型盘扣式钢管脚手架安全管理要点培训
- DG-TJ08-2144-2025 公路养护工程质量检验评定标准
- 上海市郊野乡村风貌规划设计和建设导则二
- 误伤私了协议书范本
- 生物化学 -第四章 酶
- 2025版中石化石油化工项目可行性研究报告编制规定
- 2024年秋新沪教牛津版英语三年级上册 Unit 5 第1课时 教学课件
- 2024丽泽商务区规划
- 【课件】Unit5+Fun+Clubs+Section+A课件人教版七年级英语上册
评论
0/150
提交评论