基于-蓝牙无线自组网络应用研究报告_第1页
基于-蓝牙无线自组网络应用研究报告_第2页
基于-蓝牙无线自组网络应用研究报告_第3页
基于-蓝牙无线自组网络应用研究报告_第4页
基于-蓝牙无线自组网络应用研究报告_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、-. z基于蓝牙的无线自组网络的应用与研究摘要蓝牙是工作在2.4GHz ISM 频段的一种无线电技术,蓝牙设备以自组网络的方式进展连接组网。移动Ad hoc网络是一种特殊的无固定控制中心、不需要根底设施的无线多跳网络。由于Ad hoc网络的广泛应用,近年来成为移动通信领域的研究热点。然而,由于蓝牙技术具有*些特殊限制与特性,要利用蓝牙技术组建Ad hoc网络,还有很多具有挑战性的问题需要解决。蓝牙协议是基于严格的主-从结点架构,即从结点设备间的通信必须借助主结点设备。虽然这种主-从结点模式比拟简单,但是这种模式加倍了主结点的带宽,增加了从结点设备间的时延。为了解决这个问题,本文提出了动态频道分

2、配DSA和划分微微网的方法。在动态频道分配情况下,主结点动态地为从结点分配频道来实现不经过主结点,从结点间直接进展通信的目的,这个方法提高了效劳质量。为进一步拓宽动态频道分配方法的应用围,又提出了效劳质量自适应动态频道分配方法,这种方法又借助了了动态划分微微网的方法。提出的这种方法在时延和最大吞吐量方面,极大的提高了蓝牙性能,降低了网络能量消耗。关键词:蓝牙;自组网络;微微网;效劳质量2 蓝牙技术协议2.1蓝牙技术概述 蓝牙技术特点 随着计算机网络技术和无线通信技术的迅猛开展,人们对于通信的要求已经不仅仅满足于简单的实现异地的有线通信,而需要具有高灵活性和移动性的无线通信技术。根据使用环境和特

3、点的不同,相继出现了适用于大用户量、全球围的移动语音和数据通信技术GPRS(General Packet Radio Service)、适用于办公室中长距离网络接入的IEEE802.11无线以太网技术、适用于个人超短距离通信的红外线技术。但是一直都缺少适用于中短距离、低功耗、低本钱、高互操作性的无线技术。蓝牙技术就是在这样的背景下出现的。蓝牙技术是一种中短距离无线射频通信技术,省去了各种数字便携设备之间需要经过复杂的有线介质连线和软件安装过程,使各种数字便携设备可以实现无缝连接,提高了不同便携设备的移动性。蓝牙技术并且具有如下的特点:蓝牙技术的开放性;中短距离通信;无线连接性;蓝牙产品的互操性

4、和兼容性;传输语音和数字信息;平安无公害性;工作频段的免费性;信息的平安性。 蓝牙协议体系构造 蓝牙核心系统覆盖了最低四层(射频层、基带层、链路管理层和L2CAP层)和与其相关的效劳层协议。核心系统架构如图2.1所示。最底三层有时作为一个子系统蓝牙控制器。通常在蓝牙控制器和L2CAP及其它应用层(即蓝牙主机)之间是一个标准的物理通信界面,而该物理通信界面一般是可选的。该界面叫作主机控制界面(HCI), HCI层以下的叫做主控制器,HCI层以上的叫主机。蓝牙核心系统通过各种接入点来提供设备管理效劳、传输控制效劳和数据传输效劳(图中的椭圆形即为接入点)。下面对核心系统最低四层加以简单说明。射频层:

5、射频块主要在物理信道上可靠地传送和接收符合要求的数据。基带层:对射频块的时间和频率进展控制,传输符合基带要求的数据流。链路管理器层:链路管理器主要对与物理信道、逻辑传输和逻辑连接上所传输的相关数据载荷进展编码和解码。逻辑链路控制与适配层:逻辑链路控制和适配层主要是进展流量控制和接收缓冲分配。 蓝牙普通数据包构造通常蓝牙数据包由信道接入码、有效载荷头、有效载荷和CRC组成。有效载荷包括:LMP信息、L2CAP信号、L2C帧和其他用户数据;有效载荷头携带逻辑连接标示符;携带逻辑传输标示符;信道接入码携带物理信道接入码。载荷头前面的保证时间和同步序列仅仅针对EDR增强数据速率的,用来在物理层选择调制

6、方式。 蓝牙拓扑构造 一个匹克网可以包括两个或多个具有同样物理信道(即具有同样的跳频序列和时钟)的设备。不同匹克网具有不同的物理信道。通过时分复用,一个蓝牙设备可以参与多个匹克网,但是它只能做一个匹克网的主设备,可以做多个匹克网的从设备。多个匹克网互相连接之后组成散射网。2.2蓝牙无线射频 蓝牙无线射频是蓝牙中的最低层次,属于蓝牙技术的硬件接口,实现蓝牙技术的空中物理接口,该层主要规定了蓝牙射频信号的规格和参数,包括射频信道的划分、射频的频段分布、信号的调制方式等,这局部协议主要是由蓝牙专用硬件电路来实现。射频频段和物理信道 蓝牙射频工作在免费的2.4GHz ISM频段,这个频段分布在2400

7、MHz -2483.50MHz。在这个频段划出79个跳频信道,每个信道带宽为1 MHz。 蓝牙底层收发器使用自适应跳频技术,高斯频移键控(GFSK)和相移键控(PSK)调制方式。采用GFSK调制方式时,蓝牙的传输速率可到达1 M/s,使用PSK调制方式蓝牙的最大传输速率可到达3M/s。由于蓝牙EDR用相移键控(PSK)调制方式取代标准传输率的高斯频移键控(GFSK),当采用zr /4-DQPSK进展调制时,数据速率可以提高到2M/s,当采用8DPSK进展调制时,数据速率可以提高到3M/s,从而实现了更高的数据传输速率。这样在无线电链路上发送数据时,数据包有效载荷的每一种符号能够传输更多的位元。

