首页> 中国专利> 融合信噪比、链路质量指数和包接收率的链路质量估计器

融合信噪比、链路质量指数和包接收率的链路质量估计器

摘要

本发明公开了一种融合信噪比、链路质量指数和包接收率的链路质量估计器,属于无线传感网络技术领域,采集树协议的链路质量估计器存在的如下缺点:未考虑包长度对包接收率的巨大影响;需统计大量数据包进而估计链路质量;能效有待进一步提高。本发明针对这些缺点,设计了融合信噪比、链路质量指数和包接收率的链路质量估计器,其内容包含:链路质量的表达式的拟合、包的设计以及邻居表中条目的更新。本发明实现的链路质量估计器具有仅需统计少量(小于10个)包就可进行高分辨率的链路质量估计、所有包采用完全相同的长度、链路质量估计能跟上链路质量快速变化以及能效较高的优点。

著录项

  • 公开/公告号CN104320217A

    专利类型发明专利

  • 公开/公告日2015-01-28

    原文格式PDF

  • 申请/专利权人 浙江科技学院;

    申请/专利号CN201410597267.3

  • 发明设计人 鲁琛;杨祥龙;葛丁飞;

    申请日2014-10-30

  • 分类号H04L1/00;H04L1/16;H04W40/24;

  • 代理机构杭州求是专利事务所有限公司;

  • 代理人林松海

  • 地址 310023 浙江省杭州市留和路318号

  • 入库时间 2023-12-17 04:36:06

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-22

    未缴年费专利权终止 IPC(主分类):H04L1/00 授权公告日:20170929 终止日期:20181030 申请日:20141030

    专利权的终止

  • 2017-09-29

    授权

    授权

  • 2015-02-25

    实质审查的生效 IPC(主分类):H04L1/00 申请日:20141030

    实质审查的生效

  • 2015-01-28

    公开

    公开

说明书

技术领域

本发明涉及一种融合信噪比、链路质量指数和包接收率的链路质量估计器,属于无线传感网络技术领域。

背景技术

由于无线信号发射和接受功率有限,无线传感网络中必须对链路质量进行估计,因此链路质量估计器是无线传感网络不可缺少的部分,直接影响影响路由选择准确与否以及通信协议的能量效率。

目前,采集树协议(以下简称CTP)是国内外研究中常用的协议,在采集树协议中,节点间发送或接收数据包和路由信标包,协议由如下三个部分组成:①路由引擎负责发送路由信标、更新路由、防止路由环路和防止重复发送;②转发及发送引擎负责数据包的发送并通过发送队列和发送缓存来防止重复发送;③链路质量估计器对数据包和路由信标进行统计和解析,从而更新和邻居节点之间的双向期望传输次数(以下简称ETX)。

CTP的邻居表的每个条目中含有以下4项:ll_addr(该项记录该邻居节点地址)、inquality(该项记录该邻居节点到本节点的链路的包接收率归一化后的值)、outquality(该项记录本节点到邻居节点的链路的包接收率归一化后的值)、etx(该项记录本节点到邻居节点链路的双向ETX值)。链路质量估计器在以下几种情况下更新相应的邻居表条目:①节点在收到邻居节点广播路由信标后,记录接收到的路由信标的个数,并通过接收到的信标序列号计算未收到的信标个数,当接收到的路由信标个数增加到一定数目时,就计算出路由信标接收窗口内(窗口设定为5-10的自然数)的PRR,取倒数并归一化,然后与邻居表条目中记录的原inquality采用指数加权移动平均(以下简称EWMA)的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项;②节点接收到邻居节点广播的路由信标后,就根据该路由信标中所含的本节点到该邻居节点的单向链路的inquality值更新本节点邻居表中记录的该邻居节点的outquality项;③节点每发送一个数据包后,将是否收到目的节点的应答记录下来,并通过收到的数据包的序列号计算出未收到的数据包的个数,当接收到的数据包个数增加到一定数目时,就计算出数据包接收窗口内(窗口设定为5-10的自然数)的数据包接收率,取倒数并归一化,然后与邻居表条目中记录的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项。这样,采集树协议通过对发送或接收路由信标、数据包进行统计,就可以完成链路质量的实时估计。

