藍牙技術標準包括協議(Protocol)和應用模型規范(Profile)兩個部分。協議定義了各功能元素(如串口仿真協議、邏輯鏈路控制盒適配協議等)的工作方式,而應用模型規范闡述了為實現一個特定的應用模型,各層協議之間的運轉協同機制。顯然,Protocol是一種橫向體系結構,而Profile是一種縱向體系結構。較典型的Profile有撥號網絡應用模型規范、局域網訪問規范、文件傳輸規范、對象交換規范、耳機規范(Headser)等,它們分別對應一種應用模型。
藍牙體系結構的協議
藍牙協議體系結構可分為底層硬件模塊、中間協議層(軟件模塊)和高層應用三大部分。圖中的射頻層(Radio)、鏈路管理層(LM)和基帶層(BB)屬于藍牙的硬件模塊。
Radio層通過2.4GHz無需授權的ISM頻段的微波,實現數據位流的過濾和傳輸,它主要定義了藍牙收發器在此頻帶正常工作所應滿足的要求。
BB層負責跳頻和藍牙數據及信息幀的傳輸。它確保微微網內藍牙設備單元之間由射頻構成的物理連接。
LM層負責連接的建立和拆除以及鏈路的安全和控制,還通過協商確定基帶數據分組大小;它控制無線設備的電源模式和工作周期,以及微微網內設備單元的連接狀態。它為上層軟件模塊提供了不同的訪問入口,但是兩個模塊接口之間的消息和數據傳遞必須通過藍牙主機控制器接口(HCI)的解釋才能進行。
HCI是藍牙協議中軟硬件之間的接口,它提供了一個調用下層BB、LM、狀態和控制寄存器等硬件的統一命令接口。藍牙設備設有多個物理總線接口,可用以連接藍牙硬件。這些總線可能采用不同的結構及參數,而藍牙主控制器在初期階段會支持通過串行總線(USB)、個人電腦插卡、RS-232及通用異步收發器(UART)等的物理總線結構。HCI協議以上的協議軟件實體運行在主機上,而HCI以下的功能由藍牙設備來完成,二者之間通過傳輸層進行交互。
中間協議層包括邏輯鏈路控制與適配協議(L2CAP)、業務發現協議(SDP)、串口仿真協議(RFCOMM)和電話控制協議(TCS)
L2CAP完成數據拆裝、服務質量控制和協議復用等功能,L2CAP向RFCOMM和SDP等層提供面向連接的和無連接的數據業務,是其他上層協議實現的基礎。它允許上層應用協議發送和接收長至64K字節的分組。它的功能包括:協議復用、數據的分段和重組、組提取技術,以及服務質量信息的傳送。基帶數據業務可以越過LMP而直接通過L2CAP向高層協議傳送數據,從某種意義上說,L2CAP和LMP都相當于OSI第二層即鏈路層的協議,因此也是藍牙協議棧的核心部分。
SDP為上層應用程序提供一種機制來發現網絡中可用的服務及其特性,服務發現協議在藍牙技術中的作用很大,它是所有應用模型的基礎。SDP上層可以有FTP、LAN接入、無繩電話、同步模式等應用模型。通過確定不同的信息類型和業務類型,SDP可以在設備單元之間建立不同的SDP層連接。
RFCOMM是基于ETSI TS07.10規范的串行仿真協議,在L2CAP上仿真9針RS232串口的功能。通過RFCOMM,藍牙可以在無線環境喜愛實現對高層協議,如PPP、TCP/IP、WAP等協議的支持。另外,RFCOMM可以支持AT命令集,從而可以實現移動電話和傳真機及調制解調器之間的無線連接。
TCS是面向比特的協議,它定義了藍牙設模型的備之間建立話音和數據的呼叫的控制信令,定義了處理藍牙TCS設備群的移動管理進程。
在藍牙協議棧的最上部是高層應用,它對應于各種應用模型的profile,是profile的一部分。針對不同的profile,選用的協議棧可以不同,絕大部分藍牙設備都需要核心協議(中間層和底層硬件部分),而其它協議則根據應用的需要而定。可選擇的協議包括PPP、UDP/TCP/IP、OBEX、vCard/vCael、lrMC、WAP等。
藍牙應用模型規范
藍牙SIG針對不同的應用模型,定義了許多標準的應用模型規范(Profile)
1、一般訪問模型(Generic Access Profile—GAP)
此部分定義了用于與發現新的藍牙設備(Idle模式過程)和與連接藍牙設備的鏈路管理方面(連接模式過程)有關的通用的過程。同時還定義了在不同安全級別的過程。另外,還包括了再用于用戶界面級參數的通用格式。
2、業務發現應用模型(Service DiscoveryProfile—SDP)
此部分定義了一個藍牙設備如何發現其它藍牙設備所注冊的服務并且得到任何與這些服務相關的信息特性和過程。
3、串口對應模型(Serial Port Profile—SPP)
此部分定義了在兩個對等藍牙設備之間使用RFCOMM如何建立模擬串行電纜連接的要求。這些要求以提供給應用的服務的形式,并通過定義不同單元之間的互操作性的特性和過程來提出。
4、無繩電話應用模型(Cordless TelephonyProfile)
此部分定義了“三合一電話”應用中不同單元之間的互操作性的特性和過程。手持電話有以下三種使用方式:接入公用電話網,作為普通電話使用;作為不計費的內部電話使用;作為蜂窩移動電話使用。無線電話和內部電話使用相同的協議棧,語音數據直接與基帶協議連接,不經過L2CAP層。
5、對講應用模型(Intercom Profile)
此部分定義了藍牙設備用于支持“三合一電話”應用中Intercom功能的要求。這些要求以終極用戶服務的形式,并通過定義在“三合一電話”應用中不同單元之間的互操作性的特性和過程來提出。
6、頭戴設備應用模型(Headset Profile)
此部分定義了藍牙設備用于支持“耳機”應用的要求。這些要求以終極用戶服務的形式,并通過定義在“耳機”應用中不同單元之間的互操作性的特性和過程來提出。使用該模式,用戶打電話時可以自由移動。頭戴式設備必須能收發并處理AT命令。
7、撥號網絡應用模型(Dial-up NetworkingProfile)
此部分定義了藍牙設備用于支持“撥號網絡”應用的要求。這些要求以終極用戶服務的形式,并通過定義在“撥號網絡”應用中不同單元之間的互操作性的特性和過程來提出。
8、傳真應用模型(Fax Profile)
此部分定義了藍牙設備用于支持“傳真”應用的要求。這些要求以終極用戶服務的形式,并通過定義在“傳真”應用中不同單元之間的互操作性的特性和過程來提出。
9、局域網接入應用模型(LAN Access Profile—LAP)
此部分是一個用于藍牙設備訪問局域網的應用模型規范。首先,它定義了如何使設備能夠使用PPP方式訪問一個LAN的各種服務。然后,它展示了如何使用同樣的PPP機制來構建一個由兩個藍牙設備組成的網絡。
10、通過對象交換應用模型(Generic ObjectExchange Profile—GOEP)
此部分定義了藍牙設備用于支持“對象交換使用模式”的要求。這些要求通過定義在“對象交換使用模式”中不同單元之間的互操作性的特性和過程來提出。
11、對象發送應用模型(Object Push Profile—OPP)
此部分定義了藍牙設備用于支持“對象‘發送’使用模式”中不同單元之間的互操作性的特性和過程來提出。
12、文件傳輸應用模型(File TransferProfile—FTP)
此部分定義了藍牙設備用于支持“文件傳輸應用模型”的要求。這些要求以終極用戶服務的形式,并通過定義在應用模型中不同單元之間的互操作性的特性和過程來提出。改模型提供兩個終端之間的數據通信功能,可傳輸各種類型的文件,以及完整的文件目錄或多媒體數據流等并提供遠程文件夾瀏覽功能。
13、同步應用模型(Synchronization Profile)
此部分定義了藍牙設備用于支持“同步應用模型”的要求。這些要求以終極用戶服務的形式,并通過定義在應用模型中不同單元之間的互操作性的特性和過程來提出。同步應用模型提供設備到設備的個人資料管理的同步更新功能,其典型應用如電話薄、日歷、通知和記錄等,它要求微機、蜂窩電話和PDA在傳輸和處理名片、日歷及任務通知時,使用通用的協議和格式。
從原則上來說,為了各個廠商之間的產品能夠互聯,所有的藍牙設備都必須基于特定的Profile。而在各個Profile之間,也存在著緊密的相互依賴關系。例如,局域網接入應用模型和撥號網絡應用模型都基于GAP和SPP,它們之間是繼承的關系,所有的應用模型都必須遵循GAP中的規定。