【技术实现步骤摘要】
基于虚拟分簇和路径预约的自适应同步MAC协议
[0001]本专利技术涉及无线通信
,特别涉及一种基于虚拟分簇和路径预约的自适应同步MAC协议。
技术介绍
[0002]无线传感器网络(Wireless Sensor Networks,WSN)是由大量以自组织和多跳方式的微型传感器节点构成的网络,网络能够通过传感器节点之间的交互来实现对于监测区域内被监测对象信息的感知、采集、处理和传输等一系列操作,具有大规模、自组织、动态拓扑以及多跳路由等特点,广泛地应用于环境监测、军事领域、智能家居、医疗健康以及交通管理等方面。但由于WSN中传感器节点采用电池供电,存在电池能量有限且不易更换的问题,其在一定程度上影响了WSN网络和节点的生命周期,阻碍了WSN网络的进一步发展。因此,如何解决网络的节能问题成为了设计WSN网络协议所要考虑的关键因素。
[0003]在WSN中,网络能耗来源除了必要的事件监测和数据收发外,MAC层还面临着空闲侦听、碰撞冲突和控制开销大等问题。网络节点在进行数据收发时,一直使无线通信模块处于打开状态,来判 ...
【技术保护点】
【技术特征摘要】
1.一种基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,包括:步骤1,根据各个节点剩余能量水平和各个节点与基站之间的距离设计基于节点的剩余能量和基站距离的簇头选取机制;步骤2,基于节点的一个调度周期设计路径预约机制和数据传输机制;步骤3,确定节点发送的数据包的优先级;步骤4,将数据包的优先级嵌入待传输的数据帧中,根据数据包的优先级构建数据退避传输函数。2.根据权利要求1所述的基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,所述步骤1具体包括:在分簇的初始化调度周期T
P
过程中,其中,调度周期T
P
的长度由网络中节点的总数量决定,所有节点全部唤醒处于侦听状态,等待发送或接收网络中的预约同步帧,其中,预约同步帧的信标帧结构包括FL字段、FCF字段、FCS字段、源节点地址字段Src、目标地址字段Dst、预约总跳数字段T
ah
、下一跳地址字段Neh、上一跳地址字段Lah、剩余跳数字段R
eh
和剩余能量字段E
en
;节点从调度周期T
P
中随机选择一个时刻T
Rand
(i)发送预约同步帧,将当前发送预约同步帧的节点作为簇头节点,若网络中其余节点在收到簇头节点发送的预约同步帧前并未发送预约同步帧,则将接收并转发簇头节点的预约同步帧的节点成为簇头节点的成员节点,转发完成后的成员节点进入休眠状态。3.根据权利要求2所述的基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,所述步骤1还包括:计算节点i的随机唤醒时刻T
Rand
(i),如下所示:其中,i表示节点,R(i)表示节点i产生的一个随机数,T
syn
表示发送一个预约同步帧所需要的时间,E
energy
表示节点归一化剩余能量,N表示网络中节点的总数量;计算节点i产生的随机数R(i),如下所示:R(i)=Random(1,Dis+c) 1≤i≤N
ꢀꢀꢀꢀꢀ
(2)其中,Dis表示节点i和基站之间的距离,c表示根据网络负载情况提前确定的一个常数;计算节点归一化剩余能量E
energy
,如下所示:其中,E
remain
表示当前节点的剩余能量,E
total
表示节点初始状态的总能量。4.根据权利要求3所述的基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,所述步骤2具体包括:将节点的一个调度周期分为路径预约阶段和数据传输阶段,在路径预约阶段同一虚拟簇节点全部唤醒准备接收和转发预约同步帧进行传输路径预约:发送节点对预约同步帧进行初始化并设置传输跳数值T
ah
字段后发送,对传输路径进行预约,传输路径中间节点在接收到预约同步帧后,根据预约同步帧中的传输跳数字段T
ah
和剩余跳数字段R
eh
为传输路径
分配数据传输时间段,并将剩余跳数字段R
eh
减1后再次进行转发继续传输路径预约,若中间节点在当前时间段被占用,则依次向后推延直到找到能够预约的空闲时间段,并将剩余跳数字段R
eh
在减1的基础上额外减去向后推延的跳数后继续转发,其中,预约同步帧作为下一跳节点的传输路径预约的预约同步帧和上一节点的确认传输路径预约的预约同步帧;当中间节点对应R
eh
减1的时间段和之后的时间段均被占用时,则直接将预约同步帧中的剩余跳数字段R
eh
置0并转发,当预约同步帧中剩余跳数字段R
eh
为0或1时,传输路径预约结束,传输路径节点进入数据传输阶段开始传输数据,未被预约的传输路径节点进入睡眠状态等待下一个调度周期的到来。5.根据权利要求4所述的基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,所述步骤2还包括:在数据传输阶段开始时,预约的传输路径上的接收节点首先在被预约到的跳数所对应的时间段前唤醒,预约的传输路径上的接收节点唤醒后发送一个ACK确认帧,其中,预约的传输路径上的接收节点的正确唤醒时间T
wakeup
的计算,如下所示:T
wakeup
=(T
ah
‑
R
eh
)*T
onetime (4)其中,T
ah
表示数据包在当前路径已经传输的跳数,R
eh
表示待传输的剩余跳数,T
onetime
表示数据包传输一跳花费的总时间;计算数据包传输一跳的总时间T
onetime
,如下所示:T
onetime
=T
ACK
+SIFS+T
DATA
+SIFS
ꢀꢀꢀꢀ
(5)其中,T
ACK
表示发送ACK帧的时间,T
DATA
表示发送单个数据帧的时间,SIFS表示两次传输之间的最短间隔,当网络中传输的数据帧大小相同时,将T
DATA
设置为一个预设值;当网络中传输的数据帧大小不相同时,将T
DATA
包含在预约同步帧中。6.根据权利要求5所述的基于虚拟分簇和路径预约的自适应同步MAC协议,其特征在于,所述步骤3具体包括:数据包包括传输数据的信息量、数据包数量和节点剩余能量水平,分别对传输数据的信息量、数据包数量和节点剩余能量水平进行优先等级划分:网络中传输的数据的类型为:网络中出现突发状况时节点发送的重要信息、网络中进行传输的具有较大信息量的数据和节点日常工作时发送的具有一般信息含量的普通数据;根据信息含量优先原则,将网络中传输数据的信息量划分成三种优先级:当传输数据的信息量等级为Level1,优先等级为D
infor
=00时,退避窗口大小设置为BW
00
;当传输数据的信息量等级为Level2,优先等级为D
infor
=01时,退避窗口大小设置为BW
01
;当传输数据的信息量等级为Level3,优先等级为D
infor
=1X时,退避窗口大小设置为BW
1x
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。