APP下载

蓝牙接入的兼容问题及解决方案

2009-03-14

新媒体研究 2009年4期
关键词:蓝牙

沙 岩

[摘要]为了实现蓝牙网络在主从节点间建立两种通信链路类型来支持同步通信量或者面向数据的异步通信量,提出蓝牙网络的媒介接入控制(MAC),在此基础上,再提出一种优化的支持QoS的差分调度算法。

[关键词]蓝牙 QoS 差分调度算法 媒介接入控制

中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0220030-02

一、蓝牙网络通信面临的要求

目前,蓝牙网络的接入兼容性高低引起了业内人士的注意,由于早期蓝牙技术是针对单跳无线通信开发的,在一些移动设备上经常会遇到延迟和阻塞等问题,为了使其适合在多跳移动网络中使用,服务质量(QoS,Quality of Service)技术被开发出来,可对蓝牙协议本身进行改进,同时考虑将现有协议中的一些理想化的限制条件弱化,提高协议的适用性。蓝牙协议标准中的现有协议规范大部分都限于静态环境,没有考虑节点的移动性,如何在节点移动、加入、撤出等情况下,保证散射网的有效性,当节点移动速度比较大时,解决节点在不同接入点、基站之间的切换,保证业务流的服务质量也就成为一个必须考虑的问题。本文针对蓝牙媒介接入控制过程和轮询方式的调度机制,改进了Diff-KFP算法,通过优化其参数来提高整个网络的吞吐量以及QoS。

蓝牙网络中支持QoS保证所面临的主要问题有以下四个方面。

1. 链路质量预测困难:无线信号传输面临着路径损耗、多径衰落和干扰等问题,由于节点的移动等因素的影响,周围环境不断变化导致预测链路质量很困难。

2. 链路带宽预测的困难:无限媒介的信道带宽被周围的节点共享,周围节点的移动和这些节点业务量的变化是链路带宽很难预测。

3. 分布式控制:由于信道使用权需要采用分布式获得,这导致优先级的保证和资源的预留都带有一定的随机性。

4. 网络的动态性:分别是移动设备通常使用电池作为电源、节点的移动性、网络业务流的动态与不可预测。

随着蓝牙技术的发展,QoS已经成为通信系统必须支持的一项重要功能,已经是蓝牙网络的发展瓶颈了。

二、现有的蓝牙网络通讯方案分析

截止目前,国际上提出的移动Ad-hoc网络实现和解决方案为数不多,如美国MeshNetworks公司的解决方案,以及以色列Commil公司提出的蓝牙Fixed to Mobile Convergence(FMC)方案。

MeshNetworks公司方案主要技术特点如下:

(1)支持网络和客户端组网(Meshing):其Ad-hoc对等技术同时支持基础设施的组网以及客户端组网。使用Multi-Hopping TM路由技术可以将任何一个客户设备转变为一个路由器或重复器,从而改善了网络覆盖范围,增加网络的吞吐量。

(2)支持端到端的IP:由于所有的路由都是在IP层之下,各种网络设备无需更改。

(3)网状结构的频谱复用和网络吞吐量最大化:无论采用何种无线网络技术,在网络中所有节点都能彼此识别并间接或直接通信。避免了集中式结构中的瓶颈问题。网络中的节点通过彼此合作来充分利用频谱资源,避免过度竞争。

在FMC方案中,做了两个重要的应用扩展:

(1)网络用户终端类型的扩展。将蓝牙“三合一”手机应用的终端设备扩展为所有采用其CellarionTM技术所生产的移动设备,使得原来所局限于语音通信的应用面扩展到包括语音、数据通信在内的应用面。

(2)网络覆盖方式和范围的扩展。将一般的蓝牙Piconet网络扩展为无缝覆盖的蓝牙蜂窝网络,其网络覆盖范围从一套房间、一层楼扩展到一个智能化楼宇范围的区域网,覆盖范围更广,覆盖方式更灵活,对于实现网络的自动切换方式参考了现有的蜂窝网络切换方式。

