蓝牙的数据传输是由主单元控制,因此,从单元必须将主单元的最新信道状态表通知主单元。为此,我们定义一个新的LMP(链路管理协议)PDU,用以携带主单元信道状态。从单元每隔一定时间(channel-state-update-ininterval)计算一次丢包率、刷新信道状态表并通过上述 PDU发送到主单元。
2.2 自适应包选择延迟发送机制
蓝牙物理信道是一个时分双工的跳频信道,信道之间以彼此近似正交的跳频序列区分。信道使用伪随机跳频序列表示,频率在79个射频信道中随机跳变。每个微网使用唯一信道跳频序列,它是根据主单元蓝牙设备地址确定。信道以时隙为单位传输信息,在一个时隙(单时隙分组情况)或多个时隙(多时隙分组情况)内采用一个射频跳频点传输信息。频率跳变速度是1600跳/s。一个时隙的长度为625微秒。在时隙中主单元和从单元以时分复用方式,交替传输分组。主单元在偶数时隙开始传输分组,从单元仅在奇数时隙开始传输分组。一个分组传输时间可以占用一个时隙、三个时隙或五个时隙。传输某个分组期间,跳频保持不变。对于传输单时隙分组,使用的跳频由当前蓝牙时钟值导出。对于传输多时隙分组,跳频根据传输首时隙时钟值导出。传输多时隙分组后,传输下一分组的跳频也根据该分组首时隙时钟值确定。根据蓝牙标准规定,ACL链路可以占用一、三、五时隙传输数据,但是,目前在实际使用过程中,占用时隙方式是固定的。我们提出的这一个算法就是在满足上面这个条件的基础上,根据信道的情况采用延迟发送机制。具体如下:
(1)单时隙包处理机制
在发送该单时隙包之前,主单元先查看一下由信道评估机制产生的master/slave的信道状态表。在图1中,如果ƒ1和ƒ2只要有一个是不良信道,那么主单元就延迟到下一个偶数时隙来接着判断是否可以发送。只有ƒ1、ƒ2全是优良信道,该数据包才能存该时刻发送。
图1 时隙与信道
(2)三时隙数据包处理机制
在发送这个三时隙包之前,主单元先检查ƒk和ƒk+3是否都是优良信道,只有这两个频率都是优良信道,这个包才允许发送;如果ƒk是不良信道,这个三时隙的数据包就延迟到ƒk+2进行发送,在发送之前也要经过这样的判决;如果ƒk是优良信道,ƒk+3是不良信道,那么首先判断ƒk+1是不是优良信道,如果是,那么将数据封装成单时隙的数据包进行发送,如果不是,那么就延迟到ƒk+2进行发送判决。
(3)五时隙数据包处理机制
五时隙包也采用近似的机制,如果ƒk和ƒk+5都是优良信道,这个包允许发送;如果ƒk是不良信道,这个五时隙的数据包就延迟到ƒk+2进行发送判决;如果ƒk是优良信道,ƒk+5是不良信道,那么首先判断ƒk+3是不是优良信道,如果是,那么将数据封装成三时隙的数据包进行发送,如果不是,那么就判断 ƒk+1是否是优良信道,如果是,那么封装成单时隙包进行发送,如果ƒk+1和ƒk+3同样也为不良信道,那么就延迟到ƒk+2进行上面这种判决机制。如图2是此机制的算法流程图。
图2 算法流程图
共5页: 上一页 [1] 2 [3] [4] [5] 下一页
|