蓝牙连接过程【转】

想要了解蓝牙的连接过程,必须先了解3个概念:

1,链路Link:物理链路,是基带协议中的概念,包括ACL链路和SCO链路两种,前者主要用于传递数据,后者传递语音。一对蓝牙设备,只存在一条ACL链路,允许存在3SCO链路

2,信道channel: 这是L2DAP协议中的概念,是逻辑信道,信道的端点用信道标示符CID表示,用两个字节表示,所以最多存在65536个信道.即一条ACL链路可以存在最多65536个信道.信道包括信令信道和数据信道,通过信令信道建立数据信道,然后由数据信道传输数据.信令信道的CID0x0001

3,连接connection:应用剖面上的概念,有了该剖面的connection,才能进行该剖面的服务和应用。

其中link establishment部分由LMP实现,channel establishment部分由L2CAP实现,connection establishment就是由具体的应用剖面(profile)来实现了。

我们以生活中常用的手机与蓝牙耳机之间的连接来详细分析蓝牙的连接过程:

首先,主设备(master,即发起连接的设备,这里指手机)会寻呼(page)从设备(slave,接收连接的设备,这里指蓝牙耳机),master会已跳频的方式去寻呼slave,slave会固定间隔地去扫描(scan)外部寻呼,即page scan,当scan 到外部page时便会响应responsepage,这样两个设备之间便会建立link的连接,即ACL链路的连接。当ACL 链路连接建立后,主设备会发起channel的连接请求,即L2CAP的连接,建立L2CAP的连接之后,主设备采用SDP去查询从设备的免提服务,从中得到rfcomm的通道号,然后主设备会发起rfcomm的连接请求建立rfcomm的连接。然后就建立了应用的连接。

link establish->channel establish->rfcomm establish->connection

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章