兰牙系统协议与主要无线技术2

来源:百度文库 编辑:神马文学网 时间:2024/04/27 21:45:13
姚 斌      王树甲
(信息产业部电信传输研究所)
一 引言
兰牙系统是一个开放性的短距离无线通信系统,它工作在不实施许可证制度的2.4GHz工科医(ISM,Industrial, Scientific, Medical)频段,该系统旨在用无线链路替代连接各种便携或固定电子装置(如PC、笔记本电脑、打印机和移动电话等等)的缆线,人们能够随时随地实现个人区域内语音和数据信息的交换与传输,从而实现快速灵活的通信。兰牙系统的主要特点是高强壮性、低复杂度、低功率和低成本,这些特点与兰牙系统极其广泛的应用目标是完全一致的,因而对兰牙技术的发展也十分有利。
兰牙特殊利益集团(SIG, Special Interest Group)已编制了兰牙技术规范1.0A、1.0B以及1.1版本,为在互工作性无线单元和共同数据通信协议基础上发展各种业务和应用创造了条件。该规范的最终目标是:容纳符合规范、具有互工作性的各种应用。
兰牙系统所工作的工科医频段,虽然是全球可利用的,但各国所用的确切位置和带宽可以不同。如表1所示,在美国和欧洲,可以使用这一频段的83.5MHz频带宽度,规定了79个射频(RF)频道,频道间隔为1MHz;在日本、西班牙和法国可以使用的频段更窄,只在其频段规定了23个频率间隔为1MHz的RF频道,不过他们也想拓宽这一频段,使兰牙系统的使用频率在全球范围内一致。
表1 工作频段和信道编号
国家
频率范围
RF信道
美国和欧洲
2400-2483.5MHz
f=(2402+k)MHz  k=0,1,2,…,78
日本
2471-2497MHz
f=(2473+k)MHz  k=0,1,2,…,22
西班牙
2445-2475MHz
f=(2449+k)MHz  k=0,1,2,…,22
法国
2446.5-2483.5MHz
f=(2454+k)MHz  k=0,1,2,…,22
此外,2.4GHz这一频段原本是分配给工业、科学、医疗方面使用的频率,近来世界上不少国家又对商业应用开放,例如扩频微波中继通信系统等。因此,兰牙无线系统设计的最大挑战是,一方面能够承受其他应用所产生的强电磁干扰;另一方面又能够保证不给其他应用造成不可承受的干扰。前者属于无线电通信系统的干扰抑制问题,已通过下面将要详述的跳频方式的宽带扩频技术得到解决;后者除了兰牙自身严格约束外,还涉及各国现行的无线电规范。因此在兰牙系统中如何规范发射功率、频率漂移和杂散发射电平等以避免强电磁干扰,同时尽可能不去干扰其它应用,是当前兰牙系统设计中必须考虑的重要课题。与此相应,兰牙系统应采用什么结构、什么协议栈来构筑,以及用以控制和管理无线链路的各种技术对实现这一目标显得尤为重要了。
本文根据兰牙无线通信系统的特点,着重系统地阐述了兰牙系统的网络拓扑结构、协议体系结构以及基带控制和无线链路管理的各种主要无线技术。
二 网络拓扑结构
兰牙系统由无线射频单元、链路控制单元、以及支持链路管理和主机终端接口性能的功能单元组成,如图1所示,主机可以是各种移动台、个人电脑及其它需要与外部连接和/或通信的电子装置和电器设备。
兰牙无线射频单元
兰牙链路控制器
兰牙链路管理器
和I/O接口
主 机
图1 兰牙系统的功能实体
兰牙系统可以提供仅包括两个兰牙单元之间的点到点之间的连接,也可以提供点到多点的连接,如图2(a)和(b)所示。共用同一信道的两个或多个兰牙单元形成一个皮网(Piconet),其中一个为“主”单元,而其余的为“从”单元,在一个皮网中最多有7个“从”单元处于工作状态,还有更多的“从”单元锁定在“主”单元上,即处于所谓的停放状态,这种状态的“从”单元不能在该皮网信道上工作,但仍与其“主”单元保持同步。这两种状态的各“从”单元的信道接入都由“主”单元进行控制。
重叠地覆盖一定区域的多个Piconets便可形成一个散射网(Scatternet),如图2(c)所示。每个Piconet只能有一个“主”单元,但各“从”单元可以采用时分复用方式加入不同的Piconets,此外,一个Piconet中的“主”单元也可以是另一Piconet的“从”单元。各Piconets不需要时间同步或频率同步,每个Piconet具有自身的跳频信道。
Master
Slave
a              b                            c
图2(a)点对点连接 (b)点对多点皮网 (c)散射网
应当指出,各单元的“主/从”角色不是固定的,通常发起初始连接的单元是“主”单元,而任一单元都有权发起初始连接。
三  协议体系结构
兰牙特殊利益集团已编制了兰牙技术规范1.0A、1.0B以及1.1版本,该规范为在互工作性无线单元和数据通信协议基础上发展各种交互式业务和应用创造了条件。规范的最终目标是:容纳符合规范、具有互工作性的各种应用。为了达到这种互工作性,本地和远端设备中相匹配的应用(例如客户机和服务器的应用)必须以相同的协议栈工作。例如,一种支持电子商务卡应用的顶层至底层的协议栈应为,vCard ®OBEX ® RFCOMM ® L2CAP ®  BaseBand的协议序列。这一协议栈既包含内部对象表示约定vCard,又包含‘空中’传送协议,以及协议栈的其余协议。
不同的应用可以运行不同的协议栈,尽管如此,这些不同协议栈中的每一不同协议均使用共同的兰牙数据链路层和物理层。图3表示了完整的兰牙协议栈结构,在其顶层构建了支持兰牙使用模式的具有互工作性的各种应用。然而,并非所有这些应用都要利用图3中的所有协议,而是不同应用只需运行协议栈一个或多个垂向条块中的协议。通常,增加各垂向条块是为了支持主要应用,诸如,电话控制规范(TCS-Binary, Telephony Control protocol Specification-Binary)或业务搜索协议(SDP, Service Discovery Protocol)。值得指出的是,图3表明了各协议之间的关系:当净负荷数据需要在空中口传送时,各协议如何利用其它协议提供的服务。例如,当需要控制链路管理时,一些协议(L2CAP, Logical Link Control and Adaption Protocol、TCS-Binary)可以使用链路管理协议(LMP, Link Manager Protocol)提供的服务。
vCARD/vCAL
OBEX
WAP
AT-COMM
IP
WAE
串行电缆仿真协议(RFCOMM)
UDP    TCP
PPP
TCS Bin
业务搜索协议(SDP)
RF 层
Audio
主机控制接口(HCI)
链路管理协议(LMP)层
基带层
逻辑链路控制和自适应协议(L2CAP)层
图3 兰牙协议栈结构
如图3所示,完整的兰牙协议栈既包括兰牙核心协议,诸如链路管理协议(LMP)和逻辑链路控制和自适应协议(L2CAP),又包括选用协议,诸如对象交换(OBEX, OBject EXchange protocol)协议和用户数据报协议(UDP, User Datagram Protocol)等等。在设计协议和整个协议栈时,主要原则一直是尽可能多地利用现有的在上层有不同用途的各种协议,协议的重新利用还有助于使现有的传统应用与兰牙技术一道工作,并保证这些应用的平稳运行和互操作性,因此,已由供应商开发的许多应用都具有立即采用那些符合规范的硬件和软件系统的优点。再加上兰牙规范是开放的,这使各供应商能够在兰牙核心协议的上层自由地实施他们自己专有的或通用的各种应用协议。因此,开放的规范具有充分利用兰牙技术能力开发大量新应用的优点。
按照协议的目的和用途以及兰牙SIG是否参与制定这些协议,兰牙协议栈可以分为四层,各协议分属各层,如表2所示。
表2 兰牙协议栈中的协议和层别
协议层
所含协议
兰牙核心协议(CP,Core Protocol)层
无线电规范(RS, Radio Specification)、基带协议(BB, BaseBand)、链路管理协议(LMP)、逻辑链路控制和自适应协议(L2CAP)、业务搜索协议(SDP)
电缆替代协议(CRP)层
串行电缆仿真协议(RFCOMM)
电话控制协议(TCP)层
电话控制规范(TCS Binary)、AT-命令(AT-commands)
选用协议
(AP)层
点对点协议(PPP, Point-to-Point Protocol)、用户数据报/传送控制/因特网协议(UDP/TCP/IP)、对象交换协议(OBEX) 、无线应用协议(WAP, Wireless Application Protocol)、电子名片交换格式(Vcard)、电子日历和日程交换格式(vCal)、红外移动通信(IrMC[1])、无线应用环境(WAE)
除上述各协议层之外,规范还定义了一个主机控制接口(HCI, Host Controller Interface),它为基带控制、链路管理以及接入硬件状态和控制寄存器提供一个命令接口,如图3中,HCI位于L2CAP的下面,但这一位置不是强制性的,而且HCI可以在L2CAP的上面。
兰牙核心协议包括由兰牙SIG制定的兰牙特定协议,RFCOMM和TCS Binary协议也是由兰牙SIG编制的,但分别基于ETSI TS 07.10和ITU-T建议Q.931。大多数兰牙设备必须使用兰牙核心协议和兰牙无线电规范,而仅当需要时才使用其余协议。
电缆替代层、电话控制层和选用协议层形成面向应用[2]的各种协议,使各种应用能够在兰牙核心协议层上运行。正如前面所提到的,兰牙规范是开放的,并能够在图3所示的兰牙核心协议的上层或面向应用协议的上层,容纳各种具有互工作性的附加协议,例如高级文本传送协议(HTTP, HyperText Transfer Protocol)、文件传送协议(FTP, File Transfer Protocol)等等。
3.1 兰牙核心协议
(1) 基带协议
基带协议和链路控制层能够在形成一个皮网的各兰牙单元之间建立物理RF链路。因为兰牙无线系统采用跳频的扩频方式,各分组在规定的频率和时隙进行发送,所以本层使用询问和寻呼程序与不同兰牙设备的跳频频率和时钟相同步。兰牙系统提供两种与其基带分组相对应的物理链路,一是面向连接的同步链路(SCO, Synchronous Connection Oriented),二是无连接的异步链路(ACL, Asynchronous Connection-Less),它们能够以复用方式在相同的RF链路上传送,ACL分组仅用于数据业务,而SCO分组可以仅含语音业务,或含语音和数据业务的组合。所有的语音和数据分组都可以采用不同等级的前向纠错(FEC, Forward Error Correction)或循环冗余效验(CRC, Cyclic Redundancy Check),并且能够进行加密。此外,对于每种不同的数据类型,包括链路管理和控制消息,都分配给一个专用信道。
语音业务可以在一个或多个兰牙设备之间进行传送,使各种应用模式成为可能。SCO分组中的语音数据可以直接地选路,发至和收自基带,而不经由L2CAP。在兰牙系统中语音模式是相对简单的,只要建立一个语音链路,任何两台兰牙设备之间便能够相互发送和接收语音数据。
(2)   链路管理协议
链路管理协议(LMP)负责兰牙设备之间链路的建立和释放,包括安全方面,诸如鉴权,以及通过链路及密钥的生成、交换和检查与基带分组长度的控制和商定所进行的加密。此外,链路管理协议还负责业务量调度、链路监控和功耗管理等任务,控制皮网中兰牙单元的连接状态、功率模式和工作周期。
(3)   逻辑链路控制和自适应协议
逻辑链路控制和适应协议(L2CAP)层的引入使标准数据传送协议与兰牙协议之间形成一个接口,用以处理各高层协议的复用和大分组的分段与重组,使上层协议能够适应于基带协议,可以认为它是与LMP并行工作的,区别在于L2CAP为上层协议提供服务,却从不在LMP消息中发送净负荷数据。L2CAP以协议复用能力、分段和重组操作、群组提取功能为各上层协议提供有连接和无连接的数据业务,L2CAP允许高层协议和应用发送和接收长度达64 kbyte的L2CAP数据分组。虽然基带协议提供SCO和ACL两种链路类型,但兰牙规范规定,L2CAP仅用于ACL链路,而不支持SCO链路。在L2CAP层上面,可以驻留串行电缆仿真协议(RFCOMM)、电话控制规范(TCS)和业务搜索协议(SDP),以及各种其它的现用网络协议,诸如传送控制协议/因特网协议(TCP/IP, Transport Control Protocol /Internet Protocol)、点对点协议(PPP)、对象交换协议(OBEX)、无线应用协议(WAP)等。
(4)   业务搜索协议
关于业务搜索协议(SDP),SIG规范只规定了兰牙环境的寻址,它能够使兰牙单元发现皮网中其它兰牙单元的能力,发现各单元可以提供的各种业务及它们特性,包括打印、传真一类的普通业务,也包括电话会议、网桥、电子商务一类的先进业务。然而,SIG规范没有规定接入各种业务的方法,这应沿用其它现用协议的方法。SDP是兰牙协议结构的关键部分,这些服务是所有应用模式的基础,利用SDP,可以使设备信息、各种业务以及它们的特性进行排队,之后便能建立两台或多台设备之间的连接。
3.2 电缆替代协议
电缆替代协议RFCOMM是一种串行线路仿真协议,它以ETSI 07.10规范为基础。这种‘电缆替代’协议在兰牙基带上仿真RS-232控制信号和数据信号,为使用串行线路传送机制的各上层业务(OBEX)提供两种传送能力。
3.3 电话控制协议
(1) 电话控制协议–二进制
电话控制协议–二进制(TCS-Binary/TCS-BIN)是一种面向比特的协议,它定义兰牙设备之间建立语音和数据呼叫的呼叫控制信令(CCS, Call Control Signal)。此外,它还规定用于兰牙TCS设备的各处理群组的移动性管理进程。TCS-Binary基于ITU-T建议Q.931,采用如Q.931附录中所述的对称规定。
(2)   电话控制协议– AT命令
兰牙规范已经定义了AT-命令集,借助于该命令集能够在多种应用模式中控制移动电话机和调制解调器。兰牙系统所使用的AT-命令集基于ITU-T建议V.250和ETS 300 916(GSM 07.07)。此外,FAX业务所用的各命令集由实施者予以规定,它们可以是下列的任一种:
- Fax Class 1.0 TIA-578-A 和 ITU T.31 Service Class 1.0
- Fax Class 2.0 TIA-592 和 ITU T.32 Service Class 2.0
- Fax Service Class 2 – 无工业标准
3.4 沿用/选用协议
(1) PPP协议
在兰牙系统中,点对点协议(PPP)设计为在RFCOMM协议上运行,以完成点对点的连接。PPP原本是因特网工程任务机构(IETF, the Internet Engineering Task Force)的点对点协议,而PPP-Networking的含义是指,PPP层负责提取各IP分组,它们或是放入局域网(LAN, Local Area Network)的各分组,或是从LAN收取的各分组并送到PPP层的各分组。
(2)   TCP/UDP/IP协议
这些协议标准是由IETF制定的,并用于因特网通信。现在它们已是世界上最广泛采用的协议系列。TCP/IP协议栈已在大量设备上使用,包括打印机、手持电脑和移动手机等。接入这些协议不依赖于操作系统,尽管传统上使用一种插座编程(Socket Programming) 接口模块来实现。在兰牙设备中,这些标准的实现应考虑到与因特网所连接的任何其它设备之间的通信,从而将兰牙设备,例如是兰牙蜂窝手机或数据接入终端,用做通向因特网的网桥。在兰牙规范中,TCP/IP/PPP都是用做因特网网桥情况,而在未来版本中,还可以用于OBEX。UDP/IP/PPP也可以用于WAP的传送。
(3)   OBEX 协议
红外对象交换协议( OBEX)是由红外数据协会(IrDA)制定的一种以简单和自然的方式进行对象交换的会晤协议。OBEX提供与超级文本传送协议(HTTP)相同的基本功能,但方法要简单的多。倘若OBEX实现一种可靠的传送,它应采用客户机-服务器模式,而且不依赖于传送的机制和传送的应用编程接口(API, Application Program Interface)。OBEX的‘语法’与协议本身一起在各设备之间进行通信,OBEX还提供一种表示各对象和操作的模型。此外,OBEX定义了一种文件夹-清单对象,用于浏览远端设备上的各文件夹的内容。最初OBEX下面的传送层是RFCOMM,在未来的实施方案中很可能支持TCP/IP作为传送层。
(4)   Vcard 与 vCal规范
vCard和vCal规范分别地定义了电子商务卡的格式和个人日历及日程信息的格式。vCard 和vCal不定义任何传送机制,而只定义用以传送数据的格式。通过选用vCard  和 vCal,会进一步促进使用这些明确定义和支持的格式来交换个人信息。vCard 和 vCal规范是由因特网邮件组织(IMC, Internet Mail Consortium)编制的,并正在由IETF进一步发展。在兰牙系统中由OBEX传送的其它内容格式还有vMessage和vNote。这些内容格式也是开放标准,并用于交换消息和信函。这些内容格式是在IrMC规范中定义的,该规范还定义了一种记录文件的格式,当设备之间传送同步数据时需要这种格式。
(5)   WAP
隐藏计算应用模式可以使用无线应用协议(WAP)加以实现。兰牙系统是WAP承载体。
WAP论坛正在制定一种能够工作在各种广域无线网技术的无线协议规范,目的是将因特网内容和电话业务引入数字蜂窝电话机和其它无线终端。
选择WAP的想法是,充分利用为WAP应用环境(WAE, Wireless Application Enviroment)开发的上层应用软件。这些应用软件包括能够与PC机各种应用交互工作的WAP标志语言(WML, WAP Markup Language)和WTA浏览器。建立介于WAP服务器与PC机其它应用之间的应用网关,实现各种隐藏、计算功能,诸如远端控制、从PC机到手机的数据提取。WAP服务器还便于在PC机与手机之间加载和下载内容,使生活像一个信息交流站。WAP结构打开了手机定制应用的可能性,即手机使用WAP标志语言(WML和WMLScript)作为通用的软件开发套件。兰牙系统WAP所支持的内容格式有WML、WMLScript、WTA event、WBMP和 vCard/vCal,它们是无线应用环境的各个具体部分。
3.5 用户模式及其协议栈
(1) 文件传输应用模式
文件传输应用模式所使用的最普遍的设备有PC机、笔记本电脑及个人数字助理(PDA, Personal Digital Assistant)等,因为该模式可以提供两个终端间的数据通信功能,所以在两个终端之间能够完成各种文件、文件夹、多媒体数据流的浏览、复制及删除。文件传输协议栈及实体如图4所示。
文件传输客户机                          文件传输服务器
对象交换协议(OBEX)                          OBEX
RFCOMM    SDP                      RFCOMM     SDP
LMP      L2CAP                        LMP     L2CAP
基 带                                   基 带
RF层                                   RF层
文件传输客户机端                           文件传输服务器端
图4 文件传输协议栈及实体
(2) 局域网访问模式
这种模式在串行电缆仿真协议(RFCOMM)的基础上,应用了点对点协议(PPP),能够完成单个兰牙设备、多个兰牙设备及PC-PC之间的局域网接入。该模式的协议栈及各实体如图5所示。其中ME是管理实体,专门用于协调初始化、构建和连接管理等过程,局域网接入点(LAP, LAN Access Point)是提供局域网接入业务的兰牙设备,数据终端(DT, Data Terminal)为使用LAP业务的设备,如笔记本电脑、台式机等。兰牙设备的局域网访问模式的操作,是在RFCOMM的基础上执行PPP连接,RFCOMM用于传输PPP分组,也用于控制PPP的数据流。PPP / RFCOMM的操作如象通常拨号网络情况下的PPP操作一样,只是它再不使用AT命令,一旦建立起RFCOMM链路,就开始PPP传送。
应 用                                                     应 用
TCP & UDP                                               TCP & UDP
IP                         PPP网络                            IP
PPP                     PPP
SDP  RFCOMM         RFCOMM    SDP
M                                               M   LAN            LAN
E    L2CAP   LMP          LMP    L2CAP     E
基 带                     基  带
RF层                     RF层
数据终端(DT)                 局域网接入点(LAP)
图5 局域网访问模式协议栈及实体
(3) 同步模式
兰牙同步用户模式可以提供设备(如笔记本电脑、PC机、PDA或移动电话)到设备之间的个人信息管理数据的同步更新,该模式的应用主要集中在各设备中电话簿、日历、消息和各种短信等的同步处理。同步模式的协议栈及各实体如图6所示,其中IrMC(Infrared Mobile Communication)表示红外移动通信,PC机、移动电话等设备都能充当IrMC客户机端及服务器端。
IrMC客户机端应用                       IrMC服务器端应用
OBEX                                   OBEX
RFCOMM    SDP                        RFCOMM     SDP
LMP      L2CAP                        LMP     L2CAP
基 带                                    基 带
RF层                                    RF层
IrMC客户端                           IrMC服务器端
图6 同步模式协议栈及实体
(4) 拨号网络应用模式
拨号网络应用模式定义了那些需要执行所谓 “因特网网桥”方式的各类设备之间的协议和执行步骤,这些设备包括调制解调器、便携式电话机等。通过该模式,计算机能够将调制解调器、便携式电话机作为无线调制解调器,拨号接入Internet服务器,或进行其它拨号业务,或接收数据呼叫,而无须缆线连接。拨号网络应用模式的协议栈及各实体如图7所示,其中网关(GW,GateWay如调制解调器、便携式电话机)用于接入到公众网络,而笔记本电脑、台式计算机一类的数据终端(DT, Data Terminal)则可以使用GW所提供的拨号业务。
调制解调器仿真应用                      调制解调器驱动器
拨号与控制                             拨号与控制
RFCOMM     SDP                       RFCOMM     SDP
LMP      L2CAP                        LMP     L2CAP
基 带                                    基 带
RF层                                    RF层
网 关                                  数据终端
图7拨号网络应用模式的协议栈及实体
(5) 传真应用模式
传真应用模式定义了那些需要执行所谓 “数据接入点、广域网”使用方式中传真部分的各类设备之间的协议和执行步骤,用以发送和接收传真信息。这些设备包括兰牙调制解调器、兰牙便携式电话机等。该模式采用了与拨号网络应用模式相同的协议栈和实体。
(6) 无绳电话应用模式
无绳电话应用模式含盖了所谓“三合一”电话使用中所需的协议和实体。这种电话使用兰牙通信作为短程载体,经由基站接入固定网络的电话业务,其协议栈和各实体如图8所示。兰牙电话通常有三方面的应用:接入公用电话网,作为普通电话使用;在两终端间作为内部电话使用;接入外部网络提供的补充业务。由于还可以用作一个居民区或小办公环境的无线电话,所以这种模式也叫做为“无绳电话”模式。
电话应用

