BlueTooth: 蓝牙Bluz协议栈概述
2019-07-13 16:40发布
生成海报
蓝牙技术是一项新兴的技术。它的主要目的就是要在全世界范围内建立一个短距离的无线通信标准 。它使用 2.4-2.5 GHz的 ISM( Industrion Scientifc Medical ) 频段来传送话音和数据。运用成熟、实用、先进的无线技术来代替电缆,它提供了低成本,低功耗的无线接口,使所有的固定和移动设备诸如:计算机系统、家庭影院系统、无绳电话系统、通信设备等,通过微微网(PAN,Personal Area Network)连接起来相互通信,实现资源共享。 简而言之,蓝牙技术支持多种电子设备之间的短距离无线通信,这种通信不需要任何线缆,亦不需要用户直接手工干涉;每当一个嵌入了蓝牙技术的设备发觉另一同样嵌入了蓝牙技术的设备,它们就能自动同步,并建立一种特别的无线网络(ad hoc), 相互通信,实现资源共享。Linux系统的官方蓝牙协议栈是Bluez协议栈, 其体系结构如图1所示。它是由底层硬件模块,中间层和高端应用层三大部分组成。 1、蓝牙的底层模块 底层模块是蓝牙技术的核心模块,所有嵌入蓝牙技术的设备都必须包括底层模块。它主要由链路管理层(LMP Link Manager Protocol)、基带层(BB Base Band)和射频(RF Rodio Frequency)组成。其功能是:无线连接层(RF)通过2.4GHz无需申请的ISM频段,实现数据流的过滤和传输,它主要定义了对工作在此频段的蓝牙接收机应满足的要求;基带层(BB)提供了两种不同的物理链路(同步面向连接链路SCO Synchronous Connection Oriented和异步无连接链路ACL Asynchronous Connection Less),负责跳频和蓝牙数据及信息帧的传输,且对所有类型的数据包提供了不同层次的前向纠错码(FEC Frequency Error Correction)或循环沉余度差错校验(CTC Cyclic Redundancy Check);LMP层负责两个或多个设备链路的建立和拆除及链路的安全和控制,如鉴权和加密、控制和协商基带包的大小等,它为上层软件模块提供了不同的访问入口;蓝牙主机控制器接口HCI (Host Controller Interface)由基带控制器、连接管理器、控制和事件寄存器等组成。它是蓝牙协议中软硬件之间的接口,它提供了一个调用下层BB、LM、状态和控制寄存器等硬件的统一命令,上、下两个模块接口之间的消息和数据的传递必须通过HCI的解释才能进行。HCI层以上的协议软件实体运行在主机上,而HCI以下的功能由蓝牙设备来完成,二者之间通过传输层进行交互。 2、中间协议层 中间协议层由逻辑链路控制与适配协议L2CAP (Logical Link Control and Adaptation Protocol)、服务发现协议SDP (Service Discovery Protocol)、串口仿真协议或称线缆替换协议RFCOM和二进制电话控制协议TCS (Telephony Control protocol Spectocol)组成。L2CAP是蓝牙协议栈的核心组成部分,也是其它协议实现的基础。它位于基带之上,向上层提供面向连接的和无连接的数据服务。它主要完成数据的拆装、服务质量控制,协议的复用、分组的分割和重组(Segmentation And Reassembly)及组提取等功能。L2CAP允许高达64KB的数据分组。SDP是一个基于客户/服务器结构的协议。它工作在L2CAP层之上,为上层应用程序提供一种机制来发现可用的服务及其属性,而服务的属性包括服务的类型及该服务所需的机制或协议信息。RFCOMM是一个仿真有线链路的无线数据仿真协议,符合ETSI标准的TS 07.10串口仿真协议。它在蓝牙基带上仿真RS-232的控制和数据信号,为原先使用串行连接的上层业务提供传送能力。TCS是一个基于ITU-T Q.931建议的采用面向比特的协议,它定义了用于蓝牙设备之间建立语音和数据呼叫的控制信令(Call Control Signalling),并负责处理蓝牙设备组的移动管理过程。 3、高端应用层 高端应用层位于蓝牙协议栈的最上部分。一个完整的蓝牙协议栈按其功能又可划分为四层:核心协议层(BB、LMP、LCAP、SDP)、线缆替换协议层(RFCOMM)、电话控制协议层(TCS-BIN)、选用协议层(PPP、TCP、TP、UDP、OBEX、IrMC、WAP、WAE)。而高端应用层就是由选用协议层组成。选用协议层中的PPP (Point-to-Point Protocol)是点到点协议,它由封装、链路控制协议、网络控制协议组成,它定义了串行点到点链路应当如何传输因特网协议数据,它主要用于LAN接入、拨号网络及传真等应用规范;TCP/IP(传输控制协议/网络层协议)、UDP(User Datagram Protocol 对象交换协议)是三种已有的协议,它定义了因特网与网络相关的通信及其他类型计算机设备和外围设备之间的通信。蓝牙采用或共享这些已有的协议去实现与连接因特网的设备的通信,这样,既可提高效率,又可在一定程度上保证蓝牙技术和其它通信技术的互操作性;OBEX(Object Exchange Protocol)是对象交换协议,它支持设备间的数据交换,采用客户/服务器模式提供与HTTP(超文本传输协议)相同的基本功能。该协议作为一个开放性标准还定义了可用于交换的电子商务卡、个人日程表、消息、和便条等格式;WAP(Wireless Application Protocol)是无线应用协议,它的目的是要在数字蜂窝电话和其它小型无线设备上实现因特网业务。它支持移动电话浏览网页、收取电子邮件和其它基于因特网的协议。WAE(Wireless Application Environment) 是无线应用环境,它提供用于WAP电话和个人数字助理PDA(Personal Digtital Assistant) 所需的各种应用软件。
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