无线传感网络中基于mac协议的帧长度自适应数据传输方法

文档序号:10597749阅读:380来源:国知局
无线传感网络中基于mac协议的帧长度自适应数据传输方法
【专利摘要】本发明公开了一种无线传感网络中基于MAC协议的帧长度自适应数据传输方法,发送节点对发送的数据进行估错码编码EEC1,并存储在发送节点,而不需要发送到接收端,当接收节点接收到数据时,以同样的方式将接收到的数据进行估错码编码EEC2并将编码整合到应答信号中发送个发送节点,发送节点接收到应答信号后,提取EEC2,并将其与EEC1运算估计误码率,判断接收节点接收到的数据是否可用,并决定是否重发当前数据。在整个数据传输过程中,发送节点的编码不需要发送,因此保证了EEC1不会出现误码,而EEC2放在应答信号中发送,应答信号比较短,发送出现误码的概率较小,因此EEC2可靠性有效提高,用于估计出来的误码率准确性也较高。
【专利说明】
无线传感网络中基于MAC协议的帧长度自适应数据传输方法
技术领域
[0001] 本发明涉及了无线传感网络中基于MAC协议的帧长度自适应数据传输方法,利用 误码率实时计算最优帧长,属于无线传感网络技术领域。
【背景技术】
[0002] 无线传感网络中节点一般为电池供电,能量具有有限性,如何控制传感器节点的 能耗,延长节点寿命成为了基础课题。节点能耗主要是在射频通信模块,它具有发送模式、 接收模式、空闲侦听模式、休眠模式四种工作模式。四种模式下的能耗依次减小,因此在传 输数据中,以较小的数据帧的通信荷载将数据可靠的传输有利于能量有效性的提高。
[0003] 介质访问控制(Medium Access Control,MAC)层属于数据链路层,位于无线传感 网络通信协议的底层部分,其功能是管理一跳范围内的无线信道,解决传感器节点如何接 入和使用信道的一种方式。在网络通信的过程中,有可能多个节点同时接入信道,导致不同 节点之间产生碰撞,引起信道竞争的状况发生。如果节点接入信道方式不合理,将会导致数 据接收出现串听的情况,使得接收到的数据无法使用,这一现象不但会降低数据传输的可 靠性,而且大大增加了节点的能量消耗。
[0004] 无线传感网络不同于传统的传感网络,它的节点无法得到持续的能量供应或者及 时的能量补给,这使得WSN受到了能量的限制。因而在MAC协议设计时,当着重考虑节点的能 耗问题。好的MAC协议能够很好的支配节点的各个状态以降低节点能耗。
[0005] 在数据传输时,数据帧的正确接收与数据帧长度息息相关。但是数据帧长过短,将 会增加数据帧的通信荷载,使得节点耗能增加;如果数据帧长过长,将会使得误码率增加, 从而增加了数据帧的重传次数,同样会增加节点的耗能,因此选择合适的帧长平衡好通信 荷载与重传次数是减少能量损耗的有效方法。
[0006] Chen Binbin等人于2010年在论文Efficient Error Estimating Coding: Feasibility and Applications中提出了估错码(EEC)编码方法。通过原始数据的估错码 和接收到的数据的估错码便可估计出数据传输的误码率。因此使得我们不用去对数据进行 纠错,而直接通过估计误码率来判断接收到的数据是否可用。

【发明内容】