业务              CL          GM           CC
发现                                                         语音
协议        T                                                同步
(SDP)      C                                                控制
F            协议鉴别器PD
③           ②
CO        CL                                   语
L2CAP                                      音
⑤   ④
LMP

异步无连接(ACL)               同步连接(SCO)
基 带/链路控制LC
图8 无绳电话应用模式协议栈及实体
参照图8,① 为呼叫控制(CC)实体与语音同步控制之间的接口,用以连接和断开内部语音路径;②为协议鉴别器(PD, Protocol Discrimination)与逻辑链路控制和适配协议(L2CAP)的无连接(CL,  Connectionless)部分的接口,用于电话控制协议规范(TCS Binary)广播消息的网关发送、终端接收;③为协议鉴别器(PD)与L2CAP有连接(CO, Connection-Oriented)部分的接口,用于传送面向连接的L2CAP信道上的所有测试控制层(TCL, Test Control Layer)消息;④为CC与链路管理器协议(LMP)的接口,用于CC实体在建立和释放同步连接链路(SCO)过程中直接地控制链路管理器(LM, Link Manager);⑤为组群管理(GM, Group Management)与链路管理器协议(LMP)的接口,用作GM实体在初始化及某些关键处理中对链路管理器(LM)的控制功能;⑥为GM与基带的接口,用于CM实体直接地控制基带/链路控制器(LC, Link Controller),使之顺利进行查询、寻呼、查询搜索和寻呼搜索。
(7) 头戴式设备模式
应 用                                  应 用
(音频口仿真)                             (音频驱动器)
耳机/话筒控制(AT命令)                   耳机/话筒控制(AT命令)
RFCOMM    SDP                         RFCOMM   SDP
LMP      L2CAP                         LMP     L2CAP
基 带                                    基 带
RF层                                     RF层
音频网关                              头戴式设备
图9 头戴式设备模式的协议栈及实体
这种头戴式设备的应用模式提供了各种头戴式耳机/话筒与个人计算机、移动电话机之间通过兰牙实现无线连接的各种协议和执行步骤。头戴式设备通常用作PC机和移动电话机的音频输入/输出装置,这样可以保证通话保密,同时还增加用户的移动性。图9表示该模式的协议栈和各实体。
四 多址方案
工科医频段的无线电规则和缺乏协调的无线电环境,迫使人们精心选择兰牙系统的多址方案。频分多址(FDMA, Frequency Division Multiple Access)很有吸引力,因为信道正交性仅仅取决于收发信机的晶体振荡器的准确度,结合自适应和/或动态信道选择方式,可以避免干扰。不幸的是,单纯的FDMA方式不满足规则对ISM频段的杂散发射要求。时分多址(TDMA, Time Division Multiple Access)为达到信道正交而要求严格的时间同步,对于具有多种拓扑结构和连接方式且重叠运行的兰牙系统,保持共同的时间基准是相当困难的。码分多址(CDMA, Code Division Multiple Access)可以提供最佳的特性,但直接序列(DS, Direct-Sequence)CDMA没有什么吸引力,因为克服‘远近效应’难题需要连续和精确的功率控制和/或很高的处理增益,为达到信道正交同样需要共同的时间基准。此外,传送速率越高,所要求的芯片处理速度越高,这不利于干扰抑制,还会使功耗加大。
对于兰牙系统及其工作环境,跳频(FH, Frequency Hopping)CDMA方式是最优选择。有用信号可以在整个ISM频段跳频,平均扩频带宽近80MHz,有很高的扩频增益;在每个跳频时隙的瞬时带宽仅为1MHz,从而避开了ISM频段的主要潜在干扰;各跳频载波是正交的,邻时隙的干扰可以用滤波方法有效的抑制。因为无线电规则不允许跳频序列的协调,所以各跳频序列不可能正交,但窄带同用户干扰主要表现为通信的瞬断,可以通过高层协议的各种措施加以克服。
兰牙系统采用载波间隔为1MHz的79个跳频载波的跳频方案,物理信道是标称跳频停留时间为625μs的跳频信道。业已定义了大量的伪随机跳频序列,每一皮网中具体使用的跳频序列由控制跳频信道的主机单元确定,主机单元的本地时钟还确定跳频序列的相位。各从机利用主机标识选择同一跳频序列,并将计算出的时间偏移参数加到各自的本地时钟,以便与特定的跳频序列同步。信道在时域上划分为时隙,一个时隙的时长相应于一个最小跳频停留时间625μs。为了简化实施方案,采用时分双工(TDD, Time Division Duplex)方式实现全双工通信,这意味着发信和收信在时间上是交替的,从而有效抑制了收发信机中收发信号之间的相互串扰,这对用单一芯片实现方案尤其重要。由于收信和发信工作在不同的时隙,所以也工作在不同的跳频载波。兰牙系统所采用的跳频/时分双工信道如图10所示。
t
F(k+2)
F(k+1)
F(k)
625μs
主机
t
从机
图10 兰牙系统的跳频/时分双工信道
应当指出,在多个皮网中,应使用具有不同跳频序列的不同跳频信道,它们的时隙定时也可能不一致。
五 调制解调方案
虽说兰牙系统的跳频范围很宽,但信号带宽却是受限的,仅为1MHz。为了可靠起见,选用二元调制方式,因此数据速率也是受限的,约为1Mb/s。由于兰牙系统采用跳频方案,并支持脉动突发数据业务,采用非相干解调方式最为合适。所以,兰牙系统选择高斯滤波成形的最小频移键控(0.5GMSK, Gaussian Minimum Shift Keying)调制,其中0.5为高斯滤波器3dB带宽B与比特时长T的乘积。标称调制指数k=0.3,调制指数必须在0.28 与0.35之间。最大频率偏移应在140 kHz与175 kHz之间,以正频偏表示逻辑‘1’,负频偏表示逻辑‘0’。调制特性要求如图11所示。
理想过零交叉点点点dddddddddddddddddddddddd
过零交叉点误差
时间
Ft- fd
Fmin-
Fmin+
Ft+ fd
发送频率Ft
图11 实际的发送调制
兰牙已调信号的解调可以通过限幅器和FM鉴频器来实现,十分简单,而简单的调制解调方案可以大大降低无线电收发信机的成本。
六 物理链路及其连接
6.1 物理链路
如上所述,兰牙系统既支持语音一类的同步业务,又支持突发数据一类的异步业务,对于这些业务,主机和从机之间定义了两种物理链路:面向连接的同步(SCO)链路和无连接的异步(ACL)链路。
SCO链路是主机与单个从机之间的点对点的链路,通过预留双工时隙加以建立。ACL链路是主机与皮网所有从机之间的点对多点的连路,可以使用信道上没有被SCO链路占用的所有其余时隙,ACL链路上的业务量由主机进行调度。皮网信道的时隙结构允许同步链路和异步链路的有效组合,图12是表示具有SCO和ACL链路组合信道的实例。
SCO      ACL    SCO   ACL  ACL  SCO             SCO   ACL
主机
从机1
从机2
t
从机3
图12 在皮网信道上SCO链路与ACL链路组合的实例
6.2 物理链路的建立
在兰牙系统中,连接建立是设计的关键问题,诸如,各单元间怎样相互发现对方,它们之间如何建立连接,为此定义了三种方式:扫描、寻呼和询问。在空闲模式,为了节省电量,各单元大部分时间要进入‘睡眠’状态;但为了及时建立连接,每个单元需要频频地侦听其它各单元是否想要连接。在兰牙系统中,没有能够监听和接收寻呼消息的共用信道,这与传统的寻呼通信系统类似,而不同于通常的蜂窝移动通信系统。各单元需要周期性的‘醒来’,监测它们的标识,但兰牙系统不能使用明码的标识,而是使用由标识导出的接入码。每当一个兰牙单元醒来扫描时,首先打开它的滑窗相关器,该相关器与由它的标识所导出的接入码相符合,扫描窗大于10ms,每次醒来扫描不同的跳频载频。这是规则所要求的,不允许每次醒来总使用固定的频率扫描,自然,这也提供了必要的干扰抑制。兰牙单元醒来的跳频序列长度仅为32跳,并以32跳为周期进行循环,每次至少扫过79MHz可用频率的64MHz带宽。所有32个跳频序列对于每一兰牙单元都是随机的、独特的,并由它的标识码导出。扫描序列的相位由在该单元中自由运行的本机时钟确定。因此,在空闲模式期间,是本机时钟负责安排‘苏醒/睡眠’操作。应当指出,在空闲模式须在节省电量与应答延时之间进行权衡,增加‘睡眠’时间固然可以降低电量消耗,但会拖延成功接入的时间。想要接入的单元必须解决频率-时间上的不确定度,因为不知道空闲单元何时醒来,在哪个频率上醒来。由于各单元大部分时间处于睡眠状态,接入又需要消耗电量,解决这一不确定度的难题有意交给了始发或主叫的寻呼单元。
首先假设寻呼单元知道它所要连接的单元的标识,认为它知道空闲单元醒后的跳频序列,并能够产生用作寻呼消息的接入码。寻呼单元在不同频率上每1.25ms重复发送接入码两次,接着侦听应答两次,如图13所示。
TX1      TX2       RX1      RX2      TX3      TX4
f(k)    f(k+1)  f(k+2)  f(k+3)  f(k+4)   f(k+5)
t
1.25ms
图13 兰牙寻呼单元的频率和定时特性
在按照空闲单元醒后跳频序列所选择的不同跳频频率上连续发送接入码,在10ms周期中可以访问16个不同的跳频频率,这相当于半个扫频序列长度。在空闲单元的睡眠周期期间,寻呼单元依次在这16频率上发送接入码,如果空闲单元在这16个频率的任一频率上醒来,则它会收到该接入码,接踵进入连接建立程序。然而,由于寻呼单元根本不知道空闲单元正在使用的相位,空闲单元同样可以在32个醒来跳频序列的其余16个频率的任一频率上醒来。因此,如果寻呼单元在相应于睡眠时长的时间之前收不到来自该空闲单元的应答,则它会在其余半个序列的跳频载频上重复发送该接入码。因此最大延时为睡眠时长的两倍。在确定第二半序列的跳频载频时,寻呼单元应计及空闲单元的时钟也在前进,所以其余半序列与第一半序列有一个共同的载频。当空闲单元收到该寻呼消息后,它通过返回一个消息通知寻呼单元,该消息也是由空闲单元的标识导出的接入码。之后寻呼单元发送一个跳频同步(FHS, Frequency Hop Synchronization)分组,它含有寻呼者的所有信息,如身份标识和时钟。而后这一信息由寻呼单元和空闲单元用来建立一个皮网,寻呼单元成为主机,使用它的标识和时钟定义跳频信道,而空闲单元成为从机。
上述寻呼过程是假设寻呼单元根本不知道空闲单元的时钟,然而,如果该两个单元以前有过会晤,寻呼单元便能够对空闲单元的时钟做出估算。当两单元连接时,它们交换它们的时钟信息,更新和存储它们各自自由运行的本机时钟的偏移。该偏移仅当连接期间才是准确的,当连接释放后,由于时钟漂移使该偏移信息变得不太可靠,其可靠性与从上一次连接释放后延续时间成反比。所以,寻呼单元可以利用存储的偏移信息估算空闲单元的相位。假设寻呼单元对空闲单元的时钟估算为k’ ,若f(m)为空闲单元醒后跳频序列在时间m的跳频载频,则寻呼单元会假设空闲单元在f(k’)的频率上醒来。但由于它在10ms时间可以扫过16个不同频率,所以它也会在f(k’)之前和之后的各跳频频率,即频率f (k’-8), f (k’-7) ,…f (k’) , fk’+1),…f (k’+7)上发送接入码,因此,寻呼单元中的相位估算可以偏移-8或+7,从而能够覆盖空闲模式单元的醒后跳频载频。在自由运行时钟准确度为±250ppm的条件下,该时钟估算在上次连接释放5小时之后仍是很有用的。在这种情况下,平均应答延时减小到睡眠时长的一半。
为了建立连接,需要用收方的标识来确定寻呼消息和醒后跳频序列,如果不知道这一信息,想要建立连接的单元可以广播一个询问消息,该消息会引起各收方返回它们的地址和时钟信息。利用询问程序,询问者可以确定皮网中有哪些单元,它们有什么特性。询问消息也是一个接入码,但它是从一个预留标识(询问地址)导出的,空闲单元也按照一个32-跳频的询问序列侦听询问消息,各收到询问消息的单元返回FHS分组,其中包括它们的标识和时钟信息。对于返回的FHS分组,使用了一种随机抵消机制,以防止多个收方同时发送。
在寻呼和询问程序期间,使用32个跳频载频的方式,而建立连接后的跳频方式,至少必须使用75个跳频载频。然而,在寻呼和询问程序期间,只有一个用做信令的接入码。这一接入码是作为直接序列码使用的,直接序列编码所获得的处理增益与从32-跳频序列所获得的增益相结合,可以提供足够的处理增益,以满足一些规则对DS/FH混合系统的要求。因此,在寻呼和询问程序期间,兰牙系统的工作如同一个DS/FH混合系统,而在连接期间则按纯FH方式工作。
七 分组传送方式
兰牙系统采用基于分组传送方式的通信机制,即将信息流分为许多分组,每一时隙发送一个分组。所有分组具有相同的格式,即从接入码开始,接着是分组头,最后是用户的净负荷数据,如图14所示。
接入码
72bit
分组头
54bit
净  负  荷
0~2745bit
LSB
MSB
图14 标准分组的格式
接入码具有伪随机性质,在某些接入操作中用作直接序列码组,并包括皮网主机的身份标识。所有在信道上交换的分组都通过这一主机标识加以识别,仅若该接入码与相应皮网主机的接入码一致时,该分组才会被接收者接受。这样能够防止在一个皮网中发送的分组被偶尔落入相同跳频载频的另一皮网的单元错误接收。在接收机中,按照滑窗相关器中的预定码检查接入码是否一致,该相关器再次提供直接列序处理。
分组头含有链路控制信息:一个3比特的从机地址用于区分皮网中的各从机;1比特的证实/非证实(ACK/NACK, Acknowledge/Non-Acknowledge)标志用于自动重传请求(ARQ)方案;4比特的分组类型码定义16种不同的分组;8比特的分组头差错校验(HEC, Header-Error-Check)码,是用于检测分组头中的差错的循环冗余校验(CRC)编码。分组头限制为18比特,以降低开销。通过1/3比率的前向纠错(FEC)码,可以进一步保护分组头。
兰牙定义了4种控制分组:
· ID(标识)分组,仅有接入码部分,用于信令;
· NULL(空)分组,仅有接入码和分组头部分,如果需要传送由分组头承载的链路控制信息,则使用NULL分组;
· POLL(轮询)分组,与NULL分组类似,由主机用来强制从机返回应答;
· FHS(跳频同步)分组,用于在各单元之间交换实时时钟和标识信息,含有两个单元获得跳频同步的所有信息。
其余12种分组用于定义同步和异步的各种业务,并分为三段:段1规定适于装入一个时隙的分组;段2规定3个时隙的分组;段3规定5个时隙的分组。各多时隙的分组在同一个跳频载频上发送,第一时隙有效的跳频载频也用于其余各分组,在一个分组的中间部位没有频率切换。在多时隙分组发送之后,使用由当前主机时钟指定的跳频载频,如图15所示。应当指出,由于只定义了奇数数目的多时隙分组,所以能够保证维持收发(TX/RX)之间的定时。
f (k)
f (k+5)
f (k+6)
f (k)
f (k+1)
f (k+2)
f (k+3)
f (k+4)
f (k+5)
f (k+6)
f (k+3)
f (k+4)
f (k+5)
f (k+6)
f (k)
图15  多时隙分组的频率和定时特性
在跳频时隙信道上,定义了同步和异步链路,分组类型的解释对于这两种链路来说是不同的。异步链路支持具有或不具有2/3比率编码方式的FEC。另外,在这些链路上可以使用单时隙、3时隙和5时隙的分组。在异步链路上可以获得的最大用户速率为723.2kb/s,在这种情况下,仍能支持57.6kb/s的返回链路速率。通过改变分组长度和取决于链路条件的FEC编码,可以实现在异步链路的自适应。净负荷的长度是可变的,并取决于变化着的用户数据。然而,最大长度受限于RX与TX之间的最大切换时间,该时间规定为200μs。这一切换时间似乎太长,但它允许采用开环压控振荡器进行直接调制,并提供RX与TX之间的分组处理时间。
对于同步链路,只定义了各种单时隙的分组,净负荷长度是固定的。同步链路支持具有1/3比率、2/3比率的FEC,或根本没有FEC的净负荷,在两个方向提供用户速率为64kb/s全双工链路。
八 纠错方式
兰牙系统采用前向纠错(FEC)和分组重传(ARQ, Automatic Repeat reQuest)两种纠错方式。关于FEC,兰牙系统支持1/3比率和2/3比率的FEC编码。对于1/3比率编码,发端采用3比特重复码,收端使用大数判决译码。重复码由于能够减少瞬时带宽而获得额外增益,从而可以降低接收滤波器引起的码间干扰。1/3比率码 用于分组头,也可以用于SCO链路上同步分组的净负荷。对于2/3比率码,发端采用缩短的汉明码,收端使用差错捕捉译码。这种编码既可用于SCO链路上同步分组的净负荷,也可用于ACL链路上异步分组的净负荷。兰牙系统所采用的FEC码十分简单,从而使编码和译码操作的速度很快,这正好适应兰牙系统收发之间处理时间受限的实际情况。
ARQ方案用于ACL链路,如果分组的收端不给予证实,则发端进行该分组的重传,净负荷含有CRC差错校验,用以检错。为了尽可能降低复杂度、开销和不必要的重传,在诸多ARQ方式中兰牙选用了快速ARQ方式,如果一个分组在传送中出错,发送者会在紧接它发送该分组的TX时隙之后的RX时隙收到该分组接受者的通知,如图16所示。
F(k)      f(k+1)    f(k+2)    f(k+3)
A1
A1
A
t
出错

