藍牙連接過程【轉】

想要了解藍牙的連接過程,必須先了解3個概念:

1,鏈路Link:物理鏈路,是基帶協議中的概念,包括ACL鏈路和SCO鏈路兩種,前者主要用於傳遞數據,後者傳遞語音。一對藍牙設備,只存在一條ACL鏈路,允許存在3SCO鏈路

2,信道channel: 這是L2DAP協議中的概念,是邏輯信道,信道的端點用信道標示符CID表示,用兩個字節表示,所以最多存在65536個信道.即一條ACL鏈路可以存在最多65536個信道.信道包括信令信道和數據信道,通過信令信道建立數據信道,然後由數據信道傳輸數據.信令信道的CID0x0001

3,連接connection:應用剖面上的概念,有了該剖面的connection,才能進行該剖面的服務和應用。

其中link establishment部分由LMP實現,channel establishment部分由L2CAP實現,connection establishment就是由具體的應用剖面(profile)來實現了。

我們以生活中常用的手機與藍牙耳機之間的連接來詳細分析藍牙的連接過程:

首先,主設備(master,即發起連接的設備,這裏指手機)會尋呼(page)從設備(slave,接收連接的設備,這裏指藍牙耳機),master會已跳頻的方式去尋呼slave,slave會固定間隔地去掃描(scan)外部尋呼,即page scan,當scan 到外部page時便會響應responsepage,這樣兩個設備之間便會建立link的連接,即ACL鏈路的連接。當ACL 鏈路連接建立後,主設備會發起channel的連接請求,即L2CAP的連接,建立L2CAP的連接之後,主設備採用SDP去查詢從設備的免提服務,從中得到rfcomm的通道號,然後主設備會發起rfcomm的連接請求建立rfcomm的連接。然後就建立了應用的連接。

link establish->channel establish->rfcomm establish->connection

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