[0007] 发明目的:为了解决数据传输机制中的能耗问题,本发明提供一种无线传感网络 中基于MAC协议的帧长度自适应数据传输方法,具有帧长度自适应能力,而且在数据传输 的可靠性得到了提高,有利于数据传输中准确性的提高和误码率的降低。
[0008] 技术方案:为实现上述目的,本发明中无线传感网络中基于MAC协议的帧长度自适 应数据传输方法,包括以下步骤:
[0009] (1)发送节点将要发送的数据以初始化帧长进行聚合或分割,将该数据进行估错 码编码后发送出去,得到的估错码记为EECi并进行存储;
[0010] (2)接收节点接收到该数据,将数据用与发送节点相同的编码方式进行估错码编 码,得到的估错码记为EEC2,并将其放入数据应答信号中,发回发送节点;
[0011] (3)发送节点接收应答信号,从中获取接收节点返回的估错码EEC2,将估错码EECi 和EEC2进行运算估计接收节点接收该数据帧的误码率;
[0012] (4)判断该误码率是否在数据可用范围,如果可用则发送节点结束该数据的发送; 如果不可用,则利用当前误码率以及能耗模型计算出数据的最优帧长,利用该最优帧长对 该数据进行重新聚合或分割后发送给接收节点。
[0013] W-MAC协议是一种异步通信协议,是针对本发明提出的新型帧长度自适应算法建 立的。对于该协议,接收节点周期性进入侦听模式,用以发现需要发送数据的节点。当发送 节点有数据需要发送时,则会发出唤醒包,用于唤醒接收节点,从而进入数据发送模式。
[0014] 当发送节点发出唤醒包时,会立即进入侦听状态,侦听接收节点返回的应答信号。 如果唤醒包在接收节点的侦听模式时到达,则接收节点接收唤醒包将节点唤醒,并发出应 答信号;在发送节点侦听到应答信号后,就开始数据帧的发送。接收节点接收到数据后返回 一个应答信号,并进入短暂的侦听状态(定义为wait state),当发送节点接收到接收节点 返回的数据接收应答信号时,会对应答信号中的信息进行处理,从而判断发送的数据是否 可用。如果可用,则进入休眠状态或者进入下一帧数据的发送;如果不可用,则将会将当前 的数据帧重发。接收端在wait state状态时,如果接收到了发送端的数据,则会继续工作; 如果没有,则进入休眠状态,并且判断当前帧为可用帧。
[0015] 能量消耗一直是无线传感网络中研究的重点,下面针对提出的新型高可靠 MAC协 议进行能耗模型的建立。在该能耗模型中,主要是考虑传感器节点一周期内处于不同工作 模式下的时间,结合不同模式下电流大小,来表征能耗的大小。
[0016]考虑节点n发送数据帧的量,当前节点不仅有可能自己会有数据需要发送,而且 还可能成为中转节点,将来自于子节点的数据转发出去,因而节点n发送的数据量应为两者 之和。数学表达式如下:
[0018] 其中,Ftx, n表示节点n发送的数据帧的数量,Nrtx, 1 ( X )表示重传次数且
1 Fn表示节点n生成的数据帧的数量,h表示节点n的数据包头长 度,x表示数据帧长,hc;+x。表示子节点c发送数据时的帧长度,角标1表示数据从节点n发送到 节点n的父节点的路径,角标lc表示从子节点c发送到节点n的路径,Ri。表示数据从子节点c (c G Cn,Cn为子节点构成的集合)发送到n的可靠性。
[0019] 当发送端需要发送数据时,会不断的发出唤醒包来唤醒接收节点。由于发送端发 出唤醒包的时间可以看做是随机的,则这里求得唤醒包的数据是一个期望值:
[0021 ]其中,Upr,"表示节点n的唤醒包的数据量(单位:字节),Fpr,"表示节点n唤醒包的数 据帧数量(单位:帧),a为帧长度。
[0022] 节点n在节收到子节点c发送的唤醒包后,将转换为发送模式,发送出应答信号。此 时,将发送出去的应答信号s-ack的数据量表达为:
[0023] Us -ack,lc -(Nrtx,lc+1 )Fs-ack,lc ? ppr,lc ? S
[0024]其中,Us-ack,lc表示应答信号的数据量,NrtX,lc表示从节点C至lj节点11数据重传的次 数,Fs-ac;k,l。表示数据帧的数量,Ppr,l。表示唤醒包的发送成功率,S表示唤醒包应答信号的帧 长度。
[0025] 当节点接收到发送端传来的数据帧后,会对接收到的数据进行估错码编码,并将 编码整合到数据接收成功应答信号d-ack中,此时由于估错码编码得长度与选取的每一层 的编码长度有关还与数据帧长度有关,因而可将应答信号d-ack的长度看做与帧长度x相关 的函数,其表达式如下:
[0026] d(x) =q ? [log2(8x)]
[0027] 其中,q表示每一层估错码的长度,[*]表示取不大于*的整数,8x表示长度为x的数 据帧中的数据位(bit)的数量。
[0028]所以接收端发送应答信号d-ack的数据量为:
[0029] Ud-ack, lc-(Nrtx,lc+1 )Fd-ack,lc ? Rlc ? d ( Xc )
[0030]其中,Fd-ackjc;表不应答信号d-ack的数据帧数量。
[0031] 结合以上论述,可以得到节点因为接收节点却处于发送状态下,发送的数据量为:
[0032] Urxt, lc - Us-ack, lc+Ud-ack, lc
[0033]其中,Urxt,lc表示发送的数据量。
[0034]节点n发送的数据量所用的时间包括:为接收节点时,处于发送模式发送所需时 间;发送唤醒包的数据量;将来自于子节点的数据和自身生成的数据发送给父节点时所需 的时间之和,可以得到表达式为:
[0035] . Ttxt,i.+ (U.pr,.n .+ y , Ur'xt,!c) " ceCn
[0036] 其中,Dtx,n表示一周期内节点n处于发送状态的时间,Tb表示发送一个字节所需的 时间,,T txt,i表示节点n通过路径1向父节点发送数据时所需时间。式中(Upr,n +__S.ceCn.UMy.c) 是一个与变量x无关的式子。
[0037] 节点n处于接收模式的时间表达式:
[0038] D.rx,.n SceC.h Ftx,lc ' Trxr,】.c + (Us_ack,i + Ud-ackj +. Ui.cn,i + Uwait) " Tb + Ton
[0039] 其中,Us-ack,i,Ud-ack,i前面已经给出。
表示侦听应答信号时的 长度DUwait表;^等待状态时的长度:Twa = Uwait ? Tb。
[0040] 所以,结合Dtx,n和Drx, n可以得到传感器节点n的能量消耗如下:
[0041] W(X) =Dtx,n ? Itx+Drx,n ? Irx+(T-Dtx,n-Drx,n) ? Iidle
[0042] =Dtx,n ? lAti+Drx,n ? iAri+WTidle
[0043] 其中,W(x)表示节点n的能耗,Itx,Irx,Iidie表示节点n分别处于发送模式、接收模式 以及休眠模式下的工作电流,14" = ^-11也,1411=11^-11心,1加16 = 1'*11心。
[0044] 将Dtx,n和Drx,n的表达式代入,可以得到:
[0045] W(X) = [Ftx,n(X) ? Ttxt,l ? iAti+Ud-ack,l ? iAri+E [0046]其中,E是一个与x无关的量:
[0047] E= (Upr,n+SUrxt,lc) ? Tb ? lAti+ | SFtx'lc ? Trxr,lc+(Us-ack,l+Ulen,l+Uwait) ? Tb + T〇n | ? iAri+ffTidle
[0048] 其中,Trxr,i。表示子节点c通过路径lc向节点n接收数据时所需时间。
[0049] 将 Nrtx(x)和 Ud-ack,i 代入可得:
[0051] 其中,
[0052] Un = Fn(h + x) + ^ frtx,cRic (hc + xc)
[0053] Ci = Un ? Tb ? iAti
[0054] C2 = Un # Rl # S ? iAri
[0055] 根据W(x)的表达式,并结合误比特率导致的丢包率的情况,即:
[0056] PRR(x) = (l-BER)h+x
[0057] 其中,PRR(x)表示收包率。
[0058] 要求得最优帧长,使得传感器节点的能耗最小,那么就需要求W(x)的最小值及对 应的x的取值。由于式中[log2(8x)]为取整函数,令:
[0059] [ log2(8x) ] =k
[0060] 式中,k的取值根据X的大小而定,如果X的最大值取128,那么k = 3,4,……10。此时 x的取值范围为:2k4彡x < 2^2。
[0061] 所以当 2k-3<x<2k-2时,
[0063] 对W(x)求导数,可以得到:
[0065] 其中,ai = _Ci ln(l-BER)
[0066] a2 = - (2hCi+kC2) In (1 -BER)
[0067] a3 = _[Cih2ln(l -BER) +C2hk 1 n (1 -BER) +C2k ]
[0068]由于W'(x)的表达式中,PRR(x)(h+x)2大于0,则令W'(x)=0时,可以得到:
[0069] aix2+a2X+a3 = 0
[0070] 求解得:
[0072] ai<0是不可能出现小于0的帧长的,因而舍掉。
[0073] 为了求得在给定区间上W(x)的最小值,则需要对每一段求出最小值之后,相比各 个最小值取在整个区间上的最小值。即:
[0074] 求区间2k-3<x<2k- 2上W(x)的最小值,记为Wmin,k(xk),其中,
[0075] xk:二Xlx使得w(x)在区间[2k- 3,2k-2】上去最小值
[0076] 则在整个 |X:|'llj h:Wmin(X) = 记此时的 xi^XWmin,此时的抑*的 取值可能会出现在每个小区间的端点,以及对应的区间上的Xk2处。
[0077] 综上所述,可以得到最优帧长的表达式为:
[0078] xopt = fLXwmin], if 〇 < Xwmin < X_ v ^inax > else
[0079] 其中,[X2]表示对X2取整,Xmax的取值由使用的传感器类型决定。
[0080] 本发明中涉及到的部分参数列表如下表所示:
[0082]有益效果:本发明中无线传感网络中基于MAC协议的帧长度自适应数据传输方法 在数据传输中具有高可靠性,有利于误码率的准确估计,从而确定更为合适的最优帧长。首 先,估错码££&编而不发,包中了 EECjg够无错误的反映发送数据的特征;然后,接收节点的 估错码EEC2反映了接收到数据的特征,将估错码EE&放在应答信号中发送,其好处主要是应 答信号是一个很短的数据帧,能够以较低的误码率发送给发送节点,因而发送节点接收到 的估错码EEC 2产生的误码率将会大大减小。从而在发送端运算估计得到的数据误码率将会 具有更高的可靠性;通过误码率实时计算最优帧长,能够很好的实现帧长自适应性,而且实 时性好,能够在复杂多变的环境下具有很高的适应能力,应变能力强;将本发明方法应用在 MAC层,能够突出W-MAC协议的高可靠性。
【附图说明】
[0083]图1为本发明中无线传感网络中基于MAC协议的帧长度自适应数据传输方法的流 程图;
[0084] 图2为本发明中高可靠性MAC协议的数据发送过程示意图;
[0085] 图3为利用本发明的能耗模型得到的最优帧长与误码率的关系图;
[0086] 图4为利用本发明的能耗模型得到的能耗与帧长度的关系图。
【具体实施方式】
[0087] 下面结合实施例对本发明作更进一步的说明。
[0088] 图1中无线传感网络中基于MAC协议的帧长度自适应数据传输方法,包括以下步 骤:
[0089] 当有数据需要发送时,如果节点处于起始状态,则对参数进行初始化,并且设置标 识,表明数据发送利用初始化参数,则不需要进行误码率计算和最优帧长计算;
[0090] 然后对要发送的数据进行估错码编码,得到编码EEQ,并存储在发送节点中,将数 据帧发送出去。
[0091] 当接收节点接收到数据时,对数据进行相同方式的估错码编码,得到编码EEC2,并 将EEC2放入应答信号d-ack中,发送给发送节点,并且接收节点在此时进入wait state状 o
[0092] 发送节点接收到d-ack信号时,从中提取估错码EEC2,并将进行运算估 计接收节点接收到的数据的误码率,从而判断数据是否可用。
[0093] 如果可用,数据发送完成(这一周期只发送一帧的情况);如果不可用,则计算当前 信道状况下的最优帧长,重新将数据以最优帧长发送,确保数据的误码率得到有效的降低。
[0094] 如图2所示,为高可靠性MAC协议(W-MAC协议)的数据发送过程。〈1>为接收节点周 期性侦听信道,持续时间为Tc> n,如果没有侦听到有发送节点需要发送数据则侦听过后进入 休眠模式,持续时间为T〇f f,因此接收节点侦听周期为T = UTrf f。
[0095] 发送节点需要发送数据时,则不断广播唤醒包(如图1中〈2>所示),持续时间为Tpr, 然后进入侦听模式,用于侦听接收节点返回的应答信号,侦听持续时间为T len。
[0096]接收节点收到唤醒包后(如图1中〈3>所示),接收节点就会返回应答信号pr-ack告 诉发送节点可以发送数据(如图1中〈4>所示),并对发送的数据进行估错码编码得到EECu [0097]发送节点接收到应答信号后,则开始发送数据(如图1中〈5>所示),发送数据持续 时间记为Td。
[0098] 接收节点数据接收完成(如图1中〈6>所示),接收端则会发出数据接收完成得应答 信号d-ack(如图1中〈7>所示),应答信号d-ack中包含了接收到的数据的估错码编码信息, 并且接收节点会进入侦听模式(即wait state状态,如图1中〈10>所示),持续时间为Twa。
[0099] 发送节点接收到应答信号d-ack后(如图1中〈8>所示),会提取其中的估错码编码 f目息,进行误码率估计。
[0100] 如果得到的误码率在可接受范围,则数据发送完成,如图1中〈9>进入休眠模式,或 者开始下一帧数据的发送;如果误码率超出了可接受范围,则如图1中〈9>则会根据当前误 码率确定的最优帧长重新发送数据。
[0101] 如果在如图1中〈10>持续时间内接收到数据,则继续处于工作模式,否则Twa过后进 入休眠模式。
[0102] 如图3所示,利用本发明提出的能耗模型计算得到的最优帧长与误码率变化的关 系。在模型的参数选取中,采用的是CC2430的参数,以及取办=0.99, 8 = 3,11 = 2。该图反映 的是误码率与最优帧长的关系,这里最优是相对于能量消耗而言。在数据传输的过程中,如 果帧长过长,将导致误码上升,数据重传次数增加,从而使得数据传输完成所需的能耗增 加;如果帧长过短,将导致通信开销增加,传输相同数据量,所需数据帧的数量增加,也会导 致数据传输完成所需的能量增加。当估计出当前的数据帧的误码率时,该误码率反映的是 当前的信道状况,并通过当前误码率计算出的最优帧长是在当前信道状况下使得数据最终 成功传输所需能量最小的帧长。
[0103] 如图4所示,为利用本发明提出的能耗模型,计算得到的误码率分别为0.0001、 0.01、0.02的情况下的能量耗损与帧长变化的关系。图中标记了坐标则表示在当前误码率 下的最优帧长,并且图中反映的是能耗特征,并不是真实的能量消耗。当BER=0.0001时,传 感器节点能耗在帧长为128Byte处达到最小值;当BER = 0.01时,节点能耗在帧长为50Byte 处达到最小值;当BER = 0.02时,节点能耗在帧长为46处达到最小值。
[0104]以上详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中 的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这 些等同变换均属于本发明的保护范围。
【主权项】
1. 一种无线传感网络中基于MAC协议的帧长度自适应数据传输方法,包括以下步骤: (1) 发送节点将要发送的数据以初始化帧长进行聚合或分割,将该数据进行估错码编 码后发送出去,得到的估错码记为EE&并进行存储; (2) 接收节点接收到该数据,将数据用与发送节点相同的编码方式进行估错码编码,得 到的估错码记为EEC2,并将其放入数据应答信号中,发回发送节点; (3) 发送节点接收应答信号,从中获取接收节点返回的估错码EEC2,将估错码EECjP EEC2进行运算估计接收节点接收该数据帧的误码率; (4) 判断该误码率是否在数据可用范围,如果可用则发送节点结束该数据的发送;如果 不可用,则利用当前误码率以及能耗模型计算出数据的最优帧长,利用该最优帧长对该数 据进行重新聚合或分割后发送给接收节点。2. 根据权利要求1所述的无线传感网络中基于MAC协议的帧长度自适应数据传输方法, 其特征在于,所述能耗模型为:式中,W(x)表示发送一次数据所需要的能耗,PRR(x)与误码率相关,表示收包率,X为发 送的数据帧长,2k-3<x<2k_2,Cl、C2、E是为简化表达式,将能耗模型中与X无关的参量表示 出来的参数,h表示数据帧的头部序列。3. 根据权利要求2所述的无线传感网络中基于MAC协议的帧长度自适应数据传输方法, 其特征在于,利用所述能耗模型获取到的最优帧长1¥为:其中,[X2]表示对X2取整,Xmax的取值由使用的传感器类型决定,Xfcin表示使得节点能耗 W( X )达到最小值时的帧长度。4. 根据权利要求1所述的无线传感网络中基于MAC协议的帧长度自适应数据传输方法, 其特征在于,接收节点和发送节点之间存在以下信息互通方式: 所述接收节点周期性进入侦听模式,用以发现需要发送数据的节点; 当发送节点有数据需要发送时,则会发出唤醒包来唤醒接收节点,从而进入数据发送 模式; 发送节点发出唤醒包后进入侦听状态,侦听接收节点返回的应答信号; 如果唤醒包在接收节点处于侦听模式时到达,接收节点接收唤醒包并发出应答信号; 发送节点侦听到应答信号后开始数据帧的发送; 接收节点接收到数据后返回一个应答信号,并进入短暂侦听状态; 发送节点接收到应答信号后,会对应答信号中的信息进行处理,并判断发送的数据是 否可用,如果可用,则进入休眠状态或者进入下一帧数据的发送;如果不可用,则将会将当 前的数据帧重发; 接收节点处于短暂侦听状态时,如果接收到了发送端的数据,则会继续工作;如果没 有,则认为当前数据帧为可用帧,进入休眠状态。
【文档编号】H04W84/18GK105959979SQ201610383103
【公开日】2016年9月21日
【申请日】2016年6月1日
【发明人】张萌, 喻国芳
【申请人】东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1