Bluetooth協議棧

在藍牙系統中,爲了支持不同應用,需要使用多個協議,這些協議按層次組合在一起,構成了藍牙協議棧.藍牙協議棧是藍牙技術的核心組成部分,它能使設備之間互相定位並建立連接,通過這個連接,設備間能通過各種各樣的應用程序進行交互和數據交換.

從層次上區分藍牙協議可分爲底層協議、中間層協議及應用層協議三類

藍牙底層協議包括:射頻規範(RadioSpec)、基帶規範(BaseBand)、鏈路管理協議(LMP)、邏輯鏈路控制與適配協議規範(L2CAP)、HCI 協議等,

中間層的協議包括:業務搜索協議(SDP)、串口仿真協議(RFCOMM)、電話控制協議規範(TelCtrl)、與紅外通信協議的互操作性(IrDAOper)、對象交換協議(Object Exchange,OBEX)等,底層協議與中間層協議共同組成藍牙核心層協議

藍牙應用層協議也叫藍牙應用規範PROFILE,都建立在覈心協議的基礎上。
藍牙應用規範很多,其中較典型的有服務發現SDA(Service Discovery Application),互通(Intercom),無繩電話(Cordless Telephony),傳真(FAX),撥號網絡(Dial-up Networking),耳機(Headset),局域網訪問(LAN Access),文件傳輸(File Transfer),同步(Synchronization),Object Push等。
各種Profile從協議棧中選取不同的協議組合來完成特定的功能。

1. 藍牙協議棧的體系結構


2、藍牙底層協議

(1)射頻協議(Radio Frequency Protocol)

藍牙射頻協議處於藍牙協議棧的最底層,主要包括頻段與信道安排、發射機特性和接收機特性等,用於規範物理層無線傳輸技術,實現空中數據的收發.藍牙工作在2.4GHz ISM頻段,此頻段在大多數國家無須申須運營許可,使得藍牙設備可工作於任何不同的地區.

信道安排上,系統採用跳頻擴頻技術,抗干擾能力強、保密性好.藍牙SIG制定了兩套跳頻方案,其一是分配79個跳頻信道,每個頻道的帶寬爲1MHz,其二是23信道的分配方案,1.2版本以後的藍牙規範目前已經不再推薦使用第二套方案.

(2)基帶協議(Base Band Protocol)

基帶層在藍牙協議棧中位於藍牙射頻層之上,同射頻層一起構成了藍牙的物理層.

基帶層的主要功能包括:鏈路控制,比如承載鏈路連接和功率控制這類鏈路級路由;管理物理鏈路,SCO鏈路和ACL鏈路;定義基帶分組格式和分組類型,其中SCO分組有HVl、HV2、HV3和DV等類型,而ACL分組有DMl、DHl、DM3、DH3、DM5、DH5、AUXl等類型;流量控制,通過STOP和GO指令來實現;採用13比例前向糾錯碼、23比例前向糾錯碼以及數據的自動重複請求ARQ(Automatic Repeat Request)方案實現糾錯功能;另外還有處理數據包、尋呼、查詢接入和查詢藍牙設備等功能.

(3)鏈路管理協議(Link Manager Protocol,LMP)

鏈路管理協議(LMP)是在藍牙協議棧中的一個數據鏈路層協議.LMP執行鏈路設置、認證、鏈路配置和其它協議:鏈路管理器發現其它遠程鏈路管理器(LM)並與它們通過鏈路管理協議(LMP)進行通信.

3、藍牙中間層協議

藍牙中間層協議完成數據幀的分解與重組、服務質量控制、組提取等功能,爲上層應用提供服務,並提供與底層協議的接口,此部分包括主機控制器接口協議、邏輯鏈路控制與適配協議、串口仿真協議、電話控制協議和服務發現協議.

(1)主機控制器接口協議(Host Controller Interface Protocol,HCI)

藍牙HCI是位於藍牙系統的邏輯鏈路控制與適配協議層和鏈路管理協議層之間的一層協議.HCI爲上層協議提供了進入鏈路管理器的統一接口和進入基帶的統一方式.在HCI的主機和HCI主機控制器之間會存在若干傳輸層,這些傳輸層是透明的,只需完成傳輸數據的任務,不必清楚數據的具體格式.藍牙的SIG規定了四種與硬件連接的物理總線方式,即四種HCI傳輸層:USB、RS232、UART和PC卡

