轉載_藍芽的SDP協議總結
阿新 • • 發佈:2019-01-22
2.ServiceRecord 每一個Service利用ServiceRecord來表示(具有唯一的32bit的Handle),每一個ServiceRecord由若干ServiceAttribute組成,由下圖表示:
每一個ServiceAttribute的結構由下圖所示: Attribute ID是由Assigned Value定義好的,例如Record Handle Attribute的ID為0x0000。 正因為SDP Record由許多Attribute組成,所以,可以把Record看成AtributeList,這在後面的SDP resposne中會常用到。 裝置通過SDP request來訪問這些record的相關資訊。這裡有個很好的SDP例項,如下:
Size的定義如下圖:
幾個Data Element的例子:
4.Service Class 每一個Service都是ServiceClass的一個例項,一個Service Record就是一個Service Class的例項,Service Class可以表示一個Record裡的所有Attribute。每一個Service Class有一個ID,包含在ServiceClassIDList這個Attribute的value裡,稱之為UUID。 5.UUID
6.SDP的資料單元格式(SDU) 傳輸時都是以Big-Endian的形式,資料格式如下:
PUD ID有如下幾種定義:
Transaction ID和Length定義如下:
7.SDP中的PDU (1)Error PDU
(2)SDP_ServiceSearchRequest PDU