蓝牙技术作为一种小范围无线连接技术,能够在设备间实现方便快捷、灵活安全、低成本、低功耗的数据和语音通信,是目前实现无线个人局域网的主流技术之一。同时,蓝牙系统以Ad Hoc的方式工作,每个蓝牙设备都可以再网络中实现路由选择的功能,可以形成移动自组网络。蓝牙的特性在许多方面正好符合Ad Hoc和WPAN的概念,显示了其真正的潜力所在。而且,将蓝牙与其他网络相连接可带来更广泛的应用,例如接入互联网、PSTN或公众移动通信网,可以使用户应用更方便或给用户带来更大的实惠。作为医院有线局域网的补充,蓝牙无线个域网克服了有线网络的弊端,可利用电脑等随时随地进行生命体征数据等的查询录入,在无线监护方面发挥着重要作用。
1蓝牙组网机制
1.1蓝牙个域网的网络特性
作为蓝牙SIG的一个工作组,蓝牙个人区域网工作组的主要目标是定义基于IP的蓝牙个域网应用协议,解决以太网数据包的封装、单个微微网中基于IP的个人区域网络、主设备的转发以及局域网接入点的问题。蓝牙个人区域网协议描述了2个及多个的蓝牙设备如何组成一个Ad Hoc网络以及如何使用同样的机制通过网络接入点接入远程网络。网络接入点可以是传统的LAN数据接入点,而分组Ad Hoc网络表示的仅是一组相互连接的设备。
分组Ad Hoc网络是一组移动主机的集合,它们可以再无需其他网络硬件或网络设施的支持下组成一个Ad Hoc无线网络。PAN协议更侧重的是由一个蓝牙微微网构成的简单个人Ad Hoc网络。网络中有最多可容纳8个设备,其中一个是主节点,其余是从节点。
蓝牙PAN网络具有以下Ad Hoc网络的共同特点:
(1)独立组网能力
各节点在一定网络构成算法的支持下,可以在很短的时间内自动组成一个独立的网络而无需任何网络设施支持。
(2)多跳路由
节点的发射功率较低,因此覆盖范围有限。相互通信范围之外的节点通信需要经过中间节点的转发,经过多跳实现。
(3)拓扑动态变化
在蓝牙PAN中,某些节点具有移动性,可能随时离开或再次加入网络,也有些节点会随时关闭电源,引起节点和链路数量分布的变化,因此蓝牙PAN的拓扑结构可能随时发生变化。
(特殊的信道特征
收无线信道的冲突、信号衰减、噪声以及信道之间的干扰等影响,蓝牙链路的实际带宽远小于理论带宽,而且动态变化。
(5)节点的局限性
大部分蓝牙节点依靠电池供电,能量受限,而且节点存在移动性、内存小以及处理器处理能力有限等特点,因此有效的减少节点能耗非常重要。
(6)安全性
虽然蓝牙采取了严密的安全机制,但由于Ad Hoc网络特点,蓝牙节点易受到窃听、主动入侵与拒绝服务等网络攻击。
蓝牙PAN还有不同于其他Ad Hoc网络的一些特性:
(1)节点通信范围有限
蓝牙节点有效发射距离一般为几米到几十米,儿IEEE802.11等自组织网络可达到几百米。
(2)移动性相对较小
相比其他Ad Hoc网络设备,蓝牙节点的移动速度和频率较小。
(3)带宽窄
蓝牙通常用做数据、语音与低速率的视频传输等应用,因此带宽较窄,目前蓝牙2.0规范定义的最高带宽也只有3Mbit/s,因此,蓝牙网络带宽的优化是个很重要的发展方向。
1.2蓝牙网络的拓扑结构
蓝牙系统采用一种灵活的无基站的组网方式,使得一个蓝牙设备可与7个其他的蓝牙设备相连接。蓝牙系统的网络结构的拓扑结构有2种形式:微微网(Piconet)和散射网(Scatternet)。
(1) 微微网
微微网是通过蓝牙技术以特定方式连接起来的一种微型网络,一个微微网可以只是2台相连的设备,比如一台便携式电脑和一部移动电话,也可以是8台连在一起的设备。在一个微微网中,所有设备的级别是相同的,具有相同的权限。蓝牙采用自组式组网方式(Ad Hoc),微微网主设备(Master)单元(发起链接的设备)和从设备(Slave)单元构成,有一个主设备单元和最多7个从设备单元,如图1所示。主设备单元负责提供时钟同步信号和跳频序列,从设备单元一般是受控同步的设备单元,受主设备单元控制。
图1 一个主设备和多达7个从设备组成的微微网
在每个微微网中,用一组伪随机跳频序列来确定79个跳频信道,这个跳频序列对于每个微微网来说是唯一的,由主节点的地址和时钟决定。蓝牙无线信道使用跳频/时分复用(FH/TDD)方案,信道以625μs时间长度划分时隙,根据微微网主节点的时钟对时隙进行编号,号码从0-(227-1)以227为一个循环长度,每个时隙对应一个跳频频率,通常跳频速率为1600跳/s。主节点只在偶数时隙开始传送信息,从节点只在奇数时隙开始传送,信息包的开始与时隙的开始相对应。微微网中信道的特性完全由主节点决定,主节点的蓝牙地址(BD_ADDR)决定跳频序列和信道接入码,主节点的系统时钟决定跳频序列的相位和时间。根据蓝牙节点的平等性,任何一个设备都可以成为网络中的主节点,而且主、从节点可转换角色。
主节点通过轮询从节点实现两者之间的通信。从节点只有收到主节点的的信息包方可发送数据。如图2,从节点2在t时刻收到来自主节点的数据包,此时频率为f(k),之后它可以在下一个时隙通过f(k+1)频率向主节点发送数据包。同理,从节点1在t2时刻收到主节点的数据包,此时频率为f(k+2),并且在时间t3通过频率f(k+3)发送数据包给主节点。
图2微微网内通信轮询机制
(2)散射网
一个微微网最多只能有7个从节点同时处于通信状态。为了能容纳更多的
装置,并且扩大网络通讯范围,多个微微网互连在一起,就构成了蓝牙自组织网,
即散射网,图3。在散射网中,不同微微网间使用不同的跳频序列,因此,只要彼此没有同时跳跃到同一频道上,即便有多组资料流同时传送也不会造成干扰。连接微微网之间的串连装置角色称为桥(Bridge)。桥节点可以是所有所属微微网中的Slave角色,这样的Bridge的类别为Slave/Slave(S/S);也可以是在其中某一所属的微微网中当Master,在其他微微网中当Slave,这样的Bridge类别为Master/Slave(M/S)。桥节点通过不同时隙在不同的微微网之间的转换而实现在跨微微网之间的资料传输。蓝牙独特的组网方式赋予了桥节点强大的生命力,同时可以有7个移动蓝牙用户通过一个网络节点与因特网相连。它靠跳频顺序识别每个微微网,同一微微网所有用户都与这个跳频顺序同步。
蓝牙散射网是自组网的一种特例。其最大特点是可以无基站支持,每个移动终端的地位是平等的,并可以独立进行分组转发的决策,其建网灵活性、多跳性、拓扑结构动态变化和分布式控制等特点是构建蓝牙散射网的基础。
图3蓝牙散射网实例
1.3蓝牙散射网拓扑构建的规则
在一个蓝牙WPAN拓扑结构中,主设备或从设备只是节点的一个逻辑状态。一个单元只能是一个微微网的主设备,但可以参与多个相互重叠的微微网。一个主设备或一个参与多个微微网的活动从设备称为桥;允许微微网构成一个被称为散射网的较大网络。由于使用了跳频技术,一个桥在同一时间不能作为多个微微网的活动设备;桥必须在一个时分基上的2个微微网间进行转换,转换时必须与当前的微微网再同步,这会带来一个严重影响系统性能的重要开销。
蓝牙WPAN最主要的问题在于构造散射网时遇到由系统规范和通信量需求造成的约束。节点如何组成微微网以及哪个节点作为主设备或桥,对系统的容量、吞吐量和电池的使用时间具有重要影响。
因此,在散列网的构建过程中必须要减少设备间不必要的通信链接以提高网络的吞吐量。每个微微网内设备间的链接是必须的,各微微网内的设备必须要建立通信链接,以交互信息。因此,冗余通信链接主要在微微网互连阶段。在该阶段中,各微微网之间需要通过桥互连形成蓝牙自组织网。如果两个微微网之间存在过多的桥,或者一个桥链接多个微微网均会增加冗余通信链接,造成蓝牙自组织网通信性能的下降。通过合理的选桥算法,可以有效降低微微网之间的冗余通信链接。
基于上述分析,我们总结出能够提高散射网性能的组网规则如下:
(1)在蓝牙组网的形成过程中应合理控制微微网的数目,使其限定在一个固定值,以减少微微网之间的通信干扰,保持网络复杂性最小。
(2)减少自组织网内桥节点的负载,防止其成为网络通信的瓶颈。这样不仅能简化桥节点的调度算法,还能缩短因桥节点在不同微微网间切换的而造成的通信传输时延,从而提高网络的性能。
(3)限制设备间的冗余通信链接,尤其是微微网之间的通信链接。通过限制设备间的冗余链接量,可减少设备间的电力消耗,延长网络的使用寿命,还能因减少桥的负载而提高网络的吞吐量。
(在组建蓝牙自组织网的过程中,应优先使用Slave/Slave(S/S)桥,尽量避免使用Master/Slave(M/S)桥,以减少数据包在桥节点上的转发时延,增加蓝牙自组织网的通信量。
(5)网络拓扑形状优良,可以使网络具有自路由功能,从而提高网络的通信能。
1.4蓝牙散射网拓扑构建的关键问题
蓝牙散射网拓扑构建就是将一组彼此分离的蓝牙节点连接起来,因此蓝牙节点的互相发现过程和节点的角色分配等问题对蓝牙网络的构建以及网络负载均衡影响很大。
(1)蓝牙节点的互相发现
蓝牙节点的互相发现过程是蓝牙散射网拓扑构建过程中的关键部分,在这一过程中,每个蓝牙节点都应该知道它自己通信范围内的节点信息,这个信息应该是对称的,但蓝牙网络中节点数目的不确定性和蓝牙基带规范中节
点连接机制的不对称性给蓝牙节点发现过程的成功实现带来了挑战。
蓝牙规范中规定蓝牙的链接形成由查询(Inquiry)和寻呼(page)两个过程组成,查询过程并没有保证查询节点与被查询节点互相知道对方。欲发现相邻节点的查询者在发送查询包时,并没有发送它自己的唯一蓝牙识别码,被查询者收到查询包时不知道查询者的信息;另外蓝牙发现机制要求处于相对模式(查询Inquiry和查询扫描Inquiry scan模式)的两个节点才能互相交换数据,但如何保证两个相邻节点处于相对模式的方法却没有明确规定。这是蓝牙散射网拓扑构建算法应该解决的关键问题。
目前大多数算法采用以下做法:在预定义的节点发现时间长度内,允许每个节点在Inquiry查询模式和Inquiry scan查询扫描模式之间交替变化,每个模式的持续时间在给定的时间范围内是随机的,当两个处于相对模式的节点握手时,他们建立一个临时的微微网。查询者进入寻呼模式(Page)成为主节点,被查询者进入寻呼扫描(Page scan)模式,成为从节点。两个节点交换他们的ID和下阶段协议需要的信息。信息交换完毕后,微微网就断开。
这样在充足时间内两个相邻节点处于相对模式,从而互相发现的概率值很大。
(2)首领节点的选举过程和方法
因为节点开始时是异步的,还没有其他参与网络构成的节点的相关信息。所以通过选举方式选取首领节点将控制整个网络的构成,获得所有参与构成网络的节点的相关信息,并保证最终形成的散射网是连通的。另外,首领节点的资源应该是丰富的,保证整个网络的健壮性。
(3)各微微网中的主节点的选举
主节点负责维护各个微微网内的节点通信,主节点性能的好坏直接影响该网络的性能。主节点消耗的能量大,因此应该选择能量充分,健壮的节点作为主节点。
(4)桥节点的选择
桥节点对保证蓝牙散射网的连通起着关键性的作用,在网络中,桥节点在同一时刻只能在一个微微网中处于活动状态,它采取时分复用方式在这些微微网间切换,每切换到一个微微网,就与该微微网同步。桥节点一般分为两类:主桥节点和从桥节点,主桥节点是桥节点在一个微微网中为主节点而在另一个微微网中为从节点,称为M/S桥。从桥节点是桥节点在两个微微网中都为从节点,称为S/S桥。
蓝牙微微网通过M/S桥连接而形成的蓝牙散射网的拓扑为分级结构,
如图4示:
图4 牙散射网的分级拓扑结构
分级结构中,网络拓扑表现为树形,假设树的根节点所在的微微网为根微微网,其他的微微网为叶微微网,则叶微微网的主节点为根微微网的从节点。各微微网的内部通信可独立进行,但微微网之间的通信要通过根微微网。因为叶微微网的主节点为桥节点,当它参与根微微网的通信时,所有叶微微网的通信将被挂起,严重降低了系统的吞吐量。
蓝牙微微网通过S/S桥连接而形成的蓝牙散射网的拓扑为平面结构,如
图5所示:
图5 蓝牙散射网的平面拓扑结构
平面结构中,相邻微微网之间通过共享从节点进行通信,共享的从节点在休眠模式与活动模式之间切换,可以在这些微微网中交替地处于活动状态,实现微微网之间的通信,这种结构是分布式的,利于负载平衡,网络也更健壮。
综上所述,桥节点的选择在保证网络连通性的前提下,还要考虑所连通网络的健壮性,桥节点本身的健壮性也就很关键,因此应选择能量充足的节点作为桥节点;另外桥节点参与的微微网数量应尽量少,保证网络负载平衡,以及避免桥节点在不同微微网间切换带来的时间延迟和能量消耗。通过以上分析,我们知道只有对以上几个关键问题有所突破的拓扑构建算法才能构建出连通的,分布式的,时间延迟小的,健壮的蓝牙散射网。
2蓝牙散射网拓扑构建算法
蓝牙散射网拓扑构建算法就是将一组彼此分离的,对相邻节点信息一无所知的节点连接起来,确定每个节点在网络中的角色,从而形成一个连通的蓝牙散射网。本节提出的算法可以对微微网数目进行合理控制,并能有效减少微微网间的冗余通信链接,减轻桥设备的负载,从而提高蓝牙散列网的性能。
2.1主节点的选择
算法采用分布式机制,在组网空间内选出部分权值较高的设备为主节点。每个蓝牙节点都有变量WEIGHT、变量BACK和变量TIMEOUT,其中变量WEIGHT代表节点的权值(电力等级、剩余能量、数据处理能力等资源状况),这个值表示节点作为主设备的适合度,软件模拟时,每个节点的WEIGHT值由程序随即设为(1-255)之间的整数;变量BACK代表节点是否需要备份,初始值为0,当节点角色确定为主节点和桥节点时,变量BACK变为1,变量TIMEOUT为超时设定值。
每个组网蓝牙设备接通电源后周期性切换成Inquiry或Inquiry Scan状态,以发现其他设备或被发现。当两个处于相对模式的蓝牙节点互相发现后,便进行WEIGHT值的比较(相等时,蓝牙地址大的一方获胜),WEIGHT值较小的一方将已收集到的FHS封包传给WEIGHT值较大的一方,并进入Page scan状态,WEIGHT值较大的一方接收对方的FHS封包后,将其TIMEOUT值复位,继续随机进入Inquiry或Inquiry scan程序;如此一再重复,直到TIMEOUT时间内,都没有再发现任何节点为止(节点会相继进入Page scan,只有处于Inquiry或Inquiry scan状态的节点能相互发现),该节点就是选举出来的主节点,它将进入Page程序,它的变量BACK值变为1,整个程序将进入桥节点的选择阶段。
2.2.桥节点的选择
各个已选出的主节点根据选桥策略确定互连各微微网的桥节点,并且优先使用权值较高的设备作桥。
由于第一阶段选出的主节点具有所有节点的FHS封包,从而获得需要连接成网的总节点数N总。此时,除了主节点处于Page状态,其余节点均处于Page scan状态,主节点可以通过Page程序与附近节点沟通,主节点运行微微网构成程序(此时,程序first变量的值为0,表示是初始微微网),选择最多7个节点构成初始微微网,并根据总节点数目的多少和选择weight值较大的从节点为原则,选择其中的最多3个节点作为桥节点。确定为纯从节点角色的节点同主节点建立连接,进入连接状态,不会再被其它节点搜索到;确定为桥节点角色的节点,会被主节点告知,参与初始微微网后,会再次进入Page scan状态,等待次主节点与之沟通,主节点通过桥节点将次主节点需要的信息传递给次主节点。
因为算法需要为散射网形成以后的每个微微网中的主节点和桥节点提供一个备份节点,而每个微微网的节点总数为8,除去一个主节点和它的一个备份从节点,还剩6个节点数,为满足备份要求,所以每个微微网的桥节点数最多为3。选择的桥节点数≤2时,散射网的创建过程是横向展开的,速度较慢,呈线性增长。当桥节点数≥3时,创建过程是全方位展开,速度很快,呈指数增长。随着桥节点数目的增加,创建过程加快了,但所形成散射网中微微网数量也相应增加了,网间干扰也随之加大了,所以综合考虑,在需要连接的节点数大于22时,桥节点数量Nb定为3是较好的选择。从节点数Ns尽量为7,具体选择方案如下:
当N总≤8时,Nb=0,Ns=N总-1;
当9≤N总≤15时,Nb=1,Ns=7;
当16≤N总≤22时,Nb=2,Ns=7;
当N总》22时,Nb=3,Ns=7;
初始微微网构成后,并确定桥节点数后,整个程序进入第三阶段。
2.3组成散射网
每个主节点寻呼各自所发现的设备。通过互连各个微微网,形成蓝牙散列网。
次主节点收到主节点传来的数据后,搜索通信范围内的节点,运行相同的微微网构成程序(程序first变量的值为1,表示生成的为次微微网),因为次主节点已经与一个桥节点相连,所以此时选择最多6个节点作为从节点,并根据搜索到的节点数目N次总,综合从节点的weight值,选择其中的最多2个从节点作为桥节点。次微微网的从节点数目Ns′和桥节点数目Nb′的选择方案如下:
当N次总≥8时,选择从节点数目Ns′为6,其中桥节点数目Nb′为2,再选择2个节点为新的次主节点;
当7≤N次总《8时,选择从节点数目Ns′为6,其中桥节点数目Nb′为1,再选择1个节点为新的次主节点;
当N次总≤6时,选择从节点数目Ns′为N次总,其中桥节点数目Nb′为0。
程序结束后,新微微网形成,次主节点成为该微微网的主节点,新的主节点继续选择它的次主节点,新的次主节点同样运行微微网构成程序,微微网的构成过程逐步展开,最后生成一个将所有节点连接起来的散射网。
第二、三阶段程序流程图如图6所示:
图6逐级构建微微网从而构成散射网
散射网构建算法描述如下:其中主节点为N0,微微网构成程序为
Piconet(N0,first),M(u)为次主节点集合,C(v)为第n次产生的次主节点集合。
Scatternet(n,M(u))
if(n=0){
N0=M(u)-{};
First=0;
Return Piconet(N0,first);
else{
M(u)=Scatternet(n-1,M(u));
C(v)={};
while(∣M(u)∣!=0){
u=M(u)-{};
C(v)=C(v)+Piconet(u,first);
M(u)=M(u)-{u};
}
return C(v);
}
}
网络构建过程应尽量向外扩展,所以次主节点的选取应离当前主节点尽量远,可以利用蓝牙中的接收信号强度指示(RSSI)来判断节点之间的距离。RSSI越大表示距离越远。因此,主节点选择RSSI值较大的节点为它的次主节点。
3.对于算法的节点插入和移除的两个过程
对于一个被给定的蓝牙WPAN拓扑,讨论两种分布式过程来处理拓扑变化。第一个过程是允许在WPAN中插入一个新的节点;第二个过程是从网络中去除一个节点,这两个过程要达到的主要目标是满足蓝牙规范的限制条件,即全网络连通性,有高的吞吐流量,降低控制信息的开销等。当然,可以加入一个新节点到网络中去,也意味着可以同时加入几个节点。因此,根据这个,我们可以依靠最初给定的一系列蓝牙设备用来建立一个可增长的BT--WPAN或者形成一个网络拓扑。
(1)插入节点过程
一个节点想快速加入到WPAN中来,它必须首先发送一个普通的查询信息来恳求它附近的节点是否可以加入。相反,如果一个节点的目的是加入到一个网络中并有良好连接,即想加入到具有低流量的微微网中或者扮演一个特殊的角色,它就必须使用专用的查询。
下面部分,讨论承载查询回复的FHS包。注意到,一个数据包FHS它包含有设备类型的标记,加上5比特就能够用于传递未来的信息。这其中2位比特预留下来以备将来使用,AM-ADDR领域的3位在查询回应中不使用。我们定义这5位传送以下信息:
2位:电池的电量等级(如:低于25%,在25%和50%之间,在50%到75%之间,高于75%);
2位:节点的流量的等级;
1位:这个节点是否属于孤立微微网。如果一个微微网没有于任何一个微微网连接或者它附近的微微网都只仅仅与它相连那我们就称之为孤立的微微网。如果该节点属于孤立的微微网,那么该位置1,否则置0。
设a是开始查询过程的节点,正如上所述,根据收到的邻近的节点的回应,a它将决定对哪个节点进行寻呼,回应的节点要么是属于孤立的徽微网要么不属于孤立的微微网。除此之外,它还具有以下可能:
具有少于7个从节点的主节点;
从节点;
即是从节点又是桥节点;
即是主节点又是桥节点;
已经具有7个节点的主节点;
像a一样也在等着加入到蓝牙WPAN中。
a根据以下的优先顺序来选择加入到哪个回应节点;
1)属于孤立的微微网主节点(或者既是主节点又是桥节点的网络节点)
如果a收到不止一个属于孤立微微网的主节点的回应,它将选择从节点少于7个和低流量的的主节点加入。如果不止一个主节点满足上述条件,那么它还根据该节点的电池电量的等级来考虑。注意到a节点根据相关的RSSI估计每个回应节点的距离。把被选择的主节点记为u,节点a寻呼u并创建一个新的微微网,此时“a是主节点,u是从节点,过一会儿,这两个节点的角色进行互换,这样,在微微网中,a就变成从节点,并且受主节点u的支配。
如果a收到一个不属于孤立微微网的节点的回应,它将按如下的方式选择:
1)如果回复的是从节点少于7个的主节点(或者既是主节点又是桥节点),则a加入此节点并且创建一个新的微微网。通过主从节点的角色互换,a变成孤立的微微网中的从节点(或者是桥节点)
2)如果回复的节点是从节点(或者既是从节点又是桥节点)或者是具有7个从节点的主节点(或者既是主节点又是桥节点),则“创建一个新的含有该节点的微微网。
2)属于孤立的微微网从节点(或者既是从节点又是桥节点的网络节点)
有两种不同的情况:
1)没有连接到散射网的其它节点回复了a的查询,在这种情况下,a将有以下的情形:
(1)a具有可以成为主节点的足够的处理能力和能t容盘,如果这样,则a通过寻呼一个或多个对它的查询做过响应的从节点来创建一个新的微微网。那么这些从节点就成了刚形成的微微网和以前微微网之间的桥节点。对于这些被寻呼的从节点,a可以根据其节点的流量、电池状态和空间的距离来选择。假设一个微微网被一短比特位的字符来标识,即小于5位的长度,并且在微徽网中的每一个节点都知道所在的微微网的标识。一个被a寻呼的从节点可以在承载寻呼响应的FHS包中利用这’5位来标示这个信息。这样,a随时有可能中断寻呼的过程,因为它连接的节点属于已经有微徽网间连接的节点。
(2)a想成为从节点。a.根据流t,电池等级和空间距离来选择可以加入的节点,它和被选择的节点形成一个新的微微网,然后,在该微微网中,这两个节点互换角色,这样,。就变成了从节点,而被选择的节点则变成了在新微微网和以前微微网之间的主节点和桥节点。
2)a收到一个不属于孤立微微网的的节点的回复。在这种情况下,a试图连接剩余部分散射网中的孤立节点,并且按照以下优先次序在散射网中选择要连接的节点:从节点、既是从节点又是桥节点的节点、主节点、既是主节点又是桥节点、具有7个从节点的主节点。如果有必要,将依照以下准则进一步进行选择:流量,电池等级,空间距离。然后,完成要选择的节点后,a创建一个新的微微网。
3、不属于孤立的微微网但是又少于7个从节点的主节点
在现有的可利用的主节点之中,。选择具有最小流量的一个节点,如果在流量相同的情况下,然后考虑电池等级,其次是考虑该节点离a的空间距离。为了避免微微网之间的重盈和减少微微网内部之间的干扰,离“较近的节点具有优先权。把被选择的主节点记为产,节点a加入声创建一个新的微微网,此处a是主节点,尸是从节点,过一会儿,这两个节点的角色互换,这样,在微微网中,a变成从节点,并且受主节点产的支配。
不属于孤立的微微网从节点
在2的1)中,介绍了它的两种可能的情况:
1)“具有可以成为主节点的足够的处理能力和能量,如果这样,则a通过寻呼一个或多个响应过它的查询的节点来创建一个新的微微网,同时在新的微微网和以前的微微网中的节点就成为了桥节点。
2)a想成为从节点。在现有的可以利用的节点中选择可以加入的节点,a和被选择的节点形成一个新的微微网,然后,在该微微网中,这两个节点互换角色,这样,a就变成了从节点,而被选择的节点变成了主节点和桥节点。
5、不属于孤立的微微网的既是从节点又是桥节点的网络节点
像前面所说的一样,它也有两种可能的情况:
l)。具有可以成为主节点的足够的处理能力和能量,a依照以下三条准则来选择要寻呼的节点(该节点既是从节点又是桥节点):流量;电池等级;空间距离。这样一个新的微微网形成,此处。作为主节点而被选择的节点作为从节点。
2)a想成为从节点。在这个新的微微网中,a作为从节点,被选择的节点作为主节点而且还充当该微微网与它先前所在的微微网的桥节点。
6、不属于孤立的微微网的既是主节点又是桥节点的网络节点
在现有的可利用的节点(既是主节点又是桥节点)之中,a依照以下三条准则来选择要加入的节点:流量:电池等级:空间距离。在a创建一个新的微微网之后,它与被选择的节点互换一下角色,从而在微微网中a成为从节点并且被它所选择的节点(既是主节点又是桥节点)所支配。
7、不属于孤立的微微网并且已有7个从节点的主节点
在现有的可利用的节点之中,a选择具有最小流量的一个节点,如果在流量相同的情况下,然后考虑电池等级,其次是考虑该节点离“的空间距离。以a为主节点的一个新的微微网被创建了。此时有两种可能性:
1)在这个新的微微网中,a仍然是主节点,而被选择的节点既是从节点又是桥节点;
2)这两个节点互换角色,这样,被选择的主节点使得它的其中的一个从节点处于闲置状态,该闲置节点可以运行插入程序来寻找新的微微网以便加入。要不然,a则和在这个微微网中的其它节点轮流的处于闲置状态。
8、新节点
节点a寻呼到一个新节点,这样创建一个以a为主节点的微微网。然后,如果两个节点协商后,可以互换角色。在该微微网中,同样可以包含一些回应了节点查询的其它节点。然而,为了保持蓝牙WPAN拓扑的连接性,要么是a要么是它微微网中的其它一些节点必须寻呼现有蓝牙WPAN中节点。
移去节点的过程
节点离开网络引起的变化主要取决于该节点在蓝牙WPAN中作用,有下面四种情况:
。该节点是从节点:该情况最简单,那就是该节点仅仅是从网络中移去,而没有改变拓扑的任何结构。
。该节点是主节点:在该微微网中的从节点将在蓝牙WPAN中寻找一个新的节点来重新建立连接,因此,每一个从节点都要执行插入程序,而桥节点仍然作为桥节点保持与其它微微网的连接。
。该节点既是主节点又是桥节点:这种情况的处理方式与第二种情况的处理方式一样。
。该节点既是从节点又是桥节点:如果有其它节点可以取代该节点,那么它就可从网络中很简单的移去。否则的话,就必须寻找一个可以替代该节点的节点这样,在此微微网中主节点将执行查询程序,如果不能找到通向目标微微网的桥节点,它将命令它的从节点执行查询程序以寻找桥节点。如果在蓝牙WPAN范围中,在这些节点所能传输的的范围内没有找到这样的节点,那么该微微网就与蓝牙WPAN断开。
2.射网的重要性能分析
3蓝牙组网的仿真结果和分析
小结
本章介绍了蓝牙个人区域网络的基本知识,明确了蓝牙微微网和散射网的概念,分析了蓝牙散射网的网路特点,阐述了蓝牙散射网拓扑构建的重要性以及蓝牙散射网拓扑构建算法需要解决的关键问题和衡量蓝牙散射网拓扑构建算法的标准。蓝牙自组个人区域网络的主从特性、动态性、跳频特性虽然使蓝牙组网更加灵活,但这些特点以及蓝牙节点本身多为个人数字设备,节点运行的协议和应用程序必须考虑节点处理能力、内存和能耗等条件,都无疑增加了网络拓扑构建 算法、网络路由等算法的难度。
目前蓝牙规范中对微微网内的通信协议有了明确的规定,但对蓝牙散射网的研究,还处于探索阶段,是各国科学家感兴趣和重点研究的课题之一,越来越多的研究成果完善了蓝牙网络的应用,提高了蓝牙产品的普及率。中国是人口密集,商业经济活动集中、人均收入还比较低的国家和地区,低成本、组网简单灵活的蓝牙产品将会有更广阔的应用前景。它的应用将遍及很多领域,如移动通信、计算机及周边设备、个人随身信息和娱乐设备、网络接入设备、医疗保健、金融、军事等。它是面对个人的近距离无线技术,是人与机器之间交流的好助手。
本章从介绍蓝牙节点的工作状态和蓝牙物理链路的建立过程入手,提出一种备份式的蓝牙散射网拓扑构建算法。算法吸收了Bluestars算法中以节点的可用资源为标准的方法,来选取主节点,初始主节点建立第一个微微网后,主节点选取最多3个桥节点和3个次主节点,通过逐级展开的方法建立相互连接的微微网,最终形成连通的蓝牙散射网,散射网形成后通过节点备份的方法,提高网络的自愈能力。本章最后运用数学推导的方法证明了算法几项重要的性能指标为:时间复杂度为O(logN)、消息复杂度为O(N)、网络直径为O(logN)、具有较少的微微网个数和节点角色的平均数。