(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf_第1页
(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf_第2页
(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf_第3页
(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf_第4页
(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf_第5页
已阅读5页,还剩88页未读 继续免费阅读

(计算机应用技术专业论文)蓝牙一致性测试软件的研究与开发.pdf.pdf 免费下载

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

文档简介

摘要 “7 7 0 8 6 ( 蓝牙技术自从诞生以来,特别是蓝牙特别利益组织( s 1 6 ) 成立以来,迅 速风靡全世界,其强大的生命力,来自它的跨平台互联能力,方便简捷的无 线接入解决方案。由于它的技术标准完全公开,不同专业领域,不同设备生 产厂家都可以在它的基础之上推出自己的p r o f i l e 产品,如传真、无绳电话、 耳机、麦克等等。这样,不同生产商的蓝牙解决方案之间是否能够顺利实现 互联互通,就成为蓝牙技术必须予以解决的问题。解决的方法就是蓝牙测试。 蓝牙测试从技术本质上说属于协议测试的范畴,而本文所讨论的蓝牙一 致性测试则属于协议一致性测试。目前,一致性测试是世界范围内进行最多 的软件测试活动。作者在总结前人理论成果的基础上,对于协议一致性测试 的流程,一致性测试中可运用的测试方法进行了重点阐述。总结了本地测试 法,远程测试法。分布测试法,协调测试法四种主要的测试方法。 蓝牙测试由于涉及面广,测试工作量大,仅仅依靠手工测试是不现实的。 而测试自动化技术目前已有较实用的理论。作者详细分析了测试自动化技术 中最重要的测试脚本技术,包括线形脚本,结构化脚本,共享脚本和数据驱 动脚本等五种常用脚本的实现,阐述了自动化比较和测试的前处理和后处理 工作:了 在篮牙测试实践一章中作者对自己从事的蓝牙测试工作进行了总结,着 重阐述了蓝牙协议b b 、l 2 c a p 、6 a p 、s d p 的一致性测试结构、测试结构中测 试点的设置、测试案例所测试的功能、测试环境搭建以及测试流程。 在大量的蓝牙测试实践基础上作者将测试自动化技术与协议测试特别 是一致性测试技术相结合,提出了一种蓝牙一致性测试自动化模型,并且将 此模攫应用于实践,开发了一个蓝牙一致性测试系统一致性测试仪。介 绍了b 1 u e t e s t e r 中测试脚本的实现包括测试脚本的语法、判断点和定时器、 一致性测试仪中测试脚本的执行过程等。对一致性测试仪的用户界面- - m s c 图、工作区和输出区窗口、执行器核心程序都做了细致介绍,最后给出了一 个完整的g a p 协议一致性测试实例和测试结论。 最后总结全文,指出了一致性测试自动化系统的几个有待改进的地方。 关键词:蓝牙,协议测试,一致性测试,自动化,测试仪,测试脚本,m s c 图 d i g , 方交通大掌硕士学位论文 - _ _ _ _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ - _ _ _ - _ - _ - _ _ _ _ _ _ _ _ _ _ _ _ _ _ r a b s t r a c t b l u e t o o t hk a sb e e np o p u l a r l ya c c e p t e db ya l lt h ew o r l df o ri t sh i g h p r o b a b i l i t yo fa i ri n t e r f a c ei n t e r o p e r a b i l i t y b e t w e e nd i f i e r e n tm a n u f a c t u r e r s d e v i c e s ,e s p e c i a l l yw h e nt h eb l u e t o o t hs i g ( s p e c i a li n t e r e s tg r o u p ) h a sb e e n e s t a b l i s h e d c o n t r i b u t e db yi t so p e np r o t o c o ls t a n d a r d ,m a n ys o r t so fb l u e t o o t h p r o f i l ep r o d u c t sh a v eb e e nd e s i g n e d ,f o re x a m p l e ,f a x ,c o r d l e s sp h o n e ,h e a d s e t , e t c b l u e t o o t hm u s tm a n a g et oa s s u r et h a th i g hp r o b a b i l i t yo fi n t e r o p e r a b i l i t y b e t w e e nd i f i e r e n tm a n u f a c t u r e r sb l u e t o o t he n t i t i e sb yt h ew a yo ft h eb l u e t o o t h t e s t n o wo fa 1 1s o f t w a r et e s tp r o c e d u r e si nt h ew o r l d c o n f 0 1 t n a o c et e s t i n gi s p e r f o r m e dm o s tf r e q u e n t l y i ti st h eb a s i so fb l u e t o o t ht e s t ,t o o t h et h e s i s i n t r o d u c e st h ec o n c e p to ft h et e s t i n gp r o c e s sa n di t sc o n s t i t u e n tp a r t s ,e s p e c i a l l y t e s tm e t h o d si n c l u d i n gt h el o c a lt e s tm e t h o d t h er e m o t et e s tm e t h o d t h e d i s t r i b u t e dt e s tm e t h o d t h ec o o r d i n a t e dt e s tm e t h o d o nt h eb a s i so fs o f t w a r et e s tt h c o d e s ,ia n a l y z et h ec o n t e n t sa n dt e c h n i q u e s o ft e s ta u t o i m m u n i z a t i o n ,e s p e c i a l l yt h et e c h n i q u ef o rt e s ts c r i p t si m p l e m e n t a t i o n f u r t h e r m o r e ,is t i l ld i s c u s sa u t o m a t i c a lc o m p a r i n g ,p r e a m b l ea n dp o s t a m b l e d i s p o s a lo f t h et e s t t h ef i f t hc h a p t e rs u m m a r i z e sa l lt h eb l u e t o o t ht e s tw o r kih a v ep e r f o r m e d i n c l u d i n gb b ,l 2 c a p , g a p , s d pt e s t ,o fw h i c he s p e c i a l l yt h ec o n f o r m a n c et e s t s t r u c t u r e ,t h ep o s i t i o no f p c o ,t e s tc a s e sa n dt e s tp r o c e s s t h ef o l l o w i n gc h a p t e r sd e s c r i b et h eb e ta u t o m a t i o nm o d e l ,a n di t s i m p l e m e n t a t i o n - - b l u e t e s t e ri nw h i c hh o wt od e v i s ea n di m p l e m e n tt h et e s tc a s e s h o wt oe x e c u t et e s tc a s e sa n dc o m p a r et h eo u t p u ta u t o m a t i c a l l y , h o wt oc r e a t et h e t e s td o c u m e n t s 。t h em m i m s cg r a p he t c a n dt h ee x e c u t i o nm o d u l e a tl a s ti a n a l y z et h ea c t u a it e s tp r o c e d u r ea n dc o n c l u s i o no fb l u e t e s t e rb yag a pt e s t e x a m p l e f i n a l l yia d d r e s ss o m el i m i t a t i o no f t h eb l u e t o o t hc o n f o r m a n c et e s ts y s t e m k e y w o r d s :b l u e t o o t h ,p r o t o c o lt e s t i n g ,c o n f o r m a n c et e s t i n g ,a u t o m a t i o n , b l u e t e s t e r , t e s ts c r i p t ,m s cg r a p h 北方交通大掌硕士学位论文 第一章引言 蓝牙技术作为一种应用广泛的无线互联技术且前正风靡世界,但是它最 终能否成功,除了要降低其芯片的成本以外,通过蓝牙测试解决其互通问题 是另一个关键。本文作者在实际从事了大量蓝牙测试工作的基础上,结合协 议测试技术和最新的测试自动化理论,总结出了一种蓝牙协议一致性测试模 型,并已实现为商业化产品投放国际市场。 i 1 蓝牙技术的提出 蓝牙( b l u e t o o t h ) 技术是1 9 9 8 年5 月由爱立信、i b m 、英特尔、诺基亚、 东芝等5 家公司联合组建特别利益组织( s p e c i a li n t e r e s tg r o u p ) 制定的 一种无线数据与语音通信的开放性全球规范,它以低成本的近距离无线连接 为基础,其实质内容是要建立通用的无线电空中接口( r a d i oa i ri n t e r f a c e ) 及其控制软件的开放性标准,把通信和计算机更加密切的结合起来,使不同 厂家生产的便携式设备在没有电缆相互连接的情况下,能在近距离范围内通 过无线电传输具有相互操作( i n t e r o p e r a b i l i t y ) 的能力。 蓝牙技术是一种低能耗的无线技术,可取代现有的p c 、打印机、传真机、 移动电话等设备上的有线接口。除此之外,蓝牙还为已存在的数字网络和外 设提供通用接口以组建一个远离固定网络的个人特别连接设备群。蓝牙技术 工作在全球通用的2 4g h zi s m ( 工业、科学、医学) 频段。应用了蓝牙技 术的“p l u g & p l a y ”( 类似“即插即用”) 概念,任意蓝牙设备一旦搜寻到 另一个蓝牙设备,马上就可以建立联系,而无需用户进行任何设置。设备甚 至不在同一间房内也能相互链接;并且最多可以链接7 个设备,这就可以把 用户身边的设备链接起来,形成一个“个人区域网络”( p e r s o n a la r e a n e t w o r k ) 。 i s m 频段是对所有无线电系统都开放的频段,使用它有可能会遇到不可预 测的干扰源。为此,蓝牙特别设计了快速确认和跳频方案以确保链路稳定。 除采用跳频扩谱的低功率传输外,蓝牙还采用鉴权和加密等措施来提高通信 的安全性。 蓝牙技术的另一大优势是它应用了全球统一的频率设定,这就消除了国 界的障碍。在蜂窝式移动电话领域,这个障碍已困扰用户多年。 蓝牙技术以便捷易用的方式把众多的无线移动设备连接起来,在它的底 层规范之上针对不同应用可以建立各自独特的p r o f i l e ,适应不同的数据语 音传输需要。由于蓝牙强大的跨平台互联能力以及蓝牙先进的工作机制使得 蓝牙技术有了广阔的应用前景。 北方交逼大学硕士学位论文 1 2 蓝牙测试及目前面临的问曩 由上- - + 节可以看出,蓝牙之所以能够风靡全世界,其强大的生命力, 来自她强大的跨平台互联能力,方便简捷的无线接入解决方案,此外,由于 她的技术标准完全公开,不同专业领域,不同设备生产厂家都可以在她的基 础之上推出自己的p r o f i l e 产品,如传真、无绳电话、耳机、麦克等等。这 样,不同生产商的蓝牙解决方案之间是否能够顺利实现互联互通,就成为蓝 牙技术首先必须予以解决的问题。 蓝牙特别利益组织( s i g ) 为了在蓝牙技术标准完全公开的情况下保持蓝 牙无线互连技术的一致性和产品的互通性,设置了蓝牙认证。任何一个生产 或销售蓝牙设备的公司必须首先签署蓝牙协议以成为蓝牙组织成员,然后在 蓝牙s i g 的测试中心进行蓝牙认证的相关测试。b p b q b ( b 1 u e t o o t h q u a l i f i c a t i o nb o a r d ) 测试,证明自己的产品符合蓝牙技术规范。在成功 通过蓝牙认证之后,产品方被列入合格产品目录。 蓝牙认证测试包括蓝牙协议和各种p r o f il e 的一致性及互联测试,不仅涉 及到种类繁多的协议实现以及p r o f i l e 的具体解决方案,而且对每一个具体 实现,都有一个庞大的测试案例集要逐一验证,如果没有自动化的测试工具 帮助,手工进行测试工作是不可想象的。由于有标准化的协议基准,同时蓝 牙s i g 也推出了标准测试案例集,实现蓝牙测试的自动化不仅必需,也具备 了可能性。 蓝牙测试作为软件测试的一个分支,目前软件测试理论所仍然不能完全 解决的一些问题,在蓝牙测试中同样存在,如高覆盖率的测试案例集的设计。 目前蓝牙组织提供的标准测试案例集并不能完全满足要求,覆盖率不够,部 分测试案例重叠,在实践中还发现出一些测试案例设计错误。此外,蓝牙测 试仪作为蓝牙测试的自动化工具,设计上没有公认的标准可循,对于蓝牙测 试的具体过程,哪些应当自动化,哪些应该人工干预:标准测试案例集的具 体语法实现形式及解释执行:蓝牙测试仪的软硬件分界点,并没有公认的标 准。特别是还没有提出一个统一的自动化测试系统的模型。 1 3 蓝牙一致性涓试仪的研究意义及本文结构 蓝牙强大的生命力,来自她随时随地、跨平台跨系统无线互联各种设备 的能力。蓝牙测试是保证蓝牙设备能够互联的利器。一致性测试则是蓝牙测 试的基石。所有蓝牙生产厂家的产品都必须首先通过一致性测试,然后再在 此基础上进行产品的互联测试。一致性测试仪作为一种测试自动化工具,可 以大大加快蓝牙一致性测试的速度,生成符合蓝牙组织要求的测试数据记录 和测试文档。好的测试仪还提供对测试过程的跟踪调试能力,支持蓝牙具体 - 2 北方交通大学硕士学位论文 信令的参数设置,手工发送,方便找出错误的根源。使用一致性测试仪,特 别是经过蓝牙组织认证的测试仪的厂家,可以使产品更快的通过蓝牙认证, 更快的推向市场。 作者对软件测试理论目前的进展和蓝牙协议原理进行了研究分析,对公 司开发的蓝牙协议栈软件进行了学习继承,并参阅了蓝牙s i g 的b q b 测试有关 文件,在实际进行测试工作的基础上,提出了一种蓝牙一致性测试自动化模 型并编程实现。此模型的主要优点是:自动化程度高,极大的提高了测试的 效率;使用m s c 图实时实现消息跟踪,一目了然;支持对协议命令及p d u 参数 的手工调试,很容易定位测试中的错误;自动生成符合b q b 测试要求的测试 文档,方便用户申请蓝牙s i g 的b q b 澳j 试;测试案例使用脚本技术实现,可以 动态增减;并且具有良好的可维护性可移植性。 根据这种测试模型实现完成的蓝牙一致性测试仪已经商业化并取得良好 的经济效益。本文对困扰软件测试的一些问题在蓝牙一致性测试仪中的表现 及解决,对蓝牙一致性测试自动化模型的提出和实现,以及测试脚本技术等 在一致性测试仪中的应用进行了理论总结和研究。成文以求老师同学的大力 斧正。 本文共分八章: 第一章,引言。简单介绍了蓝牙技术及蓝牙测试的由来,蓝牙测试目前 存在的问题,蓝牙一致性测试在整个蓝牙体系建构中的重要作用。由此引出 了对本文主要内容:作者提出并实现的蓝牙一致性测试自动化模型的介绍。 第二章蓝牙协议原理及协议栈软件研究。结合蓝牙s i g 的正式协议文本 及对i v t 公司开发的协议栈实体的分析,对蓝牙协议的整个体系结构,包括 蓝牙数据流、控制流,特别是核心协议及p r o f i l e 的相关内容进行了介绍。 第三章,协议测试技术研究及方法建模。协议测试特别是协议一致性测 试是目前世界范围内进行最多的软件测试活动。目前已经有了比较成熟的理 论和方法。本章在总结前人理论成果的基础上,对于协议一致性测试的流程, 一致性测试中可运用的测试方法进行了重点阐述。总结了本地测试法,远程 测试法,分布测试法,协调测试法四种主要的测试方法。 第四章,测试自动化技术。本章介绍了测试自动化的概念,详细分析了 测试自动化技术中最重要的测试脚本技术,包括线形脚本,结构化脚本,共 享脚本和数据驱动脚本等五种常用脚本,阐述了自动化比较和测试的前处理 和后处理工作。 第五章,蓝牙测试实践。本章作者对自己从事的蓝牙测试工作进行了总 结,着重阐述了蓝牙协议b b 、l 2 c a p 、g a p 、s o p 的一致性测试结构、测试结 构中测试点的设置、测试案例所测试的功能、测试环境搭建以及测试流程。 第六章。蓝牙致性测试自动化模型。在前期工作基础上,研究提出了 蓝牙一致性测试自动化模型。并详细说明了该模型对测试案例的设计、建立, 一3 北方交通大掌硕士掌位论文 自动执行并与期望值自动比较,自动生成测试文档的处理流程。探讨了模型 中测试脚本的实现技术,对测试前的初始化,测试后处理以及测试结构的合 理化设计也做了研究。 第七章,一个蓝牙一致性测试自动化系统的实例。本章根据一致性测试 自动化模型实现了一个商业化产品蓝牙一致性测试仪,具体说明了测试 脚本的实现包括测试脚本的语法、判断点和定时器、一致性测试仪中测试脚 本的执行过程等。对一致性测试仪的用户界面m s c 图、工作区和输出区窗 口、执行器核心程序都做了细致介绍,最后给出了一个完整的g a p 协议一致 性测试实例和测试结论。 第八章t 结束语。总结全文,指出了一致性测试自动化系统的几个有待 改进的地方。 4 北方交通大学硕士掌位论文 第= 章蓝牙协议原理及协议栈软件研究 蓝牙的体系结构包含协议( p r o t o c 0 1 ) 和应用( p r o f i l e ) 两大部分,如 下图所示。完整的蓝牙协议栈包括蓝牙指定协议( 如l m p 和l 2 c a p ) 和可选协 议( 如对象交换协议o b e x 和用户数据报协议u d p ) 。并不是所有应用程序都 需要所有协议。设计协议和协议栈的主要原则是尽可能利用现有的各种高层 协议,保证现有协议与蓝牙技术的融合以及各种应用之间的互通性,充分利 用兼容蓝牙技术规范的软硬件系统。蓝牙技术规范的开放性保证了设备制造 商可自由地选用其专利协议或常用的公共协议,在蓝牙技术规范基础上开发 新的应用。 蓝牙体系结构中的协议可分为以下四类: 核心协议:基带( b b ) 、l m p 、l 2 c a p 、s d p : 电缆替代协议:r f c o m m : 电话传送控制协议:t c s 二进制、a t 命令集; 可选协议:p p p 、u d p t c p i p 、o b e x 、w a p 、v c a r d 、v c a l 、i r m c 、w a e 。 除上述协议外,规范还定义了主机控制器接口( b c i ) ,它为基带控制器、 链路管理器、硬件状态和控制寄存器提供命令接口。 绝大部分蓝牙设备都需要核心协议( 加上无线( r f ) 部分) 。其他协议 根据需要而定。 田2 1 苴牙技术体系螬构 - 5 2 1 核心协议 蓝牙体系结构中的核心协议可由一个特殊的层次主机控制接1 :3 层 ( h c i ) 分为硬件和软件两部分。射频( r f ) 、基带( b b ) 和链路管理( l m ) 这三层通常固化在硬件模块上,构成协议的硬件部分。软件部分由逻辑链路 控制与适配协议( l 2 c a p ) 、服务发现协议( s d p ) 、串行端口仿真协议( r f c o m m ) 、 电话控制协议( t c s ) 组成。它们通常运行于主机端。蓝牙系统中,主机与 硬件模块之间的接口可以有多种选择,如r s 一2 3 2 、u s b 、p c m c i a 等。h c i 为基 带控制器、链路管理器、硬件状态和控制寄存器提供一致的命令接口,使得 不同的硬件接口对主机端的协议软件而言是透明的。 具体一点讲,射频层实现数据位流的过滤和传输,它主要定义了蓝牙收 发器在2 4 g h z 无需授权的i s m 频带正常工作所要达到的要求。基带层负责跳 频和蓝牙数据及信息帧的传输。链路层负责连接的建立和拆除以及链路的安 全和控制。它们为上层软件模块提供了不同的访问入口,但是硬件与软件模 块之间的消息和数据传递必须通过蓝牙主机控制器接口( h c i ) 的解释才能 进行。也就是说,h c i 是蓝牙协议中软硬件之间的接口,它提供了一个调用 下层基带、链路、状态和控制寄存器等硬件的统一命令接口。h c i 以上的协 议软件实体运行在主机上,而h c i 以下的功能由蓝牙硬件来完成,二者之间 通过h c i 进行交互。 协议软件部分包括逻辑链路控制和适配协议( l 2 c a p ) 、服务发现协议 ( s d p ) 、串口仿真协议( r f c 0 删) 和电话通信协议( t c s ) 。l 2 c a p 完成数 据拆装、服务质量控制和协议复用等功能,是其他上层协议实现的基础,因 此也是蓝牙协议栈的核心部分。s d p 为上层应用程序提供一种机制来发现网 络中可用的服务及其特性。r f c 0 删依据e t s i 标准t s 0 7 1 0 在l 2 c a p 上仿真9 针 r s 2 3 2 串口的功能。t c s 提供蓝牙设备间话音和数据的呼叫控制信令。 2 1 1 射频( 1 l f ) 蓝牙规定的天线功率以o d b m ( 1 m w ) 为基准,最大可达到2 0 d b m ( 1 0 0 m w ) , 其工作频率符合大多数国家( 如美国、欧洲、日本等) 的i s m 频段标准,之 所以选取此频段是为了应用全球统一的频率设定,且此频带必须是未受法规 限定及公开给无线电使用的,这就消除了国界的障碍,达到了在全球均能运 作的目标。 i s m 频带是对所有无线电系统都开放的频带,因此使用其中的任一频段都 会遇到不可预测的干扰。例如某些家电、无绳电话、汽车房开门器、微波炉 等,都可能是干扰源。为此蓝牙特别设计了快速确认和跳频方案以确保链 路稳定。蓝牙将起始于2 4 0 2 g h z ,终止于2 4 0 8 g h z 的i s m 频段划分为7 9 个跳 6 北方交通大掌硕士掌位论文 频信道,每个信道带宽为1 z 。当前,蓝牙s i g 正试图在全世界的范围内协 调这7 9 个信道,并已促使日本、西班牙等国政府调整了相应的限制政策。蓝 牙的通信半径通常为1 0 c m 1 0 m ,但是如果增加发射功率,可以将半径扩展到 l o o m 夕b 。 2 1 2 基带( b b ) 如前所述,蓝牙在2 4 g h z 的i s m 频段的7 9 个信道里以跳频方式工作。当两 个蓝牙设备成功建链后,一个p i c o n e t 便形成了。两者之间的通信通过无线 电波在这7 9 个信道中随机跳转而完成。蓝牙给每个p i c o n e t 提供特定的跳转 模式,因此它允许大量的p i c o n e t 同时存在。 蓝牙既支持电路交换也支持分组交换。蓝牙基带帧保留一部分时隙用于 同步分组( 对应于电路交换) ,每个分组在不同的跳频中发射,个分组通 常占用1 个时隙,最多能扩展到5 个时隙。蓝牙支持最大可达3 个同步语音信 道,同时也支持非同步数据信道,或者一个信道同时支持同步语音和非同步 数据。 蓝牙采用时分双工( t d d ) 方案来实现全双工传输,因此蓝牙的一个基带 帧包括两个包,首先是发送包,然后是接收包。每个包可由1 个、3 个或5 个 时隙组成,每个时隙6 2 5us 。一个典型的单时隙帧每秒跳1 6 0 0 次。多时隙帧 由于节省了头信息开销而具有更高的数据速率。比如,单时隙帧的单向速率 最大为1 7 2k b s ,而一个5 1 ( 5 表示一帧内的发送包的时隙数,l 表示接收 包的时隙数) 的多时隙帧则支持发送率为7 2 l k b s 和接收率为5 7 6 k b s ( 对 m a s t e r 即主设备而言) 。 2 1 3 链路管理与控制( u 舻) 蓝牙设备互连形成p i c o n e t ,每个p i c o n e t 包括一个且只有一个主设备和 最多7 个从属设备。任何一个蓝牙设备既可以成为主设备又可成为从属设备。 角色的分配是在p i c o n e t 形成时临时确定的。一般而言,发出连接指令的设 备将成为主设备,但是蓝牙系统的”主从转换。功能可使角色改变。 为了形成p i c o n e t ,蓝牙设备需要知道两个参数,即它希望连接到的设备 的跳转模式及其相应相位。每个蓝牙设备都有一个唯一的用于标识自身跳转 模式的全球标识符( g l o b a li d ) 。在形成p i c o n e t 时,主设备先和其他设备 分享自己的i d 号。再向那些设备提供自己的时钟偏移信息,这些信息由所谓 的跳频包( f h s ) 发送。 通常未连接进p i c o n e t 的设备处于旁观( s t a n d b y ) 模式。此时这些设备 监听其他设备的搜询( i n q u i r y ) 消息或者构建p i c o n e t 的请求( p a g e ) 。当 某个设备发出查询命令时,接收设备将用它们的f h s 包发送自己的i d 号和时 7 北方交通大掌硕士学位论文 钟偏移给询问者,以便使其形成一个完整的覆盖范围内的设备情况表。为了 形成p i c o n e t ,主控蓝牙设备会用所需设备的i d 号寻呼这个设备( 此i d 号是 在先前的i n q u i r y 【1 b 得到的) 。被呼设备将用自己的i d 号回应,然后主设备 会再发一个f h s 包( 包括主设备的i d 号和时钟偏移) 给被呼设备,随后被呼 设备便加入了主设备的p i c o n e t 中。 一旦某个设备加入p i c o n e t 中,它就被分配给一个3 比特的主动成员地址 ( a m a ) ,其他成员可以用其访问该设备。一旦p i c o n e t 内有8 个活动从属设 备,主设备必须把一个从属设备强制成停等( p a r k ) 模式。在p a r k 模式中, 此设备仍然存在于p i c o n e t 中,但是它释放了a m a 地址而得到一个8 比特的被 动成员地址( p m a ) 。a m a 和p m a 的结合允许超过2 5 6 个设备同时存在于一个 p i c o n e t 中,但是只有8 个具有a m a 地址的设备( 包括主设备) 才能进行通信。 停等的设备以一定间隔聆听外界发给它们的指令。这就要求主设备有能 力给所有的从属设备( 不论是停等的还是活动的) 广播信息。处于s t a n d b y 状态的设备也监听其它设备发出的i n q u i r y 或p a g e 指令,每隔1 2 5 s 它们就做 一次这样的扫描。 在查询过程中,主设备使用的是特别预留的全球统一的i n q u i r y 事件i d 标识号,并采用全球唯一的包含3 2 个信道的信道序列发送此指令( 3 2 个回复 信道也是预留的) 。进行i n q u i r y 扫描的设备每隔壁1 2 5 s 就在这3 2 个信道中 的某个信道上停留l o m s 。然后就跳转到序列中的下一个信道继续监听,直到 该设备的i n q u i r y 扫描功能被禁止( 可能不止一个设备发出i n q u i r y 指令,因 此要连续监听) 。在主询端,3 2 个i n q u i r y 信道被分成2 个频组,每组1 6 个信 道。主设备先在第l 频组上发布1 6 条相同的i n q u i r y 指令,随即每隔1 2 5 s 在 反向回复信道上监听回音。如果被询设备扫描的信道正好和主设备发布指令 的信道重合,被询设备的监测相关器就会起较明显的反应,而后被询设备就 会用f h s 包发送自己的i d 号和时钟偏移。在下一个1 2 5 s 内主设备用第2 组频 率重新发布i n q u i r y 指令,如此反复,直到主设备的覆盏范围内的所有设备 都发回f h s 包。 寻呼过程也采用相似的信道序列。每个设备依据其i d 号都有唯一的包含 3 2 个寻呼频率的信道序列和包含3 2 个回复频率的信道序列。处于s t a n d b y 状 态的设备每隔1 2 5 s 在其特有的寻呼信道序列中的某个信道停留l o m s 以监听 来自主呼方的寻呼i d 信息,若此i d 号不是自己的,该设备就跳转到序列中的 下一个寻呼信道继续监听。在主呼端,欲呼叫设备的3 2 个寻呼信道也被分成 2 个频组,每组1 6 个信道。主呼设备先根据它最近知道的被呼设备的时钟偏 移作出被呼设各位置的估计,然后调整两个频组的频率,随即主呼设备先用 第1 组估计的频率持地呼叫1 2 5 s 。如果位置估计是错误的( 即主呼设备未收 到回音) ,主呼设备将在下一个1 2 5 s 内使用第2 频组。小的时钟偏移会使呼 叫过程很快完成,而大的时钟偏移却会使该过程延长到最大2 5 s ( 两个频组 8 - 北方变通犬掌硕士掌位论文 总共呼叫的时间) 。一般而言,此过程的平均时延是0 6 4 s 。一旦一个设备 戤 i n q u i r y 被发现并且通过p a g e 加入到p i c o n e t 中p i c o n e t 就形成了。 在活动状态中,每个蓝牙设备都被分配一个a m a 地址,它指引数据传到不 同的设备中( 主设备的地址总是默认为0 ) 。为了在很低的功率状态下也能 使蓝牙设备处于连接状态,蓝牙规定了三种节能状态,即停等( p a r k ) 状态、 保持( h o l d ) 状态和呼吸( s n i f f ) 状态。在s n i f f 状态中,从属设备降低了 从p i c o n e t ”收听”消息的速率,一会儿醒一会睡,宛如呼吸一样;而在h o l d 状态中,设备停止传送数据,但一旦激活,数据传递就立即重新开始。在p a r k 状态中,设备被赋予p m a 地址,并以一定间隔监听主设备的消息,主设备的 消息包括:( 1 ) 询问该设备是否想成为活动设备:( 2 ) 询问任何停等的设 备是否想成为活动设备; ( 3 ) 广播消息。如果我们把这几种工作模式按照 节能效率以升序排一下队,那么依次是:呼吸模式、保持模式和停等模式。 在活动状态下,蓝牙设备能够支持两种链路类型,即面向连接的同步链 路( s c o ) 和面向无连接的异步链路( a c l ) 。每种链路支持1 6 种不同的分组 类型,其中4 种是控制分组。 s c o 数据包既可以传送话音,也可以传送数据,但在传送数据时,只用于 重发被损坏的那部分数据。s c o 帧内的收发包结构必须是对称的,即必须同 时包含1 个、2 个或3 个时隙。s c o 数据包在保留的时隙内发送,一旦s c o 链路 建立,主从设备就直接发送s c o 分组,无需轮询( p o l l ) 。为了建立s c o 连接, 必须先建立a c l 链路以传送控制信息。 。 a c l 支持对称和非对称两种帧格式。a c l 的包( 不论是收还是发) 必须包 含奇数个时隙,以使整个帧的时隙数为偶数( 如i i 、i 3 或者1 5 等) 。主 设备负责控$ 1 a c l 链路的带宽,并决定p i c o n e t 中的每个从属设备可以占用多 少带宽及连接的对称性。从属设备只有被选中时才能传送数据,即从属设备 在发射数据前必须接受轮询。a c l 链路也支持接收主设备发给p i c o n e t 中所有 从属设备的广播消息。 蓝牙采用三种纠错方案:1 3 前向纠错( f e c ) 、2 3 前向纠错和自动重发 ( a r q ) 。前向纠错的目的是减少重发的可能性,但同时也增加了额外开销。 然而在一个合理的无错误率环境中,多余的头标会减少输出,故分组定义的 本身也保持灵活的方式,因此,在软件中可定义是否采用f e c 。一般而言, 在信道的噪声干扰比较大时蓝牙系统会使用前向纠错方案以保证通信质量: 对于s c o 链路,使用1 1 3 前向纠错:对于a c l 链路,使用2 3 前向纠错。在无 编号的自动请求重发方案中,一个时隙传送的数据必须在下一个时隙得到收 到的确认。只有数据在收端通过了报头错误检测和循环冗余校验( c r c ) 后 认为无错时才向发端发回确认消息,否则返回一个错误消息。 目前蓝牙传送语音数据采用连续可变斜率增量调制( c v s d ) 编码。这种 编码可以保证很高的信噪比,它擅长处理丢失的和被损坏的语音采样,即使 9 北方交通夫掌硕士掌位论文 比特错误率达到4 ,c v s d 编码的语音还是可听的。 2 1 4 主机控制器接口( h c i ) 在b b 和l m p 之上与l 2 c a p 之间还有一个主机控制接口层( h c i ) 。h c i 是蓝 牙协议中软硬件之间的接口,它提供了一个调用下层b b 、状态和控制寄 存器等硬件的统一命令接口。h c i 协议以上的协议软件实体运行在主机上, 而h c i 以下的功能一般由蓝牙设备来完成,二者之间通过一个对两端透明的 传输层进行交互。 h c i 模块包括主机端驱动( h c id r i v e r ) 和蓝牙设备固件( h c if i r m w a r e , 斟i h o s tc o n t r o l l e r ) ,二者之间由一个h c i 传输层提供数据的透明传输。通 过此传输层,主机端驱动将从高层得到的待传输数据和命令送到蓝牙硬件设 备中,同时接收从设备提交的数据和事件。 通过h c i 传出的信息可包括命令、事件、数据三类。命令由主机端发给硬 件设备,事件由设备提交给主机,数据则是双向的。下面简要介绍这三类信 息。 由主机发给设备的命令按执行方式可分为同步命令和异步命令。同步命 令主要用于本地查询和设置参数,完成后立即返回类似于 c o m m a n dc o m p l e t e e v e n t 的命令完成事件:异步命令一般涉及到双方的通 信比如建立连接等,h c i 固件接收到命令后,先返回一个命令状态事件 c o m m a n d s t a t u s e v e n t ,表示命令参数的正确与否,完成后再返回一个命令 完成事件。 两个蓝牙设备之间只能建立一条a c l ( a s y n c h r o n o u sc o n n e c t i o n l e s s ) 信 道,但可以建立多条s c o ( s y n c h r o n o u sc o n n e c t i o n o r i e n t e d ) 信道。a c l 主 要用来收发数据,s c o 主要用于话音通信。连接建立起来后,主机控制器( h c ) 将从主机端收到的数据通过l m 、b b 和r f 发送出去,当收到数据时则过程相反。 2 1 5 逻辑链路控制和适配协议( l 2 c a p ) 逻辑链路控制和适应层协议( l o g i c a ll i n kc o n t r o la n da d a p t a t i o n l a y e rp r o t o c o l 简称l 2 c a p ) ,是一个为高层传输层和应用层协议屏蔽基带 协议的适配协议。l 2 c a p 位于基带协议层之上;属于数据链路层。 l 2 c a p 为高层提供数据服务允许高层和应用层协议收发大小为6 4 k b 字节 的l 2 c a p 数据包l 2 c a p 只支持基带面向无连接的异步传输( a c l ) ,不支持 面向连接的同步传输( s c o ) 。s c o 链路主要用预留的带宽进行实时语音传输。 l 2 c a p 主要向上层提供以下功能。 1 协议复用( p r o t o c o lm u l t i p l e x i n g ) 。多个高层协议共享一个公共 的物理连接,从逻辑上看每个协议都有自己的通道,但由于基带协议不能识 1 0 北方交通大掌硕士掌位论文 别任何高层协议,所以l 2 c a p 必须支持上层协议复用,它应能区别诸如s d p 、 r f c o i “m 、t c s 等高层协议,并正确地收发相应的包。 2 分段和重组( s e g m e n ta n dr e a s s e m b l y ) 。与其它有线的物理连接相 比,蓝牙的基带包的大小有一定的限制。最大的基带包只能传输3 4 1 字节的 信息,而这限制了高层协议有效地利用带宽以传输更大的包。l 2 c a p 允许高 层和应用层协议收发大小为6 4 k b 字节的l 2 c a p 数据包,所以,l 2 c a p 必须在传 往基带前将其包进行分段,以适应基带的要求。同样的,在接收方,l 2 c a p 必须能将多个基带包重组为一个l 2 c a p 包传往高层。 3 服务质量( q o s ,q u a l i t yo fs e r v i c e ) 。在l 2 c a p 的建立连接过程中 允许改变两台设备间的服务质量。每个l 2 c a p 实体应确保服务质量的实现并 管理所使用的资源。 4 组管理( g r o u pm a n a g e r ) 。很多协议支持组地址的概念,蓝牙的基 带协议支持微微网,即一组设备使用同一时钟同步跳频。l 2 c a p 的组提取功 能可以有效地将协议的组映射为基带的微微网,以避免高层协议为了有效地 管理组而必须与基带协议直接联系。 值得注意的是,l 2 c a p 只是利用基带的机制来提供可靠的信道,其本身不 提供任何重传和校验功能,它能正确地传送包也是建立在基带能有序地传送 同一包的不同分组基础上的。 l 2 c a p 层所有接收到的信息都称为事件( e v e n t s ) ,而所有发出的信息都 称为行动( a c t i o n ) 。l 2 c a p 接收的事件分为如下5 类:低层发出的提示 ( i n d i c a t i o n ) 和确认( c o n f i r m ) 消息;高层发出的请求( r e q u e s t ) 和响应 ( r e s p o n s e ) 消息:同层的数据消息:同层的信令请求和响应:超时消息; 前面四种消息比较容易理解,着重介绍超时消息的产生和处理。超时消 息分为接收超时( r t x ) 和延长接收超时( e r t x ) ,主要用于结束对信令请求 长时间没有响应的信道连接。当每个请求信令发出后启动定时器,最短为 1 秒,最长不超过6 0 秒。如果在定时器规定时间内,接收到响应包,则结束 定时,正常操作;反之,如果收不到响应包,则结束信道。但如果远端设备 发出响应未决( r e s p o n s ep e n d i n g ) 信息,则本地设备需要启动延长接收超 时定时器来延长定时,最短为6 0 秒,最长为3 0 0 秒,如果还接收不到响应。 则结束信道。 l 2 c a p 的a c t i o n s 基本上与事件对应,也可分为五类。当l 2 c a p 处于某种状 态( s t a t e ) 下,接收到某些特定事件( e v e n t ) ,就会采取相应的操作( a c t i o n ) , 从而转入其它状态,周而复始,进行状态转移。如果收到的事件不能处理, 则可认为是错误或直接丢弃。 l 2 c a p 的服务原语向上层提供了一个调用服务的接口,它规定了服务的种 类和参数,并且不依赖于任何低层设备,在计算机模式下它与下层的接口是 基于h c i ( 主机控制接口) 的,所以为了实现l 2 c a p 的正常工作,必须实现其 1 北方交通大学硕士掌位论文 对h c i 函数的调用。 2 2 电缠替代协议( 即c 0 咖) r f c o m m 是基于e t s l0 7 1 0 规范的串行端口仿真协议。它在l 2 c a p 之上仿 真实现r s 一2 3 2 控制和数据信号,为使用串行线路传送机制的上层协议提供服 务,如:o b e x 、p p p 和a t 命令集。其中p p p 完成点对点的连接;o b e x ( 对象交 换协议) 是由红外数据协会( i r d a ) 制定的会话层协议,它采用简单的和自 发的方式交换目标数据,是一种类似于h t t p 的协议,假设传输层是可靠的, 采用客户机一服务器模式,独立于传输机制和传输应用程序接口;a t 命令集 是专门为调制解调器设计的接口,用来提供拨号上网和收发传真的功能。 蓝牙s i g 提出r f c o m m 的目的在于:提供对现有使用串行端口的应用软件的 支持:利用已有的g s m0 7 1 0 标准:支持蓝牙设备之间点对点的通信。 2 3 电话控制协议(

温馨提示

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

评论

0/150

提交评论