然而,采集树协议的链路质量估计器存在如下缺点:①采集树协议的链路质量估计器中,用来统计接收率(以下简称PRR)的数据包、路由信标或新的应答包的长度都是不一样的,包的接收率受包的长度影响非常大,在其他环境都相同的情况下,长度大的包的接收率远低于长度小的包,因此,CTP的链路质量估计器通过统计路由信标包的接收情况进而更新衡量数据包的链路质量参数的方法存在着问题;②采集树协议的链路质量估计器采用最原始的对数据包和路由信标包进行统计的方法获取PRR,进而计算ETX,因此,当统计的数据包和路由信标包较少时,这一方法存在估计PRR的精确度过低的缺点(如统计10个包,则1个包统计与否对统计结果造成10%的误差),而当统计的数据包和路由信标包较多时,这一方法存在估计PRR的速度过慢(因为需要对大量的包进行统计),进而导致链路质量估计器无法跟踪链路质量快速变化的缺点,这是个两难的问题;③采集树协议的链路质量估计器由于未考虑影响链路的本质因素,如链路质量指数(以下简称LQI)和信噪比(以下简称SNR)等,因此其链路质量估计的准确度存疑,这无疑将影响链路质量估计器的能效。

发明内容

为了克服前述的采集树协议的链路质量估计器存在的缺点,本发明提供了一种融合信噪比、链路质量指数和包接收率的链路质量估计器,其包含:

⑴链路质量的表达式的拟合:通过进行链路质量现场实验拟合估计链路质量的表达式;

⑵包的设计:重新设计节点发送或接收3种包,即数据包、新的应答包和路由信标包。设计新的应答包的格式。让其“携带”目的节点到应答包发送节点之间链路的信息,这样,节点接收到邻居节点广播的路由信标或者发送的应答包时,就可根据该路由信标中所含的信息更新自身邻居表中的相应域。为更好地利用⑴中拟合得到的表达式的结论,将所有数据包、路由信标或新的应答包的长度固定为35个字节;

⑶邻居表中条目的更新:当节点获得当前接收窗口内(窗口设定为5-10的自然数)数据包、路由信标或新的应答包的接收个数、发射机发送的包的个数和接收到的包的SNR、LQI信息时,就可以将这些信息带入⑴中拟合的估计链路质量的表达式,从而预测将来一段时间内相应链路的PRR,进而可对采集树协议的链路质量估计器邻居表相应条目的inquality项或etx项进行更新。

需要注意的是,由于包的长度会影响包的接收率,因此,⑴中拟合得到的表达式的适用前提是包的长度相同,为了更好地利用⑴中拟合得到的表达式的结论,将所有数据包、路由信标或新的应答包的长度固定为35个字节。

⑴链路质量的表达式的拟合

将10个节点部署在实验现场,节点间两两组成无线链路,共90条无线链路。对于第i条链路,传输60个总长度为35字节的数据包,数据包之间的时间间隔为50ms,接收机统计前10个数据包的SNR的累加值SNRtotali、LQI的累加值LQItotali和前10个数据包中接收到的个数m,按公式PRR′i=m/10计算PRR′i,按公式SNRAvgi=PRR′i·SNRtotali/m计算SNRAvgi,按公式LQIAvgi=PRR′i·LQItotali/m计算LQIAvgi。再统计接下来的50个数据包的PRRi,这样60个包获取的数据组成建模集。

