BT-8の蓝牙技术原理のBT协议の蓝牙音频视频分发传输协议(AVDTP)

蓝牙音频视频分发传输协议-AVDTP

蓝牙音频视频分发传输协议(AVDTP): 定义了蓝牙设备间A/V数据流的协商,建立,和传输过程以及相互交换信令消息形式。

AVDTP概述

音视频的应用协议和应用框架总览为:
在这里插入图片描述
AVDTP实现实体通过L2CAP分组进行:

  • A/V数据流的传输
  • A/V信令的交换

如下图所示:
在这里插入图片描述

这两者的关系:A/V信令 提供 A/V数据流 的发现,配置,建立和传输控制功能。

基本的概念和术语:

  • Stream:两个点对点设备之间的流媒体数据

  • Source (SRC) and Sink (SNK):依赖与应用层的两种角色,音频源和接收方。这两种角色都是在A2DP定义的。

  • Initiator (INT) and Acceptor (ACP):启动过程的设备作为启动者、接受启动的设备为接收者。要注意的是INT和ACP独立于上层应用定义的SRC和SNK,并且不能对应底层L2CAP中的角色

  • Application and Transport Service Capabilities:应用服务和传输服务的功能。应用服务功能比如协商、配置音源设备的codec,内容保护系统等;传输服务能力比如数据报文的分割和重组,数据包的防丢检测等等。

  • Services, Service Categories, and Service Parameters:服务、服务类别、服务参数

  • Media Packets, Recovery Packets, and Reporting Packets:流媒体包,数据恢复包,报告报文

  • Stream Context (SC):流文本。流文本保存了流设置过程中达成一致的配置内容,包括选择的服务,参数,以及传输通道分配。流的两端都存在流文本,他可以理解为用来收集和保存信息的表格。

  • Stream Handle (SH):流句柄。在SRC和SNK建立了连接之后分配的一个独立的标识符,用于对流和流文本的引用。

  • Stream End Point (SEP):流端点,流端点是为了协商一个流而公开可用传输服务和A/V功能的应用程序。换句话说,应用程序通过这个接口提供Transport Services and A/V capabilities来建立Stream。【类似网络编程中的端口号?】

  • Stream End Point Identifier (SEID):流端点标识,对特定设备的跨设备引用,该引用用于信令事物

  • Stream End Point State:流端点状态

  • Transport Session:传输会话。在A/V传输层的内部,在配对的AVDTP实体之间,流可以分解为一个、两个或多个
    三个传输会话。

  • Transport Session Identifier (TSID):传输会话标识。代表对一个传输会话的引用。

  • Transport Channel:传输通道。传输通道指的是对A/V传输层下层承载程序的抽象,始终对应L2CAP的通道。通常和一个L2CAP Channel对应。不用AVDTP Multiplexing Mode时,一条Transport Channel只传输一个transport session;用transport session的情况下,一条Transport Channel可以传输多个transport session (media,report或者recovery)。

  • Transport Channel Identifier (TCID):传输通道标识。代表对一个传输通道的引用。

  • Reserved for Future Additions(RFA):保留给将来添加

  • Reserved for Future Definitions (RFD):保留给将来定义

  • Forbidden (F):禁用

下图显示了AVDTP,蓝牙协议栈 和 A/V分发应用高层间的相应关系。
在这里插入图片描述
AVDTP内部结构图:

在这里插入图片描述
AVDTP组成为:流管理器,校正,适配层和信令四个部分。其中,

  • 流管理器:提供数据流的传输,数据帧的生成,时间标记的管理,媒介分组序列编号,分组丢失报告和计算抖动等功能;
  • 校正:分为 NO EFC 和 Equal FEC两种;
  • 适配层:提供加强的头压缩多路复用功能

关于 流端点(SEP)有两方面内容:流端点配置过程 和 流端点状态机。
(1)下图流端点配置过程示例分为三个步骤:
① 设备A 发现 设备B 的资源(包括SEID和媒介类型);
②收集SEP z 的应用和传输服务能力;
③在了解到所有的能力并与自身的能力比较之后,设备A 可以对流 进行配置。

以上三个过程分别由应用层选择在不同的服务来实现。
在这里插入图片描述

(2)流端点状态机
在这里插入图片描述

传输服务及传输过程

在这里插入图片描述
(1)基本服务
高层应用将AVDTP配置为基本服务时,仅有信令和流管理器部分工作。基本服务保证了每个会话的媒介分组在单独的信道上传输。

在AVDTP与L2CAP间存在两个接口,分别用于信令分组 和 媒介分组。
在这里插入图片描述

