在建立連接之前,BLE設備之間可以通過廣播和掃描的方式進行通信,一旦建立連接,雙方可以通過client/server模式通信(建立了鏈路層連接),因此對於BLE網絡,有兩種通信的方式:
1. 基於廣播方式通信:
- 是一種無連接的方式
- 是單向的,可以向任何人或者接收器發送數據。
- 參與的角色是Broadcasting and Observing
- 廣播方式的通信就是通過廣播以及掃描響應的方式來通信,
- 是一種無連接的方式,可以將數據發送到任何掃描設備或接收器
- 使用廣播方式通信沒有任何安全措施,任何監聽設備都能收到,因此它可能不適合于敏感數據。除非在廣播數據中採用某種加密方法
- 廣播包和掃描響應數據包最大包括31個字節的有效載荷,(BLE 5.0增加了廣播能力),因此使用廣播通信,最多的數據只能是62個字節(advertisment以及scanresponse),所傳遞的信息會受到該大小的限制,
- 但另外一方面,如果雙方只想傳遞少量的數據或者將信息傳遞給周圍的多個設備,使用廣播則是一個方便的選擇。比如蘋果的iBeacon,Google的Eddystone beacon,基於BLE廣播的定位等等
2. 基於連接方式通信
本質上,連接只不過是兩個設備之間可以交換數據的方式和數據的表現形式不一樣而已,有了連接,使得數據傳輸的內容更加豐富,比如加密數據。
-
設備雙方建立一個永久的連接,在兩個設備之間週期性的交換數據,數據內容多樣
-
參與者是Master和slaver
-
建立連接後,兩個設備之間就可以週期性(connection events)的通信,兩個設備的數據的發送和接收均是獨立的,他們的角色不會對數據吞吐量或優先級有限制,從數據通信角度來看上,二者是獨立的。
-
一個設備可能同時是central和Peripheral角色
-
一個central可以連接多個Peripheral 基於連接可以擴展更豐富的網絡拓撲結構。
-
一個Peripheral可以連接多個central
-