SNR的获取方法如下:接收机以30ms为周期定时采样信道空闲时的接收信号强度指数,作为一次噪声基底的样本值更新噪声基底表中的条目,每8次采样后由8个条目的平均值计算此时噪声基底,与旧的噪声基底数据加权平均后作为新的噪声基底,接收到的数据包的信噪比由该数据包的rssi域的值减去最新的噪声基底得到,LQI则直接从数据包的lqi域获取。

拟合链路质量的表达式时要去除PRR等于1的数据点,利用建模集中PRR未达到1的数据对以下链路质量的表达式进行拟合:

PRRi=A·SNRAvgi+B·LQIAvgi               I

可以求出表达式的参数:

>A=(Σi=1pSNRAvgi·PRRi)(Σi=1pLQIAvgi2)-(Σi=1pLQIAvgi·PRRi)(Σi=1pSNRAvgi·PRRi)(Σi=1pSNRAvgi2)(Σi=1pLQIAvgi2)-(Σi=1pLQIAvgi·SNRAvgi)2---II>

>B=(Σi=1pSNRAvgi·PRRi)(Σi=1pLQIAvgi2·SNRAvgi)-(Σi=1pLQIAvgi·PRRi)(Σi=1pSNRAvgi2)(Σi=1pLOIAvgi·SNRAvgi)2-(Σi=1pSNRAvgi2)(Σi=1pLQIAvgi2)---III>

进而可确定出链路质量的表达式I的具体形式:

PRRi=A·PRR'·SNRtotal/m+B·PRR′i·LQItotal/m                          IV

⑵包的设计

融合信噪比、链路质量指数和包接收率的链路质量估计器中,每个节点发送或接收3种包:数据包、新的应答包和路由信标包。

新的应答由包头(长度为10字节)、应答序列号域(长度为1字节)、需要返回应答的邻居节点的单向etx(长度为2字节)域、填充(长度为13字节)域、元数据(长度为10字节)域组成。数据包由包头(长度为10字节)、选项(option,长度为1字节)域、存活时间(THL,TimeHave Lived,长度为1字节)域、期望传输次数(表示发送该数据包的节点的ETX值,长度为2字节)域、源地址(origin,长度为2字节)域、源节点序列号(originSeqNo,长度为1字节)域、类型(表示该数据包在应用层的类型,长度为1字节)域、数据(长度为4字节,数据包具体内容)域、填充(长度为5字节)域、元数据(长度为10字节)域组成。路由信标由包头(长度为10字)、信标包头(长度为2字节)域、信标载荷(长度为3字节)域、包尾(长度为10字节)域和元数据(长度为10字节)域组成,其中包尾域的填充规则如下:①如果未写入上一个路由信标包包尾的邻居表的条目数小于6,则将这些条目中的ll_addr、inquality全填在本路由信标的包尾(每个邻居表条目的相关“描述”在包尾中占2个字节),其余字节用0x00占满;②如果未写入上一个路由信标包包尾的条目数大于6,则将前5个按①的方法进行填写,在下一条路由信标中对剩余的条目继续按①的方法进行判断和填写。这样,所有包的长度都是35字节。

⑶邻居表中条目的更新:

本节点或邻居节点在以下几种情况下对邻居表中相应条目进行更新:

①邻居节点广播路由信标,本节点接收后记录接收到的路由信标的个数并将接收到的SNR和LQI进行累加,同时通过收到的路由信标的序列号计算出收到的和未收到的路由信标的个数,当接收到的路由信标个数增加到一定数目时,就将包接收窗口内(窗口设定为5-10的自然数)的SNR累加值SNRtotal、LQI累加值LQItotal、收到的路由信标的个数m、当前路由信标接收窗口内(窗口设定为5-10的自然数)的路由信标接收率PRR'带入公式IV,计算出将来一段时间的PRR,取倒数归一化作为记录的单向链路质量参数,然后与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项;

②本节点收到邻居节点广播的路由信标的时候,就根据该路由信标中所含的本节点到该邻居节点的单向链路的inquality值更新本节点的邻居表中该邻居节点条目的outquality项;