B2
B1
B
t
625μs
图16 兰牙系统ARQ工作过程举例
如果增加2/3比率的FEC,便采用混合ARQ类型I方案,这时证实/否否证实(ACK/NACK)信息在返回分组的分组头中送回,接收者只能利用RX/TX切换时间确定收到分组的正确性,并生成返回分组头中的ACK/NACK字段。此外,该分组头中的ACK/NACK字段还指示前面发送的净负荷是否已经正确地收到,从而确定是需要进行重传,还是可以发送下一个分组,这一过程如图17所示。由于处理时间很短,最好一收到分组就快速执行译码,发端简单的FEC编码方式也有助于快速处理。快速ARQ方式还有很多优点,一是延时很小,实际上不会造成附加的延时;二是效率很高,只重传出错的分组;三是开销很少,顺序编号只需要一比特,用于滤掉由于ACK/NACK字段出错而两次重复正确接收的分组。
CRC校验
RX
重传
ACK/NACK          ACK / NACK
新分组
TX
图17 兰牙ARQ机制
(ACK/NACK信息决定重传,收到的净负荷决定传送ACK/NACK信息)
九 干扰抑制
由于只要发射机满足规则要求便能进入工科医(ISM)频段,所以干扰抑制是十分重要的课题。ISM频段的干扰强度、范围和特性都是很难预测的,例如,当无线电发射机的发送功率在10dBm至30dBm范围内,不同通信系统便不能共用同一频段进行通信,因而协调也是不可能的。更大的难题是这一频段的大功率发射源,诸如微波炉和照明设备。按照规则,这些设备的发射功率和杂散发射功率都可以超过通信系统。除了上述外部干扰外,还必须考虑兰牙系统内用户之间的干扰。
干扰抑制技术分为两个方面,一是压低干扰,二是避开干扰。通常可以通过编码和直接序列扩频来压低干扰,但由于兰牙系统处于一种特殊的无协调的无线电通信环境,干扰和有用信号的动态范围都很大,再考虑到兰牙发射机的距离比、功率比引起的远近效应,以及高达1Mb/s传送速率,编码和扩频增益是远远不够的。相比之下,避开干扰更为可取,因为有用信号可以在有较低干扰或没有干扰的频率和/或时间段上传送。如果干扰是短脉冲而有用信号又允许瞬断,则可以选择时域避开的方法。然而,频域避开的方法更为实用,因为ISM频段有近80MHz带宽,而大多数无线电通信系统是带宽受限的,能够以较大概率找到没有太大干扰的频带。此外,滤波器可以压低频段其他部分的干扰,抑制度很容易达到50dB。有鉴于上述情况,兰牙选用了跳频方式的宽带扩频通信技术。
十 媒体接入控制
兰牙系统的最大优点和特点在于,允许同时在同一地区有重叠而未经协调地安排多个‘皮网(PICONET)’,或形成所谓的‘散射网(SCATTERNET)’,进行多种通信。兰牙系统允许有大量的独立信道,而每一信道仅服务于数目有限的用户。利用所讨论过的调制方式,一个跳频信道仅能支持总速率1Mb/s,并由该信道上的所有用户共用。
理论上,ISM频段的79个载波能够支持79Mb/s,由于跳频序列是非正交的,所以不能达到79Mb/s的理论容量,但实际容量比1Mb/s大得多。兰牙系统有很大数目的独立的1MHb/s信道,这正是各单元真正想要交换信息的信道,也是各单元仅仅与之相连接的信道。兰牙系统的设计目标是,通过利用这些独立信道,充分有效的利用79MHz带宽,各单元不需要在所有信道上、在所有用户之间共用信息。
一个跳频信道属于一个皮网,如以上所述,一个皮网信道是由主机单元的标识(提供跳频序列)和系统时钟(提供跳频相位)定义的,参与该皮网的所有其它单元都是从机。每一兰牙无线电单元具有一个自由运行的系统时钟,叫做本机时钟,各单元之间没有共同的时间基准。然而,当一个皮网建立后,各从机将不同的时间偏移加到它们的本机时钟,达到与主机同步的状态。当该皮网取消后,这些偏移也随之释放,但可以存储起来供以后使用。不同的信道由不同的主机占用,从而有不同的跳频序列和相位。能够参与一个共用信道的单元数目有意地限制为8个(一个主机和7个从机),以便在各单元间保持大容量的链路,同时还可以降低寻址所需的开销。兰牙基于对等实体间的通信,主/从关系和作用仅是一个单元在皮网期间的属性,当该皮网取消后,主与从的角色也同时被取消。每个单元均可成为主机或从机,按照定义,最初建立皮网的那个单元将成为主单元。
除了建立皮网之外,主机还控制皮网的业务量,并负责接入控制。接入是完全没有竞争的,因为兰牙采用625μs的短停留时间,若使用基于竞争的接入方案,开销很大,效率不高。在兰牙系统中,主机执行中心控制,只能在主机与一个或多个从机之间进行通信。各时隙由主机和从机交替使用,在主机传送时,包含想要给它发送信息的从机的地址。为了防止由于多个从机发送引起的信道争枪和碰撞,主机采用轮询方法,即对于每个从-主方向的时隙,由主机决定哪个从机占用和发送。这种决策是按每一时隙进行的,即仅只恰在从-主方向时隙之前被主-从方向时隙寻址的从机才允许占用该从-主方向时隙发送。如果主机有信息发送给了特定从机,则该从机已被隐含地轮询,并能够返回信息。如果主机没有要发送的信息,则它必须用短轮询分组明确地轮询该从机。由于上行和下行链路的业务量都由主机进行安排,所以必须使用适合从机特性的智能调度算法,主机控制应有效地防止皮网信道上参与者之间的碰撞。当各皮网偶尔使用同一跳频载频时,独立并置的皮网之间会相互干扰,采用了一种类型的ALOHA方式,在发送之前不侦听,即在不检测载波是否良好的条件下发送信息。对于数据业务,如果信息接收有差错,则在下一个发送时隙重发。由于采用了很短的停留时间,碰撞检测和碰撞消除方式是不适合的,因为每一次跳频都可能遇到不同的竞争者,所以抵消机制也不能奏效。
十一 跳频选择机制
兰牙采用一种特别的跳频选择机制,可以认为该机制是一个‘黑箱’,标识和时钟为输入,跳频载频为输出,如图18所示。该机制满足下列要求:
-           跳频序列由兰牙单元的标识选择,相位由兰牙单元的时钟选择;
-           跳频序列的循环周期长达23小时;
-           32连续跳频扫描约64MHz频谱;
-           平均等概率访问所有频率
-           跳频序列的数目很大;
-           通过改变时钟和标识所选的跳频立即改变。
跳频选择
+
相位
序列
跳频
本机时钟
偏移                   标识
图18 兰牙系统跳频选择的基本概念
应当指出,没有付出使跳频序列正交的很大努力,在仅仅79个跳频载频的条件下,正交序列的数目极其有限。首要的要求是支持主机单元通过其标识和时钟规定跳频信道的皮网概念;其次的要求是当几个皮网靠近安排时防止干扰特性的重复,重复性的干扰有害于语音一类的同步业务;第三,要求跳频在很短时间段内尽可能大范围的扩频,以提供最大的干扰抑制,这对于语音业务是最为重要的,同时还对32跳频长度的醒后跳频序列和询问跳频序列提供良好的特性;第四,在更大的时间段,一些规则要求以等概率访问所有载频,由于许多皮网可以在同一区域共存,所以必须使用许多跳频序列,从排除了使用预存储序列的可能性,各序列需要用逻辑电路快速产生;最后,要求提供一种灵活性,通过时钟或前或后的运行,使各序列也前后移动,这对寻呼和询问程序是很有用的。此外,还应支持兰牙在各皮网之间跳动,也就是说,仅仅通过改变主机参数,即它的标识和时钟,一个单元便能够从一个皮网跳到另一个皮网,这一要求排除了算法使用随机存取存储器的可能,只能使用组合逻辑电路。
跳频选择机制如图19所示。在第一方框,标识以伪随机特性选择一个32-跳频的子序列,时钟的最低有效部分按照时隙速率(1600时隙/秒)跳过该子序列,于是第一方框在32跳频分段中提供一个指数(Index)。将该分段映射到一个79-跳频载频表,并将该载频表作如下方式安排,即偶数跳频载频排列在该表的上半部分,奇数跳频载频排列在下半部分,任意32个连贯表元的一段扫过大约64MHz。对于寻呼和询问程序,32-跳频段在载频表上的映射是固定的,当时钟工作时,会使用该同一个32-跳频序列和32个跳频载频,而不同的标识将映射到不同的段和不同的序列,所以不同单元醒后的跳频序列完全是随机的。在连接期间,时钟的更高有效位部分既影响序列选择又影响段的映射,即在32-跳频(1段)之后,该序列便被更换,并使该段向前方移动其长度的一半(16个跳频载频),使每个长度为32跳频的各段链接起来,对于每一新段,指数的随机选择也改变,各段滑过该载频表,平均以等概率访问所有的载频。改变时钟和/或标识将直接改变跳频序列和段的映射。
序列                 段                 载频表
0
2
4
78
1
3

