CN104853445B - 一种基于广播消息的无线传感器网络mac协议 - Google Patents
一种基于广播消息的无线传感器网络mac协议 Download PDFInfo
- Publication number
- CN104853445B CN104853445B CN201510291731.0A CN201510291731A CN104853445B CN 104853445 B CN104853445 B CN 104853445B CN 201510291731 A CN201510291731 A CN 201510291731A CN 104853445 B CN104853445 B CN 104853445B
- Authority
- CN
- China
- Prior art keywords
- node
- data
- broadcast
- cycle
- operation interval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 108700026140 MAC combination Proteins 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 25
- 230000008569 process Effects 0.000 claims abstract description 7
- 230000001360 synchronised effect Effects 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 29
- 230000007246 mechanism Effects 0.000 claims description 29
- 230000008859 change Effects 0.000 claims description 19
- 230000006854 communication Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 9
- 230000033228 biological regulation Effects 0.000 claims description 7
- 230000002860 competitive effect Effects 0.000 claims description 5
- 230000001351 cycling effect Effects 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 3
- 241001269238 Data Species 0.000 claims description 2
- 230000000737 periodic effect Effects 0.000 abstract description 2
- 238000005265 energy consumption Methods 0.000 description 9
- 238000002474 experimental method Methods 0.000 description 8
- 238000004088 simulation Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 230000003044 adaptive effect Effects 0.000 description 4
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 241000383675 Trama Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/04—Scheduled access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/08—Access restriction or access information delivery, e.g. discovery data delivery
- H04W48/10—Access restriction or access information delivery, e.g. discovery data delivery using broadcasted information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1657—Implicit acknowledgement of correct or incorrect reception, e.g. with a moving window
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/02—Data link layer protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
一种基于广播消息的无线传感器网络MAC协议,该协议采用周期工作制,且一个工作周期的时间长度为固定值,将一个工作周期按时间先后划分为同步周期、广播周期和数据周期,数据周期被分割成若干时间长度相同的工作区间;所述协议的实现过程为:同步周期内,通过同步帧消息的交换实现同一虚拟簇内的节点时间同步;广播周期内,源节点在广播周期随机选取工作区间,并利用广播消息使相关节点在对应的工作区间完成数据交换;数据周期内,相关节点在对应的工作区间唤醒,源节点开始进行信道竞争,源节点成功接入信道后与目的节点进行RTS/CTS/DATE/ACK数据交换。本发明与现有的ADV‑MAC协议和S‑MAC协议相比,其网络功耗,及时延、递送率等网络性能均具有较好的水准。
Description
技术领域
本发明涉及一种无线传感器网络的MAC协议,具体为一种基于广播消息的无线传感器网络MAC协议。
背景技术
无线传感器网络(Wireless Sensor Networks,WSN)是由部署在监测区域内大量的微型传感器节点通过无线通信的方式形成的一个多跳自组织网络系统。WSN的数据感知、聚合、传输等过程均由传感器节点完成的,但传感器节点受到体积、成本的约束,一般设计的十分微小,这直接造成节点本身的计算及存储能力有限,所以如何节约节点的能量消耗成为WSN的首要考虑因素。WSN同时是一个应用相关性的网络,网络需要按照应用的相关要求,将用户感兴趣的数据传递到终端。经过分析得知,节点所消耗能量的90%被无线通信模块使用,因此WSN要做到能量高效,通常要以通信模块作为重点目标。因为网络节点的通信模块由MAC(Medium Access Control)层控制,所以通过改进MAC协议来优化通信模块的工作是实现WSN能量高效的一条较好的途径。
目前,按照信道的接入方式,低功耗MAC协议可以分为调度类、竞争类、混合类。调度类MAC协议是一种无碰撞的MAC协议,大多数采用TDMA机制,该机制将连续的时间分割成一系列连续的时隙,节点只在发送和接收信息的时隙唤醒。TRAMA就是一种流量自适应的调度类MAC协议。竞争类MAC协议是一种自适应的MAC协议,一般采用CSMA机制即载波侦听多路访问。S-MAC是竞争类的代表协议,采用占空比机制减少空闲侦听,利用RTS/CTS/DATE/ACK数据交换机制消除串音并保障数据的完整性,利用自适应侦听减少多跳传输的时延。结合不同信道接入方式的MAC协议就是混合类MAC协议,典型代表有CSMA/TDMA的Z-MAC 和I-MAC已经TDMA/FDMA的SMACS/EAR协议等。上述几种MAC协议在对网络寿命(低功耗)和网络性能(时延、递送率等)均有较高要求的应用环境均存在一定的局限性,为此,本发明提出了一种基于广播消息的自适应MAC协议:SA-MAC。
发明内容
本发明的目的是为对网络寿命(低功耗)和网络性能(时延、递送率等)均有较高要求的应用环境提供一种低碰撞、低功耗的竞争类MAC协议:SA-MAC(self-adaptionAdvertisement MAC )。本发明的SA-MAC协议是在S-MAC的基础上提出的竞争类MAC协议,其是利用源节点发送的广播消息使无关节点进入睡眠状态,相关节点则在对应的时刻唤醒进行数据交换,目的是通过减少节点的空闲侦听时间和数据碰撞概率,以降低网络的能耗并提高网络性能。
为实现上述目的,本发明的技术方案是:一种基于广播消息的无线传感器网络MAC协议,该协议采用周期工作制,且一个工作周期的时间长度为固定值,将一个工作周期按时间先后划分为同步周期、广播周期和数据周期,其中,数据周期被分割成若干时间长度相同的工作区间,每个工作区间的大小为相关节点使用最大CW进行一次完整RTS/CTS/DATE/ACK数据交换所需的时间;所述协议的实现过程包括如下步骤:
(1)、同步周期内,通过同步帧消息的交换,实现同一虚拟簇内的节点时间同步;
(2)、广播周期内,源节点在广播周期随机选取工作区间,并利用广播消息使相关节点在对应的工作区间完成数据交换;所述广播的消息包含目的节点的地址和选取的工作区间;
在广播周期内,所述协议利用节点数据缓存区的实时情况动态调整CW的大小,以实现节点接入信道的公平性;CW的自适应调整方法为:首先,节点初始化CW的尺寸为最大值CWmax,节点需要进行数据发送的时候,利用公式CWcur=[CWmax*(1-(BS/BST))]对CW进行实时调整,其中,CW当前值CWcur的取值范围始终在[CWmin,CWmax]之间,并取整数; BST代表设定的数据缓存区阈值,BS代表数据缓存区的当前使用值;
(3)、数据周期内,相关节点在对应的工作区间唤醒,源节点开始进行信道竞争,其中CW的大小采用广播周期的CW自适应调整方法进行调整,源节点成功接入信道后与目的节点进行RTS/CTS/DATE/ACK数据交换。
由于在实际情况中网络的流量会实时变化,为进一步提高信道利用率,在步骤(2)的源节点在广播周期随机选取工作区间过程中,SA-MAC规定随机数的选取范围将根据网络的实时情况进行实时调整,即随机数的生成方法包括如下步骤:
(1)、网络中所有的节点维持一个随机数发生器,包含三个变量:最大值NBmax=m,最小值NBmin=1及当前值NBcur;
(2)、初始化节点的NBcur=[NBmax/2],并取整数;
(3)、需要发送数据的源节点在 [NBmin,NBcur]之间生成一个随机数,并在广播周期竞争信道广播请求消息;其中,生成的随机数即为源节点随机选取的工作区间;
(4)、源节点在成功广播自己的请求消息后,在对应的工作区间唤醒进行再次竞争信道进行数据交换;源节点在每次数据交换完成后,对通信结果进行判断,如果数据包发送失败,那么当前值 NBcur加1,反之当前值NBcur减1,其中NBcur的取值范围在[NBmin,NBmax]之间;
(5)、重复步骤(2)~步骤(4)过程。
由于节点的数据缓存区有限,如果网络中的某个区域突然监测到大量的数据,就会出现大量丢包的现象。进一步地,SA-MAC根据缓存区的实时状态设计了一种数据突发机制 (Fast Transmission Scheme,FTS)。SA-MAC根据节点数据缓存区的实时状态采用下述两种数据发送模式:定义数据缓存区阈值为BST,数据缓存区当前使用值为BS,当BS<=BST时,节点使用正常数据传输机制;当BS>BST时,节点使用数据突发机制;所述数据突发机制的工作机制为:
需要使用数据突发机制的源节点,在广播周期以最小CW接入信道发送MORE_RTS进行信道预约,并预定若干个工作区间,目的节点接收到MORE_RTS后,发送MORE_CTS,源节点和目的节点交换控制帧后进入睡眠状态,在广播周期结束后进行连续的数据交换,直到双方节点发现达到预定的工作区间个数,并且剩余时间不足以完成一次数据交换,源节点和目的节点放弃这次数据传输进入睡眠状态;无线传感器网络内的其他源节点根据MORE_RTS进行判断:如果与自己位于同一虚拟簇,则根据包含的预约工作区间数进行判断,定义预约工作区间数为c,如果c< NBmax,源节点暂时在[c+1, NBmax]之间进行工作区间的随机选取,反之直接进入睡眠状态;如果与自己不属于同一虚拟簇,直接进行睡眠状态。
节点使用FTS可以迅速将缓存区的数据发送出去,但如果BST的值过低就会造成WSN内大量的节点使用FTS,出现网络拥塞和部分节点的数据大量丢弃的现象,反之如果BST的值过高,就会降低网络性能。进一步地,本发明的SA-MAC针对这些问题,规定节点根据本地的观测自主调整数据缓存区阈值,所述数据缓存区阈值BST的调整方法为:首先,节点初始化BST当前值为(BSTM+BSTN)/2,并以Tbuffer为一个时间周期记录在此期间发送失败的数据包数量,节点在每个Tbuffer周期结束的时刻利用公式Change=(CDEM-BDEM)/ BDEM得出当前Tbuffer周期数据包发送失败数量的变化率,并根据公式BSTC= BSTC*(1+Change)确定节点在下个Tbuffer周期使用的BSTC值,其中,BSTC的取值范围始终在[BSTN, BSTM]之间;
BSTC代表BST的当前值,BSTM代表设定的BST最大值,BSTN代表设定的BST最小值,Tbuffer为缓存区阈值的更新周期,CDEM为当前Tbuffer周期内发送失败的数据包个数,BDEM为上个Tbuffer周期内发送失败的数据包个数,Change为发送失败数据包的变化率。
有益效果:本发明的SA-MAC协议利用广播消息减少节点的空闲侦听时间;利用随机唤醒机制缓解网络的数据碰撞问题;通过调整竞争窗口实现节点接入信道的公平性;采用低占空比机制及数据突发机制进一步提升网络的性能。仿真结果证明,本发明的SA-MAC协议与现有的ADV-MAC协议和S-MAC协议相比,其网络功耗,及时延、递送率等网络性能均具有较好的水准。
本发明的SA-MAC协议与ADV-MAC协议相类似,但与ADV-MAC相比SA-MAC具有以下特点:
1. SA-MAC利用广播消息实现相关节点随机唤醒机制,使相关节点工作在不同的时间区间,从而降低了数据的碰撞的概率,提升了信道利用率,而ADV-MAC仅仅利用广播消息使无关节点进入睡眠状态,相关节点在数据交换的过程中仍要进行激烈的信道竞争。
2. SA-MAC通过对节点竞争窗口(Contention Window,CW)的实时调整,实现了节点间接入信道的公平性,而ADV-MAC没有考虑到节点间的公平性,默认所有节点接入信道的概率一致。
3. 研究证明,节点在通信过程中最主要无关能耗是空闲侦听,SA-MAC采用低占空比机制降低WSN中所有节点的空闲侦听时间,而ADV-MAC主要通过减少无关节点的空闲侦听时间降低网络无关能耗 。
4. SA-MAC针对负载的变化提出了相对应的数据突发机制,而ADV-MAC没有考虑网络流量的突发性。
附图说明
图1为本发明SA-MAC的周期工作机制。
图2a为本发明SA-MAC与其他协议在单跳环境中,数据包的平均递送率随数据发送间隔变化的仿真实验图。
图2b为本发明SA-MAC与其他协议在单跳环境中,数据包的平均时延随数据发送间隔变化的仿真实验图。
图2c为本发明SA-MAC与其他协议在单跳环境中,网络平均总能耗随数据发送间隔变化的仿真实验图。
图3a为本发明SA-MAC与其他协议在多跳环境中,数据包的平均递送率随数据发送间隔变化的仿真实验图。
图3b为本发明SA-MAC与其他协议在多跳环境中,数据包的平均时延随数据发送间隔变化的仿真实验图。
图3c为本发明SA-MAC与其他协议在多跳环境中,网络平均总能耗随数据发送间隔变化的仿真实验图。
具体实施方式
下面对本发明的SA-MAC协议进行详细介绍。
SA-MAC的主要设计目标是通过减少节点的空闲侦听时间和数据碰撞概率,从而降低网络的能耗并提高网络性能,采用的方案是利用源节点发送的广播消息使无关节点进入睡眠状态,相关节点则在对应的时刻唤醒进行数据交换。
SA-MAC采用周期工作机制,并且工作周期的时间长度为固定值,一个完整的工作周期包括同步周期、广播周期和数据周期。本发明的图1简要描述了SA-MAC的周期工作机制,其中同步周期的时间长度为ST;广播周期的时间长度为AT;数据周期被分割成一系列长度相同的工作区间,每个工作区间的大小为相关节点使用最大CW进行一次完整RTS/CTS/DATE/ACK数据交换所需的时间DT;一个完整的工作周期长度为CT。
同步周期:SA-MAC是一种同步机制的MAC协议,实现同步的方法与S-MAC类似,即通过同步帧消息的交换,实现同一虚拟簇内的节点时间同步。节点在同步周期的状态转移过程为:所有的节点进入同步周期都需要保持唤醒直到同步周期结束,需要发送同步帧的节点进行信道竞争,其他节点保持侦听接收并判断来自其他节点的同步帧。
广播周期:数据碰撞问题是竞争类MAC协议普遍存在的问题,SA-MAC将数据周期分割成一系列固定时间长度的工作区间,源节点在广播周期利用广播消息(消息包含目的节点的地址和选取的工作区间)使相关节点在对应的工作区间进行数据交换,从而将网络负载分配到整个数据周期,降低了网络碰撞的概率。
在广播周期,节点的状态转移过程为:成功广播请求消息的源节点和成功接收广播消息的目的节点进入睡眠状态并在对应的工作区间唤醒,如果正在进行信道竞争的源节点接收到目的地址为自己的广播消息,放弃本次竞争记录对应广播消息并进入睡眠状态。SA-MAC考虑到在网络负载极低的情况下,广播周期会出现节点持续空闲侦听的现象,为此预定了一个阈值Thadv(源节点广播请求消息所需的最大时间),不需要发送数据的节点如果在THadv内没有侦听到其他节点发送的广播消息进入睡眠状态。
SA-MAC利用随机唤醒机制使相关节点在不同的工作区间进行数据交换,所述的随机唤醒机制就是:源节点在广播周期随机选取工作区间,相关节点在对应的工作区间完成数据交换。
由于在实际情况中网络的流量会实时变化,为进一步提高信道利用率,SA-MAC规定随机数的选取范围将根据网络的实时情况进行实时调整。即随机数的生成方法为:首先,网络中所有的节点维持一个随机数发生器,包含三个变量:最大值NBmax=m,最小值NBmin=1及当前值NBcur;然后,初始化节点的NBcur=[NBmax/2],并取整数;需要发送数据的源节点在 [NBmin,NBcur]之间生成一个随机数,并在广播周期竞争信道广播请求消息;其中,生成的随机数即为源节点随机选取的工作区间;源节点在成功广播自己的请求消息后,在对应的工作区间唤醒进行再次竞争信道进行数据交换。源节点在每次数据交换完成后,对通信结果进行判断,如果数据包发送失败,那么当前值 NBcur加1,反之当前值NBcur减1,其中NBcur的取值范围在[NBmin, NBmax]之间。此部分随机数的生成方法的伪代码如下:
在广播周期,需要发送数据的源节点使用CW进行信道竞争,在退避过程中,如果侦听到其他源节点发送的广播消息,源节点并不重置自己的退避计时器,而且暂时冻结,等待信道空闲后,继续竞争信道直到广播周期结束。
网络中不同节点的负载不同,所以节点发送数据的优先级也应当不同,对竞争类MAC而言,节点接入信道的优先级主要受到信道竞争时CW大小的影响。SA-MAC利用节点数据缓存区(数据队列)的实时情况动态调整CW的大小,从而实现节点接入信道的公平性。CW的自适应调整方法为:首先,节点初始化CW的尺寸为最大值CWmax,节点需要进行数据发送的时候,利用公式CWcur=[CWmax*(1-(BS/BST))]对CW进行实时调整,其中,CW当前值CWcur的取值范围始终在[CWmin,CWmax]之间,并取整数; CWmin 和CWmax分别代表CW的最小值和最大值,BST代表设定的数据缓存区阈值,BS代表数据缓存区的当前使用值。BST是根据节点数据缓存区容量和网络带宽大小设定的值。
首先,根据网络的带宽和数据缓存区的容量预定一个数据缓存区阈值(命名为BST),节点在进行信道竞争时,根据数据缓存区当前使用值(命名为BS)进行调整。其中,CWcur为CW的当前值,CWmax为CW的最大值,CWmin为CW的最小值。节点根据调整后的CW进行信道竞争时,接入信道的概率将受到缓存区的影响,也就说,节点缓存的数据越多,越容易接入信道。此部分CW的自适应调整方法的伪代码如下:
数据周期:SA-MAC将需要进行数据交换的相关节点随机分散到整个数据周期上,但由于相关节点的工作区间是由源节点随机选取,所以源节点在对应的工作区间仍要进行轻量级的信道竞争,简要数据传递过程为:相关节点在对应的工作区间唤醒,源节点开始进行信道竞争,其中CW的大小采用广播周期的CW自适应算法进行调整,源节点成功接入信道后与目的节点进行RTS/CTS/DATE/ACK数据交换。
节点在数据周期的状态转移过程为:源节点在对应的时刻唤醒进行信道竞争,在成功发送RTS帧后,如果等待CTS帧超时(定义控制帧等待时间TWC),节点直接进入睡眠状态;在退避期间如果侦听到RTS帧,并不立即进入睡眠状态,而是进行判断,如果剩余时间足以完成一次数据交换,则对信道保持TWC的空闲侦听,反之直接进入睡眠状态;在空闲侦听期间,如果侦听到对应的CTS帧,进入睡眠状态,反之在TWC超时后如果信道仍然空闲,直接发送RTS帧进行信道预约;在成功发送数据后,无论是否接收到ACK帧,节点进入睡眠状态。
目的节点在对应的时刻唤醒对信道进行空闲侦听,在等待RTS帧超时后(定义为THdata),进入睡眠状态;在空闲侦听期间,如果侦听到目的地址为其他节点的RTS帧,与源节点类似进行判断,如果剩余时间足以完成一次数据交换,则对信道保持TWC时间的空闲侦听,反之直接进入睡眠状态;在空闲侦听期间,如果没有侦听到对应的CTS帧并且信道空闲,保持空闲侦听直到等待RTS超时,反之直接进入睡眠状态;在空闲侦听期间,如果侦听到目的地址为自己的RTS帧,完成数据交换,进入睡眠状态。
相关节点在空闲侦听期间,如果侦听到其他节点的CTS帧或者信道正在进行数据交换,直接进入睡眠状态。
由于节点的数据缓存区有限,如果网络中的某个区域突然监测到大量的数据,就会出现大量丢包的现象,SA-MAC根据缓存区的实时状态设计了一种数据突发机制 (FastTransmission Scheme,FTS)。节点根据BS与BST的关系,使用2种发送模式:定义数据缓存区阈值为BST,数据缓存区当前使用值为BS,当BS<=BST时,节点使用正常传输机制(NormalTransmission,NT);当BS>BST时,节点使用FTS。
源节点如果需要使用FTS进行数据传输,就在广播周期发送控制帧(定义为MORE_RTS)进行信道预约,但源节点持续的数据发送不但会干扰到下一个工作周期的同步周期,而且会干扰到其他节点工作区间的选择。FTS针对这些问题,规定控制帧预约的是工作区间的个数,并且每次最多预约m个工作区间,如果整个工作周期不足以使源节点完成数据发送,源节点会在下个广播周期继续使用FTS。FTS考虑到目的节点的数据缓存区同样有限,源节点不宜发送过多的数据,所以规定当BS 下降到BST的60%时,节点转入NT进行数据发送,由于MORE_RTS预留的时间一般大于数据发送所需的时间,实际上BS会下降到BST的50%左右。
FTS的工作机制如下:需要使用FTS的源节点,在广播周期以最小CW接入信道发送MORE_RTS进行信道预约,并预定若干个工作区间,目的节点接收到MORE_RTS后,发送MORE_CTS,源节点和目的节点交换控制帧后进入睡眠状态,在广播周期结束后进行连续的数据交换(每一帧数据都要进行ACK确认,设定数据重传上限),直到双方节点发现达到预定的工作区间个数,并且剩余时间不足以完成一次数据交换,源节点和目的节点放弃这次数据传输进入睡眠状态(由于同一虚拟簇内实现时间同步,所以双方节点不需要发送停止确认消息)。WSN内的其他源节点根据MORE_RTS进行判断:如果与自己位于同一虚拟簇,则根据包含的预约工作区间数(定义为c)进行判断,如果c< NBmax,源节点暂时在[c+1, NBmax] 之间进行工作区间的随机选取,反之直接进入睡眠状态;如果与自己不属于同一虚拟簇,直接进行睡眠状态。
节点使用FTS可以迅速将缓存区的数据发送出去,但如果BST的值过低就会造成WSN内大量的节点使用FTS,出现网络拥塞和部分节点的数据大量丢弃的现象,反之如果BST的值过高,就会降低网络性能。SA-MAC针对这些问题,规定节点根据本地的观测自主调整BST,即不同节点的BST可能不同。数据缓存区阈值BST的调整方法为:首先,节点初始化BST当前值为(BSTM+BSTN)/2,并以Tbuffer为一个时间周期记录在此期间发送失败的数据包数量,节点在每个Tbuffer周期结束的时刻利用公式Change=(CDEM-BDEM)/ BDEM得出当前Tbuffer周期数据包发送失败数量的变化率,并根据公式BSTC= BSTC*(1+Change)确定节点在下个Tbuffer周期使用的BSTC值,其中,BSTC的取值范围始终在[BSTM,BSTN]之间;
其中,BSTM和BSTN是为BST算法设定的BST的最大、最小值,BSTC代表BST的当前值,BSTM代表设定的BST最大值,BSTN代表设定的BST最小值,Tbuffer为缓存区阈值的更新周期,CDEM为当前Tbuffer周期内发送失败的数据包个数,BDEM为上个Tbuffer周期内发送失败的数据包个数,Change为发送失败数据包的变化率。
数据缓存区阈值BST的调整方法的伪代码如下所示:
仿真实验评价
本发明分别在单跳和多跳环境下,利用网络模拟软件NS2对SA-MAC3(工作区间数3)和SA-MAC5(工作区间数5)的性能进行仿真,并与ADV-MAC、S-MAC10(占空比10%)、S-MAC20(占空比20%)进行比较。实验中主要的仿真参数如下表所示。
仿真参数设定值
SA-MAC协议在单跳环境中的性能仿真:
假定在150m*150m的范围内放置了20个节点,这样每个节点都在其他节点的通信范围内,选取5个节点作为源节点,其中一个节点作为测试节点,其他节点作为干扰节点。
设定干扰节点的数据发送间隔均为5s,当测试节点的发送间隔由1s增加到10s时,对协议的性能进行仿真。图像2a描述了测试数据递送率的变化,仿真显示 :在数据发送间隔较小的情况下,SA-MAC协议的递送率优于其他协议,随着发送间隔的增加,五种协议递送率的差距逐渐减少,最终五种协议的递送率均接近100%。 图像2b描述了测试数据延迟的变化,仿真表明,SA-MAC的延迟明显小于其他协议。图像2c描述网络平均总能耗的变化,从图中发现,SA-MAC所消耗的平均能量始终处在一个较低的水准。
SA-MAC协议在多跳环境中的性能仿真:
假定在600m*600m的范围内放置了60个节点,设定10个节点为源节点,同单跳环境一样,选取其中一个节点为测试源节点,对五种协议在多跳环境下的性能进行仿真分析。
在源节点数量一定的情况下,图像3a描述了测试数据的递送率变化,随着数据发送间隔的增加,SA-MAC的数据递送率始终维持在一个可控的范围内,并且优于其他MAC协议。从图像3b描述的测试数据延迟变化中,发现由于竞争的减少,SA-MAC的延迟要优于其他MAC协议。从图像3c描述的网络平均总能耗变化中发现,SA-MAC消耗的平均能量较少,并且变化范围更小。
综上,经过仿真验证,发现SA-MAC在数据递送率、时延、能耗等性能指标上达到了较好的标准。根据仿真结果发现:工作区间数不同,SA-MAC的性能也有所不同,在网络负载量较小的情况下,SA-MAC3的性能要优于其他MAC协议,而在网络负载量较大的情况下,SA-MAC5是一个较好的选择。用户在实际使用的过程中根据当前网络的不同要求,对SA-MAC进行实时调整。
Claims (4)
1.一种基于广播消息的无线传感器网络MAC协议,其特征在于:该协议采用周期工作制,且一个工作周期的时间长度为固定值,将一个工作周期按时间先后划分为同步周期、广播周期和数据周期,其中,数据周期被分割成若干时间长度相同的工作区间,每个工作区间的大小为相关节点使用最大CW进行一次完整RTS/CTS/DATE/ACK数据交换所需的时间;所述协议的实现过程包括如下步骤:
(1)、同步周期内,通过同步帧消息的交换,实现同一虚拟簇内的节点时间同步;
(2)、广播周期内,源节点在广播周期随机选取工作区间,并利用广播消息使相关节点在对应的工作区间完成数据交换;所述广播的消息包含目的节点的地址和选取的工作区间;
在广播周期内,所述协议利用节点数据缓存区的实时情况动态调整CW的大小,以实现节点接入信道的公平性;CW的自适应调整方法为:首先,节点初始化CW的尺寸为最大值CWmax,节点需要进行数据发送的时候,利用公式CWcur=[CWmax*(1-(BS/BST))]对CW进行实时调整,其中,CW当前值CWcur的取值范围始终在[CWmin,CWmax]之间,并取整数; BST代表设定的数据缓存区阈值,BS代表数据缓存区的当前使用值;
(3)、数据周期内,相关节点在对应的工作区间唤醒,源节点开始进行信道竞争,其中CW的大小采用广播周期的CW自适应调整方法进行调整,源节点成功接入信道后与目的节点进行RTS/CTS/DATE/ACK数据交换。
2.如权利要求1所示的一种基于广播消息的无线传感器网络MAC协议,其特征在于:在步骤(2)的源节点在广播周期随机选取工作区间过程中,随机数的生成方法包括如下步骤:
(2.1)、网络中所有的节点维持一个随机数发生器,包含三个变量:最大值NBmax=m,最小值NBmin=1及当前值NBcur;
(2.2)、初始化节点的NBcur=[NBmax/2],并取整数;
(2.3)、需要发送数据的源节点在 [NBmin,NBcur]之间生成一个随机数,并在广播周期竞争信道广播请求消息;其中,生成的随机数即为源节点随机选取的工作区间;
(2.4)、源节点在成功广播自己的请求消息后,在对应的工作区间唤醒进行再次竞争信道进行数据交换;源节点在每次数据交换完成后,对通信结果进行判断,如果数据包发送失败,那么当前值 NBcur加1,反之当前值NBcur减1,其中NBcur的取值范围在[NBmin, NBmax]之间;
(2.5)、重复步骤(2.2)~步骤(2.4)过程。
3.如权利要求1所示的一种基于广播消息的无线传感器网络MAC协议,其特征在于:所述协议根据节点数据缓存区的实时状态采用下述两种数据发送模式:当BS<=BST时,节点使用正常数据传输机制;当BS>BST时,节点使用数据突发机制;所述数据突发机制的工作机制为:
需要使用数据突发机制的源节点,在广播周期以最小CW接入信道发送MORE_RTS进行信道预约,并预定若干个工作区间,目的节点接收到MORE_RTS后,发送MORE_CTS,源节点和目的节点交换控制帧后进入睡眠状态,在广播周期结束后进行连续的数据交换,直到双方节点发现达到预定的工作区间个数,并且剩余时间不足以完成一次数据交换,源节点和目的节点放弃这次数据传输进入睡眠状态;无线传感器网络内的其他源节点根据MORE_RTS进行判断:如果与自己位于同一虚拟簇,则根据包含的预约工作区间数进行判断,定义预约工作区间数为c,如果c< NBmax,源节点暂时在[c+1, NBmax]之间进行工作区间的随机选取,反之直接进入睡眠状态;如果与自己不属于同一虚拟簇,直接进行睡眠状态。
4.如权利要求3所示的一种基于广播消息的无线传感器网络MAC协议,其特征在于:节点根据本地的观测自主调整数据缓存区阈值BST,所述数据缓存区阈值BST的调整方法为:首先,节点初始化BST当前值为(BSTM+BSTN)/2,并以Tbuffer为一个时间周期记录在此期间发送失败的数据包数量,节点在每个Tbuffer周期结束的时刻利用公式Change=(CDEM-BDEM)/ BDEM得出当前Tbuffer周期数据包发送失败数量的变化率,并根据公式BSTC=BSTC*(1+Change)确定节点在下个Tbuffer周期使用的BSTC值,其中,BSTC的取值范围始终在[BSTN, BSTM]之间;
BSTC代表BST的当前值,BSTM代表设定的BST最大值,BSTN代表设定的BST最小值,Tbuffer为缓存区阈值的更新周期,CDEM为当前Tbuffer周期内发送失败的数据包个数,BDEM为上个Tbuffer周期内发送失败的数据包个数,Change为发送失败数据包的变化率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510291731.0A CN104853445B (zh) | 2015-06-01 | 2015-06-01 | 一种基于广播消息的无线传感器网络mac协议 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510291731.0A CN104853445B (zh) | 2015-06-01 | 2015-06-01 | 一种基于广播消息的无线传感器网络mac协议 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104853445A CN104853445A (zh) | 2015-08-19 |
CN104853445B true CN104853445B (zh) | 2018-08-24 |
Family
ID=53852711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510291731.0A Expired - Fee Related CN104853445B (zh) | 2015-06-01 | 2015-06-01 | 一种基于广播消息的无线传感器网络mac协议 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104853445B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105208671B (zh) * | 2015-09-30 | 2018-11-13 | 河南科技大学 | 用于无线传感器网络的高信道利用率h-mac协议的实现方法 |
CN105704798B (zh) * | 2016-01-21 | 2019-06-18 | 河南科技大学 | 一种异步类mac协议的实现方法 |
CN107820305B (zh) * | 2016-09-14 | 2020-07-28 | 华为技术有限公司 | 一种传输wur消息的方法和装置 |
CN107968944B (zh) * | 2017-12-04 | 2020-01-17 | 深圳市瑞科慧联科技有限公司 | 一种图像传输方法和系统 |
CN108282483A (zh) * | 2018-03-21 | 2018-07-13 | 中国人民解放军陆军工程大学 | 无人机自组织网络自适应mac协议框架及数据传输方法 |
CN112073931B (zh) * | 2020-08-20 | 2023-04-07 | 东南大学 | 一种基于冗余节点的线性传感网多跳数据收集方法 |
CN112383925B (zh) * | 2020-11-25 | 2022-06-17 | 海南大学 | 一种基于簇的时空调度mac协议的设计方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009077984A8 (en) * | 2007-12-18 | 2009-11-12 | Nokia Corporation | System and method for distributed pairing of relay and source nodes in a communication system |
CN101977385A (zh) * | 2010-10-27 | 2011-02-16 | 南京航空航天大学 | 一种支持QoS的规模可扩展单跳ad hoc网络动态时隙分配方法 |
CN102695265A (zh) * | 2012-01-09 | 2012-09-26 | 河南科技大学 | 一种基于无线传感器网络的混合机制mac协议通信方法 |
CN102883370A (zh) * | 2012-09-07 | 2013-01-16 | 浙江工业大学 | 基于无线传感器网络的电力线监测系统的分布式数据传输方法 |
-
2015
- 2015-06-01 CN CN201510291731.0A patent/CN104853445B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009077984A8 (en) * | 2007-12-18 | 2009-11-12 | Nokia Corporation | System and method for distributed pairing of relay and source nodes in a communication system |
CN101977385A (zh) * | 2010-10-27 | 2011-02-16 | 南京航空航天大学 | 一种支持QoS的规模可扩展单跳ad hoc网络动态时隙分配方法 |
CN102695265A (zh) * | 2012-01-09 | 2012-09-26 | 河南科技大学 | 一种基于无线传感器网络的混合机制mac协议通信方法 |
CN102883370A (zh) * | 2012-09-07 | 2013-01-16 | 浙江工业大学 | 基于无线传感器网络的电力线监测系统的分布式数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104853445A (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104853445B (zh) | 一种基于广播消息的无线传感器网络mac协议 | |
Van Dam et al. | An adaptive energy-efficient MAC protocol for wireless sensor networks | |
JP5072778B2 (ja) | 無線通信基地局、無線通信端末、無線通信システムおよび無線通信制御方法 | |
Rajendran et al. | Energy-efficient collision-free medium access control for wireless sensor networks | |
CN103260229B (zh) | 基于预测和反馈的无线传感器网络mac协议进行数据传送的方法 | |
US20060028984A1 (en) | Energy efficient medium access control protocol for IEEE 802.11 WLANs | |
WO2008003249A1 (fr) | Procédé et système et de noeud de réseau pour la commande de l'encombrement niveau 2 dans un réseau sans fil | |
CN109890085B (zh) | 一种分优先级机器类通信随机接入退避参数确定方法 | |
Villaverde et al. | Experimental evaluation of beacon scheduling mechanisms for multihop IEEE 802.15. 4 wireless sensor networks | |
Pawar et al. | Hybrid mechanisms: Towards an efficient wireless sensor network medium access control | |
CN102006670B (zh) | 支持应急响应的传感器网络动态轮询介质访问控制方法 | |
CN105208671B (zh) | 用于无线传感器网络的高信道利用率h-mac协议的实现方法 | |
Tang et al. | Energy Efficient Downlink Transmission in Wireless LANs by Using Low‐Power Wake‐Up Radio | |
CN105163394B (zh) | 用于无线传感器网络的服务感知sq-mac协议的实现方法 | |
Wu et al. | An energy efficient MAC protocol for IEEE 802.11 WLANs | |
KR100919483B1 (ko) | 무선 센서 네트워크의 패킷 데이터 통신 방법 및 그 시스템 | |
Gong et al. | Traffic adaptive MAC protocol for wireless sensor network | |
Krishnamurthy et al. | Reservation-based protocol for monitoring applications using IEEE 802.15. 4 sensor networks | |
Bouabdallah et al. | The tradeoff between maximizing the sensor network lifetime and the fastest way to report reliably an event using reporting nodes’ selection | |
Kim et al. | CA-MAC: Context adaptive MAC protocol for wireless sensor networks | |
Zou et al. | A contention window adaptive MAC protocol for wireless sensor networks | |
CN103139834B (zh) | 一种无线传感器网络多速率自适应退避方法 | |
Janbakhsh et al. | An Energy Efficient Cross-Layer Protocol for Wireless Sensor Networks | |
Souil et al. | A new adaptive MAC protocol with QoS support for heterogeneous wireless sensor networks | |
Masuno et al. | A study on energy-efficient protocol based on the CSMA/CA in ad-hoc networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180824 Termination date: 20190601 |
|
CF01 | Termination of patent right due to non-payment of annual fee |