③禁止原采集树协议中每个节点在收到数据包后自动发送应答包的功能,用新的应答包进行应答,新的应答包的应答序列号域中记录该应答包是本节点对需要返回应答的邻居节点返回的“第几个”应答包,新的应答包的需要返回应答的邻居节点的单向etx域中记录需要返回应答的邻居节点到本节点这一链路的单向etx值。在接收或发送数据包和新的应答包的过程中,在以下几种情况下对邻居表条目中记录的inquality、outquality和etx项进行更新:i.本节点每次接收到新的应答包后,将需要返回应答的邻居节点的单向etx域记录为etx',以此更新本节点的邻居表中该邻居节点条目中的outquality。本节点对收到目的节点的新的应答包的个数进行累加并通过新的应答包中的序列号计算出收到的和未收到的新的应答包的个数,并将收到新的应答包的SNR和LQI累加,当接收到的新的应答包的应答序列号增加一定数目时,就将新的应答包接收窗口内(窗口设定为5-10的自然数)的SNR累加值SNRtotal、LQI累加值LQItotal、收到的新的应答包的个数m、当前路由信标接收窗口内(窗口设定为5-10的自然数)的新的应答包接收率PRR'带入公式IV,计算出将来一段时间的PRR,取倒数归一化作为记录的单向链路质量参数,然后与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项。ii.邻居节点记录接收到的数据包的个数并将每一个收到的数据包的SNR和LQI累加,当接收到数据包的序列号增加一定数目时,就将新的应答包接收窗口内(窗口设定为5-10的自然数)接收到的数据包的SNR的累加值SNRtotal、LQI的累加值LQItotal和收到的数据包的个数m、当前数据包接收窗口内(窗口设定为5-10的自然数)的数据包接收率PRR'带入公式IV,计算出将来一段时间的PRR,然后取倒数后归一化作为记录的单向链路质量参数,与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项。

本发明的有益效果:

⑴本发明的链路质量估计器通过融合SNR、LQI和PRR的设计,解决了采集树协议的链路质量估计器面临的两难的问题,只需对少量(小于10个)数据包、路由信标或新的应答包进行统计,即可进行分辨率很高的链路质量估计(PRR);

⑵采集树协议的链路质量估计器中,用来统计接收率的数据包、路由信标的长度不同,包的接收率受包的长度影响非常大,在其他环境都相同的情况下,长度大的包的接收率远低于长度小的包,因此,CTP的链路质量估计器通过统计路由信标包的接收情况来更新数据包的链路质量的方法存在着问题,本发明所用的数据包、路由信标和新的应答包的长度都是35字节,因此完全克服了这一问题;

⑶能效的比较:CTP的链路质量估计器和融合信噪比、链路质量指数和包接收率的链路质量估计器的不同主要是综合的信息不同和对链路质量参数更新的时机不同,但两者都采用跨层设计,并且很相似,为比较二者的性能,将采集树协议的链路质量估计器替换为融合信噪比、链路质量指数和包接收率的链路质量估计器并对原协议的组件做相应的修改,最后形成SNR-LQI-PRR采集树协议。与此同时,为了计算所有节点平均每个数据包的传输消耗,需对信标和数据包发送的数目进行统计,程序上的实现方法是编写BeaconPlus-DataRetriesCounterP模块并完成相应绑定。

附图说明

图1是本节点与邻居节点发送数据包和路由信标示意图;

图2是采用CTP的节点的数据包接收率图;

图3是采用SNR‐LQI‐PRR采集树协议的节点的数据包接收率图;

图4是CTP和SNR‐LQI‐PRR采集树协议的平均每个数据包的传输消耗对比图。

具体实施方式

为了克服前述的采集树协议的链路质量估计器存在的缺点,本发明设计了一种融合信噪比、链路质量指数和包接收率的链路质量估计器,包含以下内容:

⑴链路质量的表达式的拟合:通过进行链路质量现场实验拟合估计链路质量的表达式;

⑵包的设计:重新设计节点发送或接收3种包,即数据包、新的应答包和路由信标包。设计新的应答包的格式。让其“携带”目的节点到应答包发送节点之间链路的信息,这样,节点接收到邻居节点广播的路由信标或者发送的应答包时,就可根据该路由信标中所含的信息更新自身邻居表中的相应域。包的长度会影响包的接收率,因此,⑴中拟合得到的表达式的适用前提是包的长度相同,为了避免因数据包长度不同而造成接收率的巨大差异,以及更好地利用⑴中拟合得到的表达式的结论,将所有数据包、路由信标或新的应答包的长度固定为35个字节;

⑶邻居表中条目的更新:当节点获得当前接收窗口内(窗口设定为5-10的自然数)数据包、路由信标或新的应答包的接收个数、发射机发送的包的个数和接收到的包的SNR、LQI信息时,就可以将这些信息带入⑴中拟合的估计链路质量的表达式,从而预测将来一段时间内相应链路的PRR,进而可对采集树协议的链路估计器邻居表相应条目的inquality项或etx项进行更新。

上述⑴链路质量的表达式的拟合具体如下:

将10个TelosB(Crossbow Technology,California,USA)节点部署在实验现场,软件采用TinyOS-2.1.0操作系统,程序用nesC语言编写,MAC层采用CSMA-CA的信道接入算法,数据包的格式符合IEEE802.15.4的标准,无线信道选为该标准的第26个信道上,以避免Wifi等信号的影响,所有节点CC2420芯片输出功率设置为0dBm。节点间两两组成无线链路,因此一共有90条无线链路。对于第i条链路,传输60个总长度为35字节的数据包,数据包之间的时间间隔为50ms,接收机统计前10个数据包的SNR的累加值SNRtotali、LQI的累加值LQItotali和前10个数据包中接收到的个数m,按公式PRR′i=m/10计算PRR′i,按公式SNRAvgi=PRR′i·SNRtotali/m计算SNRAvgi,按公式LQIAvgi=PRR′i·LQItotali/m计算LQIAvgi。再统计接下来的50个数据包的PRRi,这样60个包获取的数据组成建模集。

SNR的获取方法如下:接收机以30ms为周期定时采样信道空闲时的接收信号强度指数(以下简称RSSI),作为一次噪声基底的样本值更新噪声基底表中的条目,每8次采样后由8个条目的平均值计算此时噪声基底,与旧的噪声基底数据加权平均后作为新的噪声基底,接收到的数据包的信噪比由该数据包的rssi域的值减去最新的噪声基底得到,LQI则直接从数据包的lqi域获取。

随LQI和SNR同步增加,PRR也会增加,通常情况下,当SNR>13或LQI>90时,PRR就达到1,此时,SNR和LQI继续增加,PRR仍旧为1(饱和值),所以拟合链路质量的表达式时要去除PRR等于1的数据点,利用建模集中PRR未达到1的数据对以下链路质量的表达式进行拟合:

PRRi=A·SNRAvgi+B·LQIAvgi       I

可以求出表达式的参数:

>A=(Σi=1pSNRAvgi·PRRi)(Σi=1pLQIAvgi2)-(Σi=1pLQIAvgi·PRRi)(Σi=1pSNRAvgi·PRRi)(Σi=1pSNRAvgi2)(Σi=1pLQIAvgi2)-(Σi=1pLQIAvgi·SNRAvgi)2---II>

>B=(Σi=1pSNRAvgi·PRRi)(Σi=1pLQIAvgi2·SNRAvgi)-(Σi=1pLQIAvgi·PRRi)(Σi=1pSNRAvgi2)(Σi=1pLOIAvgi·SNRAvgi)2-(Σi=1pSNRAvgi2)(Σi=1pLQIAvgi2)---III>

