(接浅析蓝牙技术 (上))
SIG 所颁布的蓝牙规范(Specification of the Bluetooth System)就是蓝牙无线通信协议标准,它规定了蓝牙应用产品应遵循的标准和需要达到的要求。
蓝牙规范包括核心协议(Core)与应用框架(Profiles)两个文件。协议规范部分定义了蓝牙的各层通信协议,应用框架指出了如何采用这些协议实现具体的应用产品。蓝牙协议规范遵循开放系统互连参考模型(Open System Interconnetion/Referenced Model, OSI/RM),从低到高地定义了蓝牙协议堆栈的各个层次。
按照蓝牙协议的逻辑功能,协议堆栈由下至上分为3个部分:传输协议、中介协议和应用协议。其功能简介如下。
3.1 传输协议
负责蓝牙设备间相互确认对方的位置,以及建立和管理蓝牙设备间的物理和逻辑链路。这一部分又进一步分为低层传输协议和高层传输协议。低层传输协议侧重于语音与数据无线传输的物理实现以及蓝牙设备的物理和逻辑链路。低层传输协议包括蓝牙的射频(Radio)部分、基带与链路管理协议(Baseband && Link Manager Protocol, LMP)。高层传输协议包括逻辑链路控制的物理实现以及蓝牙设备间的连接于组网。高层传输协议包括逻辑链路控制与适配协议(Logical Link Control and Adaptation Protocol, L2CAP)和主机控制器接口(Host Controller Interface, HCI)。这部分为高层应用程序屏蔽了诸如跳频序列选择等低层传输操作,并为高层应用传输提供了更加有效和更有利于实现的数据分组格式。
3.2 中介协议
为高层应用协议或程序在蓝牙逻辑链路上工作提供了必要的支持,为应用曾提供了各种不同的标准接口。这部分协议包括以下几部分。
1. 串口仿真协议(RFCOMM)
基于欧洲电信标准化协会(European Telecommunication Standardization Institute, ETSI)的TS07.10标准制定。该协议用于模拟串行接口环境,使得基于串口的传统应用仅作少量的修改或者不做任何修改可以直接在该层上运行。
2. 服务发现协议(Service Didcovery Protocol,SDP)
为实现蓝牙设备之间相互查询及访问对方提供的服务。
3. IrDA(Infrared Data Association)互操作协议
蓝牙规范采用了IrDA的对象交换协议(OBEX),使得传统的基于红外技术的对象(如电子名片(vCard)和电子日历(vCal)等)交换应用同样可以运行在蓝牙无线接口之上。
网络访问协议:该部分协议包括点对点协议(Point to Point Protocol, PPP)、网际协议(Internet Protocol, IP)、传输控制协议(Transfer Control Protocol, TCP)和用户数据报协议(User Datagram Protocol, UDP)等,用于实现蓝牙设备的拨号上网,或通过网络接入点访问Internet 和本地局域网。
4. 电话控制协议
该协议包括TCS、AT指令集和音频。电话控制协议性能(Telephone Control Protocol Specification,TCS)是基于国际电信联盟电信标准化部门(International Telecommunication Union-Telecommunication,ITU-T)的Q.931标准制定的,用于支持电话功能;蓝牙直接在基带上处理音频信号(主要指数字语音信号),采用SCO链路传输语音,可以实现头戴式耳机和无绳电话等的应用。
3.3 应用协议