在上述蓝牙网络中,数据的传输是由主节点驱动的时分复用机制调度机制进行的,并且时间片被分别分配给在一个皮克网内的一个主节点和一个从节点。主节点能在偶数时间片内发送给从节点数据包,而从节点只有在收到主节点数据包后才能在奇数时间片内给主节点发送数据包。由于蓝牙主要采用基于主节点时分复用的轮叫调度策略(RR),然而当在轮询序列中没有等待传输的数据时,许多时间片被轮询(Poll)或者空(Null)的数据包所占用而被浪费。

为了克服这种链接浪费问题,已经提出了很多调度算法,如Low power mode-based policy,这个算法能相对地达到低能消耗和有效的时间片利用效果。但它并不适合动态通信量,而且还需要大量信号开销。因此比较偏向应用基于队列状态的优先级策略,而K-Fainess Policy(KFP)则由于它的相对合理的性能显得很突出。虽然它根据数据通信量的特点可以展示不同的性能,但它并没考虑蓝牙网络的QoS。为了解决这个问题,Differentialted KFP(Diff-KFP算法)被提了出来。它能通过基于每对主从节点的队列状态,有区别地调度稀缺无线电资源,从而提高吞吐量。而且还能为单独的节点对保证公平性,通过使用合适的参数把QoS要求反应给调度机制。尽管Diff-KFP算法能提高吞吐量,但由于选择了不合理的参数,现行通信还是可能被一个轮训间隔而打断。这样就引起吞吐量的下降。这里我们提供Diff-KFP算法的详细内容,并且优化它的参数来提高整体性能,另外这个改进了的Diff-KFP算法算法也能将QoS应用到调度之中。

三、蓝牙网络的媒介接入控制(MAC)

蓝牙网络在主从节点间可建立两种通信链路类型来支持同步通信量或者面向数据的异步通信量:同步面向连接链路(SCO)和异步无连接链路(ACL)。主节点通过在规则的间隔中保留时间片来维护SCO链路。由于每6个时间片就有两个为SCO链路保留,剩下的时间片为ACL链路保留。

如图1显示了一个主节点调度数据传输。一个主节点在奇数时间片轮询一个从节点,被轮询的从节点在一个连续的奇数时间片内传输数据包。然而蓝牙技术通常采用轮叫调度策略(RR),许多时间片可能由于轮询数据包或者空数据包的交换而被浪费了。

尽管RR是最简单的调度算法,并且在皮克网内均匀地将数据传输机会分配给每对主从节点,但是链路浪费可能会引起吞吐量的下降,而且轮叫调度策略(RR)也没有考虑这些节点的优先级。为了更有效的利用稀缺无线电资源,排队状态依靠数据包的调度策略。基于每对节点排队状态的KFP算法执行对优先级的轮询。首先根据链路的利用来决定每对节点的类型,然后从所确定的类中分配合适的优先级。具有较多流通量的这对节点具有较高的优先级。在KFP中,优先级低的节点将传输机会让个优先级高的节点。这样KFP就能减少时间片的浪费。而且,为了保障公平,KFP有个临界参数K.每对节点在得到服务机会时它的计数器值加一,否则就减一。

计数器的值代表每对节点得到和退让的服务机会的数量。计数器的值可以为负,通过与计数器最大最小值间的比较的K值能够平衡服务机会的分配。这样KFP可以控制吞吐量和公平性,然而如果数据流通量特点是静态的,并且集中在特定节点对上,计数器最大值和最小值间的差异能很快达到临界值K,服务机会就有可能被这对节点所垄断,那么KFP与RR就很类似了。由于计数器值的最大和最小值间的差距在K的范围内并不减少,所以其他具有较低优先级的节点对就不再让出服务机会。因此只要提供服务的时间片数量增加,当差距超过临界值K时,KFP的性能就与RR类似。因此有最大计数器值的节点对与具有最小值的其他节点对影响了系统的整体性能。而且这个算法并没有考虑到蓝牙技术的QoS需求。