进而可确定出链路质量的表达式I的具体形式:

PRRi=A·PRR'·SNRtotal/m+B·PRR′i·LQItotal/m                          IV

上述⑵包的设计的具体如下:融合SNR、LQI和PRR的链路质量估计器与采集树协议的链路质量估计器中,每个节点发送或接收3种包:数据包、新的应答包和路由信标包。

新的应答由包头(长度为10字节)、应答序列号域(长度为1字节)、需要返回应答的邻居节点的单向etx(长度为2字节)域、填充(长度为13字节)域、元数据(长度为10字节)域组成。数据包由包头(长度为10字节)、选项(option,长度为1字节)域、存活时间(THL,TimeHave Lived,长度为1字节)域、期望传输次数(表示发送该数据包的节点的ETX值,长度为2字节)域、源地址(origin,长度为2字节)域、源节点序列号(originSeqNo,长度为1字节)域、类型(表示该数据包在应用层的类型,长度为1字节)域、数据(长度为4字节,数据包具体内容)域、填充(长度为5字节)域、元数据(长度为10字节)域组成。路由信标由包头(长度为10字)、信标包头(长度为2字节)域、信标载荷(长度为3字节)域、包尾(长度为10字节)域和元数据(长度为10字节)域组成,其中包尾域的填充规则如下:①如果未写入上一个路由信标包包尾的邻居表的条目数小于6,则将这些条目中的ll_addr、inquality全填在本路由信标的包尾(每个邻居表条目的相关“描述”在包尾中占2个字节),其余字节用0x00占满;②如果未写入上一个路由信标包包尾的条目数大于6,则将前5个按①的方法进行填写,在下一条路由信标中对剩余的条目继续按①的方法进行判断和填写。这样,所有包的长度都是35字节。

需要说明的是,融合SNR、LQI和PRR的链路质量估计器禁止了原CTP中每个节点在收到数据包后自动回复应答包的功能,定义了新的应答包,每个节点返回的新的应答包中新增加两个域,第一个是应答序列号域,该域中记录该应答包是本节点对需要返回应答的邻居节点返回的“第几个”应答包,第二个是需要返回应答的邻居节点的单向etx域,记录需要返回应答的邻居节点到本节点的单向etx值。

以本节点作为参考,与邻居节点发送数据包和路由信标以及邻居表如图1所示,本节点或邻居节点在以下几种情况下对邻居表中相应条目进行更新:

①邻居节点广播路由信标,本节点接收后记录接收到的路由信标的个数并将接收到的SNR和LQI进行累加,同时通过收到的路由信标的序列号计算出收到的和未收到的路由信标的个数,当接收到的路由信标个数增加到一定数目时,就将包接收窗口内(窗口设定为5-10的自然数)的SNR累加值SNRtotal、LQI累加值LQItotal、收到的路由信标的个数m、当前路由信标接收窗口内(窗口设定为5-10的自然数)的路由信标接收率PRR'带入公式IV,计算出将来一段时间的PRR,取倒数归一化作为记录的单向链路质量参数,然后与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项;

②本节点收到邻居节点广播的路由信标的时候,就根据该路由信标中所含的本节点到该邻居节点的单向链路的inquality值更新本节点的邻居表中该邻居节点条目的outquality项;