相位
指数
序列
时钟
标识
77
注:虚线表示仅在连接模式使用的时钟更高有效位部分。
图19 跳频选择机制
十二 电源管理
在兰牙系统设计中,特别关注降低电量消耗问题。在空闲模式,每一醒-睡周期T(1.28至3.84秒)只醒来进行10毫秒左右,进行扫描,工作周期小于1﹪。在停放(PARK)模式工作周期更短,但停放模式只有在建立皮网之后才能由各从机使用,这时从机只需侦听接入码和分组头(不包括保护时间约为126μs),使自己的时钟同步,并决定是否返回睡眠状态。停放的从机锁定在主机上,没有频率和时间的不确定性,这与蜂窝电话和无绳电话情况类似,所以工作周期小得很。在连接期间的另一节电模式是‘换气(SNIFF)’模式,其间从机不扫描每一个主机至从机的时隙,每次扫描的间隔时间很长。
在连接状态,仅当有数据信息时才发送,这既能降低干扰又能减小电流消耗。如果没有需要交换的有用信息,则不发送;如果仅需要传送ACK/NACK一类的链路控制信息,则只发送没有净负荷的NULL分组;由于NACK是隐含的,带有NACK的NULL分组也不必发送。在很长的静默周期中,主机需要在信道上周期性地发送一个分组,以使各从机的时钟得以同步,并补偿频率漂移。这种重新同步的周期决定于从机中所用时钟和扫描窗长度的准确度。在TX/RX连续工作中,兰牙单元在RX时隙起始时刻开始扫描一个接入码,如果在某一扫描窗没有发现该接入码,则该单元返回睡眠状态,直到下一个主机的TX时隙,也就是从机的RX时隙。如果收到了该接入码,这表明所收到的信号与所期待的接入码一致,便译码其分组头,若3比特从机地址与接收者不一致,则停止进一步接收。该分组头还指示该分组是哪种类型的,持续多长时间,所以,没收到自己地址的接收单元能够确定它睡眠多长时间。
大多数小范围应用的兰牙单元的标称发射功率为0dBm,这样小的发射功率既降低了电流消耗又限制了对其它单元的干扰。然而,兰牙无线规范允许20dBm的发射功率,但大于0dBm的兰牙单元必须实施基于闭环接收信号强度指示(RSSI, Received Signal Strength Indication)的功率控制,这种强制性的功率控制措施只能补偿传播衰减和慢速衰落。在无协调的兰牙系统工作环境中,由于具有不同功率的不同系统共用同一频段,基于干扰的功率控制很难奏效,功率控制不能协调各不同的系统,也不能防止某些系统总是试图以超过其竞争者的功率发送。
十三 兰牙系统的安全性
尽管兰牙系统主要用于小范围的个人设备之间的连接,但也应具有基本的安全措施,以防止未经受权的使用和窃听。首先,在连接时进行鉴权、检验有关单元的标识。鉴权采用传统的‘挑应战’程序,如图20所示。申请者(右)给检验者(左)发送它自称的48比特地址;检验者返回一个128比特的随机数码(AU_RAND),提出‘挑战’;申请一方将该RU_RAND、申请者地址和一个128比特的公共链路密钥输入一个基于SAFER+的安全计算随机函数EI,结果产生一个32比特的签署应答(SRES, Signed Response),并将所产生的SRES发送给检验者;检验者将该SRES与自己产生的SRES进行比较,只有当双方计算的SRES码相同时才继续建立连接。上述鉴权过程可以是单向的,也可以是双向的。除了产生32比特SRES外,EI算法还产生一个96比特的鉴权密码偏移(ACO, Authenticated Ciphering Offset),用于信息传送的加密过程。容易被窃听是无线通信的固有弱点,即使小范围也是如此。为了防止经由链路窃听,应对每一分组的净负荷进行加密。兰牙系统采用比特流加密方式,净负荷比特与一个二元密钥流进行模二加运算,该密钥流由基于线性反馈移位寄存器(LFSRs, Linear Feedback Shift Register)的第二随机函数生成。当启动加密后,主机发送一个随机数码EN_RAND给该从机,在发送每个分组之前,使用该EN_RAND、主机标识、一个加密密钥和该时隙号码的组合初始化LFSR。由于每一新分组都要改变时隙号码,所以对于每一分组该初始化也是新的。该加密密钥由链路密钥、EN_RAND和该鉴权密码偏移ACO导出。
检验者                                       申请者
地址申请
AU_RAND
链路密钥        EI                                           EI         链路密钥
SRES
比 较
图20 兰牙系统的鉴权过程
安全的核心是128比特的密钥,该链路密钥是驻留在兰牙硬件中的一个用户不可访问的机密密钥,并在初始化期间生成。未来想要相互鉴权并建立安全链路的两个单元,必须是相互关联的,具有相同的机密链路密钥,要求在用户启动阶段使两个设备初始化。为了获准初始化,用户须将一个等同的PIN输入两个设备,对于手机一类没有用户接口的设备仅在一个短时间窗期间才是可能的,例如在用户按动初始化键之后。一旦成功执行了初始化,该128比特的链路密钥便驻留在设备中,此后便可以用来自动鉴权而不必用户干预。从原理上讲,该链路密钥提供两单元间的一个保密协议,因此,为了提供N个单元间的保密,需要N×(N-1)/2个链路密钥。兰牙技术提供了一些减少某些应用中密钥数目的方法,如果许多用户使用一个简单的单元,如打印机,则所有用户使用一个密钥与该简单单元进行加密通信。此外,还提供皮网中所有从机使用同一加密密钥的方法。
然而,兰牙系统仅在低层提供了有限的安全措施,更先进的安全措施,如公钥、私钥和认证的安全方案,可以在更高层实施。
十四 网际通信
在不断优化的兰牙系统中,几十个皮网可以在同一区域工作而不会引起明显的性能降级。在同一区域多个皮网可以组成所谓散射网(Scatternet),由于兰牙系统使用时隙链路上基于分组的通信方式,所以不同皮网之间的互连是可能的,这表明各单元可以参与不同的皮网。因为无线电单元同一时间只能调谐到一个跳频载频序列,所以,在任何时间它只能在一个皮网中通信。然而,通过调整信道参数,即主机标识和时钟,兰牙单元可以从一个皮网跳到另一个皮网,同时还能改变自己的角色和作用。例如,一个单元在一定时间可以是一个皮网的主机,而在另一时间又可以是另一皮网的从机,但根据定义一个单元不能成为两个不同皮网的主机,因为主机参数规定皮网的FH信道,必须在释放一个皮网之后才能建立另一皮网。
跳频选择机制的设计已考虑到皮网之间的通信,通过改变输入选择机制的标识和时钟,便能选定新皮网的新跳频信道。为了在可行的不同皮网之间进行跳动,在业务调度安排方面必须考虑到不同皮网的时隙同步,以及一定的保护时间。在兰牙系统中已经引入了一种保持(HOLD)模式,允许一个单元临时离开一个皮网而访问另一个皮网,在离开期间,当没有新皮网可以访问时,也能作为低功率模式使用HOLD模式。应当指出,在皮网间通信的散射网中,业务调度和选路是一个难题,仍需进一步研究。
[1] 没有在图1中OBEX层上面表示。
[2] 这里,‘面向应用’是相对于兰牙传送业务,并应解释为在任何协议层或在兰牙特定传送协议层上面的应用。