藍牙4.0 vs 藍牙4.1 vs 藍牙4.2 vs 藍牙5.0

藍牙4.1 vs 藍牙4,0    

 

1.提升數據傳輸率

相比藍牙4.0,藍牙4.1單包數據傳輸最大值從20字節上調到23字節,提升了15%的數據傳輸率。根據該規則,大家可以嘗試修改單包數據payload的值,如果該芯片只支持BT4.0,那麼修改傳輸23字節要麼會編譯報錯,要麼傳輸過程中會丟包。

 

2.主從共存

鏈路層Link layer拓撲結構做了更新,允許單設備主從同時共存(時間片輪轉方式),以及一主對多從設備的連接拓撲。

 

3.支持32-Bit UUID

32-Bit UUID指的是廣播包攜帶的UUID,並不是指我們所說的針對屬性列表的16 bit and 128 bit UUID。可以通過廣播的32-Bit UUID映射得到完整的128 Bit UUID從而使得廣播包內有效廣播數據長度更多。

 

藍牙4.2 vs 藍牙4.1

 

1.LE連接安全

從Spec定義上藍牙4.0和4.1的配對加密環節都是基於AES-CCM加密,但是由於藍牙4.1雙方共享同一密鑰,所以存在被破解風險和漏洞。藍牙4.2的pairing環節,採用Diffie-Hellman Key Exchange密鑰交換算法進行加密,每一個設備有一對密鑰對,公鑰和私鑰,私鑰自己保存,公鑰公開給對方,數據交互時,一方通過自己的私鑰和對方的公鑰進行加密文件,接收方通過自己私鑰和傳輸方的公鑰進行解密,從而有效的防止中間人破解密鑰的事件發生。

詳細可以參考我寫的另外一篇文章《面對支付: 藍牙4.2/藍牙5數據傳輸的安全性保障》。

 

2.隱私保護

藍牙在廣播過程中會攜帶自己的BD address (bluetooth device address)即爲藍牙唯一的MAC地址,在某些應用,比如物流追蹤應用當中是非常有幫助的,可以根據BD address固定物流設備。

但是在某些應用不希望自己的BD address暴露在主端設備的監控下,藍牙4.2給出了靈活的選擇,藍牙4.2規定,從機設備可以選擇在廣播模式下發送隨機BD address,這樣主端設備除了接該到設備之後才能獲取其真實BD address,除此該設備廣播模式的BD address爲隨機序列。

 

3.大數據傳輸

藍牙4.1最大支持23字節單包數據傳輸,藍牙4.2最大支持255字節單包數據傳輸,極大提升了數據傳輸率。詳細可以參考我寫的另外一篇文章《提升藍牙4.2數據傳輸率的辦法 - ATT_MTU》。

 

藍牙5.0 vs 藍牙4.2

 

藍牙5的所有新特性我已經都有詳細做介紹了,大家可以參考我之前寫的文章。下面我就不一一細說。

 

1.遠距離

得益於前向錯誤編碼和模式映射,使得藍牙數據在傳輸過程中,RX端對整個payload數據包解碼糾錯能力有不同提升(簡單說即爲提高RX端接收靈敏度),藍牙5的傳輸距離纔有顯著的提升

 

2.長廣播包

藍牙4.x協議規定藍牙廣播數據包每包數據最大隻支持31字節數據傳輸,廣播信道限制在37,38,39三個信道。在原有的用於傳輸廣播數據的PDU(ADV_IND、ADV_DIRECT_IND、ADV_NONCONN_IND以及ADV_SCAN_IND,稱作legacy PDUs)的基礎上,藍牙5增加了擴展的PDU(ADV_EXT_IND、AUX_ADV_IND、AUX_SYNC_IND以及AUX_CHAIN_IND,稱作extended advertising PDUs),同時也允許藍牙在除開37,38,39三個通道之外的其他37個信道上發送長度介於0-255字節的數據

 

3.大數據傳輸

與藍牙4.2相比,藍牙5支持兩種PHY,1M PHY和2MPHY,2M PHY的數據傳輸率是藍牙5.0新增功能,在藍牙4.2之前,只支持1Mbps PHY的速率。和藍牙4.2一樣,藍牙5也支持單包255字節的數據傳輸,所以藍牙的速率比起4.2提升了一倍。

 

 

小結:

目前市場上依然有大量藍牙4.0/3.0/2.1/2.1+EDR產品存在,從自拍器,遙控器到各種智能設備,因其功能夠用,價格低廉,受到快消類產品客戶的親暱,而工業類,汽車類應用,BT4.0的產品依然當道,究其原因,穩定,夠用,供貨好,當然價格不貴。但如果說藍牙5之前藍牙解決的是單點連接的可穿戴式設備與手機互聯的問題,那麼藍牙5就是解決多點互聯IoT物聯網的問題。

擁抱未來,Bluetooth 5,你好。