公开/公告号CN101873710A
专利类型发明专利
公开/公告日2010-10-27
原文格式PDF
申请/专利权人 厦门星网锐捷软件有限公司;
申请/专利号CN200910111600.4
申请日2009-04-23
分类号H04W74/08(20060101);H04L1/16(20060101);
代理机构35203 厦门市新华专利商标代理有限公司;
代理人朱凌
地址 361009 福建省厦门市软件园观日路56号801单元
入库时间 2023-12-18 01:09:32
法律状态公告日
法律状态信息
法律状态
2022-04-08
未缴年费专利权终止 IPC(主分类):H04W74/08 专利号:ZL2009101116004 申请日:20090423 授权公告日:20130814
专利权的终止
2013-08-14
授权
授权
2010-12-08
实质审查的生效 IPC(主分类):H04W74/08 申请日:20090423
实质审查的生效
2010-10-27
公开
公开
技术领域
本发明属于无线通信领域,涉及一种基于IEEE802.15.4标准的非槽道方式CSMA-CA算法的优化方法。
背景技术
CSMA-CA(带有冲突避免的载波监听多路访问)算法指的是在多个节点同时尝试通信时判优射频通道使用,避免信道之间相互碰撞的算法协议。在不同应用条件的标准协议下,其算法流程也会有所不同。
IEEE802.15.4标准的CSMA-CA的算法工作流程分为两种方式:槽道方式(slotted)和非槽道方式(unslotted)。如图1所示,为IEEE 802.15.4标准CSMA-CA算法流程图。在实际使用中,根据使用情况一般只能确定使用其中一种。
槽道方式slotted:必须有协调器发出信标帧进行同步,相互竞争随后的时间片的信道使用,信标帧中也还指定一些时间片的具体使用,但必须先有节点提出申请。这种方式虽然一定程度上可以合理利用信道,但对于突发性和随机性的传输要求无法及时执行,信道的利用率也并不高。
非槽道方式unslotted:随时进入信道使用的竞争,适用于传输具有突发性和随机性的普通分组数据,在实际使用上较为常用。
但是在使用射频信号通信的一对多无线监控系统中,若使用传统的IEEE802.15.4标准的非槽道方式CSMA-CA算法,当多个节点同时都需要发送较多数据包时,每个节点的数据都进行突发性随机发送,冲突的发生和重传的概率就快速上升,信道的有效传输效率下降,由于不能及时将数据包送出,造成需发送数据的节点增加,竞争更加激烈,恶性循环,传输效率更加下降,数据累计导致系统反应迟钝甚至瘫痪。为此,本发明人针对IEEE802.15.4标准的非槽道方式CSMA-CA算法提供了一种优化方法。
发明内容
本发明的目的是提供一种基于IEEE802.15.4标准的非槽道方式CSMA-CA算法的优化方法,以使当多个节点同时都需要发送较多数据包时,能有效地降低冲突的发生,保证信道的有效传输效率,大幅度提升信道的有效利用率。
本发明为一种基于EEE802.15.4的非槽道方式CSMA-CA算法的优化方法,当某节点需要发送数据帧,进入非槽道方式CSMA-CA算法,包括以下几个步骤:
(1)初始化退避次数值为0,将退避随机限定指数设置为系统设定的最小值;
(2)执行CCA检测,判断当前信道是否空闲,若非空闲状态则继续执行CCA检测;若为空闲状态,则判断是否具有第1优先发送权,若具有第1优先发送权,则跳转到步骤5;若不具有第1优先发送权,则进入步骤3;
(3)延时一个后退周期,继续执行CCA检测,判断当前信道是否空闲,非空闲状态跳转到步骤2;若为空闲状态,则判断是否具有第2优先发送权,若具有第2优先发送权,则跳转到步骤5;若不具有第2优先发送权,则进入步骤4;
(4)延时由退避随机限定指数所限定产生的随机数个后退周期,继续执行CCA检测,判断当前信道是否空闲,非空闲状态跳转到步骤8;若为空闲状态,则进入步骤5;
(5)进入发送状态,将数据帧送出;
(6)数据帧送出后,与主机确认当前送出的数据帧是否需要回应ACK应答,若不需要则认为当前的数据帧发送成功;若需要则限时等待接收ACK应答,超时没有收到ACK应答,则认为当前数据帧发送请求失败;若限时收到ACK应答,则认为当前的数据帧发送成功;
(7)判断当前是否还有数据帧需要发送,若有则跳转到步骤5;否则跳转至步骤9;
(8)退避次数值加1,退避随机限定指数加1,判断若该退避随机限定指数已为最大值则不需累加,判断该退避次数值是否超过最大预设值,没有则跳转到步骤2,否则认为当前数据帧发送请求失败;
(9)发送结束。
上述的第1优先发送权是指接收到的数据帧规定需求发送回应ACK,具有第1优先发送权;当前正在发送数据帧者,当判断成功发送当前数据帧后,并且还有数据帧要求发送的,也具有第1优先发送权。
上述的第2优先发送权是指当前收到非广播数据帧者,在收到数据帧后(需ACK应答的,指送完ACK后)的一个退后周期内,如有数据帧需要发送,则具有第2优先发送权,超过一个后退周期则自动降到不具有优先发送级别;数据帧的ACK应答,也具有第1优先发送权,其发送者同第2优先发送权。
使用了该算法因为引入了优先发送权级别的设置,使发送节点数据帧能一次性发完,减少信道竞争使用的节点,以及竞争带来延时的信道浪费;将ACK的接收纳入算法流程,判断发送的成功和失败,使通讯过程更加完整;取消信道被占用期间,非竞争使用的退避次数增加,减少导致容易出现发送失败的几率。将一对一的有效载荷传输率(只计算802.15.4协议中有效载荷部分)从最高120kb/s提高到最高180kb/s,并且在多节点同时发送请求下,有效载荷传输率也能达到150kb/s以上。在同等条件下大幅度提升信道的有效利用率。
附图说明
图1为原IEEE 802.15.4 CSMA-CA算法流程图;
图2为本发明的IEEE802.15.4的非槽道方式的CSMA-CA算法流程图。
以下结合具体实施例和附图对本发明作进一步详述。
具体实施方式
如图2所示,本发明为一种基于IEEE802.15.4的非槽道方式CSMA-CA算法的优化方法,当某节点需要发送数据帧,为了获取信道的使用权,进入非槽道方式CSMA-CA算法:
1、初始化退避次数值NB为0,将退避随机限定指数BE设置为系统设定的最小值;
2、执行CCA检测,判断当前信道是否空闲,若非空闲状态则继续执行CCA检测;若为空闲状态,则判断是否具有第1优先发送权,若具有第1优先发送权,则跳转到步骤5;若不具有第1优先发送权,则进入步骤3;
3、延时一个后退周期,继续执行CCA检测,判断当前信道是否空闲,非空闲状态跳转到步骤2;若为空闲状态,则判断是否具有第2优先发送权,若具有第2优先发送权,则跳转到步骤5;若不具有第2优先发送权,则进入步骤4;
4、延时由退避随机限定指数BE所限定产生的随机数个后退周期,继续执行CCA检测,判断当前信道是否空闲,非空闲状态跳转到步骤8;若为空闲状态,则进入步骤5;
5、进入发送状态,将数据帧送出;
6、数据帧送出后,与主机确认当前送出的数据帧是否需要回应ACK应答,若不需要则认为当前的数据帧发送成功;若需要则限时等待接收ACK应答,超时没有收到ACK应答,则认为当前数据帧发送请求失败;若限时收到ACK应答,则认为当前的数据帧发送成功;
7、判断当前是否还有数据帧需要发送?若有则跳转到步骤5;若没有则跳转至步骤9;
8、退避次数值NB加1,退避随机限定指数BE加1,判断若该退避随机限定指数BE已为最大值则不需累加,判断该退避次数值NB是否超过最大预设值,没有超过则跳转到步骤2,否则认为当前数据帧发送请求失败;
9、发送结束。
上述的第1优先发送权是指接收到的数据帧规定需求发送ACK应答,具有第1优先发送权;当前正在发送数据帧者,当判断成功发送当前数据帧后,并且还有数据帧要求发送的,也具有第1优先发送权。
上述的第2优先发送权是指当前收到非广播数据帧者,在收到数据帧后(需ACK应答的,指送完ACK后)的一个退后周期内,如有数据帧需要发送,则具有第2优先发送权,超过一个后退周期则自动降到不具有优先发送级别;数据帧的ACK应答,也具有第1优先发送权,其发送者同第2优先发送权。
由于本发明引入了优先发送权级别的设置,使发送节点数据帧能一次性发完,减少信道竞争使用的节点,以及竞争带来延时的信道浪费;将ACK的接收纳入算法流程,判断发送的成功和失败,使通讯过程更加完整;取消信道被占用期间,避免非竞争使用的退避次数增加,减少导致容易出现发送失败的几率。将一对一的有效载荷传输率(只计算802.15.4协议中有效载荷部分)从最高120kb/s提高到最高180kb/s,并且在多节点同时发送请求下,有效载荷传输率也能达到150kb/s以上。在同等条件下大幅度提升信道的有效利用率。
机译: 基于IEEE802.15.4 / ZigBee标准的用于设备互连和网络形成的无线通信设备。
机译: 基于基于测量的动态信道分配和重用距离标准算法的混合,用于蜂窝系统的灵活信道分配
机译: 基于基于混合测量的动态信道分配和重用距离标准算法的蜂窝系统灵活信道分配