(2)邏輯鏈路控制與適配協議(Logical Link Control and AdaptationProtocol,L2CAP)

邏輯鏈路控制與適配層協議(L2CAP)是藍牙系統中的核心協議,它是基帶的高層協議,可以認爲它與鏈路管理協議(LMP)並行工作.L2CAP爲高層提供數據服務,允許高層和應用層協議收發大小爲64 KB的L2CAP數據包.L2CAP只支持基帶面向無連接的異步傳輸(ACE),不支持面向連接的同步傳輸(sco).L2CAP採用了多路技術、分割和重組技術、組提取技術,主要提供協議複用、分段和重組、認證服務質量、組管理等功能.

(3)串口仿真協議(RFCOMM)

串口仿真協議在藍牙協議棧中位於L2CAP協議層和應用層協議層之間,基於ETSI標準TS 07.10,在L2CAP協議層之上實現了仿真9針RS232串口的功能,可實現設備間的串行通信,從而對現有使用串行線接口的應用提供了支持.

(4)電話控制協議(Telephony Control Protocol Spectocol,TCS)

電話控制協議位於藍牙協議棧的L2CAP層之上,包括電話控制規範二進制(TCS BIN)協議和一套電話控制命令(AT Commands).其中,TCS BIN定義了在藍牙設備間建立話音和數據呼叫所需的呼叫控制信令;AT Commands則是一套可在多使用模式下用於控制移動電話和調制解調器的命令,它SIG在ITU.TQ.931的基礎上開發而成.TCS層不僅支持電話功能(包括呼叫控制和分組管理),同樣可以用來建立數據呼叫,呼叫的內容在L2CAP上以標準數據包形式運載.

(5)服務發現協議(Service Discovery Protocol,SDP)

服務發現協議(SDP)是藍牙技術框架中至關重要的一層,它是所有應用模型的基礎.任何一個藍牙應用模型的實現都是利用某些服務的結果.在藍牙無線通信系統中,建立在藍牙鏈路上的任何兩個或多個設備隨時都有可能開始通信,僅僅是靜態設置是不夠的.藍牙服務發現協議就確定了這些業務位置的動態方式,可以動態地查詢到設備信息和服務類型,從而建立起一條對應所需要服務的通信信道.

4 、藍牙高層協議

藍牙高層協議包括對象交互協議、無線應用協議和音頻協議.

(1)對象交換協議(Object Exchange Protocol,OBEX)

OBEX是由紅外數據協會(IrDA)制定用於紅外數據鏈路上數據對象交換的會話層協議.藍牙SIG採納了該協議,使得原來基於紅外鏈路的OBEX應用有可能方便地移植到藍牙上或在兩者之間進行切換.OBEX是一種高效的二進制協議,採用簡單和自發的方式來交換對象.它提供的功能類似於帥協議,在假定傳輸層可靠的基礎上,採用客戶機.服務器模式.它只定義傳輸對象,而不指定特定的傳輸數據類型,可以是從文件到商業電子賀卡、從命令到數據庫等任何類型,從而具有很好的平臺獨立性.

(2)無線應用協議(Wireless Application Protocol,WAP)

無線應用協議(WAP)由無線應用協議論壇制定,是由移動電話類的設備使用的無線網絡定義的協議.WAP融合了各種廣域無線網絡技術,其目的是將互聯網內容和電話債券的業務傳送到數字蜂窩電話和其他無線終端上.選用WAP可以充分利用爲無線應用環境開發的高層應用軟件.

(3)音頻協議(Audio)

藍牙音頻(Audio)是通過在基帶上直接傳輸SCO分組實現的,目前藍牙SIG並沒有以規範的形式給出此部分.雖然嚴格意義上來講它並不是藍牙協議規範的一部分,但也可以視爲藍牙協議體系中的一個直接面嚮應用的層次.


參考:
<藍牙協議棧實現模式分析>
<藍牙core系統體系結構>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章