(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf_第1页
(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf_第2页
(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf_第3页
(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf_第4页
(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(电路与系统专业论文)基于嵌入式linux的dsrc通信协议设计与实现.pdf.pdf 免费下载

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

文档简介

硕士论文 基于嵌入式l i n u x 的d s r c 通信协议设计与实现 摘要 电子不停车收费( e t c ) 技术作为新一代的智能交通系统( i t s ) 中的一项关键技术, 正在得到越来越广泛的应用。专用短程通信( d s r c ) 协议是专门应用于e t c 中的一种 专用无线通信协议。电子收费专用短程通信系列标准是e t c 系统中路边单元( r s u ) 与车载单元( o b u ) 之间进行通信协议的国家标准,这一标准的制定使得不同厂商独立 开发o b u 或r s u 设备成为可能。 本文研究分析了d s r c 协议的层次结构,将d s r c 与0 s i 参考模型做了对比,重点 对数据链路层的内容进行了分析。在此基础上,结合嵌入式l i n u x 系统的特点,在利用 操作系统提供的机制和组件的基础上考虑d s r c 的具体要求提出了一套完整的d s r c 实 现方案。 本文在选用合适的硬件平台的基础上采用c 语言方式实现了数据链路层软件,详细 描述了软件中的内存管理、定时器管理、帧处理等子模块的功能和原理。采用流水线设 计方式设计了阳) l c 通信模块并使用f p g a 实现,详细描述了帧接收与帧发送模块的内 部结构及原理。此外,本文还研究了抽象语法标记语言( a s n 1 ) 的原理和应用方式, 实现了应用层中对数据进行分段和并段操作的功能。 关键词:电子不停车收费,专用短程通信协议,数据链路层,高级数据链路控制, 嵌入式系统,现场可编程门阵列 a b s 廿a c t硕士学位论文 a b s t r a c t a sak e yt c c l l i l o l o g ) ro f 位n e wg e n e r a t i o ni n t e l l i g e n tt r a i l s l ) o r t a t i o ns y s t e m ( i t s ) , e l e c 仃o i l i ct o uc o l l e “o nt e c l l l l o l o g ) rh a sb e e n 诵d e l y 邯e di i lt o d a y s 、r l d d e d i c a t e ds h o r t m j 萨c o i 姗u n j c a t i o i l s ( d s r c ) p r o t o c o l i so n el 【i n do fp r o p r i e t a d ,埘r e l e s sc o 衄u i l i c a t i o n p r o t o c o l 慨s p e c i f i c a l l y 印p l i e dt 0e t cf i e l d s s 丽e so fn a t i o 吼咖d 矾sh a v e b e e nm a d e t 0 f 0 吼u l a t e 舭c o m m 啪i c a t i o nb c h a v i o r 融w e 饥恤r 0 a d s i d eu i l i t ( r s 奶觚i dt b co n - b o r d 删t ( o b n e s es t a l l d 锄i sm a k ed i 虢r e i l tv e n d e r sr e s e a r c ha n dd e v e l o po b u sa n dr s u s i n d e p e n d e n t l y 砸sp 印e rs t u d i e s 舭d s r cp r o t o c o ll l i e r a r c h y f o c l l s i n g0 n 此c o n t e n to f 也cd a t a1 i 1 1 k l a y e r ,廿1 e nm a k e sac o m p 锄t i o nb 娟e e no s ir e f e r e i l c ei n o d e l 锄dd s r cp r o t o c 0 1 o nn l o b a s i s ,w i t hc o 邶i d e r a t i o no fb o ms p e c i f i cr e q u i r e m e n t so fd s r cp r o t o c o la 1 1 dl i i l _ u xs y s t e m c h 绷耐s t i c s ,im a d eac o m p l e t es c h e 】呲o fd s i 屺 w ,ec h o s et l l e 印p r o p r i a t eh a r d w a r ep l a t f l 0 眦a n di m p l e m e n t 圮s o 侍w a r eo f 纰l i l l l 【 l a y e rb yu s i n gcp f 0 j 瞵衄m i n gl 锄g u a g c d e t a j l e dd e s c r i p t i o 璐o ff b l l c t i o 璐a n dp 血c i p l e s0 f s u b - m o d u l e si i lt l 伧s o f l 眦鹏a r eg i v e ni nn l ef 0 1 l o 埘n gp a s s a g e s w bd e s i 弘m eh d l c m o d u l eb yf o l l o 讹gm ep i p e l i l l e dd e s i 弘p 血c i p l e ,a n di i i l p l e m e n ti tb yu s i i l gf p g a i n t e m a ls 仃u c t i 鹏锄dp r i n c i p l eo f 玎9 l cm o d u l ec 趾b es e e ni i ln l i sp 印e ft o o 1 1 1a d d i t i o 玛 t 1 1 ep a p e re x p la i :略t 1 1 ep r i n c i p l eo fa b s 缸a c ts y n t a ) 【n o t a t i o nl 卸g u a g ea i l d1 1 0 wt 0u s ea s n 1 c o m p i l e ri i lo u rp 厕e c t i ta l s or e c o r d si n yr e a l i z a t i o no fd 抛s e g m e n t 龇l dr e s e g m e n ti n a p p l i c a t i o nl a y e r k e yw o r d s :e l e c 仃0 1 1 i ct 0 l lc o l l e c t i 吗d e d i c a t e ds h o nr a n g ec 0 m m 砌c a :t i o n s ,d a t al i l l l 【 l a y e r ,h i g l ll e v e ld a t al i i l l 【c o n 们l ,e m b e d d e ds y s t e m ,f i e l d p r o g r 黝a b l eg a t c 氏喇 硕士论文 基于嵌入式l i n t l ) 【的d s r c 通信协议设计与实现 l 绪论 1 1 论文的研究背景 随着经济发展,城市交通堵塞问题已经成为世界性的顽疾,影响到人们的生活、工 作的方方面面。人们对交通运输系统的要求越来越高。同时科学技术的飞速发展使得人 们可以有更好的方式解决交通拥堵问题。其中在大力发展建设各项交通基础设施的同 时,如何在现有路况情况下有效解决交通拥堵问题变得越来越重要。目前各国都在积极 研究智能交通系统( n e l l i g e n tt r a r l s p o r ts y s t e m ,i t s ) 【。智能交通系统将信息技术, 数据通信技术,电子传感技术以及计算机处理等技术有机地整合在一起,集成应用于交 通管理体系中。i t s 旨在借助现代化科技改善交通状况达到”保障安全,提高效率、改善 环境、节约能源”的目的。 目前国内的高速公路已经初具规模,但大部分的高速公路都还是采用传统的人工收 费方式。当交易量达到一定程度,人工收费就会显得效率低下,越来越难以满足现代交 通的需要。在传统人工收费模式下,车辆需要排队进入收费车道,每辆车的收费时间较 长,在车流量大的情况下,高速公路收费车道成为影响交通流量的瓶颈,而增加收费车 道扩大收费站规模也只是权宜之计,不能从根本上解决问题。为此利用现代科技手段, 使公路收费脱离传统的现金支付方式的电子不停车收费技术( e l e c 仃o i l i ct o l lc o l l e c t i o n , e t c ) 应运而生,它采用现代通信手段采用无线通信技术,实现车辆在运动中的电子支 付功能,既保证了公路收费的安全性和可靠性又同时大大提高了效率。 从作用距离上说无线通信包括超长距离通信、长距离通信、中等距离通信、近距离 通信和专用短程距离通信等【2 j ,e t c 系统采用的专用短程通信技术( d e d i c a t i 甜s h o r t 凡m g ec o i n m m l i c a t i o n ,d s r c ) 圳,是根据电子收费特点设计的满足特定功能需求的短 程通信技术,为e t c 系统可靠的通信支持。 1 2e t c 系统介绍 1 2 1e t c 系统简介及核心技术介绍 电子不停车收费系统是目前被世界各国推广及普及的先进的收费系统,它属于智能 交通服务系统的一部分,适用于高速公路、桥梁、隧道、停车场等交通密集的地点使用 【4 】。只需要在车辆上安装与系统兼容的感应卡并预存一定费用或者办理相应的业务,在 l 绪论硕士学位论文 通过收费站时,就可以免除繁琐的人工收费,无须停车,费用自动从卡中扣除,实现自 动收费。整个收费过程耗时很短,可以在几秒内完成,通行能力是人工收费方式的数倍 甚至数十倍【”。电子不停车收费系统的应用符合公路收费管理向自动化,信息化方向发 展的大趋势,既节约了收费车道的建设成本和人工成本又保证了票款的安全,有效杜绝 了人工收费中票款流失的现象。 e t c 技术在国外已经有很长的研究及应用历史,世界上许多发达国际及地区都建立 了自己的电子不停车收费系统并实现了局部甚至全国性的联网并取得了不错的经济效 益和社会效益。我国也从9 0 年代后期开始逐渐在经济发达的省份及地区应用这一技术, 在广东地区已经初步实现了局部联网【6 1 。 该系统包括前端系统和后台系统,前端系统包括车道控制子系统,路边单元( r o a d s i t eu n i t ,r s u ) 、车载设备( o nb o a r du n i t ,o b u ) 、集成电路卡( i n t e g r a t ec i r c u i tc a r d , i c c ) 组成,如图1 1 所示【7 1 。 2 r s u 懋 多;发垤用爆_ l 吴通 ,尝i 。舟 f d s 尺c 车通挖制 器 :电子收费蓟端系统 : l m 一一w * _ 一* * 图1 1e t c 交易示意图 电子收费后台 清算、服务网络 图1 _ 2e t c 系统构成 在e t c 交易过程中,电子支付的信息被加密储存在加密的i c c 卡中,车载设备0 b u 硕士论文 基于嵌入式l i n l l x 的d s i 汇通信协议设计与实现 通过i c c 访问接口访问支付信息,并通过专用通信协议与路边设备r s u 交换各种电子 收费中使用的信息。r s u 通过与车道控制计算机交互的方式完成交易流程,车道控制计 算机是e t c 系统的心脏,负责对整个系统的控制,通过与后台数据库的交互完成交易 信息在i t s 系统中的更新【7 1 ,图1 2 描述了各个模块的交互情况。 整个交易流程是严格定义了的,图1 3 给出了一次正规交易的流程示例。首先r s u 从o b u 获取自动车辆识别( a u t o m a t i cv e i l i c l ei d e n t i f i c a t i o n ,a v i ) 信息,o b u 设备是 与车辆绑定的,所以o b u 中储存了车辆的基本信息。然后将这些信息返回给车道控制 计算机,车道控制系统需要通过查询数据库的方式验证这些信息的合法性,并做相应的 记录,a v i 系统可以与e t c 系统收集到的实际车辆信息做比对,这一验证过程事实上完 成了对车辆的基本检查工作。如果a v i 信息验证通过则启动支付流程。 s e 息 售助信息 车道控制系统 验证 v i 信息 a v i 验证通过 验证支付辅助信息 计算支付额并传输 传输支付记录 图1 3e t c 交易流程示意 e t c 的关键技术包括以下几个方面:【s 】 1 自动车辆识别技术: 2 自动车型分类( a u t o m a t i cv e l l i c l ec 1 2 l s s i f i c a t i o n ,a v c ) 技术: 3 专用短程通信技术; 4 逃费抓拍系统( d e oe n f o r o e m e n ts y s t e m ,v e s ) 。 与这些系统有关的装置设备在图1 4 中给出了形象的说明,这些功能是构成一个功 能可靠的e t c 系统所必备的,控制图中设备整体工作运行的是车道控制计算机,他是 e t c 系统的心脏,负责完成交易数据的采集处理和向外发布命令。同时车道控制计算机 l 绪论 硕上学位论文 也是i t s 系统的一个终端,连接在整个系统之中。 童b 挣t j 嚣 二一c r 多 ,一 j 耋艇三t c 士缓 图1 4e t c 收费车道不恿图 发展e t c 系统的重要意义: 1 提高公路收费管理水平、服务水平 缓解交通压力,提高通行效率,有效防止通行费流失的现象。当电子收费卡的应用 达到一定程度,可以大大减少工作人员的工作量以及公路管理成本。 2 促进交通信息化发展 联网收费环境下的e t c 系统,可以收集各种信息源,通过对这些信息的挖掘可以为 公路事件检测、拥挤预测以及运行时间预测提供必要的数据,为交通规划提供数据支持。 此外,e t c 还可以与g p s ( g 1 0 b a lp o s i t i o n i n gs y s t e m ,全球定位系统) ,g i s ( g e o 铲a p h i c i n f o n n a t i o ns v s t e m ,地理信息系统) 结合以便全面提高交通信息水平,更好的发展我 国智能交通运输体系,推动自主产权的交通技术发展。 3 满足持续增长的交通量的需求 采用传统收费方式的车道,每小时最大通行能力在1 8 0 辆左右,显然无法满足未来 道路交通的需求,而采用增加收费车道数量的方式也只是缓兵之计,只有大力发展e t c 技术才能从根本上解决这一难题【9 】。 1 3d s r c 通信协议介绍 1 2 2 国内外研究及应用现状介绍 欧洲、美国和日本等国外先进国家和地区很早就开始研究电子收费系统,已成功的 建设并应用了一些e t c 项目,以下做简单介绍: 4 硕士论文 基于嵌入式l i n l l ) 【的d s r c 通信协议设计与实现 1 ) 欧洲国家 欧洲的从8 0 年代就开始实施e t c 系统( t e l e p a s s ) ,经历了从第一代电子标签系统 到第二代电子标签系统的转变过程。现在使用的第二代电子标签特点是采用5 8 g h z 的 d s i 配通信方式,支持可读、可写两种访问方式。意大利的t c l e p a s s 系统是欧洲最大的 e t c 收费网络,超过三分之一的收费站都采用不停车收费方式。电子收费这一新型的收 费方式在欧洲国家已经被民众广泛的接收。 2 ) 美国的e z p a s s 系统 美国著名的联网e t c 系统叫做e 。z p a s s ,从1 9 9 7 年开始实施该工程的最终运行方案, 此后的数年间,e t c 系统的覆盖率和通行量迅速激增。电子不停车收费方式大大降低了 美国高速公路的管理和养护成本,收到了很好的社会效益和经济效益。e z p s s 系统采用 e t c 专用车道、混合车道并存的混合方式,采用开放式收费制式网络。 3 ) 日本e t c 系统 日本的e t c 系统是世界上最大的联网e t c 系统,采用政府协调企业参与的方式建 设,到1 9 9 9 年开始实施全国性的e t c 网络建设,从东京都开始,逐渐覆盖到大阪等其 他城市和地区。日本采用双向通道,收费车道设有双向开启的栏杆双向的e t c 天线, 因此自动化程度很高通行能力和安全性更高,但是采用这一方案的e t c 系统成本很高, 与我国的实际国情不符。 4 ) 国内的e t c 系统 e t c 技术在中国的已经有1 5 年的发展历史了,大小的应用项目有几十个涉及国内 外几十家技术公司,使用的频率有9 1 5 m h z ,2 4 5 g h z ,5 8 g h z 三种,目前在北京、上 海、广东等发达省份和地区已经开始得到应用。然而,受各种条件的限制,我国的e t c 技术的应用依然不够广泛发展也很缓慢,其具体原因是多方面的。 我国的多数高速公路采用封闭收费的方式,无法进行统一的账户和资金管理导致e t c 系统的实施困难且成本增高,投入与取得的社会效益以及经济效益差距较大。此外技术 服务及售后服务的问题也一定程度上困扰着国内的e t c 用户,我国大多采用国外进口 的设备,在系统升级、售后服务、部件维修等诸多方面受到制约【埘。 从已经应用的e t c 项目中可以发现初期采用的多是单片式电子标签,这是因为国外 的单片式e t c 系统技术先进、产品成熟,但是这并不符合国内现有的收费系统的需求, 盲目的照抄、照搬国外的模式是不对的,所以在2 0 0 0 年7 月我国的交通部门提出了两 片式电子标签加双界面c p u 卡的组合收费技术方案。这种方案能够兼容i c 卡收费和 e t c 电子收费两种收费方式,有效的整合了已有的资源成为行业内关注的焦点。双界面 i c 卡的信息可以通过接触式和非接触两种方式进行读写。这一组合方案的具体应用场景 如下:在e t c 专用收费车道中有天线控制器以及非接触i c 两种收费设备,在交易量大、 易产生交通瓶颈的收费站驾驶员将i c 卡插入双片式e t c 电子标签中实现不停车收费; l 绪论 硕士学位论文 在车流量小的收费站,只设有i c 收费设备,驾驶员需要从电子标签中拔出i c 卡,手动 刷卡方式进行交费【l l 】。 1 3 1d s r c 通信协议简介 d s r c 是一种高效的无线通信技术,它可以实现在特定的小区域内( 通常为数十米) 对高速运动下的移动目标的识别和双向通信,例如车辆的“车路、“车车”双向数据 通信,随着互联网技术的发展和汽车多媒体技术的应用,利用d s r c 承担更大的带宽实 现传输图像、实现车辆与道路有机的连接成为d s r c 一个发展趋势。d s r c 可以被广泛 的应用于出入控制、不停车收费、车队管理、信息服务等各个领域【屹】。 d s r c 可以应用在i t s 系统中的多个方面,包括电子不停车收费,道路交通信息收 集,车辆管理和防盗,公共交通管理,安全行驶支持还可以为城市规划和道路规划提供 可靠的交通数据。 1 3 2d s r c 通信协议结构介绍 d s r c 协议是依照o s i ( o p e ns y s t e mi n t e r c o 皿e c t ,开放式系统互联) 七层模型提出 的,它采用对应的三层通信协议结构。包括物理层,数据链路层和应用层分别对应o s i 的l 1 、l 2 、l 7 层。针对e t c 系统的特点,d s r c 重点强调的是小范围内实现高实时性 的数据传输,因此协议的设计相对简单、高效并具有一定的可靠性。 图1 5 展示了d s i 通信协议与o s i 参考模型之间的对应关系。d s r c 没有实现o s i 中的运输层和网络层的功能,这是由e t c 系统的通信特点决定的,而这两层在实际的 应用的网络协议( t c m p 协议) 中往往是最复杂的部分【b 】。 设备及业务流程 应用层 数据链路层 物理层 应用层 表示层 百均,虿 运输层 网络层 数据链路层 物理层 硕士论文 基于嵌入式l i i l u x 的d s r c 通信协议设计与实现 表1 1 层说明 该层并不是o s i 模型中的应用层的简单对应。它包含了应用层、表示层和 会话层的部分功能,从字面意思上该层是提供应用程序的服务接口的层次, 事实上也正是如此。该层负责数据的分段、重装,以及多路复用等功能保证 数据的能顺利通过数据链路层交互,同时采用a s n 1 编解码的方式负责对数 据的封装和解释,向上层提供服务接口,使得独立的应用程序可以调用该层 应用层 提供的服务。应用层被分为三个核心模块:传输核心模块( 1 阳n s f e r - k e m e l , 简称k e m e l ) ,初始化核心模块( i i l i t i a l i z a t i o n - k e m e l ,简称i k c m e l ) 以及广 播核心模块( b r o a d c a s t - k e m e l ,简称b k e m e l ) ,其中t - k e m e l 是最重要的核 心,它负责数据的分段重装、传输控制、a s n 1 编解码工作,其他的i k e m e l 和b k e m e l 都是建立的t - k e m e l 之上的封装,根据自身的功能需求调用 t k e m e l 的功能【。 该层的主要功能是保证数据比特流的可靠传输,使得为上层呈现一条无差 错的线路。为完成这一目的,d s r c 规定了一些必要的参数和信息帧格式, 在数据链路层上传输的数据单位是信息帧。d s r c 将数据链路层分为媒体访 数据链路层问控制( m e d i a a c c e s sc 0 n n 0 l ,m a c ) 和逻辑链路控制( l i n kl a y e rc o n 仃0 l , l l c ) 两个子层。m a c 层负责对通信媒体的访问控制,l l c 层为上层服务提 供一个统一数据链路接口,提供了无连接有应答以及无连接无应答两种传输 服务,还负责数据链路层上的差错控制和恢复功能【侈l 。 该层的功能是将比特流从一个设备传输到另一个设备。物理层采用帧控制 信道、数据信道、分时以及同步操作等传输功能,处理帧控制信道、数据信 物理层 道的控制。d s r c 协议中规定了无线通信使用的传输媒体以及上下行链路的 物理特性参数,例如通信用频率、数据速率、调制方式、发射功率等参数【嘲。 该层从通信协议的概念上来说并不应算入通信协议的必须部分。该层的功 能实际上是与e t 的应用和功能密切相关,不对应于o s i 参考模型中任何一 层。设备应用层为上层应用提供一些服务原语完成e t 应用具体业务流程。 设备应用层 在d s r c 国家标准中规定了以下几种业务流程:o b u 发型流程、入口车道储 值卡( 记账卡) 交易流程、出口车道储值卡( 记账卡) 交易流程、合建站储 值卡( 记账卡) 交易流程以及标识站流程等。【7 】 1 4 主要研究工作及论文结构 1 ) 完成的工作 7 1 绪论硕士学位论文 1 学习嵌入式l i n u ) ( 开发的相关知识,熟悉d s r c 国家标准: 2 完成d s r c 通信协议软件架构的设计; 3 通信协议基础模块的实现,包括内存管理,定时器管理: 4 数据链路层收发流程实现; 5 采用f p g a 实现h d l c 模块。 2 ) 本文的结构 第一章是全文的绪论部分,分析了e t c 系统的背景及国内外的研究及应用现状。 第二章是对d s r c 通信协议的具体分析,详细分析了国家标准中针对不同层次规定 的规范、接口及其中重点需要注意的问题,该章的最后部分是d s i 坨与o s i 参考模型的 对比分析。 第三章是关于d s i 坨协议栈数据链路层软件的设计和实现的内容,分析的内容包括 r s u 软硬件平台的架构以及嵌入式l i n u ) ( 平台开发的相关知识,实现的部分包括内存管 理、定时器管理、数据结构以及收发处理流程若干方面,配有相应的流程图、数据结构 及函数表。 第四章是关于符合d s r c 规范的 玎d l c 模块的设计与实现,首先介绍了h d l c 设 计实现中用到的流水线及状态机的原理,之后总体介绍了瑚) l c 的架构,最后将皿l c 分为发送模块及接收模块两个方面分析,配以相应的模块图和端口及内部寄存器说明 表,对每个子模块的工作原理都一一做出说明。 第五章是本文对d s r c 应用层做的一些工作的总结,介绍了a s n 1 抽象标记语言的 工作原理及作用,分析了通用的a s n 1 编译器的工作原理,介绍了一个开源的a s n 1 编译器a s n l c ,最后是本文实现的应用层分段和并段函数。 8 硕士论文基于嵌入式l i n u x 的d s r c 通信协议设计与实现 2d s r c 协议栈标准 2 1 国家标准概述 我国的e t c 技术规范的标准化责任部门国家智能运输系统中心于2 0 0 6 年7 月 正式对外公布了电子不停车收费标准草案,2 0 0 7 年3 月1 9 日,有关部门发布了g b 厂r 2 0 8 5 1 2 0 0 7 电子收费专用短程通信【1 7 1 。随着国家标准的出台,我国的d s r c 技术 发展有了一个统一明确的方向,也为我国未来电子不停车收费核心技术进步和健康发展 奠定了坚实的基础。 rmi(mu 语 图2 1d s r c 核心框架图 我国的e t c 应用d s r c 技术标准是基于开放系统互联参考模型( o p e ns y s t e m i n t e r c o r u l e c t i o nr e f e r e n c em o d e l ,o s i ) 【1 8 l 架构提出的精简通信体系,该体系基于实时 系统普遍采用的o s i 三层架构,分为物理层( p h y s i c a ll a y e r ) 、数据链路层( d a t al i i l l ( l a y e r ) 和应用层( a p p l i c a t i o nl a y e r ) ,图2 1 展示了d s i 的核心框架结构。 9 2d s r c 协议栈标准 硕士学位论文 2 2 物理层 g b 厂r2 0 8 5 1 2 0 0 7 中i 峪u 与o b u 之间的上行和下行链路参数具体指标由参照参考 文献【1 5 1 中的表格。物理层包括了a 、b 两种要求,a 类要满足基本的e t c 应用需要,b 类在满足e t c 应用的基础上,还要满足高速率数据传输应用的需求【1 6 1 。 2 3 数据链路层 数据链路层常简称为链路层。在数据链路层之间传输的信息单元是帧,该层负责信 息的可靠传输,提供差错控制和流量控制的功能。为上层提供一条无差错链路该层定义 了数据通信帧的结构。该帧中包括了数据信息和必要的控制信息( 如同步信息、地址信 息、差错控制等) 【1 9 】。d s r c 中数据链路层又称l 2 层,所以该层的传输单元又叫做第 二层帧,协议规定了第二层帧的最大长度为1 2 8 个八位位组。数据链路层分为m a c 子 层和l l c 子层两层【l 引。 m a c 子层提供的服务包括专用链路的建立、从l l c 子层接收链路层数据单元( l i i l l ( 1 a y e rp r o t o c o ld a t au n i t l p d u ) 、循环冗余校验码( c y c l i cr e d u n d a n c yc h e c l ( c r c ) 的计算 与校验、将生成的第二层帧发送、接收帧、帧有效性校验、通知l l c 层接收信息。其 中r s u 和o b u 的m a c 层提供的服务在专用链路建立,和帧校验上有一定的差别。 1 ) 信息帧 链路层的以帧的方式交换数据,帧包含m a c 地址、m a c 控制域、l p d u ( 可选) 和帧校验几部分。根据l p d u 的类型又分为含命令l p d u 的帧和含响应l p d u 的帧。具 体帧格式见参考文献1 5 】中的相关定义,图2 2 展示了第二层信息帧的完整结构。 一 l p 叫( 响应) 地址i 眦控制域眦控制域l 眦状态域i l s d u 帧校验 图2 - 2 第二层帧封装方式 2 ) m a c 地址与m a c 控制域 m a c 地址分为广播地址和专用m a c 地址。广播m a c 地址用于r s u 对所有o b u 的访问,专用m a c 地址用于r s u 对特定o b u 的访问。广播m a c 地址取值应为3 2 位 全“l 比特:0 x f f f f f f f f ;专用m a c 地址取值应为3 2 位非全“l 比特。 m a c 控制域包括m a c 对物理层的控制参数。r s u 与o b u 之间的通信方式是主从式的, l o 硕士论文 基于嵌入式l i n u x 的d s r c 通信协议设计与实现 所以两者对物理层的访问控制是不对称的,因此m a c 控制域对上下行帧采用不同控制 格式,具体格式见参考文献【1 5 1 中的相关表格。 3 ) 帧校验序列 帧校验序列( f r 锄ec h e c ks e q u e n c e ,f c s ) ,f c s 的计算范围包括m a c 地址、m a c 控制域和l p d u 三部分。f c s 为1 6 比特其生成多项式为x 1 6 _ 卜x 1 2 + x 5 + l ,使用的初始 值是0 x f f f f 。 4 ) l l c 子层 l l c 产生用于传输命令p d u 和响应p d u ,并解释接收的命令p d u 和响应p d u 。 l l c 层的主要功能有:控制信息的初始化、组织数据流、解释接收到的命令p d u 并生 成适当的响应p d u 、l l c 子层的差错控制与差错恢复1 2 叫。 2 4 应用层 应用层是构建于数据链路层之上的通信层次,它在可靠链路的基础上,负责提供 d s r c 一些基本功能如广播服务以及为上层服务提供有意义的数据传输和服务。构建于 应用层上的应用,通过应用层提供的s e t 、g e t 等服务原语和远程对等实体进行数据通 信或者互操作,在该层传输的数据单元被叫做a p d u ( a p p l i c a t i o np r o t o c o ld a t a 咖t ) , 可以是任意长的数据任何类型的数据,应用层负责将这些数据分片并重组后传达到远程 对等实体。 目咖 图2 3 应用层核心框架 2d s r c 协议栈标准 硕士学位论文 d s r c 国家标准中定义了应用层的功能内容包括:提供数据传输服务、多应用复用 功能、级联及级联链功能、抽象语法定义a s n 1 的编解码、通信的初始化以及释放过程、 广播服务支持【1 4 1 。 根据d s i 坨的特殊功能需求,应用层框架被设计成三块实现( 参见图2 3 ) ,分别是 t - k e m e l ,i k e r l ,b k e n l e l ,其中t - k b m e l ( 简称t - k e ,传送内核) ,完成主要功 能,是数据传输的基础,i k e 和b k e 是在t - k e 上的封装,分别完成初始化任务和广 播任务。r s u 侧与o b u 侧的应用层略有不同,r s u 侧发送请求原语是r e q u e s t ,上层用 户收到c o i l f i m 原语,o b u 侧发送请求原语是m q u e s t 而上层收到的时i 1 1 d i c a t i o n 原语。 1 ) t - k e 功能 t l ( e 通过将预定义的服务原语转换成t a p d u 及其逆过程,在两个服务用户之间传 送信息,是对传送的具体实现的抽象表示。其中确认模式和非确认模式的使用的服务如 图2 4 和图2 5 所示: r e q u e s t i n d i c a t i o n 。 c o n f i n 一r e s p o n s e 图2 4 确认模式下使用的服务 r e q u e s t - i n d i c a t i o nl 图2 5 不确认模式下使用的服务 表2 1 是t - k e 提供的所有服务原语,可以发现,g e t ,s e t 等原语类似于p o s 标准( p o r t a b l eo p e r a t i n gs y s t e mm e r f a c eo f u i l i x ) 中对文件的o p e n ,r e a d ,、砸t e ,c r e a t e , r e m o v e 操作,只是这些操作对应的是远程的数据文件,而不是本地文件。所以类似而的 这些原语中使用的a s n l 数据类型,自然包含了f i l e ,o 舔e t ,l e n g t h ,f i l e l i s t ,f i i e c o n t e m , m o d e 等对文件操作所必须的数据,所不同的是这些操作是远程操作,所以自然需要包 括一些额外的数据信息,如l i d ( 链路标识) r i e t ( 返回码) 以及a c c e s s c r e d e n t i a l s ( 访 问凭证) 这样的安全信息。由于是远程操作,数据通信总是存在不可靠行,所以r e t 就 包含了各种可能发生的错误信息。所以在应用层中的这些操作很像是操作系统中的l i b c 库,在用户程序和操作系统调用之间做的一个粘合层,只是它们所调用的不是系统调用 而是数据链路层服务原语。理解了以上的内容对下文分析应用层的功能很大的帮助。 硕士论文 基于嵌入式l i n l l ) c 的d s r c 通信协议设计与实现 表2 1t - k e 服务 序号服务服务功能 从对方获得应用需要的数据文件, 必须工作在确认模式下,且需要应答 1g e t 由应用启用,用以读出对方应用信息数据文件。只能在确认 模式下才能请求该服务,并要求应答 更新或者说是修改对方的应用信息数据文件, 2s e t 可以工作在确认或者不确认模式下,前者要求应答 在对方目录中创建目录或者文件, 3 c r e a t e 工作在确认模式下,需应答 4r e m o v e 从对方的目录中删除目录或者文件,工作方式同上 控制对方完成特定的操作,具体的操作由发送的数据信息决 5a c t 工o n 定,可工作在确认与不确认两种模式下,前者需应答 i k e 专用,向同级应用或者工一k e 报告时间, 6e v e n t r ep o r t 确认模式,需应答 7i n i t i a l iz a t 工o ni k e 专用,r s u 用于初始化与其建立通信的o b u 2 ) t k e 传送过程 t k e 的传送过程由图2 6 说明: 1 s d u 转换成p d u ,k e 将请求的s d u 根据国标附录中的规定封装成相应的 s e q u e n c e 结构体。 2 编码,根据a s n 1p e r ( p a c k e de n c o d i n gr u l e s ,紧缩编码规则) 编码成相应的 二进制码。 3 分段,由于数据链路层中l l c 对信息帧的的最大长度做了规定,所以需要对p 叫 进行t a p d u 分段,每个t a p d u 分段中带有字头,这是为了最对等端将这些分段收集起 来还原成相应的信息。除末尾段外,所有分段中的位数均应为八位的倍数,且长度应 相同。根据所需分段的数量可以采用一个八位位组,两个或者三个八位位组的分段 头,最大分段数量为6 5 5 3 5 。以下给出一个八位位组的分段字头的机构说明。 4 分段字头应包含分段指示符、p d u 编号、分段计数器和分段编号扩展指示符组成。 相关比特的位置见图2 7 。各比特按从7 到o 的顺序编号,其中7 是最高有效位,0 是 最低有效位。 1 3 2d s r c 协议栈标准 硕士学位论文 图2 6t - k e m e i 传送过程示意 76543 2 l0 扩展 分段 p 叫编号 分段计数嚣 指示符 指示符 图2 7 一个八位位组的分段字头 5 八位位组对齐,因为整个编码后的二进制码长度未必是8 的倍数,所以需要对 分段的最后一帧进行补0 操作,使得最后一段也是8 的整数倍。 6 访问l l c 层服务,t k e 应使用t _ a p d u 的数据流控制参数中所指定的l l c 服务。 对i n i t n l i z a t i o n r e q u e s t 服务,应使用带有响应请求的d l u n i t d a l 队r e q u e s t 服 务,对于玳i t 认l i z a t i o n r e s p o n s e 服务,应使用不带响应请求的 d l u n i t d a r a r e q u e s t 服务。 7 拼接,对使用l l c 服务及其l i d 都相同,且不超过l l c 最大帧的长度,多个 连续t a p d u 可被映射到一个l l c 服务上进行拼接,这也是提高传输效率的一种策略。 1 4 硕士论文 基于嵌入式l i n u x 的d s r c 通信协议设计与实现 图2 8 多路复用 8 多路复用,多个传输服务可以使用同一条通信链路,称为多路复用,复用时根 据特定的优先权进行,复用优先权由i k e 给出。 而在对等实体另一端的解复用,并段,及解码过程是对应上述过程的逆过程而已, 这里不做详细说明。值得注意的是当完成解码时,需要根据s i d 域信息,将s d u 分发给 相应的应用的接收区。 此外,d s r c 标准中给出了应用层使用的各种a s n l 数据结构的定义,这些定义可 以直接交给嬲n 1 编译器处理以生成相应的c c + + 数据结构和编解码函数。 2 6d s r c 协议栈与o s i 参考模型对比 参考o s i 标准制定的通信协议却被广泛地应用,o s i 对于指导和分析通信协议有其 重要的意义,而d s r c 标准又是基于o s i 参考模型制定,所以研究o s i 参考模型对理 解d s r c 很有帮助。 2 6 1 协议与层次划分 两个系统间的有条不紊的数据交换,必须遵守一些事先约定好的规则,这些规则明 确规定了所交换的数据格式以及同步的问题。协议通常有两种不同的形式,一种用于人 来阅读和理解文字的描述。另一种是可以编译执行的程序代码。两种不同形式的协议都 必须对信息交换过程做出精确的解释【2 l 】。 经验表明对于复杂的通信协议,其结构应该是分层的。分层带来了许多好处: 1 各层之间是独立的:某一层不需要知道它的下一层如何实现,仅知道层间的接口 1 5 2d s r c 协议栈标准硕士学位论文 提供的服务。由于每一层只实现相对独立的功能,因此可以将一个复杂的问题分解为几 个容易解决更小的问题,系统的复杂度降低了。 2 灵活性好:当任何一层内部发生变化,只要各层的接口关系保持不变,该层上下 两层都不受影响。此外,对某一层提供的服务还可以进行修改。当某层提供的服务不 再需要时,甚至可以取消该层1 2 l j 。 3 结构上可以分隔开:各层可以根据情况采用最适合的技术实现。 4 易于实现和维护:分层结构使得实现和调试一个庞大而又复杂的系统变得易于处 理,因为整个系统已经被分解为若干个相对独立的子系统。 5 能促进标准化工作:因为每一层功能都有了精确的说明。 通常各层所要完成的功能主要有以下一些( 可以包括一种或者多种) 【2 l j : 1 差错控制,使得对等端的相应层次通信更加可靠。 2 流量控制,使得发送端的速率不要太快,要使接收端来得及接收。 3 分段和重装,发送端将要发送的数据块划分为更小的单位,在接收端还原。 4 复用和分用,发送端几个高层的会话复用一条低层的连接,在接收端进行分用。 5 连接建立和释放,交换数据之前需要先建立一条逻辑链路,传送结束后释放连接。 分层的缺点:分层当然也有一些缺点例如:很多功能会在不同的层中重复出现, 因此产生了额外的开销。 2 6 2 透明的概念 虽然应用进程要经过层间传递的复杂过程才能送到终点的应用进程,但这些复杂过 程对用户来说,都被屏蔽了,或者叫做“透明”了( “透明 是一个很重要的术语,它 标识一个实际存在的事物看起来好像不存在一样) 。假设主机1 的应用进程向主机a p l 的应用进程a p 2 传送数据,a p l 将数据传给本地上层每一层依次添加本次的控制信息 h e a d e r 到信息的头部之后传给下一层,最终交给物理层传送包含控制信息的比特流。当 主机2 接收到物理层接收到的信息后,逐层上传,根据收到信息的控制头部信息将信息 传送给对应的应用进程a p 2 【2 l j 。 2 6 3 对等实体和p d u o s i 参考模型把对等层次之间传送的数据单位成为该层的协议数据单元( p r o t l o c o l d a 协u 血,p d u ) 。这个词已经被许多非o s i 参考模型采用。在两个传送主机之间的任 意两个同样的层次( 如同是应用层) 被曾为“对等层 ( p e e rl a y e r ) 。而各层协议实际上 是两个对等层之间的传递数据时的规定。o s i 参考模型中的实体( e n t 毋) 表示任何可 发送或者接收信息的硬件或者软件进程。而协议是控制两个对等实体进行通信的规则集 合。在同一系统相邻两层的实体进行交互的地方,被称为服务访问点( s e r v i c ea c c

温馨提示

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

最新文档

评论

0/150

提交评论