8、传输速率的增加意味着如果资料量不变,则EDR无线电发送数据的时间将减少为原来的1/2或者1/3,因而降低了功耗,也就增加了产品电池的使用时间。 蓝牙射频系统使用了时分双工(TDD)工作方式,这样信道从时间上被划分为很多时隙。蓝牙微微网中的设备分为主设备和从设备,其中,发起通信的设备称为主设备,其他设备都是从设备。主设备在偶时隙发送,从设备在奇时隙发送。蓝牙射频的跳频频率是1600 Oh/秒,每个时隙的宽度是625uS(1/1600秒),蓝牙射频在指定时隙中其工作频率是不变的,所有微网中的蓝牙设备都与主设备的跳频序列一样,如图2.4所示。通常分组的传输是在一个时隙中完成,如果在一个时隙中无法完成

9、全部数据的传输,也可以在3个时隙中完成传输,最多可以扩展到5个时隙,此时频率保持不变,与第一个时隙的频率一样。射频发射功率 蓝牙技术作为一种使用在便携式设备上的无线通信技术,应用要际的电能消耗要尽可能低,还要可以根据实际通信环境动态调整功率消耗。蓝牙的发射机提供了三个不同的功率等级: Class 1:1mW(odBm)-100mW(2odBm) Class 2: 0.25mW(-6dBm)-2.5mW(4dBm) Class 3: 1mW(OdBm)2.3基带层协议 蓝牙系统提供点对点和点对多点连接,在点对点连接中两个设备共用同一个物理信道,在点对多点连接中,几个蓝牙设备共用一个物理信道。每一

10、个匹克网中最多只能有七个处于激活态的从设备,其他的则只能处于休眠状态,但是必须和主设备保持同步。有共同设备的匹克网叫做散射网。每个匹克网不应该同步,有各自的跳频序列。每个蓝牙设备之间在空中以数据包的形式进展数据传输,而传输的数据包可以分为两种:根本数据包和EDR数据包。其中,根本数据包包括三个局部:识别码、和有效载荷。EDR数据包包括识别码、保护周期、同步序列、有效载荷和尾。 每个蓝牙设备都有一个全球唯一的48位地址,称为蓝牙设备地址(BD ADDR)。该地址是固化在蓝牙物理硬件中的,蓝牙设备地址分为3个段:24位低地址段(LAP), 16位高地址段(UAP)和4位未定义段。蓝牙设备地址除可以

11、唯一表示一个蓝牙设备外,它与微网标示、分组头错误检测、鉴权和加密字的产生有着密切的关系。另外每个蓝牙设备应该有一个本地蓝牙时钟以便和其他蓝牙设备同步。物理信道及物理链路 蓝牙物理信道就是一些随机的蓝牙跳频序列的联合。每个匹克网通过自适应跳频技术选择出自己的跳频序列,每个匹克网之间具有不同的频率,从而防止相互之间的干扰。 一个物理链路表现为两个设备之间的基带连接,物理链路和物理信道是相关联的,物理链路主要特性为:功率控制、管理、加密、以及数据传输速率的改变。逻辑传输 在主设备和从设备之间可以有五种传输类型: SCO(Synchronous Connection-Oriented)逻辑传输; eS

12、CO(E*tended Synchronous Connection-Oriented)逻辑传输; ACL(Asynchronous ConnectionLess)逻辑传输; ASB(Active Slave Broadcast)逻辑传输; PSB(Parked Slave Broadcast)逻辑传输. 同步面向连接逻辑传输是在主从设备之间进展的点对点逻辑传输,它支持典型的时间有限制的信息,如语音和普通的同步数据,SCO链路是在物理信道中的保存时隙上实现的。另外eSCO逻辑传输可以进展重发。 ACL也是在主设备和从设备之间进展的点对点传输,在非SCO链路保存时隙上工作的无连接链路。它是主从设

13、备之间的分组交换式连接,ACL链路主要用来传输数据信息。在一对主从设备之间最多只能支持一条ACL链路,ACL链路支持一个设备对多个设备的播送。因为ACL链路使用的无连接链路无法保证通信的可靠性,所以它支持重发分组的机制。 ASB逻辑传输被主设备用来和处于激活态的从设备进展沟通。PSB被主设备用来和处于休眠状态的从设备进展沟通。.1逻辑传输地址(LT_ADDR) 在一个微微网中,主设备为每个活动从设备都分配一个3位的逻辑传输地址(LT ADDR ),所以一个微微网中最多可以有7个活动从设备,其中全0的活动成员地址用于进展播送通信。当微网主设备与从设备进展通信时就在分组中使用该地址来标示从设备。.

14、2休眠成员地址(PM_ADDR) 当微微网中的从设备进入休眠状态时,主设备给该从设备分配一个8位的休眠地址(PM ADDR ),主设备就是通过该地址来区别休眠的从设备的,在一个微网中最多可以有256个休眠的从设备。.3请求地址(AR_ADDR) 当从设备要从休眠状态转为活动状态时,从设备使用请求地址(AR ADDR)来确定从一主时隙和主设备保持同步。不同的从设备可以使用一样的请求地址。逻辑 总共定义了五种逻辑: LC(Link Control),该逻辑携带低级别的控制信息,如ARQ、流控制和载荷描述等; ACL-C(ACL Control),该逻辑携带主设备和从设备管理器之间的交换控制信息;

