CN102223683B - 无线传感器网络中的数据传输方法、节点和系统 - Google Patents
无线传感器网络中的数据传输方法、节点和系统 Download PDFInfo
- Publication number
- CN102223683B CN102223683B CN201110150857.8A CN201110150857A CN102223683B CN 102223683 B CN102223683 B CN 102223683B CN 201110150857 A CN201110150857 A CN 201110150857A CN 102223683 B CN102223683 B CN 102223683B
- Authority
- CN
- China
- Prior art keywords
- node
- packet
- pipeline
- coding
- neighbor
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种无线传感器网络中的数据传输方法、节点和系统。其中,该方法包括:源节点确定向目的节点发送数据时,根据路由表建立管道,其中,该路由表包括:邻居节点标识、邻居节点到当前节点的链路质量、邻居节点的剩余能量和邻居节点的跳数;管道包括主路径节点和管道节点;源节点将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;源节点通过管道发送编码后的数据包。通过本发明,解决无线传感器网络中数据传输时能耗较高的问题,也保证了传输的可靠性。
Description
技术领域
本发明涉及无线通信领域,具体而言,涉及一种无线传感器网络中的数据传输方法、节点和系统。
背景技术
无线传感器网络涉及多学科高度交叉、知识高度集成。它能够通过各种各样集成化的微型传感器节点相互协作、实时地监测和采集环境或监测对象的信息,并及时地将这些信息通过各种无线方式发送,以自组织多跳的方式传输到用户终端,从而实现物理世界、信息世界以及人类世界的连通。如果说因特网改变了人与人之间的交流方式,那么无线传感器网络就改变人与自然交互的方式,是因特网向物理世界的延伸。
无线传感器网络是动自组织网络(Mobile Ad Hoc Network,MANET),是资源受限的网络,节点的电源能量、通信能力、存储计算能力都很有限,因此,无线传感器网络所支持的路由协议需要考虑这些因素,不能太过复杂。而传统的路由协议缺少对节能方面的考虑,可扩展性也达不到传感器网络的要求,使得以往的路由协议标准和草案无法直接应用到其路由协议当中,因而目前的无线传感器网络还不完善,其数据的转发过程存在带宽利用低、可靠性差和延时较大等问题。
针对其带宽利用低的问题,相关技术中考虑了无线通信网络中的网络编码(Network Coding)技术,网络编码是一种融合编码和路由的信息交换技术。它在传统存储转发的路由方法基础上,通过允许对节点接收到的多个数据包进行编码信息融合,增加单次传输的信息量,从而提高网络整体性能。当网络编码应用于无线通讯网络时,不仅可以提高信息传输率、增加网络通信的鲁棒性、节约能量,而且对整个网络可以起到均衡负载的作用。
如图1所示的蝴蝶网络拓扑结构示意图,图中S是信源,Y和Z是信宿,各链路带宽均为1比特/单位时间,假设要将2比特数据b1、b2从S传到Y、Z,S与Y,Z之间分别存在两条独立的路径,由于两组路径之间存在共有链路WX,b1、b2不能同时在边WX上传输,此时S到Y、Z的最大速率为1.5比特/单位时间。而图2描述了采用网络编码的蝴蝶网络拓扑结构示意图,S与Y,Z之间分别存在两条独立的路径,如果采用网络编码方法,在节点W上对b1、b2执行异或操作再进行转发,则节点Y可以通过的计算解出b2,同理Y也可解出b1,从而使得S到Y、Z的速率达到2比特/单位时间。因此,基于网络编码的多播实现了理论上的最大传输容量,带宽利用率提高了33%。
然而,因无线路由器网络中数据的传输均是以广播的形式进行发送的,而无线路由器网络中各个节点通常有很多的邻节点,因此,在进行数据转发时,节点将会将待发数据广播给各个邻节点,因此采用上述网络编码技术的无线路由器网络的能耗依旧比较高,不能满足实际使用的需要。
针对相关技术中无线传感器网络中数据传输时能耗较高的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种无线传感器网络中的数据传输方法、节点和系统,以至少解决上述无线传感器网络中数据传输时能耗较高的问题。
根据本发明的一个方面,提供了一种无线传感器网络中的数据传输方法,该方法包括:源节点确定向目的节点发送数据时,根据路由表建立管道,其中,该路由表包括:邻居节点标识、邻居节点到当前节点的链路质量、邻居节点的剩余能量和邻居节点的跳数;管道包括主路径节点和管道节点;源节点将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;源节点通过管道发送编码后的数据包。
其中,源节点根据路由表建立管道包括:从源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点,直至目的节点为止;每个主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点,其中,同跳数邻居节点指跳数与主路径节点的跳数相同的邻居节点。
从源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点包括:从源节点开始的每个节点计算每个下游邻居节点对应的指标B=E+αP,选择指标最大的下游邻居节点作为下一个主路径节点,其中,E为下游邻居节点的剩余能量,P为根据下游邻居节点的链路质量计算的脉冲重复率,α为调节参数。
其中,每个主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点包括:每个主路径节点计算每个同跳数邻居节点对应的指标B=E+αP,根据指标的大小选择指定个同跳数邻居节点作为管道节点,其中,E为同跳数邻居节点的剩余能量,P为根据同跳数邻居节点的链路质量计算的脉冲重复率,α为调节参数。
其中,网络编码为线性网络编码;源节点通过管道发送编码后的数据包包括:源节点向下一个主路径节点和管道节点发送编码后的数据包;管道中的每个主路径节点首次收到编码后的数据包时,转发数据包,并通过线性网络编码转发非首次收到的数据包;管道节点接收到编码后的数据包后,判断编码后的数据包与缓存中的数据包是否线性相关,如果是,丢弃编码后的数据包;如果否,将编码后的数据包存入缓存;管道节点向缓存中存入数据包之后,判断缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发缓存中的数据包。
其中,发送条件是预先根据管道节点自身的剩余能量和传输成功率设定的。
其中,编码后的数据包的包头携带有编码规则;源节点通过管道发送编码后的数据包之后,方法还包括:
目的节点的缓存中的数据包个数达到指定数量时,目的节点根据编码规则对缓存中的数据包进行解码,恢复出原始数据。
源节点通过管道发送编码后的数据包之后,上述方法还包括:当目的节点接收数据包的时长达到设定时长,目的节点的缓存中的数据包个数未达到指定数量时,目的节点向上游的主路径节点发送数据包请求消息,其中,数据包请求消息携带有欲请求数据包的指示信息;接收到数据包请求消息的节点根据数据包指示信息确定自身的缓存中是否存在欲请求数据包,如果是,向目的节点重发欲请求数据包;如果否,向上游的主路径节点转发数据包请求消息。
上述路由表的建立过程包括:无线传感器网络中的指定节点广播多个信号包,其中,信号包携带以下字段:包括:信号包的包号、转发节点的标识、转发节点的剩余能量和信号包到转发节点经过的跳数;接收到信号包的节点根据信号包生成路由表。
上述路由表还包括:每个邻居节点发送信号包的数量;接收到信号包的节点根据信号包生成路由表之后,还包括:接收到信号包的节点将路由表中信号包的数量小于指定值的表项删除。
根据本发明的另一个方面,提供了一种无线传感器节点,包括:管道建立模块,用于确定向目的节点发送数据时,根据路由表建立管道,其中,该路由表包括:邻居节点标识、邻居节点到无线传感器节点的链路质量、邻居节点的剩余能量和邻居节点的跳数;管道包括主路径节点和管道节点;编码模块,用于将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;发送模块,用于通过管道发送编码后的数据包。
根据本发明的又一个方面,提供了一种无线传感器节点,包括:接收模块,用于接收编码后的数据包;判断模块,用于判断接收模块接收的编码后的数据包与缓存中的数据包是否线性相关;数据包处理模块,用于判断模块的判断结果为是时,丢弃编码后的数据包;判断模块的判断结果为否时,将编码后的数据包存入缓存;数据包转发模块,用于数据包处理模块向缓存中存入数据包之后,判断缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发缓存中的数据包。
根据本发明的再一个方面,提供了一种无线传感器节点,包括:数据包个数判断模块,用于判断缓存中的数据包个数是否达到指定数量;解码模块,用于数据包个数判断模块的判断结果为是时,根据编码规则对缓存中的数据包进行解码,恢复出原始数据。
该无线传感器节点还包括:重传请求模块,用于当接收数据包的时长达到设定时长,且缓存中的数据包个数未达到指定数量时,向上游的主路径节点发送数据包请求消息,其中,数据包请求消息携带有欲请求的数据包指示信息。
根据本发明的还一个方面,提供了一种无线传感器网络中的数据传输系统,包括源节点和目的节点;源节点包括:管道建立模块,用于确定向目的节点发送数据时,根据路由表建立管道,其中,该路由表包括:邻居节点标识、邻居节点到当前节点的链路质量、邻居节点的剩余能量和邻居节点的跳数;管道包括主路径节点和管道节点;编码模块,用于将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;发送模块,用于通过管道发送编码后的数据包;
上述目的节点包括:数据包个数判断模块,用于判断缓存中的数据包个数是否达到指定数量;解码模块,用于数据包个数判断模块的判断结果为是时,根据编码规则对缓存中的数据包进行解码,恢复出原始数据。
该系统还包括:管道节点;该管道节点包括:接收模块,用于接收编码后的数据包;判断模块,用于判断接收模块接收的编码后的数据包与缓存中的数据包是否线性相关;数据包处理模块,用于判断模块的判断结果为是时,丢弃编码后的数据包;判断模块的判断结果为否时,将编码后的数据包存入缓存;数据包转发模块,用于数据包处理模块向缓存中存入数据包之后,判断缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发缓存中的数据包。
通过本发明,采用建立发送数据的管道,而不是在整个网络内进行数据的广播,同时,在建立的管道上采用线性网络编码的方式发送数据,解决无线传感器网络中数据传输时能耗较高的问题,在无线传感器网络中节点能量资源有限的前提下,尽可能地延长了节点的使用寿命,同时也保证了传输的可靠性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的蝴蝶网络拓扑结构示意图;
图2是根据相关技术采用网络编码的蝴蝶网络拓扑结构示意图;
图3是根据本发明实施例1的无线传感器网络中的数据传输方法流程图;
图4是根据本发明实施例2的管道节点接收到数据包的处理方法流程图;
图5是根据本发明实施例3的作为源节点的无线传感器节点的结构框图;
图6是根据本发明实施例3的作为管道节点的无线传感器节点的结构框图;
图7是根据本发明实施例3的作为目的节点的无线传感器节点的结构框图;
图8是根据本发明实施例4的无线传感器网络中的数据传输系统的结构框图;
图9是根据本发明实施例的不同能量的节点发送次数的比较示意图;
图10是根据本发明实施例的不同能量值区域的节点发包次数统计示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例基于网络编码技术提供了一种无线传感器网络中的数据传输方法、节点和系统。其中,网络编码可分为线性和非线性两种,所谓线性网络编码就是在实现网络编码过程中用到的编码函数和译码函数都采用线性函数实现。线性网络编码是中间节点将接收到的数据在有限域内进行线性组合,当节点接收足够多的线性无关的数据包后就可以通过正确译码解得全部内容。
实施例1
本实施例提供了一种无线传感器网络中的数据传输方法,参见图3,该方法包括以下步骤(步骤S302-步骤S306):
步骤S302,源节点确定向目的节点发送数据时,根据路由表建立管道;
其中,该路由表保存在每个节点上,每个节点上的路由表均包括:邻居节点标识、邻居节点到当前节点的链路质量,邻居节点的剩余能量、邻居节点的跳数;这里的邻居节点指当前节点的邻居节点,这些信息的获得可以预先通过在无线传感器网络中广播信号包的方式实现,信号包可以包括表1所示的字段:
表1
上述管道包括主路径节点和管道节点,每个节点具有一个上游主路径节点,该节点也称上一个主路径节点,具有一个下游主路径节点,该节点也称为下一个主路径节点;每个节点可以具有多个管道节点,主路径节点和管道节点均是根据路由表中的信息从当前节点的邻居节点中选择出来的。
为了限制数据在转发过程中广播给所有的邻居节点,本实施例采用了建立管道的方式,即确定主路径,然后围绕主路径上的节点选取有限个数的管道节点。基于此,本实施例的上述源节点根据路由表建立管道包括:从源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点,直至目的节点为止;每个主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点,其中,同跳数邻居节点指跳数与该主路径节点的跳数相同的邻居节点。
其中,从源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点包括:从源节点开始的每个节点计算每个下游邻居节点对应的指标B=E+αP,选择指标最大的下游邻居节点作为下一个主路径节点,其中,E为下游邻居节点的剩余能量,P为根据下游邻居节点的链路质量计算的脉冲重复率,α为调节参数。
每个主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点包括:每个主路径节点计算每个同跳数邻居节点对应的指标B=E+αP,根据该指标的大小选择指定个同跳数邻居节点作为管道节点,其中,E为同跳数邻居节点的剩余能量,P为根据同跳数邻居节点的链路质量计算的脉冲重复率,α为调节参数。
步骤S304,源节点将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;其中,网络编码可以采用线性网络编码,也可以采用非线性网络编码,这两种网络编码的具体实现方式可以参照相关技术中的方式,这里不再详述。
步骤S306,源节点通过上述管道发送编码后的数据包。例如:对于网络编码为线性网络编码的情况,源节点向下一个主路径节点和管道节点发送编码后的数据包;管道中的每个主路径节点首次收到编码后的数据包时,转发数据包,并通过线性网络编码转发非首次收到的数据包;管道节点接收到编码后的数据包后,判断编码后的数据包与缓存中的数据包是否线性相关,如果是,丢弃编码后的数据包;如果否,将编码后的数据包存入缓存;管道节点向缓存中存入数据包之后,判断缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发缓存中的数据包。
其中,上述发送条件是预先根据管道节点自身的节点剩余能量和传输成功率设定的。
为了实现方便,无线传感器网络中的每个节点可以采用相同的编码规则,此时,不需要相互通知编码规则。当然,每个节点也可以采用独立的编码方式,以增强节点的可移动性,此时,上述编码后的数据包的包头携带有编码规则;基于此,上述源节点通过管道发送编码后的数据包之后,该方法还包括:目的节点的缓存中的数据包个数达到指定数量时,目的节点根据该编码规则对缓存中的数据包进行解码,恢复出原始数据。
为了解决数据包发送过程中的丢包问题,提高网络的可靠性,在上述源节点通过管道发送编码后的数据包之后,该方法还包括:当目的节点接收数据包的时长(从接收到第一个数据包开始计时)达到设定时长,目的节点的缓存中的数据包个数未达到指定数量时,目的节点向上游的主路径节点发送数据包请求消息,其中,数据包请求消息携带有欲请求数据包的指示信息;接收到数据包请求消息的节点根据数据包指示信息确定自身的缓存中是否存在欲请求数据包,如果是,向目的节点重发欲请求数据包;如果否,向上游的主路径节点转发数据包请求消息。
本实施例上述路由表的建立过程包括:无线传感器网络中的指定节点广播多个信号包,其中,信号包携带以下字段:包括:信号包的包号、转发节点的标识、转发节点的剩余能量和信号包到转发节点经过的跳数;接收到信号包的节点根据信号包生成路由表。
优选地,在创建路由表的过程中,上述路由表还包括:每个邻居节点发送信号包的数量;基于此,接收到信号包的节点根据信号包生成路由表之后,该方法还包括:接收到信号包的节点将路由表中信号包的数量小于指定值的表项删除;用以排除传输次数较少的邻居节点。
本实施例在发送数据时,建立发送数据的管道,而不是在整个网络内进行数据的广播,同时,在建立的管道上采用线性网络编码的方式发送数据,解决无线传感器网络中数据传输时能耗较高的问题,在无线传感器网络中节点能量资源有限的前提下,尽可能地延长了节点的使用寿命,同时也保证了传输的可靠性。
实施例2
为了保证无线传感器网络中的数据在节能的基础上,可靠地传输,本实施例提供了一种无线传感器网络(EENC)协议,该协议是一个完整的数据收集方向的路由协议,协议内容可分为以下几个方面:基本路由信息的建立过程、管道的建立过程、使用下述Credit算法计算每个管道节点的发送次数、数据包发送过程和可靠重发过程。
步骤1:基本路由信息的建立过程,该路由建立需要考虑节点的剩余能量及节点间的链路质量。
步骤2:管道的建立过程,当传感器节点需要向Sink节点(汇聚节点,即上述目的节点或广播信息的节点)发送数据时,首先建立一条管道,管道的建立要考虑节能性和聚集性。
步骤3:计算管道节点的发送次数,该计算使用Credit算法确定每个转发节点的发送次数。
步骤4:数据包发送过程,此过程数据经过线性网络编码发送,数据沿管道传送到目的节点再进行解码。
步骤5:可靠重发过程,为保证可靠性,上述协议增加了可靠重发机制。当Sink节点缺少足够的包进行解码时,向上游节点发送请求包,该请求包指示满足请求包要求的节点将重发所缺少的数据包。
下面对上述五个步骤进行详细说明:
基本路由信息的建立过程:该过程使得每个传感器节点获得距离Sink节点的跳数和邻居节点的LQI、剩余能量等信息。基本路由信息的建立过程如下:
为了使每个节点都能够获得路由计算需要的基本信息,包括节点距离Sink节点的跳数(Hop)、邻居节点的ID、Hop、剩余能量、下游邻居节点的接收率。本实施例采用在传感器节点起初部署时进行路由信息的建立过程,并每隔一段时间重复一次以应对网络的变化。节点在这一过程结束后建立或更新一个路由表RouteTable,用于存储相关路由信息。
Sink节点首先广播信号包,其它节点接收后修改并转发信号包,并通过算法建立路由表。当广播信号包结束后,所有节点计算出自己的跳数Hop并存储邻居节点的信息。具体步骤如下:
1)Sink节点广播N个信号包(信号包的结构如上述表1所示,这里不再列出),packetID从0到N-1。其中packetID为信号包的包号,nodeID记录转发该包的节点的ID,power记录了转发节点的剩余能量值,Hop记录从Sink节点到当前节点packetID号包经过的跳数。
2)每个节点初始时,路由表为空,在建表完成后每个路由表可能会包含若干个如表2所示的路由表项:
表2
其中,nodeID为某一邻居的节点号,也即邻居节点标识,LQI指示nodeID到本节点的链路质量,num记录从nodeID节点发送来的信号包的数量(num小于一定阈值的路由表项会被删除,因为这些收到的包的发送者不稳定)。同时引入一个Hops[N]数组,在建表过程中,Hops[M]用来记录包号为M(0≤M<N)的信号包第一次到达本节点所经历的跳数,其目的是用来计算节点的跳数Hop。
每个传感器节点会根据收到的信号包更新路由表(RouteTable)和跳数数组Hops,具体算法如下:如果节点v第一次收到标号为M的广播包P时,用一个Hops数组记录当前广播包P的hop,然后遍历路由表RouteTable。如果存在节点nodeID等于广播包P的节点nodeID的表项R,那么R的LQI和能量等于平均LQI和平均能量;如果不存在,则往路由表RouteTable中添加一个新的路由表项W,并且表项W的节点ID、LQI、能量与广播包P的相等,另外,表项W是记录等于1,既而更新信号包P,并转发信号包P。
如果节点v再次收到标号为M的广播包P时,遍历路由表RouteTable。如果发现有节点ID等于表项R的节点ID,这时表项R的LQI和能量等于平均LQI和平均能量。如果没有发现与表项R的节点ID相等的ID,则添加一个路由表项W到路由表RouteTable,否则丢弃此广播包P。
3)当Sink节点发送完N个信号包后,会广播适量的终止包。若节点收到终止包,则表明信号包已发送完,此时对已建立的路由表进行最后一步的处理:删除路由表中num值小于一定阈值的路由表项,这是为了过滤某种突发的小概率的传输而建立的路由表项,从而形成新的路由表。同时把Hops中出现次数最多的跳数作为本节点的Hop。并将此Hop加入终止包告知邻居节点自己的Hop数,当然也可以通过其它消息将本节点的跳数通知给邻居节点。至此,所有需要的信息已经记录在各个节点的路由表中。
上述管道的建立过程包括:当传感器节点需要向Sink节点发送数据时,首先进行管道的建立,除主路径上的节点外,若节点被选中为管道节点则参与转发。
管道的建立过程分为两个步:首先建立一条最佳单路径作为主路径,然后用主路径扩展为管道,因此建立的管道包括主路径节点和管道节点,这些节点均是参与数据转发的节点。
建立主路径时考虑两个参数,分别是下游邻居节点的剩余能量和到下游邻居节点的链路质量,这两个参数在基本信息建立过程得到的路由表中可以获得。本实施例设置一个指标B=E+αP,其中E和P分别为某一个下游邻居节点的剩余能量和PRR(脉冲重复率,PulseRepetition Rate,可由LQI计算得到),α为调节参数,可根据网络状况设定。节点从路由表中选取B值最大的下游邻居节点作为下一个主路径节点。从源节点开始逐个选择,被选中的节点继续在它的路由表中选择下一跳节点,直到Sink节点为止,最终形成一条主路径。
管道的建立与主路径的建立可以同时进行,管道的建立也应用了上述指标B。当某一节点i被选中为主路径节点后,节点i首先利用B值大小选出下一个主路径节点,然后计算B=E+αP,其中E和P分别为同跳数邻居节点的剩余能量和PRR,α为调节参数,选择出同跳数节点中的管道节点。E用于保证选取到能量高的节点,P用于保证选取到链路质量好的节点,而链路质量好意味着节点间距在通信范围内,管道聚集性较好,因此在选择管道节点时,可以尽量选取B值大的节点。选择的个数N可以由网络的具体情况决定。主路径节点i选择完毕后,发送如表3所示的路由包:
表3
nextID | ID1 | ID2 | ID3 |
其中,nextID表示被选中的下一跳主路径节点,ID1、ID2、ID3表示被选中为管道节点的同跳数节点(假设每一跳选择三个管道节点)。这个路由包会发送给同跳数节点和下游邻居节点,告知它们已经被选中。另外,主路径中的上游邻居也会接收到该包,并记录所有被选中的下游节点,这样为后面计算发送次数做好准备。
使用Credit算法计算每个管道节点的发送次数:
在本实施例的EENC协议中,为了减少时延,增加传输率,设定主路径上的节点每收到一个包就进行一次编码发送(第一次发送不用编码),而管道中其它节点都是在节点能量及传输成功概率方面通过与主路径节点比较后,确定自己的发送次数。
本实施例设计一个优先级变量Y=E+βP综合考虑这两个因素,其中,E为节点的剩余能量、P为传输成功概率、β为调节参数。最后由优先级Y计算比例Credit,由Credit直接确定发送次数,Credit的计算方法如下:
当主路径节点接收到来自下一跳主路径节点发送的路由包,并得到下一跳被选中的管道节点时,在路由表中找到各节点的LQI及剩余能量E,通过LQI计算各节点的接收率Pi,并计算传输成功概率然后得到优先级Y=E+βP,其中,E为该主路径节点的剩余能量。将优先级Y发送到同跳数的管道节点。优先级包的结构如表4所示:
表4
Y | nID1 | nID2 | nID3 |
其中,Y表示主路径节点的优先级,nID1、nID2、nID3表示下一跳管道节点。当同跳数的管道节点收到主路径发送的优先级包后,计算自己的优先级Ym=Em+βPm,最后计算出Credit:
从上述公式中可以看出,当节点优先级小于主路径节点优先级时,该节点的Credit小于1,当大于或等于主路径节点时等于1,而主路径节点Credit都等于1。也就是说管道中节点发送次数最多也只能与主路径节点相同,这样做是因为不希望引入更多用于协商发送次数的开销。
当节点计算出Credit之后,就可以确定发送次数了。Credit实质上表示了当节点每收到一个数据包应转发的次数(0<Credit≤1)。假设Credit=1,则表示每收到一个包就进行一次编码转发,若Credit=0.5,则表示每收到两个包再进行一次编码转发。为了达到这样的效果,节点在后面的数据发送过程中会建立一个变量Counter,初始值为0,每收到一个数据包,Counter=Counter+Credit,直到Counter≥1,则将缓存中的包进行线性编码并发送。发送一个数据包后,Counter=Counter-1。节点的发送次数由Credit决定,Credit越大,发送越频繁。
数据包发送过程:源节点将数据分为m份,对m份数据进行线性网络编码并发送,数据沿着管道最终传送到目的节点再进行解码。数据包发送过程如下:
1)源节点:
当管道和Credit建立后,源节点将一段数据分割成m个数据包。这m个未编码的数据包称为原始数据包。原始数据包用xi表示,i∈{1,2,...,m}。当开始数据发送时,本实施例的源节点将对m个原始数据包进行随机线性网络编码,并广播出去。编码方式采用如下公式:
其中,cji是随机生成的系数,公式中的加法乘法操作都是在有限域GF(2q)内进行的,其中,q由节点周围的邻居节点个数确定。数据包x′j的包头中加入系数向量cj=(cj1,cj2,...,cjm)用来描述原始包是如何编码的。当然,如果各个节点不是随机生成编码系数,而是预先确定采用固定的编码系数,则不需要在数据包头携带系数向量;每段数据至少发送m个随机编码的数据包,也可根据网络状况增加发送次数。当发送完一段数据之后,等待一段时间再发送下一段数据。
2)转发节点:
参见图4所示的管道节点接收到数据包的处理方法流程图,该方法包括以下步骤:
步骤S402,当管道节点接收到一个数据包,判断该数据包是否来自上游邻居节点或同跳数节点,如果是,执行步骤S404,否则,执行步骤S406。
步骤S404,判断该数据包与缓存中数据包是否线性无关,如果线性相关,则执行步骤S406;如果线性无关,则执行步骤S408。
步骤S406,丢弃该数据包。
步骤S408,将该数据包存入缓存,并启动节点的发送过程。
判断线性相关性是通过对包头的系数向量进行计算,线性相关的包因为不含有新的信息,所以被丢弃。
步骤S410,运算Counter=Counter+Credit。
在发送过程中,节点将维持变量Counter,Counter初始值为0,当发送过程启动后首先进行运算Counter=Counter+Credit。
步骤S412,判断Counter是否大于或等于1,如果是,执行步骤S414;否则,结束。
步骤S414,将缓存中的所有的数据包线性编码并发送。
步骤S416,运算Counter=Counter-1,并结束当前流程。
管道节点发送数据时,要将缓存中所有接收到的数据包进行随机线性网络编码。节点首先随机选择m个系数rj,然后生成新的编码包。假设缓存中的编码包表示为其中xi为原始数据包。新编码的数据包x″可表示为:
该公式中的加法乘法操作都是在有限域GF(2q)内进行的。可以看出x″也是原始数据包的线性组合。同源节点一样,管道节点在要发送的数据包包头中加入系数向量用来描述原始包是如何编码的。
3)目的节点:
当目的节点收到编码包时,首先检查该包是否与缓存中的包线性无关。如果是,则将包缓存起来,否则丢弃该包。直到目的节点收到m个线性无关的包后,则可以开始解码,恢复出所有的原始数据包。
上述可靠重发过程包括:当Sink节点缺少足够的数据包进行解码时,向上游节点发送NACK请求包,上游节点包含满足请求的包则沿主路径发送给Sink节点,否则继续向上游发送NACK请求包,直到找到包含满足请求包的节点,Sink节点收到足够的包后进行解码。
可靠重发过程的具体步骤为:
当目的节点收到下一段的数据包,而前一段的数据包仍不够解码时,启动可靠重发过程。
设Bv为目的节点缓存中编码包的编码向量。当目的节点收到的编码包不够时,向上游邻居节点发送一个请求包。在请求包中附加向量ZA,ZA满足式ZA·v=0,的条件。
当某节点B收到该请求包后,需要与自己缓存当中所有的编码向量与ZA做内积运算,如果存在内积结果不为0的编码包,则将该包沿着主路径发送到目的节点。当节点B没有内积为0的编码包时,则告知同跳数的主路径节点,由主路径节点向更上游的节点转发请求包。目的节点收到重发的数据包后,如果仍然不足够解码,则生成新的请求包,重复这一过程,直到收到足够的数据包后进行解码。
本实施例的EENC协议可以设置在TinyOS上实现,并在Tossim平台上仿真。
本实施例基于网络编码的节能可靠路由协议EENC,融入了网络编码技术,降低和均衡了能耗,增加了网络传输率,减少了时延。通过管道建立和Credit算法等机制解决了融入网络编码后带来的一些问题。
实施例3
本实施例提供了一种无线传感器节点,该传感器节点可以作为源节点,发起数据发送流程,参见图5,该节点包括以下模块:
管道建立模块52,用于确定向目的节点发送数据时,根据路由表建立管道,其中,该路由表包括:邻居节点标识、邻居节点到该无线传感器节点的链路质量、邻居节点的剩余能量和邻居节点的跳数;该管道包括主路径节点和管道节点;
编码模块54,与管道建立模块52相连,用于将待发送的原始数据分成指定数量个数据包,并将指定数量个数据包进行网络编码;
发送模块56,与编码模块54相连,用于通过上述管道发送编码后的数据包。
其中,管道的具体建立过程可以参照实施例1和2实现,这里不再描述。
针对上述管道节点,本实施例还提供了另一种无线传感器节点,该节点可以作为管道节点使用,参见图6,该节点包括以下模块:
接收模块62,用于接收编码后的数据包;
判断模块64,与接收模块62相连,用于判断接收模块62接收的编码后的数据包与缓存中的数据包是否线性相关;
数据包处理模块66,与判断模块64相连,用于判断模块64的判断结果为是时,丢弃编码后的数据包;判断模块的判断结果为否时,将编码后的数据包存入缓存;
数据包转发模块68,与数据包处理模块66相连,用于数据包处理模块66向缓存中存入数据包之后,判断缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发缓存中的数据包。
当然,在管道未建立的情况下,图6的节点上也可以设置上述管道建立模块52。
针对上述目的节点,本实施例还提供了一种无线传感器节点,该节点可以作为目的节点,参见图7,该节点包括以下模块:
数据包个数判断模块72,用于判断缓存中的数据包个数是否达到指定数量;
解码模块74,与数据包个数判断模块72相连,用于数据包个数判断模块72的判断结果为是时,根据编码规则对缓存中的数据包进行解码,恢复出原始数据。
为了解决丢包问题,提高传输的可靠性。上述图7的无线传感器节点还包括:重传请求模块,用于当接收数据包的时长达到设定时长,且缓存中的数据包个数未达到指定数量时,向上游的主路径节点发送数据包请求消息,其中,该数据包请求消息携带有欲请求的数据包指示信息。
在实际实现时,有的节点可以作为源节点,也可以作为管道节点,或者目的节点,此时,可以将上述图5至图7所包括的各个模块一起或部分设置在一个无线传感器节点上,用以实现各个节点的通用性。
本实施例在发送数据之前,建立发送数据的管道,而不是在整个网络内进行数据的广播,同时,在建立的管道上采用线性网络编码的方式发送数据,解决无线传感器网络中数据传输时能耗较高的问题,在无线传感器网络中节点能量资源有限的前提下,尽可能地延长了节点的使用寿命,同时也保证了传输的可靠性。
实施例4
本实施例提供了一种无线传感器网络中的数据传输系统,参见图8,该系统包括源节点50和目的节点70;其中,源节点如实施例3图5所示,目的节点如实施例3图7所示。优选地,该系统该包括管道节点,该管道节点如实施例3图6所示,其功能这里不再一一赘述。
综述所述,以上实施例提出的技术基于网络编码技术,并限制了广播的覆盖范围,降低和均衡了能耗,增加了网络传输率,减少了时延。通过管道建立和Credit算法等机制解决了融入网络编码后带来的一些问题。为了验证上述实施例的有效性,在建立网络拓扑时,将大约200个传感器节点均匀部署,密度为每个节点周围大约有8-10个邻居节点,设有限域大小为28,每层管道节点个数设定为3,初始时设置每个节点的剩余能量为0-100的随机值。图9显示了能量均衡情况。图10说明了EENC协议有效抑制了能量值低的节点发包次数,达到了能量均衡的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种无线传感器网络中的数据传输方法,其特征在于,包括:
源节点确定向目的节点发送数据时,根据路由表建立管道,其中,所述路由表包括:邻居节点标识、邻居节点到当前节点的链路质量、所述邻居节点的剩余能量和所述邻居节点的跳数;所述管道包括主路径节点和管道节点,其中,所述主路径节点和所述管道节点是根据所述路由表从当前节点的邻居节点中选择出来的;
所述源节点将待发送的原始数据分成指定数量个数据包,并将所述指定数量个数据包进行网络编码;
所述源节点通过所述管道发送所述编码后的数据包;
其中,所述源节点根据路由表建立管道包括:从所述源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点,直至所述目的节点为止;每个所述主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点,其中,所述同跳数邻居节点指跳数与所述主路径节点的跳数相同的邻居节点。
2.根据权利要求1所述的方法,其特征在于,所述从所述源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点包括:
从所述源节点开始的每个节点计算每个下游邻居节点对应的指标B=E+αP,选择所述指标最大的下游邻居节点作为下一个主路径节点,其中,E为下游邻居节点的剩余能量,P为根据所述下游邻居节点的链路质量计算的脉冲重复率,α为调节参数。
3.根据权利要求1所述的方法,其特征在于,所述每个所述主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点包括:
每个所述主路径节点计算每个同跳数邻居节点对应的指标B=E+αP,根据所述指标的大小选择指定个同跳数邻居节点作为管道节点,其中,E为同跳数邻居节点的剩余能量,P为根据所述同跳数邻居节点的链路质量计算的脉冲重复率,α为调节参数。
4.根据权利要求1所述的方法,其特征在于,所述网络编码为线性网络编码;
所述源节点通过所述管道发送所述编码后的数据包包括:
所述源节点向下一个所述主路径节点和所述管道节点发送所述编码后的数据包;
所述管道中的每个所述主路径节点首次收到所述编码后的数据包时,转发所述数据包,并通过线性网络编码转发非首次收到的数据包;
所述管道节点接收到所述编码后的数据包后,判断所述编码后的数据包与缓存中的数据包是否线性相关,如果是,丢弃所述编码后的数据包;如果否,将所述编码后的数据包存入所述缓存;
所述管道节点向所述缓存中存入所述数据包之后,判断所述缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发所述缓存中的数据包。
5.根据权利要求4所述的方法,其特征在于,其中,所述发送条件是预先根据管道节点自身的剩余能量和传输成功率设定的。
6.根据权利要求1所述的方法,其特征在于,其中,所述编码后的数据包的包头携带有编码规则;
所述源节点通过所述管道发送所述编码后的数据包之后,所述方法还包括:
所述目的节点的缓存中的数据包个数达到所述指定数量时,所述目的节点根据所述编码规则对所述缓存中的数据包进行解码,恢复出所述原始数据。
7.根据权利要求6所述的方法,其特征在于,所述源节点通过所述管道发送所述编码后的数据包之后,所述方法还包括:
当所述目的节点接收数据包的时长达到设定时长,所述目的节点的缓存中的数据包个数未达到所述指定数量时,所述目的节点向上游的主路径节点发送数据包请求消息,其中,所述数据包请求消息携带有欲请求数据包的指示信息;
接收到所述数据包请求消息的节点根据所述数据包指示信息确定自身的缓存中是否存在所述欲请求数据包,如果是,向所述目的节点重发所述欲请求数据包;如果否,向上游的主路径节点转发所述数据包请求消息。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述路由表的建立过程包括:
无线传感器网络中的指定节点广播多个信号包,其中,所述信号包携带以下字段:包括:所述信号包的包号、转发节点的标识、所述转发节点的剩余能量和所述信号包到所述转发节点经过的跳数;
接收到所述信号包的节点根据所述信号包生成所述路由表。
9.根据权利要求8所述的方法,其特征在于,所述路由表还包括:每个邻居节点发送所述信号包的数量;
接收到所述信号包的节点根据所述信号包生成所述路由表之后,所述方法还包括:
所述接收到所述信号包的节点将所述路由表中所述信号包的数量小于指定值的表项删除。
10.一种无线传感器节点,其特征在于,包括:
管道建立模块,用于确定向目的节点发送数据时,根据路由表建立管道,其中,所述路由表包括:邻居节点标识、邻居节点到无线传感器节点的链路质量、所述邻居节点的剩余能量和所述邻居节点的跳数;所述管道包括主路径节点和管道节点,其中,所述主路径节点和所述管道节点是根据所述路由表从当前节点的邻居节点中选择出来的;
编码模块,用于将待发送的原始数据分成指定数量个数据包,并将所述指定数量个数据包进行网络编码;
发送模块,用于通过所述管道发送所述编码后的数据包;
其中,所述管道建立模块,用于从源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点,直至所述目的节点为止;每个所述主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点,其中,所述同跳数邻居节点指跳数与所述主路径节点的跳数相同的邻居节点。
11.一种无线传感器节点,其特征在于,包括:
接收模块,用于接收源节点通过管道发送的编码后的数据包,其中,所述管道为所述源节点根据路由表建立的管道,所述路由表包括:邻居节点标识、所述邻居节点到当前节点的链路质量、所述邻居节点的剩余能量和所述邻居节点的跳数;其中,所述数据包通过以下方式进行确定:源节点将待发送的原始数据分成指定数量个数据包,并将所述指定数量个数据包进行网络编码,所述编码后的数据包是所述源节点通过管道进行发送的;
判断模块,用于判断所述接收模块接收的所述编码后的数据包与缓存中的数据包是否线性相关;
数据包处理模块,用于所述判断模块的判断结果为是时,丢弃所述编码后的数据包;所述判断模块的判断结果为否时,将所述编码后的数据包存入所述缓存;
数据包转发模块,用于所述数据包处理模块向所述缓存中存入所述数据包之后,判断所述缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发所述缓存中的数据包。
12.一种无线传感器节点,其特征在于,包括:
数据包个数判断模块,用于判断缓存中的源节点通过管道发送的编码后的数据包个数是否达到指定数量,其中,所述管道为所述源节点根据路由表建立的管道,所述路由表包括:邻居节点标识、所述邻居节点到当前节点的链路质量、所述邻居节点的剩余能量和所述邻居节点的跳数;其中,所述数据包通过以下方式进行确定:源节点将待发送的原始数据分成指定数量个数据包,并将所述指定数量个数据包进行网络编码,所述编码后的数据包是所述源节点通过管道进行发送的;
解码模块,用于所述数据包个数判断模块的判断结果为是时,根据编码规则对所述缓存中的数据包进行解码,恢复出原始数据。
13.根据权利要求12所述的无线传感器节点,其特征在于,所述无线传感器节点还包括:
重传请求模块,用于当接收数据包的时长达到设定时长,且所述缓存中的数据包个数未达到所述指定数量时,向上游的主路径节点发送数据包请求消息,其中,所述数据包请求消息携带有欲请求的数据包指示信息。
14.一种无线传感器网络中的数据传输系统,其特征在于,包括源节点和目的节点;
所述源节点包括:
管道建立模块,用于确定向目的节点发送数据时,根据路由表建立管道,其中,所述路由表包括:邻居节点标识、邻居节点到当前节点的链路质量、所述邻居节点的剩余能量和所述邻居节点的跳数;所述管道包括主路径节点和管道节点;
编码模块,用于将待发送的原始数据分成指定数量个数据包,并将所述指定数量个数据包进行网络编码;
发送模块,用于通过所述管道发送所述编码后的数据包;
所述目的节点包括:
数据包个数判断模块,用于判断缓存中的数据包个数是否达到所述指定数量;
解码模块,用于所述数据包个数判断模块的判断结果为是时,根据编码规则对所述缓存中的数据包进行解码,恢复出原始数据;
其中,所述管道建立模块,用于从所述源节点开始的每个节点根据自身的路由表中邻居节点的剩余能量和链路质量选择下一个主路径节点,直至所述目的节点为止;每个所述主路径节点根据自身的路由表中同跳数邻居节点的剩余能量和链路质量选择指定个同跳数邻居节点作为管道节点,其中,所述同跳数邻居节点指跳数与所述主路径节点的跳数相同的邻居节点。
15.根据权利要求14所述的系统,其特征在于,所述系统还包括:所述管道节点;
所述管道节点包括:
接收模块,用于接收编码后的数据包;
判断模块,用于判断所述接收模块接收的所述编码后的数据包与缓存中的数据包是否线性相关;
数据包处理模块,用于所述判断模块的判断结果为是时,丢弃所述编码后的数据包;所述判断模块的判断结果为否时,将所述编码后的数据包存入所述缓存;
数据包转发模块,用于所述数据包处理模块向所述缓存中存入所述数据包之后,判断所述缓存中的数据包个数是否满足发送条件,如果满足,通过线性网络编码转发所述缓存中的数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110150857.8A CN102223683B (zh) | 2011-06-07 | 2011-06-07 | 无线传感器网络中的数据传输方法、节点和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110150857.8A CN102223683B (zh) | 2011-06-07 | 2011-06-07 | 无线传感器网络中的数据传输方法、节点和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102223683A CN102223683A (zh) | 2011-10-19 |
CN102223683B true CN102223683B (zh) | 2017-10-10 |
Family
ID=44780079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110150857.8A Active CN102223683B (zh) | 2011-06-07 | 2011-06-07 | 无线传感器网络中的数据传输方法、节点和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102223683B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572952B (zh) * | 2011-12-15 | 2014-04-09 | 北京航空航天大学 | 一种基于网络编码的无线mesh网络流媒体公平服务方法 |
CN102572717A (zh) * | 2012-02-20 | 2012-07-11 | 南京中通电气有限公司 | 一种基于网络编码的多径路由可靠传输方法 |
CN102664716B (zh) * | 2012-04-13 | 2014-08-06 | 南通大学 | 一种应用于实时监测的无线传感器网络数据收集方法 |
CN103379030B (zh) * | 2012-04-26 | 2018-07-03 | 华为技术有限公司 | 一种路由相关的节能方法、网络设备和系统 |
CN103517365B (zh) * | 2012-06-27 | 2017-12-12 | 天津中兴智联科技有限公司 | 一种基于无线传感器网络的信息传输方法及装置 |
CN102761931B (zh) * | 2012-06-29 | 2015-05-06 | 南京大学 | 异步占空比无线传感器网络中进行动态数据传输的方法 |
CN104053205A (zh) * | 2013-03-13 | 2014-09-17 | 中国科学院大学 | 一种基于准最优化原则的无线传感器网络路由方法 |
CN104363139B (zh) * | 2014-11-21 | 2018-11-23 | 西北工业大学 | 一种利用局部特性的传感网链路质量估计值计算方法 |
US9936052B2 (en) * | 2015-11-04 | 2018-04-03 | Motorola Mobility Llc | Wireless ad hoc network assembly using network coding |
CN105553611B (zh) * | 2015-12-09 | 2018-12-11 | 豪威科技(上海)有限公司 | 数据包解码系统及方法 |
CN106712838A (zh) * | 2016-11-17 | 2017-05-24 | 天津大学 | 基于分组和网络编码的光网络双链路故障保护方法 |
CN106656275B (zh) * | 2016-12-07 | 2020-01-14 | 深圳大学 | 无线射频通信方法和系统 |
CN109391675B (zh) * | 2018-06-07 | 2021-02-23 | 兰州理工大学 | 一种应用于wsn的从汇聚节点到传感节点的可靠传输方法 |
CN109495946B (zh) * | 2018-11-07 | 2021-03-23 | 江汉大学 | 一种无线传感器网络的数据传输方法及装置 |
CN109982405B (zh) * | 2019-03-25 | 2022-11-29 | 南京邮电大学 | 一种基于多个数据流的会话间网络编码的机会路由方式 |
CN110113783B (zh) * | 2019-05-31 | 2021-10-01 | 中国科学技术大学 | 一种实现联合感知驱动的卫星网络多跳路由的方法 |
CN111984322B (zh) * | 2020-09-07 | 2023-03-24 | 北京航天数据股份有限公司 | 一种控制指令传输方法及装置 |
CN117580125B (zh) * | 2023-11-16 | 2024-06-14 | 中山大学 | 一种基于加权链路质量的水下传感器网络路由协议系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102056263A (zh) * | 2011-01-31 | 2011-05-11 | 中控科技集团有限公司 | 基于树形无线传感器网络的路由方法和装置及传感器设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1984020A (zh) * | 2006-06-08 | 2007-06-20 | 华为技术有限公司 | 一种传输数据的方法及装置 |
US8111619B2 (en) * | 2008-02-08 | 2012-02-07 | Honeywell International Inc. | Apparatus and method for routing data in wireless networks |
CN101621353B (zh) * | 2008-07-03 | 2013-08-07 | 华为技术有限公司 | 一种随机线性网络编码的方法、装置和系统 |
CN101562861B (zh) * | 2009-05-15 | 2011-04-13 | 重庆邮电大学 | 无线传感器网络中基于跳数和能量的跨层双向路由方法 |
-
2011
- 2011-06-07 CN CN201110150857.8A patent/CN102223683B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102056263A (zh) * | 2011-01-31 | 2011-05-11 | 中控科技集团有限公司 | 基于树形无线传感器网络的路由方法和装置及传感器设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102223683A (zh) | 2011-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102223683B (zh) | 无线传感器网络中的数据传输方法、节点和系统 | |
Pandey et al. | Study of MANET routing protocols by GloMoSim simulator | |
CN101568164B (zh) | 一种Ad hoc网络机会路由的实现方法 | |
Gulati et al. | Performance comparison of mobile Ad Hoc network routing protocols | |
CN101895954B (zh) | 一种基于分组索引增量传送的机会网络路由方法 | |
CN108449271A (zh) | 一种监测路径节点能量和队列长度的路由方法 | |
CN101431810A (zh) | Ad Hoc网络中可支持多速率传输的跨层协同路由方法 | |
CN101827421A (zh) | 基于信道状态信息的dsr协作路由方法及路由器 | |
Yao et al. | A neighbor-table-based multipath routing in ad hoc networks | |
CN102958129A (zh) | 基于olsr协议的路由方法及系统 | |
CN103108372A (zh) | 基于节点发送和接收能力的干扰感知跨层路由方法 | |
CN103037436B (zh) | 一种基于HWMP的网络编码感知无线Mesh路由协议 | |
Wannawilai et al. | AOMDV with sufficient bandwidth aware | |
CN102438207B (zh) | 一种无线多跳网中的实时多播方法 | |
CN103560966A (zh) | 基于网络编码和复制的机会网络混合路由方法 | |
Bai et al. | Salvaging route reply for on-demand routing protocols in mobile ad-hoc networks | |
Xia et al. | An improved AODV routing protocol based on the congestion control and routing repair mechanism | |
Sanchez-Iborra et al. | An approach to a cross layer-based QoE improvement for MANET routing protocols. | |
Abolhasan et al. | A routing strategy for heterogeneous mobile ad hoc networks | |
Ahmad et al. | Increasing packet delivery in Ad Hoc On-Demand Distance Vector (AODV) routing protocol | |
Haq et al. | Congestion avoidance adaptive routing protocol for manets using network coding | |
CN109362114A (zh) | 一种基于标签的动态源路由的路径表达方法 | |
Kumar et al. | A brief survey on energy efficient routing parameters protocols in WSN | |
Sulaiman et al. | A Neighbour Coverage-Based Rebroadcast in MANETs Based on Energy Efficient Rebroadcast Probability | |
CN108156087A (zh) | 一种分簇、流量分配、编码协商和数据转发方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |