蓝牙SDP剖析(一) 之协议概论

关键字:bluetooth 蓝牙协议  SDP剖析 SDP概述 SDP笔记


作者:zhongjun


本着互相学习的目的,来分享此一系列的文章,欢迎转载,请注明作者,尊重版权,谢谢
文章有不当处请指正,共同学习


另外可以从蓝牙栏目访问我的CSDN:http://blog.csdn.net/XiaoXiaoPengBo/article/category/5998687
------------------------------------------------------------------------------------------------------------------------------------

华丽分割线,进入正题

------------------------------------------------------------------------------------------------------------------------------------


一.概述

The service discovery protocol (SDP) provides a means for applications to 
discover which services are available andto determine the characteristics of 
those available services.
基于C/S结构,service通过属性记录来维护支持的特性
属性记录如图所示:


二.Data Format



PDU ID

具体每个PDU介绍请看下一篇文章:http://blog.csdn.net/xiaoxiaopengbo/article/details/51405733

三.数据元

数据元 一个数据元表示一个打印数据。它由两个段组成:报文头段和数据段。
报文头段又由两部分组成:一个类型描述符和一个尺寸描述符。该数据是一
个字节序列,其长度在尺寸描述符中定义(参见数据尺寸描述符),其含义
由类型描述符(部分)定义
某一些PDU ID的参数是数据元

1.数据元素类型描述符 

数据元类型由5位长的类型描述符代表。数据元头包含在数据元报文头
首字节的最高5位中。下列类型已被定义。


2.数据元尺寸描述符 

数据元尺寸描述符由一个后面紧跟0 、8 、16 、或 32 位的3位尺寸
索引字表示。该尺寸索引字包含于数据元头首字节的最低位中。该尺寸索
引编码如下


举例:


四.Continuation State

它用于一次response不够把所有的Data传回去的情况。这时候需要将response分多次传输,如果一次response足够了,
Continuation State为1个字节=0。
如果要分多次response,需要重新request,采用新的transaction ID和上一次resposne的Continuation State,用以下流程说明。
情况一:不需要Continuation State
A--->B 发送SDP request,transaction ID为C
B--->A 发送SDP respose,transaction ID为C。假设一次resposne可以返回所有数据,则Continuation State为1个字节=0。
情况二:需要Continuation State
A--->B 发送SDP request,transaction ID为C
B--->A 发送SDP respose,transaction ID为C。假设一次resposne不够返回所有数据,这时response携带Continuation State M
A--->B 发送SDP request,transaction ID为D(必须与C不同),携带Continuation State M
B--->A 发送SDP respose,transaction ID为D。假设这次resposne还不够返回所有数据,这时response携带Continuation State N
A--->B 发送SDP request,transaction ID为E,携带Continuation State N
B--->A 发送SDP respose,transaction ID为E。假设一次resposne返回的是最后的一部分数据,则Continuation State为1个字节=0。
整个request-response的流程结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wireless_Link

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值