15、ACL-U(User Asynchronous/Isochronous),该逻辑携带L2CAP异步和同步用户数据; SCO-S(User Synchronous),该逻辑携带同步用户数据; e SCO-S(User E*tended Synchronous),该逻辑携带扩展同步用户数据蓝牙设备操作状态及转换蓝牙操作状态包括三种主状态:连接状态(Connected State)、待机状态(Standby State)和休眠状态。还有7种子状态:呼叫(Page)、呼叫扫描(Page Scan)、查询(Inquiry)、查询扫描(Inquiry Scan)、主设备应答(Master Response

16、)、从设备应答(Slave Response),查询响应(Inquiry Response)。主从设备的状态转换需要链路管理命令和链路管理器部信令的控制。图2.7显示了各状态之间的转换关系。从待机状态到连接状态,中间需要经过查询和呼叫状态。在查询状态下,主设备在其通信围之搜索其他设备的标识,而从设备必须处于扫描状态监听和响应查询:在呼叫状态下,主设备对其通信围的指定设备进展呼叫操作,从设备必须处于呼叫扫描状态。如果主设备己经获得了从设备的蓝牙设备地址,主设备可以直接越过查询状态而直接进展呼叫操作。当一个从设备不需要参与匹克网信道时,就进入休眠状态。这时它就放弃了LT_ADDR接收主设备分配给它

17、的PM ADDR。所有处于休眠状态的从设备隔一定的时间间隔去监听主设备信道及播送信息从而保持同步或被唤醒进入状态。当从设备要从休眠状态转为连接状态时,从设备使用请求地址(AR ADDR )来确定从一主时隙和主设备保持同步。2.4蓝牙链路管理器协议LMP链路管理器协议是用来对链路进展设置和控制,包括对逻辑传输、逻辑连接和物理连接的控制,它和其他的协议层没有直接的层次关系,如图2.8所示。链路管理器则位于链路控制器之上,在两个连接的设备之间传递管理器协议消息。在不同设备之间的链路管理器之间交换的管理器协议消息称为链路管理器协议数据单元(LMT PDU )。链路管理器消息的优先级要比用户数据的优先级

18、高。链路管理器协议单元格式LMP-PDU的格式如图2.9所示。它由三局部组成:7位或15位的操作码,表示不同类型的LMP-PDU: 1位事务ID字段表示该LMP-PDU是由主设备还是从设备发出的。事务ID为0表示它是由主设备发出的,事务ID为1表示它是由从设备发出的:不定长的容字段包含了LMP-PDU的具体参数。根据操作码的不同,蓝牙LMP-PDU的分组类型有很多,整体上蓝牙分组可以分为两种类型:第一种类型要求发送方链路管理器发送请求消息初始化通信,而接收方链路管理器承受消息后,可以承受请求执行要求的操作,或者拒绝消息请求并发送LMP-not-accepted分组,或者发送自己的请求消息进展协

19、调;第二种类型要求发送方链路管理器发送请求消息,承受方链路管理器必须承受请求,并按请求操作。 LMP建立连接的进程LMP层发出协议指令后,由基带层ACL-C链路包的有效载荷负责运送传递,当接收的基带层收到这些包后,解析有效载荷的L_CH。如果L_CH=11,代表包传递的是LMP数据,传递LMP数据包比传递L2CAP包有更高的优先权,通常以LMP为开头的信号指令表示该包是LMP发送的指令。蓝牙系统中建立LMP连接的过程如图2.10所示,从图中可以看出,当主从单元各送出ID包与FHS包完成时序的同步后,进入连接状态,接着继续由LMP层建立连接,其过程是由主单元发出LMPhost connect r

20、equest,假设从单元上的LMP层接收则响应LMP一ccepted;假设从单元上的LMP层拒绝主单元的请求则响应LMP_Not Accepted。发出响应的从单元,询问主单元是否需要进展主从角色切换,再交换一些额外信号(Additional Transcation ),最后建立LMP层的连接(LMP_Setup plete)。此时主从单元双方都不知道彼此提供的效劳,直到双方翻开SDP协议后才能各自发现各自提供的效劳种类。链路管理器完成的主要功能.1平安管理平安性主要由基带来保证。基带定义了一套数据加密和设备鉴权的算法以及相应的硬件装置。设备之间的链路配置也和平安密切相关,链路的连接在配置过程

21、中都涉及到平安问题。链路的配置主要由链路管理器来完成。设备鉴权是强制性的,所有蓝牙设备都要支持鉴权过程,而加密则是可选的。.2 操作模式管理因为蓝牙设备一般都是低功耗的便携设备,所以蓝牙协议应该具有良好的功率管理功能。而蓝牙的不同操作模式正是解决功率消耗问题的最正确途径。蓝牙的操作模式可以分为3种:保持模式(Hold Mode):当主从设备在一段时间没有ACL数据要发送时,主设备可以要求从设备进入此模式,从设备将关闭收发机,并定时激活链路。呼吸模式(Sniff Mode):处于呼吸模式下的从设备,降低从微微网监听消息的速率,呼吸间隔可以根据应用做动态调整。休眠模式(Park Mode):当从设

22、备不需要进入传输信道,但还要保持跳频同步时,可以将这个从设备设置为休眠模式,在这种模式下蓝牙设备将放弃活动成员地址(LM ADDR)。.3 带宽控制蓝牙链路控制器可以使用不同的方式来管理设备之间的带宽分配,SCO链路是高优先级的链路,可以提供级的语音通信效劳,为了提高传输线路的利用率,提高ACL链路上所支持的带宽,不同的通信设备可以协商对基带数据分组的使用,通过LMP-PDU可以设置通信双方的参数。.4链路控制器管理链路管理器可以实现对通信双方的链路控制器和基带的工作参数的协商和设置。包括对呼叫参数的设置、主从设备之间角色的切换、工作时钟和时间信息的交换、特性信息的交换,高层逻辑连接的建立和断