③禁止原采集树协议中每个节点在收到数据包后自动发送应答包的功能,用新的应答包进行应答,新的应答包的应答序列号域中记录该应答包是本节点对需要返回应答的邻居节点返回的“第几个”应答包,新的应答包的需要返回应答的邻居节点的单向etx域中记录需要返回应答的邻居节点到本节点这一链路的单向etx值。在接收或发送数据包和新的应答包的过程中,在以下几种情况下对邻居表条目中记录的inquality、outquality和etx项进行更新:i.本节点每次接收到新的应答包后,将需要返回应答的邻居节点的单向etx域记录为etx',以此更新本节点的邻居表中该邻居节点条目中的outquality。本节点对收到目的节点的新的应答包的个数进行累加并通过新的应答包中的序列号计算出收到的和未收到的新的应答包的个数,并将收到新的应答包的SNR和LQI累加,当接收到的新的应答包的应答序列号增加一定数目时,就将新的应答包接收窗口内(窗口设定为5-10的自然数)的SNR累加值SNRtotal、LQI累加值LQItotal、收到的新的应答包的个数m、当前路由信标接收窗口内(窗口设定为5-10的自然数)的新的应答包接收率PRR'带入公式IV,计算出将来一段时间的PRR,取倒数归一化作为记录的单向链路质量参数,然后与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项。ii.邻居节点记录接收到的数据包的个数并将每一个收到的数据包的SNR和LQI累加,当接收到数据包的序列号增加一定数目时,就将新的应答包接收窗口内(窗口设定为5-10的自然数)接收到的数据包的SNR的累加值SNRtotal、LQI的累加值LQItotal和收到的数据包的个数m、当前数据包接收窗口内(窗口设定为5-10的自然数)的数据包接收率PRR'带入公式IV,计算出将来一段时间的PRR,然后取倒数后归一化作为记录的单向链路质量参数,与邻居表条目中记录的原inquality采用EWMA的方法得到inquality',以此更新邻居表条目的inquality项,根据该邻居表条目的inquality和outquality计算出etx,与邻居表条目的原etx采用EWMA的方法得到etx',以此更新邻居表条目的etx项。

在①或者③情况下,如果窗口期内没有收到任何路由信标或者应答包,则不用进行后续计算,直接将单向链路质量参数置为最大值(255)。

将23个TelosB(Crossbow Technology,California,USA)节点部署在果园实验现场,高度为2.5米,相邻节点的间距35米,试验前的测试表明,并且信号不稳定,可用来检验链路质量估计器的性能,试验过程中保持所有节点电路板平面与地平面垂直,所有节点软件采用TinyOS-2.1.0操作系统,程序用nesC语言编写,MAC层采用CSMA-CA的信道接入算法,数据包的格式符合IEEE802.15.4的标准,无线信道选为该标准的第26个信道上,以避免Wifi等信号的影响,所有节点CC2420芯片输出功率设置为0dBm。在程序上,该链路质量估计器形成新的模块SNR-LQI-PRRM,分别运行SNR-LQI-PRR采集树协议和完整的CTP,每个协议运行24个小时,其中一个节点作为根节点,用于收集数据,其它每个节点每1分钟虚拟1个数据向根节点发送,每个节点记录自己发送过的数据包和路由信标的个数,由根节点统计每个节点每1个小时内的数据包接收率,由每个节点统计自己在整个运行时间内发送过的数据包的总个数和路由信标的总个数,存储到节点的flash中,实验结束后读取出来进行统计。

采用完整的CTP和SNR-LQI-PRR采集树协议节点的数据包接收率随时间的变化如图2和图3所示,22个TelosB节点的PRR最大值一般都接近100%,但平均值时有波动,24小时内,采用SNR-LQI-PRR采集树协议的节点数据包接收率平均值为74.7%,高于采用CTP协议的61.9%,由此可见,与采集树协议的链路质量估计器相比,融合信噪比、链路质量指数和包接收率的链路质量估计器确实优于CTP协议的链路质量估计器。

如图4所示,在整个试验中,采用CTP协议的所有节点平均每传输成功一个数据包需发送5.32个数据包(包含多跳传输、未接收等因素在内),路由信标消耗0.14个,SNR-LQI-PRR采集树协议则分别是4.45个和0.20个,发送的数据包比前者减少了16.4%。总体而言,后者平均每个数据包的传输消耗比前者少0.81个,减少了14.8%。

由此可见,本发明的链路质量估计器的能效明显高于CTP的链路质量估计器。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号