论文-蓝牙跳频算法的改进与蓝牙家庭网络的研究.doc_第1页
论文-蓝牙跳频算法的改进与蓝牙家庭网络的研究.doc_第2页
论文-蓝牙跳频算法的改进与蓝牙家庭网络的研究.doc_第3页
论文-蓝牙跳频算法的改进与蓝牙家庭网络的研究.doc_第4页
论文-蓝牙跳频算法的改进与蓝牙家庭网络的研究.doc_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

蓝牙跳频算法的改进与蓝牙家庭网络的研究蓝牙技术论文摘 要随着个人计算机和因特网在家庭中的迅速普及,以及信息家电智能化程度的提高,家庭网络,特别是简单、灵活与可靠的家庭网络日益受到人们的关注。作为一种开放性的短距离无线通信技术,蓝牙技术将是家庭网络低速率数据传输的最佳解决方案。蓝牙工作在全球通用的2.4GHz ISM(工业,科学,医学)频段,由于该频段对所有无线电子系统都开放,Bluetooth设备会受到相当严重的干扰。为此Bluetooth采用了快速跳频技术,以确保最大限度的削减来自其他设备的射频干扰。文章首先介绍了蓝牙跳频系统中跳频序列的产生算法,接着以此算法为基础,以躲避干扰为目的,从提高系统抗干扰能力的角度出发,提出了一种改进的自适应跳频方案来进一步改善系统的性能,最后基于C语言和MATLAB工具对原跳频系统和改进后系统分别进行了系统仿真和性能分析,并对两个系统性能进行了比较。仿真和分析比较结果表明,本文提出的改进方案大大提高了系统的抗干扰能力。论文还研究了基于蓝牙技术无线家庭网络的实现,阐述了如何通过蓝牙网关来实现对家庭蓝牙信息家电的远程监控,以及家庭内的个人PC机和笔记本电脑等如何通过蓝牙网关访问Internet。本文详细介绍了蓝牙网关的实现,文章从实现蓝牙网关所需的蓝牙应用模型局域网接入应用模型着手,论述了如何从软件上完成蓝牙协议和基于主机蓝牙上层应用程序的开发,直至最终实现局域网接入应用模型。关键词:蓝牙,家庭网络,蓝牙网关,局域网接入,跳频算法,自适应。AbstractWith the rapid popularization of PC and Internet in the home, and improvement of the intelligentized degree of information household appliances, HomeNet, especially simple, flexible and robust HomeNet is getting more and more attention. As a short-range wireless communication technology, Bluetooth is one of the best solution to low-rate wireless HomeNet connection.Working at the opening 2.4GHz ISM band which is free to be accessed, Bluetooth devices will be easily interfered with by other systems. To induce the RF interference from other systems by the greatest degree, Bluetooth uses the fast frequency hopping technology. The hop selection algorithm is introduced in this paper. And to improve the performance of anti-interference, an improved adaptive frequency hopping scheme is suggested on the basis of original algorithm. To compare the anti-interference performance between the original and improved system, system emulation and performance analysis is implemented by using C language and Matlab. The result of emulation and analysis shows that the improved scheme put forward by the paper greatly enhances the systems anti-interference performance.The other part of this paper discusses the research and realization of the Bluetooth-based HomeNet, including how to realize long-distance control to the information household appliances through Internet, and how the PC or portable computer in the HomeNet accesses Internet through Bluetooth gateway. The realization of Bluetooth gateway is emphasized. Commencing on the Bluetooth application profile LAN Access Profile, the paper discusses until the implement of Bluetooth protocols and high layer Bluetooth application programming to the final realization of LAN Access Profile in detail.Keywords: Bluetooth, HomeNet, Bluetooth gateway, LAN Access, hopping algorithm, adaptive.目 录摘 要IAbstractII第一章 前言11.1 引言11.2 家庭网络连接技术11.2.1 有线家庭网络连接技术11.2.2 无线家庭网络连接技术21.3 基于蓝牙技术的无线家庭网络31.4 本论文研究的主要内容3第二章 蓝牙有关协议52.1 蓝牙协议体系及应用模型52.2 蓝牙协议和PPP协议72.2.1 蓝牙协议72.2.2 PPP协议152.3 小结17第三章 蓝牙跳频算法的分析与改进183.1 蓝牙系统对跳频伪随机序列的要求183.2 蓝牙系统跳频序列算法183.3 系统改进方案203.4 系统仿真及性能分析223.4.1 跳频序列均匀特性分析223.4.2 系统抗干扰性能分析233.5 小结28第四章 蓝牙家庭网络的设计和实现294.1 家庭网络的远程控制方案294.2 蓝牙PC机的Internet接入304.2.1 实现蓝牙网关所需应用模型局域网接入314.2.2 LAP(蓝牙网关)的实现设计334.2.3 蓝牙软件开发环境354.2.4 蓝牙协议的实现374.2.5 蓝牙RFCOMM连接的软件实现394.2.6 蓝牙局域网接入应用规范的最终实现444.3 小结45结束语46参考文献47作者攻读学位期间公开发表的文章50致 谢51IV第一章 前言1.1 引言网络技术正以前所未有的速度渗入普通家庭,无处不在的网,无处不在的计算(Everything connecting, Everything computing )成为当今计算机技术的潮流,同时也带来了家居环境的变革,PC、PDA以及数字相机、蜂窝电话、数字电视开始涌入家庭;具有信息访问功能的微波炉、冰箱及空调等各种数字化消费电子产品也将出现在人们的视野。Internet带来了无限的信息流通、快速便利的信息交换以及远端信息存取控制等好处,浩瀚的网络信息使人们把Internet访问、电子邮件、个人商务以及网上购物等作为购买电脑的主要目的。为了在家中更方便地获取信息、通信或娱乐,人们开始将所有这些信息家电(Internet Information Appliance)连接成无线或有线的网络;通信、计算机与消费电子(3C的结合)的进一步融合,必将带来数字化、智能化、网络化的信息家电的更快发展。家庭网络开始在生活中扮演越来越重要的角色,一场由家庭网络引发的新的革命悄然兴起。家庭网络是指将个人电脑、信息家电、三表(水表、电度表、煤气表)、照明系统及安全报警系统连接在一起而构成的网络。它在家庭内部能够实现各信息家电联网,对外部能够接入智能小区网络和Internet。人们所关注的最后一公里的问题,实际上仅仅解决了一半,家庭网络才是宽带连接最后一百码需要完成的任务。1.2 家庭网络连接技术家庭网络的连接技术有四类,它们分别是:传统局域网络、电话线网络、电力线网络和家庭无线网络。也可将其划分为有线和无线两大类。1.2.1 有线家庭网络连接技术传统局域网连接建立在IEEE802.3标准的基础上,使用以太网的形式,通过双绞线或同轴电缆传输信号,速度从10Mbps到100Mbps不等,具有较高可靠性,广泛地应用于商业企业中。但是成本太高,安装维护困难,家庭网络中很少采用这种方案。基于电话线的家庭网络具有廉价、简单、成熟的特点,发展最为迅速。其遵循的协议是HomePNA(Home Phoneline Networking Alliance)标准。HomePNA2.0版本已经于1999年下半年发布,其速率是10Mbps。HomePNA规范与现存Internet访问技术兼容,如V.90、ADSL或Cable Modem。电源线网络的最大好处是用户无须为组建家庭网络重新布线投资,居室内随处可见的电源插座都可以用来连接任何一台信息电器设备,可以节约大量的人力、物力和财力。随着HomePlug标准的建立,电源线网络将有统一的技术规范进一步消除来自电力系统的低频噪音干扰,将有着十分诱人的发展前景。1.2.2 无线家庭网络连接技术无线家庭网络的最大优点是可移动性,可以省去各种专用的连接电缆,为可移动设备接入家庭网络提供了很大便利,网络中设备的位置更加灵活。目前主要的无线网络技术有IrDA、HomeRF、IEEE802.11b和Bluetooth(蓝牙)。IrDA(Infrared Data Association)工作距离1米,速度为115Kbps,传输角度只有30度,超过这个角度在传送数据时两个接口必须正对,各设备之间不可以有固体障碍。HomeRF3主要针对家庭网络进行设计,旨在降低语音数据成本,它制定了一种共享无线访问协议(SWAP)。HomeRF工作在2.4G频段,支持数据和语音,其数据通信采用简化的IEEE802.11b协议标准,进行语音通信时采用DECT(Digital Enhanced Cordless Telecommunication)标准,使用TDMA的时分多址技术。HomeRF采用跳频扩频(FHSS)技术,跳频速率为50跳/秒,共划分了75个带宽为1MHz的跳频信道。调制方式分为2FSK和4FSK两种,采用2FSK时传输速率为1Mbps,采用4FSK时最大速率可达到2Mbps。每个网络支持27个设备联网,发射功率为100mW,并且提供了与TCP/IP良好的集成。HomeRF最大的缺点是开放性不够好,技术标准没有公开,而且技术本身的抗干扰性也比较差。IEEE802.11b4协议集中在ISO模型的物理层和MAC层上,工作在2.4GHz频段,采用补偿码键控制调制技术(CCK),发射功率最高为100mW(20dBm)。它的最高速率可以达到11Mbps,当射频情况变差时,数据传输速率将降低到5.5 Mbps、2 Mbps和1 Mbps。802.11b在MAC层采用碰撞避免的载波检测多路访问(CSMA/CA)或分布式协调功能(DCF)。该标准的设计目标决定了它比较适合于在布线代价较高的企业内部构建无线网络,而不适合家庭网络的组建。蓝牙技术1使用2.4GHz全球通用的ISM(工业、科研和医疗)频段,为了减少干扰,蓝牙特别设计了快速确认和跳频方案以确保链路稳定、抑制干扰和防止衰落。蓝牙采用跳频技术,以每秒1600跳的频率在79个跳频通路内跳频,使干扰可能的影响变成很小。另外,它还使用FEC(Forward Error Correction,前向纠错)来抑制了长距离链路的随机噪音。蓝牙的数据传输总速率为1Mbps,以时分多路制式实现双工通信。蓝牙发射时,无线输出功率为0dBm,通信距离可达10m,若加上放大器,通信距离可达100m。接收机的灵敏度不可低于70dBm。1.3 基于蓝牙技术的无线家庭网络家庭网络发展的方向必将是无线网络,和其它三种无线连接技术相比,蓝牙是家庭网络低速率数据传输的最佳解决方案,它本身具有的系统健壮性、低复杂性、低性能、低成本等优点使得该技术适合于不同的场合;而且由于蓝牙技术标准的开放性,显示了更大的优越性。为此,对基于蓝牙技术的无线家庭网络进行研究具有极大的理论和实际意义,必将极大的推动信息产业的发展。本文主要对基于蓝牙技术的无线家庭网络进行研究,图1.1所示即为基于蓝牙技术的HomeNet的组成方案。图1.1 基于蓝牙技术的HomeNet组成方案由图1.1我们可以看出蓝牙家庭网络主要由蓝牙网关和蓝牙终端设备组成。蓝牙终端设备可以分为三类:蓝牙家庭安保类设备(摄像机等),蓝牙信息家电(蓝牙微波炉、蓝牙空调等),蓝牙PC机及其外围设备。蓝牙网关是家庭网络中的核心,同时也是和外部公用网络互联的接口。它具体实现两个功能:一、蓝牙网关是家庭网络的组织者,它利用蓝牙技术将家庭中的信息设备组成一个Piconet网;二、蓝牙网关是蓝牙家庭网络访问外部公共网络的接入点,是蓝牙协议与LAN协议转换的接口。家庭网络可以通过网关与户外的各种网络互连,这种连接可以采用有线或无线方式,有线方式有传统的Modem,和最新的Cable modem、ADSL技术、数据广播技术等,无线的方式有WAP,LDMS等。1.4 本论文研究的主要内容本课题是上海市科委2001年度重大课题“无线接入技术”的子课题“蓝牙技术应用研究”,主要针对基于蓝牙技术的无线HomeNet进行研究。蓝牙工作在2.4GMHz ISM公用频段,时常会遇到不可预测的干扰,为此蓝牙采用了快速跳频技术。论文研究了蓝牙系统的跳频产生算法,并以此算法为基础,从提高系统抗干扰能力的角度出发,提出一种改进的自适应跳频方案来进一步改善系统的性能,接着基于C语言和MATLAB工具对原跳频系统和改进后的跳频系统分别进行了系统仿真和性能分析,并对两个系统的抗干扰性能进行了比较。论文还研究了基于蓝牙技术无线家庭网络的实现,阐述了如何通过蓝牙网关来实现对家庭蓝牙信息家电的远程监控,以及家庭内的个人PC机和笔记本电脑等如何通过蓝牙网关访问Internet。其中重点研究了蓝牙网关的实现技术,论文从实现蓝牙网关所需的蓝牙应用模型局域网接入应用模型着手,论述了如何从软件上完成蓝牙协议和基于主机蓝牙上层应用程序的开发以及协议的转换,直至最终实现局域网接入应用模型。论文的章节编排如下:第一章简要讲述了基于蓝牙技术无线家庭网络的组成以及本论文的主要研究内容。第二章介绍了蓝牙有关协议。第三章分析了蓝牙系统跳频序列的产生算法,并在原跳频算法的基础上,提出了一种改进的自适应跳频方案来进一步提高系统的抗干扰能力,接着基于C语言和MATLAB工具对原跳频系统和改进后的系统进行了系统仿真和性能分析。仿真和分析比较的结果表明,改进后的跳频系统大大提高了系统的抗干扰能力。第四章详细阐述了基于蓝牙技术家庭网络的设计和实现方案,其中重点分析了蓝牙网关的实现。第二章 蓝牙有关协议2.1 蓝牙协议体系及应用模型 67蓝牙协议的目标是允许遵循协议的应用可以进行互操作,整个协议栈包括蓝牙指定协议和非蓝牙指定协议(应用层协议),设计协议和协议栈的主要原则是尽可能利用现有的各种高层协议,保证现有协议和蓝牙协议之间的互通性。蓝牙协议的开放性保证了设备制造商可自由地选用其专利协议和公共协议,在蓝牙协议的基础上开发新的应用。完整的蓝牙协议栈结构如图2.1所示。图2.1 蓝牙协议栈整个蓝牙协议体系结构可分成三大部分:底层硬件模块、中间协议层和高层应用层。底层硬件模块包括射频层RF(Radio Frequency)、基带BB(Baseband)部分和链路管理协议LMP(Link Manager Protocol)。中间协议层包括逻辑链路控制和适应协议L2CAP(Logical Link Control and Adaptation Protocol)、服务发现协议SDP(Service Discovery Protocol)、电缆替代协议协议RFCOMM和二元电话控制协议TCS BIN(Telephony Control Protocol)。高层应用层都是一些现成的协议,包括PPP、UDP/TCP/IP、OBEX、WAP等。除了上述协议层以外,蓝牙协议还定义了主机控制接口HCI,它为基带控制器、链路管理器、硬件状态和控制寄存器提供接口命令。不是任何应用都必须使用全部协议,但是除了语音之外的所有应用都要使用蓝牙技术规范中的数据链路层和物理层。在后面的章节中,我们将介绍协议栈中的一部分协议。蓝牙协议栈的最上部显示了各种应用模型。蓝牙SIG定义了几种基本的应用模型,包括:文件传输、因特网网桥、局域网接入、同步、三合一电话和终极耳机。为了保证蓝牙设备之间的互操作性,蓝牙SIG定义了13种应用规范(Profile),应用规范阐述了为了实现一个特定的应用模型,各层协议间的运转协同机制。每种Profile都从协议栈中选取不同的协议组合来完成特定的功能,每一种应用模型对应一个或多个应用规范。图2.2给出了蓝牙应用规范结构和相依性。图2.2 应用规范结构如图所示,通用访问应用规范是其他所有应用规范的基础,位于应用规范结构的最低层,它和串口应用规范,业务发现应用规范及通用对象交换应用规范一起构成了蓝牙各种应用模型的基础,称为通用应用规范。其它的则称为特定应用规范,都直接或间接的依赖于通用应用规范,如局域网接入应用规范(LAN Access Profile)就建立在串口应用规范(Serial Port Profile)的基础上。其中无绳电话应用规范和对讲机应用规范又被称为电话管理协议二进制应用规范,直接依赖于通用访问应用规范。2.2 蓝牙协议和PPP协议这一小节我们对局域网接入应用规范协议栈中所用到的蓝牙协议和PPP协议作一个详细的说明。2.2.1 蓝牙协议167一、基带协议(BaseBand)基带部分和射频部分一起工作,控制数据分组在指定的时隙和指定频率上发送。蓝牙的射频系统是一个跳频系统,分组在指定时隙、指定频率上发送,使用查询和寻呼进程实现不同蓝牙组件的发送频率和时钟的同步,为数据分组提供两种连接方式:面向连接(SCO)和无连接(ASL),并完成前向纠错(FEC)、循环冗余校验(CRC)和数据加密。蓝牙基带协议是电路交换和分组交换的融合,因此既适合传送实时话音也适合传输数据,话音通道可支持64kb/s的同步连接,异步通道可支持不对称连接,一个方向的速率可高达721kb/s,而另一个方向速率允许为57.6kb/s。 1、物理信道和物理链路蓝牙技术的特点体现在底层技术,而基带层是底层中的关键技术之一。注意蓝牙基于微微小区机制,需具备强壮性、低复杂度、低功率、低成本的特点,而这在基带层技术中有所体现。蓝牙采用跳频技术,每秒1600跳,从时间域看即每个时隙长度是625s,即每个时隙从79个信道中选择一个。时隙编号0(2271),即跳频序列以227进行循环(有关蓝牙跳频的算法将在后面章节进行详细讨论研究),分组传输采用时分双工(TDD)交替传输方式。蓝牙既支持电路型数据,也支持分组型数据;既支持点对点连接,也支持点对多点连接。在一个微微网络(Pieconet)中,一个单元作为主设备(Master)单元,其他作为从设备(Slave)单元,最多可以有7个从设备;但是允许有更多从设备与主设备保持在Park状态。从设备对信道的接入由主设备控制。微微网络在覆盖上可以有重叠:每个网络有各自的跳频方案,一个网络的主设备可以同时作为另一个网络的从设备;一个从设备可以属于多个网络。主设备向从设备发送数据只能占用偶时隙,反之从设备只能在奇时隙才能向主设备发送数据。分组起始位置与时隙起始点相吻合。一个分组(Packet,实际上更习惯的说法是帧,因为在基带层其地位类似于OSI的第二层、部分涉及物理层,分组的确切用法在第三层,但是蓝牙基带层规范中采用Packet术语)的传送最多可以占用5个时隙,在一个分组的传送期内,维持初始时隙所占用的信道而不再跳频。TDD和定时工作方式如图2.3所示:图2.3 主从单元传输分组时序图在主从设备之间,有两种不同类型的链路,即同步面向连接SCO(Synchronous Connection-Oriented)链路和异步无连接ACL(Asynchronous ConnectionLess)链路。SCO是点到点链路,主设备在周期性的保留时隙上维持SCO;ACL是点到多点链路。主设备可以利用SCO未占用的时隙建立ACL链路,从设备可以同时参与SCO和ACL。SCO具备双向对称性,可以看作电路型连接,通常用于支持语音等实时业务。主设备可与一个或多个从设备建立多达3个的SCO链路;一个从设备也与多个主设备建立SCO链路(最多3条)。SCO分组不采用重传机制。SCO链路的建立通过主设备发送LMP的SCOsetup消息,该消息中包含了Tsco和Dsco等参数。Dsco用于标识SCO开始的时隙相对数,而Tsco用于表示时隙的重复周期。未被SCO占用的时隙可用于ACL,在一对主从设备之间只有一条ACL。ACL的分组传送用重传机制以确保正确性。只有当主设备在发往从设备的分组中以某种方式允许某从设备发送数据时,该从设备才能在规定时隙发送数据。ACL支持广播。2、分组组成和分组类型蓝牙基带层每个分组由3部分组成,即接入码(ACCESS CODE)、头(HEADER)、负载(PAYLOAD)。如图2.4所示:图2.4 蓝牙标准分组格式其中接入码和头字段为固定长度,分别为72比特和54比特;负载是可变长度,从02745比特不等。一个分组可以仅包含接入码字段(此时为缩短的68比特),或者包含接入码与头字段,或者包含全部3个字段。接入码有三种类型:Channel Access Code(CAC)、Device Access Code(DAC)和Inquiry Access Code(IAC)。CAC用于标识一个Piconet,所有在该Piconet中传送的分组都包含CAC;DAC用于特殊的信令过程,如寻呼和响应寻呼;IAC又分为General(GIAC)和Dedicated(DIAC)两类:GIAC对该区域内所有设备都是一样的,用于发现其它的蓝牙单元;DIAC用于根据某种特性划分特定用户群。分组头包含链路控制信息,由6个字段组成:AMADDR、TYPE、FLOW、ARQN、SEQN和HEC,共18个比特,采用1/3比例的FEC(前向纠错码)进行保护,编码保护后一共是54比特。在主设备与从设备通信时,要用AMADDR来表示激活的从设备地址;TYPE字段可以区分16种不同类型的分组;FLOW字段用于ACL链路上的流量控制;ARQN用于对负载传送正确性的确认;SEQN比特在每发送一个新的分组时翻转一次,从而避免由于ACK的丢失而造成分组重复接收。分组头用8比特的校验码以检查分组头的正确性。在蓝牙基带层的16种分组中,有4种是公共的;另外12种根据SCO和ACL不同链路而不同。其中,公共分组中的四类分别为ID分组、NULL分组、POLL分组、FHS分组。SCO分组通常用于64kbit/s的语音传送。在SCO链路上传送语音,分组不采用CRC校验和重传机制。一般分为四种SCO分组:HV1(High quality Voice)分组、HV2分组、HV3分组和DV(Data & Voice)分组。ACL分组在ACL链路上传送,承载的信息可以是控制信息或用户数据。如果包含DM1,则一共有7种ACL分组,除了AUX1外其它6种ACL分组采用CRC校验及重传机制。按ACL链路可分为DH1(Data-High rate)分组、DM3分组、DH3分组、DM5分组、DH5分组以及AUX1分组,如果加上DM1(Data Medium rate)分组,一共是7种ACL分组。可使用各种用户模式在蓝牙设备间传送话音,面向连接的话音分组只需经过基带传输,而不到达L2CAP。话音模式在蓝牙系统内相对简单,只需开通话音连接,就可传送话音。3、分组中的负载格式在蓝牙基带层负载中要区分语音(同步)字段和数据(异步)字段:ACL分组仅包含数据字段,SCO分组仅包含语音字段,DV分组比较特殊同时包含两种字段。语音字段长度固定为240比特,DV分组中语音字段为80比特,不存在负载头字段。数据字段包含3部分:负载头、负载体和CRC校验码(AUX1例外)(如图2.5所示)。图2.5 数据字段格式只有数据字段具有负载头,长度为1或2个字节。负载头规定了逻辑信道(两位L_CH表示)、逻辑信道上的流量控制(一位FLOW表示)及负载长度指示。用2个比特的L_CH字段来代表逻辑信道,其中11表示LM信道(传送LMP消息),10表示 UA/UI(L2CAP消息的开始或非分段),01表示UA/UI(L2CAP消息的后续分段),00表示保留。如表2.1所示:L_CH 代码逻辑信道信 息00NA未定义01UA/UIL2CAP消息的后续分段10UA/UIL2CAP消息的开始和非分段11LMLMP消息表2.1 逻辑信道L_CH域内容1或2个字节负载头格式如图2.6所示:图2.6 负载头格式在蓝牙基带层中定义了5种逻辑信道,即LC(Link Control)控制信道、LM(Link Manager)控制信道、UA(User Asynchronous)用户信道、UI(UserIsochronous)用户信道、US(User Synchronous)用户信道。控制信道用于链路控制和链路管理,用户信道用于运载用户数据。LC信道在分组头携带,其它信道在分组负载中携带。LM、UA、UI用负载头中的L_CH字段来区分,US信道仅在SCO链路中,UA和UI通常由ACL链路承载,但也可由SCO的DV分组来承载。LM信道SCO和ACL都可承载。二、链路管理协议(LMP)当两个蓝牙设备进入彼此的范围时,每个设备的链路管理器(LM)就会发现对方。然后通过链路管理协议LMP(Link Management Protocol)交换各种消息来实现链路管理器之间的对等通信。这些消息执行链路设置的任务,包括鉴权与加密等安全机制,该安全机制执行链路和加密密钥的生成、交换与检查,并控制和协商基带数据分组的大小。通过消息交换,LMP也可以控制蓝牙射频模块的功率模式和工作周期以及微微网内的蓝牙设备的连接状态。但是无论未响应这些消息执行什么功能,这些消息都只被接收方的链路管理器过滤并解释,而不会发给高层。链路管理器全局视图如图2.7所示。图2.7 链路管理器全局视图为了完成其业务提供者的功能,链路管理器要利用其下层链路控制器(LC)提供的监控功能,即处理蓝牙基带所有的功能并支持链路管理器,包括发送和接收数据、请求发送设备的身份鉴别、链路鉴权、设置链路类型(SCO或ACL)、决定每一个数据分组用什么样的帧类型,安排设备如何监听来自其他设备的发送信息或者将其设置成等待状态。消息在链路管理器之间以协议数据单元(PDU)的方式发送。根据发送过程规定,在接收一个携带有LMP PDU的基带数据分组和发送一个带有有效响应PDU的基带数据分组之间的时间间隔不能大于LMP的最大应答延迟时间,最大应答延迟时间为30秒。蓝牙技术总共定义了55种不同类型的PDU,每一个实现一种唯一的功能。每个PDU都分配了一个7位操作码,它用来标识不同类型的PDU。LMP PDU总是以单时隙分组的方式发送,因此负载头只占一个字节。负载头的两个最低位用来确定逻辑信道,这些位设置可参见表2.1。一般情况下,负载头中的FLOW只有一位,并且该FLOW位可以被接收方忽视。操作码和只占有一位数据的事件ID共同设置成负载的首字节,如图2.8所示。事件ID位于该字节的最低位。如果PDU属于由主单元发起的事件,则事件ID为0;如果PDU属于由从单元发起的事件,则事件ID为1。如果在PDU分组中含一个或多个参数,则这些参数都位于负载的第二个字节中。字节数根据参数的长短来确定。所有的参数都使用小端格式,即最低位字节先发送。协议数据单元的源地址和目的地址由消息头的AM_ADDR决定。图2.8 LMP PDU被发送时的负载每个PDU可以被设置成必选或可选的,这要视使用情况而定。如果一个PDU是可选的,链路管理器可以不传送它,但是它必须能够识别出所有它接收到的PDU,而且如果要求返回一个响应,它必须发回一个有效的响应。如果所收到的可选PDU不要求响应,则不必发送响应。三、逻辑链路控制和适配协议(L2CAP)L2CAP是基于基带协议,位于数据链路层中,如图2.9所示。它可以与LMP并行工作。L2CAP与LMP的区别在于当业务数据不经过LMP时,L2CAP为上层提供服务。L2CAP向上层提供面向连接的和无连接的数据服务,它采用了多路技术、分段和重组技术、群提取技术。L2CAP允许高层协议和应用传输接收长达64KB的L2CAP数据分组。虽然基带协议提供了SCO和ACL两种连接类型,但L2CAP只支持ACL。图2.9 协议层内的L2CAP1、分段和重组分段和重组操作用于通过支持最大传输单位(MTU)来提高传输效率。MTU的长度大于最大的基带数据包。这样,就可以通过网络广播和传送高层协议分组降低拥塞。所有L2CAP分组都可以在基带分组基础上进行分段。L2CAP协议并不执行任何分段和重组操作,但是其分组格式支持调整到更小的物理帧长度。L2CAP发送出的MTU把上层分组分为可通过主机控制器接口(HCI)传送到链路管理器的“数据块”。在接收端,L2CAP应用接收到来自HCI的“数据块”后,就可以利用HCI提供的来自分组头的信息,把这些“数据块”重组成L2CAP分组。执行分段和重组只使用了很小的代价。位于基带分组负载的第一个字节(也叫负载头)的两个L_CH位用于表示L2CAP分组的开始和后续部分。L_CH为“10”表示L2CAP分组的第一段,而为“01”则表示它的其余部分。如图2.10所示就是分段重组的示例:图2.10 LACAP分段2、数据分组格式L2CAP基于分组,但它实际上遵循的是一个基于信道的通信模型。一条信道代表远程设备上两L2CAP实体间的一数据流。信道可以是面向连接的,也可以是无连接的。图2.11是无连接信道内的L2CAP分组格式。 LSB MSB长度(2)信道ID(0x0002)(2)PSM(2)信息(有效载荷)信息(继续的)图2.11 无连接L2CAP分组(各段以字节为单位)各段内容描述如下:长度:两个字节,除L2CAP报文头的长度外,长度是信息有效载荷与PSM段长度的和。信道ID:两个字节,0x0002值保留用于无连接通信。协议/服务复用(PSM):两个字节(最小),PSM段的值必须是奇数,即最低字节的最低位为“1”。而且所有的PSM值的最高字节的最高位应等于“0”。这样,PSM段就可以扩充到16位。PSM值定义主要针对L2CAP,并由蓝牙SIG指定。信息:065533个字节。四、服务发现协议(SDP)SDP(Service Description Protocol)是蓝牙协议体系中的核心协议,是蓝牙系统的重要组成部分,是所有用户模式的基础。在蓝牙系统中,客户只有通过服务发现协议才能获得设备信息、服务信息及服务特征,才能在此基础上建立相互间的连接。SDP的基本功能包括:提供由服务属性搜索服务的功能;提供由服务类发现服务的功能;提供服务浏览功能;提供设备有效或服务有效的判决机制;提供设备失效或服务失效的判决机制;提供唯一识别服务、服务类和服务属性的功能;不经第三方,能够发现另一个设备上的服务;能够用于简单的设备;提供增量获取服务信息机制;支持服务发现信息的高速缓存,以提高发现进程的效率或速度;能够独立传输;能够用L2CAP作为传输层协议;能够发现和使用接入其他服务发现协议的服务;无需主设备许可,支持新服务的创建和定义。SDP是一个对通信要求最少的简单协议,它可工作于可靠分组传输模式,使用一个请求/应答模型。在模型中,每一处理事务由请求协议数据单位(PDU)和应答协议数据单位(PDU)组成。在服务搜索协议使用蓝牙L2CAP传输协议的特定情况下,可以在一个L2CAP分组中传输多个SDP PDU,在每一连接上只能发送一个这样的L2CAP给指定SDP服务器。限制SDP发送确认分组成为流控制形式的一种。服务搜索协议按Big Edian方式(即高位字节先于低位字节)进行传输。五、电缆替代协议(RFCOMM)通过在蓝牙的基带上仿真 RS-232 的功能,RFCOMM在蓝牙设备间实现串行通信。该协议基于GSM TS 07.10 规范,是一个简单的串口,为使用串行线传送机制的上层协议提供支持。在办公室无线网络中,它可以用于局域网接入网、拨号网、传真和手机通信。例如,在拨号网络中,AT命令先由主机发送到调制解调器,然后由调制解调器传输到局域网。一旦建立了调制解调器链接,应用程序就可以通过RFCOMM提供的串口发送和接收数据。RFCOMM的目的是针对如何在两个不同设备(通信的两端)上的应用之间保证一条完整的通信路径,并在他们之间保持一通信段。图2.12表示一条完整通信路径。图中应用不只表示终端用户应用,也可以是高层协议或作为终端用户应用的其他服务。图2.12 RFCOMM通信段RFCOMM准备把利用串口设备进行通信的应用覆盖在内。在一个简单的配置实例当中,通信段就是设备之间的BT直接链路,如图2.13所示。如果通信段为另一网络,BT用于在该设备和网路接入设备之间建立路径。RFCOMM只针对直接互连设备之间的连接,或者是设备与网络接入设备之间的互连。图2.13 利用COMM口的RFCOMMRFCOMM支持其他的配置方式,如一端采用BT通信,另一端采用有线接口,如图2.14所示。图2.14 利用COMM设备的RFCOMM通信两端设备必须兼容于RFCOMM协议。第一类设备是诸如计算机、打印机等通信终端设备。第二类设备是通信段的一部分,如Modem。但是为了简化协议内容,RFCOMM协议对这两种设备不作区分。在两个RFCOMM实体间传输信息也都支持这两类设备,其中有些信息只用于第二类设备。本协议也没有对两类设备所用信息进行严格区分。而是由用户决定使用哪些信息。由于一个设备并不知道通信路径上的其他设备的类型,所以每一个设备都应按照协议规定发送所有可用信息。2.2.2 PPP协议 10PPP协议是为了在点对点链路上传送数据报而定义的封装协议,PPP封装提供了不同网络层协议同时通过同一链路的多路技术,该协议主要包括三个主要组件:l 一种在串行链路上封装数据报的方法。PPP使用HDLC作为点对点链路上封装策略的基础,因此它的数据格式也符合HDLC规程的定义。l 一个可扩展的链路控制协议LCP(Link Control Protocol),用来建立、配置和测试数据链路连接。l 一族网络控制协议NCP(Network Control Protocol),用来和不同的网络层协议建立连接和设置选项。PPP被设计成可同时使用多个网络层协议。一、PPP连接操作为了在点对点链路上建立通信,PPP链路的每一端,必须首先发送LCP包以便设定和测试数据链路。在链路建立之后,对等实体才可以被认证。然后,PPP必须发送NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在链路上发送了。链路将保持通信设定不变,直到外在的LCP和NCP关闭链路,或者是发生一些外部事件的时候(休止状态的定时器期满或者网络管理员干涉)。二、物理层要求PPP设计时考虑了与常用的硬件兼容,支持任何DTE/DCE接口(包括EIA RS-232-C,EIA RS-422,EIA RS-423与CCITT V.35)。运行PPP协议只需要提供全双工的电路(专用的或是电路交换的),以承载双向的数据信息。PPP协议对传输速率没有任何限制。三、PPP封装格式PPP使用ISO的高级数据链路控制规程HDLC的原理、术语和帧结构,允许在同步及异步环境中运行,并提供了在同一链路上传输不同网络层协议(如IP、IPX、AppleTalk等)数据单元的机制,因此很容易连接各种各样的主机、路由器及远程接入设备。标准的PPP帧格式如图2.15所示。所有项由左向右传递。 图2.15 PPP帧格式标志字段(Flag)标志帧的开始和结束,为01111110(0x7e)。地址字段(Address)为单个八位组,值为11111111(0xff),全地址值,表示所有的站均可以接收该帧。控制字段(Control)也为单个八位组,为00000011(0x03)。协议字段(Protocol)占两个字节,指示封装在PPP帧中的信息所使用的协议,具体值可参考RFC1661。信息字段由零或多个字节组成,由协议字段标志的协议数据报构成。缺省的最大长度为1500个字节。在传输中,可以填充任意长度的八位组,使之达到最大长度,由各协议本身来区分填充数据和信息数据。校验字段(FCS)通常为两个字节,为提高检测能力,可经由协商,使用32位的校验字段。FCS的计算范围包括地址字段、控制字段、协议字段和信息字段(如果有填充数据,也计算)在内的所有数据,不包括其它的任何数据。四、LCP协议LCP协议用于建立链路层的连接,这种连接建立的过程是通过交换分组来实现的,LCP定义了三类分组:l 链路配置分组用于建立和配置PPP链路,确定与该链路相关的参数。这组分组包括configure_req、configure_ack、configure_nak、configure_rej、l 链路终止分组用于终止PPP链路。这组分组包括terminate_req、terminate_ack。l 链路维护分组用于管理和调试PPP链路。这组分组包括code_rej、protocol_req、echo_req、echo_rep和discard_req。PPP可以协商链路层的多个选项,如最大接收单元、异步控制字符映射、认证协议、质量协议、协议字段压缩、地址和控制字段压缩,用以配置数据链路连接。五、NCP协议PPP使用一族网络控制协议NCP配置不同的网络层。普遍考虑的NCP为IPCP(Internet Protocol Control Protocol),用于配置IP层,使用与LCP相同的报文结构(IPCP仅定义了LCP的前七个报文)及协商机制完成选项协商的任务。2.3 小结 为了使符合一定蓝牙规范的各种蓝牙应用之间能够互通,蓝牙特殊兴趣小组SIG制定了蓝牙技术规范,在使用通用无线传输模块和数据通信协议基础上,开发交互服务和应用。本章对技术规范定义的蓝牙协议栈结构进行了分析,并对基带协议、链路管理协议、逻辑链路控制和适配协议、服务发现协议和电缆替代协议等蓝牙中间层协议以及PPP协议进行了说明,具体的蓝牙应用开发将在第四章进一步分析。第三章 蓝牙跳频算法的分析与改进蓝牙工作在全球通用的2.4GHz ISM(工业,科学,医学)频段,由于该频段对所有无线电子系统都开放,Bluetooth设备会受到相当严重的干扰。为此Bluetooth采用了快速跳频和短包技术,以确保链路稳定,最大限度的削减来自其他设备的射频干扰,但其传输稳定性仍然存在很多隐患,例如当干扰频率和跳频频率正好一样的时候,就会对系统的传输造成很大干扰。有人认为,跳频系统具有躲避干扰的能力,但实际上,目前的跳频系统尚未能做到这一点。只有当系统能够发现干扰并自适应地改变载波频率时才能称得上是具有躲避干扰的能力,它建立在自适应跳频技术基础之上。本章首先分析了Bluetooth跳频系统中跳频序列的产生算法,接着在原有跳频序列算法的基础上,提出了一种改进的自适应跳频方案来提高系统的抗干扰能力,最后基于C语言和MATLAB工具对原跳频系统和改进后的系统进行了系统仿真和性能分析,并对两个系统的抗干扰性能进行了比较分析。3.1 蓝牙系统对跳频伪随机序列的要求跳频序列是用来控制载波频率跳变的伪随机序列,它控制信号在一个宽频带范围内所选择的某些频率上随机跳变。它的性能好坏对一个跳频通信系统的性能好坏有着决定性影响。Bluetooth跳频系统的跳频序列应该满足以下要求13:(1)一个Piconet中,Bluetooth设备间的通信应使用同一个跳频序列,以保证在时间和频率上的同步。跳频序列由Piconet中的主设备产生。(2)任意两个跳频序列在所有相对时延下发生频隙重合的次数应尽可能少,即跳频序列的汉明相关越小越好,以保证多个Piconet同时存在某一区域时,相互频率发生碰撞的概率尽可能小。(3)序列周期应该很长,要有良

温馨提示

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

评论

0/150

提交评论