1、背景
接觸了,就必須留下點痕跡。
1.1 參考資料
bluetooth att介紹
ble v4.2
2、啥是att
att protocol,是用於發現、讀、寫peer對端裝置的協議(針對ble裝置)。
att允許裝置作為服務端提供擁有關聯值的屬性集,讓作為客戶端的裝置來發現、讀、寫這些屬性;同時服務端能主動通知客戶端.即屬性值可被客戶端來發現、讀、寫,或由服務端主動通知客戶端這些屬性集。
2.1 att中的角色
屬性協議中包括服務端(server)和客戶端(client)兩個角色。
2.2 乙個attribute所擁有的properties特性
attribute是擁有以下三個特性的分立值
-attribute handle :用來訪問attribute value /控制代碼
-attribute type :由uuid(universally unique identifier)來定義
-a set of permissions :控制是否該attribute可讀、可寫、屬性值能否通過加密鏈路傳送
客戶端可以向伺服器端傳送屬性協議(att protocol)請求,伺服器應響應它收到的所有請求。裝置可以同時實現客戶端和伺服器角色,並且這兩個角色可以在同一裝置和相同裝置之間。
對於每個藍芽裝置只有乙個伺服器server例項。這就意味著對於所支援的裝置來首屬性控制代碼都是相同的。對於給定的客戶端,服務端都有一組屬性。 服務端可支援多個客戶端。
3、具體內容
3.1 基本概念
3.1.1 attribute type 屬性型別
用uuid來標識每個attribute type。uuid在所有空間和時間上都是唯一的。uuid是乙個128bits值,在使用過程中,為了提高效率,使用的是16bits attribute uuid.
16bitsuuid和128bitsuuid之間的關係
128-bit uuid = 16-bit attribute uuid*2^96 + bluetooth_base_uuid
bluetooth_base_uuid = 00000000-0000-1000-8000-00805f9b34fb
====>0000***x-0000-1000-8000-00805f9b34fb(***x代表十六進製制的16-bit uuid)。
3.1.2 attribute handle 屬性控制代碼
attribute handle是由server分配的乙個唯一且非零16bit值
0x0000 :保留
0xffff :最大attribute handle
3.1.3 attribute value 屬性值
attribute value是乙個8位陣列,可以使固定長度的,也可以使可變長度的。因此,它可以使乙個1位元組位的值,或者是乙個4位元組位的整數,或者乙個變長度位元組的字串。屬性值陣列太大而無法再單個pdu中傳輸,可使用多個pud傳送。
3.1.4 attribute permissions 屬性許可權
屬性都有一組與之相關聯的permission values。屬性許可權由高層協議定義,並對att不可見。
attribute permissions由下列三個許可權組合而成
1、access permission :訪問許可權
-readbale/writeable/readbale and writeable
2、authentication permisssions :認證許可
authentication required / no authentication required
3、authorization permisssons :授權許可
authorization required / no authorization required
3.1.5 control-point attribute
IOS 屬性 協議 Block用法
1.傳值頁面宣告block屬性 在想要回傳的介面中定義,block必須用copy來修飾 注 secondviewcontroller.h中宣告 property nonatomic,copy nsarray block nsstring string 有返回值的後面必須兩個括號 property n...
第4章 協議屬性
一 osi參考模型 應用層表示層 會話層傳輸層 網路層資料鏈路層 物理層二 全域性協議分類 1 面向連線的協議 windows size 在需要目標系統確認的傳輸的資料報數。佇列資料傳送 對進入和傳送的pdu指定序號,在目的地再按序號重排資料 流控 確保傳送的速率不超過目標接收的速率,通過為傳輸建立...
距離向量路由選擇協議屬性(2)
距離向量 distance vector 說法是因為路由 是以向量 距離 方向 的方式通告出去的,其中距離是根據度量定義的,方向是根據下一跳路由器定義的。因此,滿足距離向量路由選擇協議的條件要有兩條,缺一不可 1.給出去往目的地的方向 2.給出去往目的地的距離 距離向量路由選擇協議主要屬性還有 5....