23、开(并非底层物理连接的建立)。2.5逻辑链路控制和适配协议L2CAP2.5.1 L2CAP概述逻辑链路控制和适配协议(L2CAP,Logical Link Control and Adaption Protocol)基于基带协议,位于数据链路层。L2CAP通过协议多路复用、分段重组操作和组概念,为高层提供面向连接和无连接的数据效劳。L2C使用基带协议中的ACL链路,并由基带协议来保证传输数据的完整性。L2CAP允许高层协议和应用传输承受长达64KB的L2CAP数据分组。2.5.2 L2CAP特征功能协议复用因为L2CAP要向不同的高层应用协议提供效劳,而基带协议不支持任何类型字段,无法区分高层

24、协议。所以它必须支持协议复用,进展上层数据传输的路由。分段重组基带协议所能传输的分组的长度是有限的,而高层协议所要传输的数据长度可能要很长,所以L2CAP必须把高层协议的长数据分段为较小的基带分组来发送,而承受方的L2CAP层也相应的要将基带层提供的小分组重组复原为原来较大的高层分组。信道流控L2CAP对上层应用提供流控效劳,而这种流控是基于窗口机制的。当几个数据流在同一个L2CAP逻辑连接上传输时,它们使用各自的L2CAP信道,每个信道可以要求单独的流控制。组管理在蓝牙的高层和底层协议中都支持组的概念,为了将高层组映射到底层的组,L2CAP提供了对于组的管理。错误控制和重传有些应用要求比基带

25、提供的更低的REA(剩余错误率),L2CAP包括可选的L2CAP PDU错误校核和重传机制。基带错误校核失败之后,L2CAP再次进展错误校核,从而降低了数据传输的错误率。而重传则对校核出错和丧失的数据包进展重新传输,增加了数据的平安性。效劳质量L2CAP连接建立过程,允许交换有关两个蓝牙单元之间效劳质量的信息。每个L2CAP设备必须监视由协议使用的资源并保证效劳质量的完整实现。 状态机蓝牙协议中为不同层次的协议规定了不同的状态、引起状态改变的事件和响应事件的动作,这样就形成了状态机,这种状态机只用来描述面向连接双向信道。状态机中事件和动作的命名规则为:垂直方向协议层之间的接口使用为高层提供效劳

26、的低层效劳协议的前缀,例如L2CA;水平方向上的一样层次的实体之间的接口使用协议作为前缀,例如L2CAP 。在垂直方向上,从上层传来的事件称为请求(Req ),相应的低层返回的应答称为确认(Cfin);从低层传来的事件称为指示(hid),相应的应答称为响应(Rsp ),进一步处理过程的应答称为中间应答(Pnd);如果要表示否认应答,可以在前述的事件后加否认后缀(Neq )。图2.11使用报文序列图(MSC)来解释了L2CAP事件的正常序列。两条外部直线表示发起方和承受方之间的L2CA接口。L2CA接口的请求指令将导致发出协议定义的请求。当协议向承受者传递请求时,远程L2CA实体将向上层协议发送

27、指令。当承受方的上层协议应答时,应答将由协议打包并发回发起方。最后再用确认报文把结果发回发起方的上层协议4。2.5.4 L2CAP分组格式L2CAP支持面向连接、无连接信道和信令信道,它们使用不同的分组格式。.1面向连接信道L2CAP面向连接的信道是双向的。长度字段:16位,指示有效载荷的长度;CID信道标识符字段:16位,指示分组的目的CID;有效载荷:065535字节可变长,承载上层发送到下层或下层发送到上层的数据。.2无连接信道L2CAP无连接信道是单向的,提供到组的逻辑连接,其分组格式如图2.13所长度字段:16位,指示PSM字段和有效载荷长度之和;CID信道字段:16位,指示分组的目

28、的CID;协切复用PSM字段:最小16位,分为2局部,有效载荷:065535字节可变长,承载上层数据。.3信令信道L2CAP的信令信道是为了在不同设备的L2CAP层传输信令。它们是发送到CIDO*00001的双向通道。在一个信令信道分组中可以传送多个指令,分组格式如图2.14所示。长度字段:16位,指示所有指令的长度之和。CID信道标识符字段:16位,指示信令信道CID,必须为00001代码字段:8位,用于指示指令类型。标识符:8位,用于请求与响应的匹配,请求设备设置,响应设备在回复中使用一样的值表示响应。指令长度:16位,表示指令数据字段的长度。指令数据:变长,根据代码段的类型来决定具体的数

29、据容。26效劳发现协议效劳发现(Service Discovery)是对网络中的设备或效劳进展定位,获得使用设备或效劳所必要的信息。在蓝牙微微网环境下效劳发现与传统固定网络环境下的效劳发现有很大的不同,传统固定网络环境下,效劳信息比拟集中地存放在中央信息设备上,同时效劳的信息根本没有变化。而蓝牙微微网环境下,设备有很强的移动性,效劳的参数也在不断地变化,这就要求设备效劳信息应该是分布式地存放在不同的设备上,任何需要效劳的设备可以从不固定的位置获得其需要的效劳信息。SDP协议工作在L2CAP层之上,它使用L2CAP提供的连接效劳,同时为上层其他高层应用提供效劳,但是SDP与其他高层应用没有直接的

30、层次应用。效劳发现协议概述蓝牙效劳发现协议(Service Discovery Protocol)采用客户/效劳器模式工作。SDP工作模式包含SDP客户机和SDP效劳器。SDP客户机可以从SDP效劳器上获得效劳的属性信息如图2.15所示。SDP效劳器维护着描述效劳属性的效劳记录,这些效劳记录组成效劳注册表。一条效劳记录可以包含多个效劳属性。一个蓝牙设备最多可以有一个SDP效劳器,但是可以同时有多个效劳,如果一个蓝牙设备只充当客户的话,则该蓝牙设备将不需要建立SDP效劳器。单个蓝牙设备可以既是SDP客户机,又是SDP效劳器。效劳记录和效劳属性在一个SDP效劳器上存在一个效劳注册表51,在该效劳注