(2)校正服务
在基本服务和其他己经配置的基础上,校正实体也被激活。在信源(SRC)端校正服务使用同一个传输会话的媒介分组来产生额外的校正分组。在信宿(SNK)端这些校正分组可以用来重建那些在空中传输路径中丢失的媒介分组。为了有效的抗干扰,所有的校正分组通过单独的传输信道进行传输。

(1)范围
校正服务可以根据媒介分组类型 和 内容来决定保护手段,如可以根据音频分组和视频分组各自的错误恢复能力来决定保护其中的哪种,或者只保护流中易破坏的部分。

(2)校正服务概述

校正服务在专门的传输会话上独立于其他AVDTP 服务操作,处理媒介分组保护的应用请求包括下列途径:

  • 在信源端,该服务对于经过特定接口的应用命令处于激活状态。校正分组从要保护的媒介分组中产生,产生的校正分组自动进入相关的传输信道而不需要高层应用的介入。

  • 在信宿端,当发现受保护的传输会话上丢失了媒介分组时,流管理实体直接启动校正服务,校正服务尝试使用一个或者几个并发的校正分组存储丢失的分组。如果原始的媒介分组被成功地重构,则校正服务呼叫流管理器功能,将恢复的媒介分组插入到流的输出接口;如果校正失败,则通过信令通知高层应用。

在这里插入图片描述

(3)报告服务
在基本服务和其他己经配置的基础上,报告接口也被激活。报告服务向本地应用和远端设备提供有关媒介流的时间校准和分组丢失的统计信息,从而帮助实现媒介流同步和调调整纠错机制。

在报告服务中,一个单独的应用(如视频)可以打开不同的媒介传输会话,对于每个媒介传输会话,都有一个相关的报告会话。因此,每个流会话 包括两条传输信道:一条用于媒介分组,另一条用于报告分组。
在这里插入图片描述
在AVDTP中,仅仅使用接收方报告分组(RR),信源描述分组(SDES) 和 发送方报告分组(SR)。他们的分组形式后续附录给出。

在这里插入图片描述

(4)适配服务

  • 多路复用
    在多路复用的模式下,多个传输会话可以共享同一条传输(L2CAP)信道,并且一个L2CAP分组能够包含属于用一个或不同的传输会话的多个分组,因此对于每个媒介/报告/校正分组都需要一个封装头,这个头中包含TSID,用于分组的正确路由。

多路复用服务,它通过L2CAP 层中的分段实现,可以提高L2CAP 分组的使用效率。

下面给出适配层PDU分组格式:

在这里插入图片描述

在这里插入图片描述

  • 加强的头压缩
    这一服务用于减少媒介分组和校正分组的头的开销。加强的头压缩机制允许使用反馈信道。

具体先略;

信令过程 及 信令消息

一,概述:
(1)AVDTP信令遵循L2CAP中定义的事务模型。下列给出了信令命令:
在这里插入图片描述

(2)下图为流 的信令管理流程,虚线表示过程,实现包含过程。

建立流端点连接的过程包括四步:
①首先使用AVDTP Discover命令发现ACP 中的流端点;
②然后从中选择将要建立连接的流端点;
③再使用AVDTP_Get Capabilities 命令收集目标SEID 的服务能力;
④最后使用AVDTP_Set_Configuration 命令对流端点进行配置。
在这里插入图片描述
(3)信令消息的分组格式:
在这里插入图片描述
在这里插入图片描述

二,信令命令 和 响应头

在这里插入图片描述

①事务标签:是每个正在处理的INT事务的标识。在ACP端,信令命令 和 相应的响应中的事务标签应保持一致。
②分组类型:指出信令消息是由单一分组还是由多个分组组成,在多分组情况下,将指出是起始分组,中继分组还是结束分组。
③消息类型:在 命令分组 和 响应分组 中各有定义:
在这里插入图片描述
④待定类型:该字段为,接收方将忽略还字段。
⑤信令标识符:信令响应消息中的信令标识符 与 信令命令消息中的信令标识符保持一致。
⑥分组尺寸要求:分端消息的接受方可以根据起始分组的长度和起始分组中的NOSP信息来为消息的重组分配资源。
⑦接收端完整性校验:接收方将丢弃收到破坏的消息,并且不通知本地高层。

三、信令消息格式

各种各样呀,简单罗列一下都有哪些格式类型:

流端点发现
获得能力信息
流配置
获取配置信息
流建立
流启动
流释放
流暂停
重新配置流
安全控制
中断
通用拒绝

四,信息元素

错误码服务能力

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值