因此,需要有新的有效的调度方法来保留蓝牙技术的优点,诸如低成本,低电量,低复杂度。并且用合理的公平性、对吞吐量提高的有效调度来满足QoS要求。

四、支持QoS的差分调度算法

早先的KFP算法依靠数据包的调度策略而采用一个排队状态。在这个方案中,由主从节点对的排队状态信息决定优先级。例如当一个SCO链路形成时,这个链路只允许四个连续的时间片给ACL链路,可以应用一个或者三个时间片长度的数据包。如果主节点队列线头(HOL)数据包是一个三个时间片的包,而从节点队列线头数据包是一个时间片的包,那么这个链路利用率就是100%。因此调度分给这对最高等级并且优先为其提供服务机会。如果一个主节点或者从节点队列线头数据包是一个三个时间片的数据包,而另一个则是空,那么链路利用率是75%。这种情况下,这对就得到第二等级。同样地,如果一个主节点或者一个从节点队列线头数据包是一个时间片数据包而另外一个是空,那么这个链路利用率是50%。只要两个时间片有一个被使用,那么这个节点对就成为第三等级。通过这个确定过程,每对的优先级就能确定下来。

KEP的操作在图2中显示出来,这里countermaster,countermin,counteri和counterhighest分别代表在所有节点对中的最大计数值,最小计数值,第i节点对计数值和具有最高等级的节点对计数值。每对节点的计数器跟踪记录这对节点所接受过的过度或偏少的服务机会,这个值用来服务的控制。当每对主从节点在RR内被连续的访问时,不管它是否在KFP中为最高等级,所被轮询的节点对要么得到服务或者就放弃服务的机会。每对节点值在这对节点放弃服务机会或者抢占其他节点机会时,就会相应的加一或者减一。只有在最大计数值和最小计数值间的差异不超过临界值K时才允许服务机会的更替,例如在最大值时就会发生不公平性。如果没有允许一对主从节点放弃服务机会,那么它就在预定时间片内传递数据包。

我们所提出的支持QoS的差分调度算法,Diff-KFP算法在图3中显示出来。每对优先级和计数值的决定过程跟KFP相类似。新算法在保证公平性的技术方面有三点与KFP不同。首先,如果不是在最大值与最小值之间而是在最大值与当前对计数值间的差值小于K值,那么主节点就检查。如果是这样的话,主节点就根据节点对服务等级来决定这对节点是否放弃调度转变。因此,这样就能够阻止具有最大计数值的节点对和具有最小的节点对对整个系统的性能的限制。第二,每个计数器减少的值,stepi对于每对节点反应他的QoS要求是不同的,而在KFP中都是相同的。这样,通过合适地选择步长和更新Diff-KFP算法参数,我们能较好的控制性能。图3中,stepi和stepmax分别代表第i对节点的步长和所有节点对中的步长最大值。最后,在图4的流程图中的右分支那里显示出来了,通过(stepmax-stepi)增加计数值来克服超过K值的问题。

五、小结

中国电信、中国移动、中国联通已在1月8日取得了国内3G牌照,意味着移动通信终端将发生大的变革,在现有的PDA、笔记本、手机等移动终端所支持的蓝牙协议上,还是面临着网络延迟和阻塞等问题。

参考文献:

[1]蔡海慧,方旭名.蓝牙自组网中的调度策略.电信快报,2003,(10):30~34.

[2]马忠建,方旭明,蔡海慧,傲丹.蓝牙AdHoc网调度策略的设计与仿真.系统仿真学报,2006,18(9):2546~2549,2608.

猜你喜欢

蓝牙
蓝牙为什么叫“蓝牙”
古老无线再升级深入了解蓝牙5.0技术
关于蓝牙音质你知道多少
帮你轻松找到AirPods的神奇工具
蓝牙音箱
挑选个无线蓝牙鼠标
Nordic蓝牙5 SoC及相关软件开启蓝牙5设备开发序幕
无线连接的飞跃 蓝牙技术4.2揭密
蓝牙4.0落地加速
蓝牙4.0:更快速更节能