31、册表中,SDP效劳器为每个运行在本地蓝牙设备上的效劳维护一条效劳记录,效劳记录包括了该效劳的所有信息。一条效劳记录由多个效劳属性ID/效劳属性值对组成。SDP效劳器可以保证在保持L2CAP连接过程中,所有的效劳记录都保持不变。效劳记录句柄是一个专门用来唯一标示SDP效劳器每一效劳记录的32位的值。当向SDP效劳器增加或删除效劳记录时,效劳发现协议并不提供通知客户的机制。当与效劳器建立一条L2CAP连接时,从效劳器获取的效劳记录句柄将保持有效,除非它所代表的效劳记录被删除。SDP效劳器应确保在保持L2CAP连接期间,不会重用任何效劳记录句柄。效劳属性用于描述*一效劳的一个特征。SDP定义了一些标

32、准效劳属性,用户也可以定义自己的效劳属性。效劳注册表中的每条效劳记录可以由多个效劳属性组成,每个效劳属性都由一个效劳属性ID和相应的效劳属性值组成。如图2.16所示。效劳属性ID是一个16位的无符号整数,效劳属性ID标识了属性值的含义,所以效劳属性ID应该是局部唯一的,也就是说在不同的效劳记录中,效劳属性ID是可以一样的,但在同一效劳记录中绝对不能一样。属性值是长度可变的字段升其含义由相应的属性D决定,它是以数据元的形式表示的。SDP客户机在进展效劳搜索时,首先以SDP分组的格式发送请求,在分组中说明要搜索的效劳,效劳器在响应请求时,将符合条件的效劳记录和属性返回给客户机。SDP协议规定在进展

33、效劳搜索时只能使用属性值是QUID的属性作为搜索依据,一个UUID (Universally Unique Identifier)是一个全球唯一的通用定位符,不需要中心注册机构统一管理。它的长度是128位,为了降低存储和传输128数据的负担,蓝牙标准规定预分配了一个通用蓝牙根本UUID(0*00000000-0000-1000-8000-00805F9B34FB ),对应这个预定义的UUID,可以有16位或32位的QUID别名,但是他们代表的还是128位的UUID,其转换方法为:完整的UUID=16位别名* 296+128位蓝牙根本UUID完整的UUID=32位别名* 296+128位蓝牙根本

34、UUID效劳发现协议数据单元格式SDP传输的数据量很小,它使用请求/响应模式进展通信。每一处理事物都由一个请求协议数据单元和一个响应协议数据单元组成。请求和响应都可以不按顺序传输。在效劳发现协议使用L2CAP传输协议的特定情况下,可以在一个L2CAP分组中传输多个SDP PDU,在每一连接上只能发送一个这样的L2CAP给指定SDP效劳器。限制SDP发送确认分组成为流控制形式的一种。SDP-PDU由一个和多个PDU参数组成。由3局部组成:PDU ID,事务ID和参数长度,如图2.17所示。PDU ID字段:8位,标识SDP的分组数据类型。事务ID字段:16位,唯一标示请求PDU,并用于匹配响应P

35、DU与请求PDU o参数长度字段:16位,标示了所有参数的长度和。参数字段:变长,参数段根据PDU ID确定,可以有多个参数组成。2.7 BNEP蓝牙网络封装协议BNEP蓝牙网络封装协议6的作用是实现蓝牙设备的以太封装,对蓝牙底层功能实体进展封装和映射,使上层的网络应用程序和TCP/IP协议无需经任何修改就可使用底层的蓝牙链路实现通信设备的组网。因此,BNEP也属于链路层协议。 BNEP功能要求支持通用网络协议IPv4, IM, IP*和其它以太网类型中定义的网络协议。另外需要低的协议支出,以便提高带宽和效率。包的封装BNEP用它自己的头替代了以太数据包的以太,以太包载荷保持不变。最后BNEP

36、头和以太载荷通过L2CAP封装发送到蓝牙介质。 BNEP头格式BNEP数据包由三局部组成:BNEP类型、扩展位E和基于BNEP类型的BNEP数据。表2.1定义了不同的BNEP类型,它占7位。E:扩展标示,占1位,该位如果为O*0,表示BNEP头后面紧接着的为BNEP载荷,如果为0*1标示BNEP头后面紧跟着一个或更多个扩展头。BNEP数据包:与BNEP类型相匹配的BNEP信息包。 BNEP协议实现BNEP协议实现t71可以划分为以下几个局部:以太网络设备仿真驱动、网络层/以太层接口、以太层L2CAP接口和直接面向应用的开放接口。这几局部之间的关系如下:面向应用开放接口: 对蓝牙应用开放接口来讲

37、,其主要任务是负责为应用程序开放一个直接控制BNEP的接口。这些控制指令包括虚拟网络设备的注册与注销,BNEP设备的翻开与禁用,以及在两个BNEP网络设备之间建链与拆链,读取设备的管理信息等。仿真驱动与BNEP/网络接p层: 仿真驱动程序主要负责BNEP设备的初始化,在操作系统中加载驱动程序模块,以及实现对设备执行管理功能的各种数据构造。网络层与以太层不需要任何信令交互,在LINU*系统中,网络层只是向下层注册了一个用于IP数据包发送的程序接口,数据的接收采用的是软中断的方式。因此BNEP/网络层接口也只需要实现数据的发送与接收。BNEP/L2CAP层接口: 从功能上讲,BNEP/L2CAP接

