链路层的状态机一共有五种状态:
1.standby
State
2.Advertising State
3.Scanning State
4.Initiating State
5.Connection State
链路层的状态机同一时刻只能处于一种状态,链路层应至少拥有一个支持
Advertising State或者Scanning State的状态机。(状态机:由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设定的状态进行状态转移,是协调相关信号动作、完成特定操作的控制中心)。一个设备也可以拥有多个状态机。
1.standby State
standby状态既不进行包的发送也不接受数据包,其他任何状态都可以直接进入standby state.
2.Advertising State
Advertising State会在广播信道上发送自己的广播数据包,同时也可能会对其它设备进行回复。处于Advertising State的设备被称为advertiser。
3.Scanning State
处于Scanning State的设备会侦听广播信道上正在广播设备的数据包。处于此种状态的设备成为scanner。
4.Initiating State
处于Initiating State的设备会侦听并响应广播信道上特定设备的数据包以和另外一台设备进行连接,处于此种状态的称为initiator。
5.Connection State
处于Advertising State或者Initiating State的设备可以直接进入Connection State。Connection State可以分为master role和slave role。从Initiating State进入Connection State的是master role,从Advertising State进入Connection State的则是slave role。master将和slave设备通信并定义传输定时,slave device将只和一个master通信。
五种状态的切换图如下(摘自core_v4.2.pdf p2574):
也可以参考此篇博文:http://blog.csdn.net/zhaoshuzhaoshu/article/details/51029054(写的比较详细)
阅读(720) | 评论(0) | 转发(0) |