38、口主要实现数据向上层的提交、BNEP分组在链路层的转发以及对L2CAP层各通信信令的处理与应答。在LINU*环境下,IP层在接收数据过程中主要通过一个名为sk buff的数据构造实现与BNEP的联系。如果上层应用要求底层实现链路层的分组转发,则BNEP应对发往其它主机的分组和播送分组执行转发,在执行BNEP层分组转发的过程中,无需涉及任何正层的分组接收处理。而且需要注意的是,同一分组的接收与转发链路不能重复。2.8 微微网、分散网和Ad hoc蓝牙网络技术是很值得详细研究、已有的研究仍然很不完善的一个领域。Piconet即匹克网、微微网。一个蓝牙piconet可以只是两台相连的蓝牙设备,比方一

39、台便携式电脑和一部移动,也可以是八台甚至更多以一样跳频模式运行的设备。Piconet类似自组织网络ad hoc,所有设备都是级别一样的单元,具有一样的权限。但是在piconet网络初建时,最先发起连接的单元被定义为master,它的时钟和跳频顺序被用来同步其它设备,其它单元被定义为slave. Master的蓝牙设备地址BDee ADDR决定跳频序列和信道码,主单元系统时钟决定跳频相位,另外,主单元还通过轮询机制控制信道上的通信流量。主从角色是从执行通信协议过程中的角色来看的,任意一个蓝牙设备只要发起连接,都可以成为主单元,微网建立以后,主从角色可以交换。蓝牙时钟为单元部和单元的收发提供节拍,

40、时钟频率为3.2KHz (312.5us周期)。每个蓝牙设备的时钟由自己产生,当与其它单元同步时,用与主单元时钟的偏移量来补偿。时钟计数器的4个位:CLKO, CLK1、CLK2, CLK12分别对应312.5us, 625us, 1.25ms,1.28s四个连接的关键时间点。在piconet的连接建立之前的初始默认状态,所有的设备都处于standby挂起待机状态。蓝牙设备使用inquiry查询过程发现其它在查询扫描子状态的设备;使用page呼叫过程与处于呼叫扫描子状态的设备。作为maste的源端设备首先初始化,如果目的设备地址,则通过page消息建立连接,如果地址未知,则通过一个后接page

41、消息的inquiry查询消息建立连接。发起查询的源端使用根据蓝牙设备地址导出的查询码查询目的蓝牙设备。目的设备在standby或者连接状态下,可以周期性地进入查询扫描子状态监听查询信息。在ACL连接状态的目的设备将自己的ACL链路置于保持模式可以增加查询响应概率,减少查询时间。SCO链路优先级高于查询扫描,将占用一些本来可以使用的查询扫描窗口时间。源端在不同的跳频点上按约定序列不断的、迅速的发出查询消息,并在发送间隙收听响应但不回应。源端通过查询知道了自己的作用围中有哪些可以连接的目的端,向它选中的设备在A组16个跳频频点上发送一串16个page消息(即ID分组)。如果没有应答,源端则在剩余B

42、组16个频点上继续寻呼。目的端收到从源端发来的消息的最大延迟时间为激活周期的2倍(2.56秒),平均延迟时间是激活周期的一半(0.6秒)(61。目的设备在呼叫扫描子状态中收到page,然后二者进入呼叫响应阶段,交换各自的参数信息,进入连接状态,当两个蓝牙设备成功建立链路后,一个piconet便形成了。几个独立但不同步的piconet组成一个scatter net。蓝牙系统可优化到在同一scatter net中有10个全负载的独立的微微网的情况下,全双工数据速率超过6Mbitls。蓝牙设备可以以时分复用的方式参加到两个或多个微微网中,但因无线信号只能调制到单一载波上,任一时刻一个设备只能在一pi

43、conet信。通过调整信道参数(即欲通信的piconet主机设备地址和时钟),设备可从一微微网跳到另一微微网中,并可改变任务。例如*一时刻在微微网中的master,另一时刻在另一微微网中为slave,见图2-6。由于主单元参数标示了微微网信道的跳转模式,因此一单元不可能在不同的微微网中都为主单元。要切换到另一微网,该设备需要把自己的ACL链路置于保持或休眠模式,然后改变信道参数参加另一微网。当然如果该设备在呼吸模式,则有更充裕的时间在呼吸间隙另一微网。如果该设备有SCO链路,则只能在非保存时隙其它微网,并且只能存在一条使用HV3分组的SCO链路。蓝牙标准还提供了主从角色切换的能力。主从切换可以

44、分两步完成:首先要切换的两个单元进展TDD切换;然后所有微网成员都进展切换,所有从单元都收到FHS分组确认之后,开场使用由新主单元定义的微网参数,切换完成。尽管蓝牙可以在微网之间切换,但是每次切换都必须改变当前piconet的连接参数。这对于*些应用是可以忍受的,然而对于手提通话、数据同步传输和信息提取等要求自始至终保持稳定的数据连接的应用来说,这样的切换将使传输中断,是不能允许的。要解决这一问题,需要将移动IP技术与蓝牙技术有效地结合在一起。3 蓝牙算法的缺乏及改良3.1 蓝牙规目前,蓝牙规比拟多,但是蓝牙自组网的很多协议、规、算法等都还不完善,甚至*些方面还没有一个确切的规定。下面列举蓝牙

45、自组网形成过程中的局部规则:规则1:每个微微网中最多有7个从结点。规则2:每个结点在它相邻的所有链路上只能是主结点或从结点。规则3:一个桥结点只连接两个微微网。规则4 :任何一个微微网只通过从从桥结点与其它微微网相连接。规则5:任何2个微微网仅共享一个从从桥结点。规则6:分散网的组成尽量具有最少数目的微微网。3.2 现有算法的缺乏现有的对蓝牙自组织网络进展规定的一些规,有时在蓝牙自组网络性能上也起到了限制作用。在微微网部,从结点间进展数据传输时,必须经过主结点才能进展,我们称这种经过主结点的从结点间的数据交换为主-从结点模式数据交换。由于主结点在微微网的控制核心作用,这种模式下的数据交换简单,

46、两个结点间直接的数据交换消耗能量少。但是这种传输模式存在不可防止的缺陷。由于两个从结点间不能直接的进展数据交换,必须借助主结点的传递才能进展。很明显,这样在传输路径上就变大了很多,由于传输速度根本固定,所以这种传输很浪费时间,有很长的传输时延。从数据传输角度来看,它的传输速度慢,效率比拟低。这种主-从结点模式数据交换,在微微网,主结点同时与通信的两个从结点进展连接,占用了更多的带宽,浪费了无线网络带宽资源。另外,由于数据经过了主结点的传递,在结点间数据传输出错概率一样的情况下,主-从结点模式的数据交换增加了数据出错概率。3.3 新的蓝牙算法描述在这里,提出一种新的数据传输方式,即从-从结点间数

47、据传输。从-从结点间的数据传输,当一个从结点向另一个从结点发送数据时,通过主结点分配带宽、时钟频率等,建立从结点之间直接的数据交换。如果这种传输方式可行的话,总传输距离将缩短,数据传输率将明显提高。另外传输时延主要来自源从结点通过主结点获得目的从结点地址信息的过程和从结点间传输数据的时延。而按原来的规则传输,需要花费两个传输时延。所以在总传输时延上将大大降低。下面对这种算法下,数据的具体传输过程进展说明。当源从结点有数据要想目标从结点发送时,源从结点向主结点发送到目标从结点的连接请求,在主结点承受到源从结点发来的连接请求后,判断该主结点本身是不是有足够的资源分配给请求的这个连接。如果主结点没有

48、足够的信道资源分配给这个请求的连接,且新请求的这个连接在优先级上不高于已经建立的一些结点连接,则向该源从结点返回等待信息,待现有的一些传输完毕,连接断开,释放了信道资源后,再重新承受该源从结点发来的连接请求。如果主结点没有足够的信道资源分配给这个请求的连接,但新请求的这个连接在优先级上高于已经建立的一些结点连接,则主结点先断开优先级稍低的一些连接,直到现有的信道资源足够分配给申请的新连接要求为止。主结点向该源从结点返回连接信息,允许该连接的建立。主结点为这个新连接分配信道、时钟频率等。从结点间建立连接,进展数据传输。如果主结点有足够的信道资源分配给这个请求的连接,则主结点直接向该源从结点返回连

49、接信息,允许该连接的建立。主结点为这个新连接分配信道、时钟频率等。从结点间建立连接,进展数据传输。在主结点有足够信道资源,允许从结点间建立连接之后,主结点需要根据效劳质量QOS分割微微网,重新对蓝牙的网络结果进展了划分,使源从结点和目标从结点实际上是一个新建立微微网的两个结点,其中一个是主结点,另一个是从结点。这样就不会违反现有的蓝牙规里从结点不允许直接进展数据交换的规定了。4 DSA算法的仿真与分析4.1 仿真软件和蓝牙模块的介绍 仿真工具软件的介绍MATLAB是一种对技术计算高性能的语言。它集成了计算,可视化和编程于一个易用的环境中,在此环境下,问题和解答都表达为我们熟悉的数学符号。典型的

50、应用有:数学和计算;算法开发;建模,模拟和原形化;数据分析,探索和可视化;科学与工程制图;应用开发,包括图形用户界面的建立。MATLAB是一个交互式的系统,其根本数据元素是无须定义维数的数组。这让你能解决很多技术计算的问题,尤其是那些要用到矩阵和向量表达式的问题。而要花的时间则只是用一种标量非交互语言(例如C或Fortran)写一个程序的时间的一小局部。名称MATLAB代表matri* laboratory矩阵实验室。MATLAB最初是编写来提供应对由LINPACK和EINPACK工程开发的矩阵软件简易的。今天,MATLAB使用由LAPACK和ARPACK工程开发的软件,这些工程共同表现了矩阵

51、计算的软件中的技术开展。 MATLAB已经与许多用户输入一同开展了多年。在大学环境中,它是很多数学类、工程和科学类的初等和高等课程的标准指导工具。在工业上,MATLAB是高产研究、开发和分析所选择的工具。 MATLAB以一系列称为工具箱的应用指定解答为特征。对多数用户十分重要的是,工具箱使你能学习和应用专门的技术。工具箱是是MATLAB函数M-文件的全面的综合,这些文件把MATLAB的环境扩展到解决特殊类型问题上。具有可用工具箱的领域有:信号处理,控制系统神经网络,模糊逻辑,小波分析,模拟等等。 蓝牙仿真模块BlueHoc是developerWorks开放源码专区中的一个新工程,提供了模拟的蓝

52、牙环境,可以让开发者设计在无线电、基带和其它通信层上运作的应用。BlueHoc是developerWorks开放源码专区中的一个新工程,提供了模拟的蓝牙环境,可以让开发者设计在无线电、基带和其它通信层上运作的应用。早在去年7月,IBM就通过发布用于Linu*的 BlueDrekar协议栈,并将HCI UART传输层驱动程序的源码公开,标志着在Linu*上开发蓝牙活动的开端。现在,开发者可以获得帮助他们将蓝牙应用设计变成现实的另一种工具BlueHoc。该软件模拟了 (1)底层包括无线电、基带和链路层蓝牙规,以及 (2) 由一些蓝牙设备所组成的特殊室无线环境。因而BlueHoc可以让开发者在现实网

53、络环境中设计和测试他们的应用。蓝牙标准是一种近距离无线通信的行业规,可以让便携式个人设备之间进展交互而不需要其它固定设备。它主要用于代替外围电缆和其它一些近距离无线技术,例如红外线数据技术 (IrDA)。不过,与 IrDA 不同,这种技术使用广谱无线电频率,因此支持全方向的多连接,而不需要可见的通信设备。BlueHoc模拟器提供了一种软件环境,它由一个主控蓝牙设备和最多七个与集线器连接的设备所组成。它的主要特性包括:查询和寻呼过程,用于设备发现和连接建立;级的效劳质量协商;物理传输层和室无线频道。 据BlueHoc的开发者Apurva Kumar预测,该工具可以用在研究蓝牙上各种基于TCP/I

54、P应用的可行性和性能、研究蓝牙中设备发现和连接建立延迟,以及研究蓝牙的媒体调度 (MAC)策略。这种基于C+的模拟器有一个用于配置模拟器的OTcl界面,以及一个为易用而设计的基于 Tk 的图形用户界面。尽管目前BlueHoc还只是一个模拟器,但据Kumar判断,它今后有可能将模拟转化成仿真,并成为与活的蓝牙堆栈的接口。这样可以让开发者在模拟的蓝牙无线上运行实际的应用,并在各种特殊的联网方案中预测它们的性能。BlueHoc是开放源码,它基于称为网络模拟器的一种开放源码模拟器,并使用网络模拟器的TCP/IP库来进展蓝牙上基于TCP/IP应用的性能评估。作为模拟,BlueHoc更接近于蓝牙规而不是经

55、过一种认证的实现。IBM希望发布BlueHoc和开发蓝牙设备所用的其它工具能够帮助蓝牙防止因为设备制造商接纳缓慢而造成 IrDA 的荒废。无论是使用 BlueDrekar更高级蓝牙通信层的一种实现还是BlueHoc主要集中在底层硬件通信层, 开发者都能获得帮助他们设计蓝牙软件和硬件应用的工具。但是,到目前为止,BlueHoc和BlueDrekar之间还没有接口。4.2 性能分析 性能指标我们主要从以下几方面来分析新的蓝牙算法DSA的性能。传输时延:考虑在数据的整个传输过程中的各种时延情况。微微网个数和包冲突可能性的关系:由于要转变一个微微网的两个从结点角色为另一个微微网的主结点和从结点,所以要

56、考虑改变网络构造后的数据包冲突情况。数据传输最大流量:通过对一段时间的仿真,对承受的数据进展采集、分析,得出数据传输的最大流量。能量消耗:考虑新算法在能量消耗上的性能。另外,对结点占用带宽、效劳质量QOS等也可进展分析。 理论分析传输时延:传输时延主要来自源从结点通过主结点获得目的从结点地址信息的过程和从结点间传输数据的时延。而按原来的规则传输,需要花费两个传输时延。所以在总传输时延上将大大降低。根据传输时延还可进一步估计数据的传输效率。总传输距离将缩短,数据传输率将明显提高。微微网个数和包冲突可能性的关系:随着微微网个数的增多,单个微微网的负载将降低,所以数据包的冲突将降低。数据传输最大流量

57、:由于划分了微微网,单个微微网吞吐能力不变的情况下,新的网络数据传输最大流量将明显提高。能量消耗:由于传输距离大大缩短,所需能量也将明显减少。结点占用带宽:主-从结点模式由于主结点的参加,使得主结点占用了带宽,浪费了网络资源。效劳质量QOS:由于传输时延的减小,数据包冲突的可能性降低,网络最大数据流量提高,能量消耗减少,节约带宽,所以,QOS将提高。4.3 仿真实验 仿真参数为了比拟新算法带给微微网性能上的优越性,完成上面提出的一些性能分析。我们设置微微网个数、数据包冲突概率、结点个数、从结点间通信概率、时间、承受的数据量、时延等参数。利用仿真,得到上面这些数据的值,然后进展性能分析。 公式说

58、明首先,对仿真公式的一些参数进展说明。i,j:两个微微网;slotsize:蓝牙频道的数量;Pc(i,j):在时间和频率上包重叠的可能性;P,z:微微网包冲突的可能性;C:蓝牙频道数,一般C=79个;slotsperpacket(*):被蓝牙包*占用的频道数;ma*p,q:返回p,q中的最大值;Pc(i):第i个微微网包冲突的可能性;ACKinbits(*):确认信息的比特数;sizeinbits(*):*类型数据包的比特数。下面是网络中的几个参考公式。Pc(i,j)=( sp,i+sz,j)/(ma*(slotsperpacket(p),slotsperpecket(z)+1)*slotsi

59、ze*CPc(i)=1-(1- Pc(i,j)N-1S*=*N1-2ACKinbits(*)+sizeinbits(*)/(slotsperpacket(*)+1)*slotsize*CN-14.4 仿真结果及结果分析利用前面介绍的Matlab7.0和蓝牙仿真模块Blue_Hoc仿真一个蓝牙自组网络,由于只需要研究微微网的从结点间数据传输问题,所以我们只研究蓝牙自组网络中的最小单元微微网。设置上面的参数,借助公式,仿真一个微微网,得到设置参数的相关数值。为了更直观的了解仿真实验数据的意义,借助Matlab7.0使仿真得出的数据图象化,即对数据进展处理,用Matlab7.0做出对应参数的图象。下

60、面是利用Matlab7.0做图的一个例说明。利用*时刻对应的微微网个数和数据包冲突可能性数据:0,010,0.0620,0.1230,0.1840,0.2250,0.360,0.3670,0.3780,0.4590,0.46100,0.52110,0.54120,0.62130,0.65140,0.681150,0.68160,0.7170,0.73180,0.77190,0.77200,0.78,应用Matlab语言plot画图。*=0:10:200;y=0 0.06 0.12 0.18 0.22 0.3 0.36 0.37 0.45 0.46 0.52 0.54 0.62 0.65 0.6

温馨提示

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

评论

0/150

提交评论