新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 一种基于移动终端的无线传感器网络数据收集协议

一种基于移动终端的无线传感器网络数据收集协议

作者:时间:2011-02-11来源:网络收藏

  1引言

  1. 1网络介绍

  在网络的应用中, 有存在于复杂的应用环境, 如军事自组织网络, 节点均部署于复杂恶劣的环境下, 节点间端到端的通信难以保证, 出现了网络的断裂; 还有网络, 这类网络节点数量庞大, 网络通信复杂, 通信路径不是随时可用的,这种存在高延时和频繁割裂的网络, 一般称之为受限网络, 为了研究这类受限网络, 提出了DTN 的概念。延时可容忍网络DTN ( de lay to lerant network)就是研究这一类特定应用环境下的网络, 在这种应用环境中端到端的通信难以保证, 会有频繁的连接中断的情况, 使网络间断的或部分的连接在一起, 出现网络分割, 同时这种应用下允许一定范围的延时。

  由于这种网络的特殊性, 不能保证实时的传递, 而且它是面向消息的, 所以就涉及到了数据的存储, 在DTN 体系结构中提出了捆绑层的概念, 实现数据的保管传递。

  1.2DTN路由协议研究

  DTN路由研究是DTN研究的热点, 目前的路由协议的算法主要分为以下几类: ( 1)基于传染性方式 , 将分组信息传递给所有相遇的节点, 直到到达目的节点; ( 2)基于历史信息的方式, 根据节点历史相遇记录进行信息传递, 采用了概率的算法;( 3)基于特殊messager节点来摆渡分组信息,采用了存储- 携带- 转发的模式。DTN 网络中的路由的设计都是基于以上几种基本思想进行的。

  2一种基于Ferry的数据设计方案

  2. 1 基本思路

  在文献[ 7]中提出了将ferry 节点用于DTN 网络, 并且也针对它的路由进行了分析与设计, 文献中更多的是讨论针对TSP问题的解决, 而没有从整体布局中去考虑ferry 节点的路由轨迹趋势, 在文献[ 5] , [ 8]中开始讨论使用多个ferry 节点来进行数据传递, 但是它更多的是考虑针对大的区域, 没有对ferry节点的具体运动模型进行设计。在这里我们考虑在同一区域内使用双ferry 节点, 并且沿同一路径, 考虑节点采用不同运动方式时的性能分析, 一种是两个ferry 节点采用同向运动, 另一种情况两个ferry节点运动方向相反, 两种运动模型如图1和图2所示。


  本文考虑简化后的基本模型, 整个大的区域有四个小的区域, ferry节点沿固定圆形路径经过各个区域进行数据传输, 其中各个区域采用门节点与ferry节点通信, 在文献[ 7]中已经提到在小区域簇内实现端到端的连接, 其中能够与ferry 节点直接通信的节点均为门节点, 其他节点只需考虑将数据发送到门节点。当ferry 节点到达某一个区域, 发送hello建立连接, 其中收到此消息的节点就成为门节点, 它通知区域内的其他节点它作为门节点的消息,运用D ijkSTra算法, 找到各个节点到达门节点的最短路径, 建立连接, 这是采用ferry节点时簇内的路由建立。本文中重点从簇间通信的方面进行考虑来提高数据传送率, 提出采用双ferry节点逆向运动的模型。这是基于从ferry 节点的携带能力以及数据管理上出发的, 当ferry 节点同向运动时, ferry 节点会将发往它运动方向相反的前一区域的目的地的分组信息空携带一周, 这样就浪费了ferry节点的携带能力, 所以我们考虑将ferry节点采用逆向运动, 这样对于需传送到相对于节点运动相反的邻区域的信息可以等待另外一个与其同向的ferry 节点传送。

  下面将具体讲述其过程并将其与同向运动做比较。

  2. 2具体实现

  首先分析采用双ferry节点逆向运动, 一个周期内的运动状态, 如图3所示。


图3 ferry节点逆向运动一周状态。

  针对上图我们来分析具体的实现, 在一区产生的数据目的节点所在的区域可能是各个区域, Ferry节点A 处于当前情况下时仅仅携带由一区传送到四区和三区的数据, 而对于需传送到二区的数据则不予携带, 发往二区的数据需等ferry节点B 运动到一区, 再将其携带至二区, 这样减少了这部分信息所占用的ferry 节点的携带容量, 同理ferry 节点B 也是这样工作, 即ferry节点将不予携带在其运动方向上需运动一周的数据, 对于在三区自己区域内的节点不需要通过ferry进行传输, 没有簇间传输延时,也不占用ferry 节点的buffer, 这里不予考虑。在同一区域内采用ferry节点逆向运动的方式, 可以与一条路径上两个ferry节点同向运动相比, 这种情况下数据将少占用一段时间ferry节点的存储容量, 从而节省了ferry 的存储容量, 提高ferry 节点的携带能力。

  在DTN 网络中, 实行的是存储- 携带- 转发的方式, 所以对于节点的存储能力有了一定的要求, 通过双ferry节点逆向运行, 减少ferry 节点的存储能力的限制, 当然这部分存储负担就转移到了每个簇的门节点, 但是在每个簇中门节点的数量是相对比较多的, 对于能和ferry节点通信的节点均可作为门节点, 这样就相当于将ferry一个节点的负担平均转移到了多个门节点中, 从而提高ferry的携带能力,提高整个网络的传输效率。

  2. 3.. 针对突发情况的考虑

  在网络中存在不可预知的突发情况, 如某一时刻某一区域节点产生的数据突然增多, 针对这种情况, 我们进行了考虑, 对ferry节点传递分组信息进行自适应调控。在2. 1节中, 考虑的是一般情况下,ferry节点A 和ferry节点B, 采用上述方向负责传递数据, 但是在出现突发情况下, 我们对其进行改进,ferry节点A 在自身buffer空闲的情况下也负责传递本属于ferry节点B 的信息, ferry 节点A 和ferry节点B 每周都会相遇一次, 此次情况下, 他们也会进行一个简单的通信, 告知对方自己信息的接收情况,当节点A 收到节点B 的bu ffer已满时, 并且自己的buffer仍有剩余空间时, 将主动帮助节点B 传递数据, 从而解决某一区域信息突然增多的情况。

  3 理论分析

  模型为2. 1节中描述的模型, 其中每个区内的节点数量为n; 节点产生数据的平均速率为W bit/s; ferry节点的移动速度为V ; ferry节点的存储容量为c; ferry的路径长度为L 。

  3. 1 ferry节点的携带能力分析

  这里我们从理论数据上去分析ferry节点逆向运动带来的携带能力的提高。我们从信息在ferry节点上占用的时间去分析, 总的公式为:


  其中tij 为源节点在i区, 目的节点在j区的信息占的ferry节点情况, 一个区内信息占用的时间如表1。

表1 逆向运动信息占用fe rry时间表。


  这里我们同样考虑信息的目的节点区域是平均分布的qi1 = qi2 = qi3 = qi4 , 平均一个单位时间内的信息占用ferry节点buffer的时间为, 逆向:


  对于ferry节点同向运动的情况, 信息占用ferry 的时间如表2, 同向:


  比较可得: T T', 即同向ferry节点时信息占用ferry节点buffer多于逆向buffer。在ferry 节点buffer不足的情况下, 逆向ferry 节点可以增加ferry 节点的携带能力, 提高分组信息的传输。

表2 同向运动信息占用ferry 时间表


  以上均是针对目的节点为平均分布的情况, 对于一般情况也是一样的, 我们通过分析两个信息占用bu ffer时间表, 对于每个目的节点逆向ferry均是好于或等于同向ferry节点的情况, 所以无论目的节点服从任何分布, 逆向ferry节点的情况总是优于同向ferry节点。

  3. 2 延时分析

  分析两个ferry节点在整个区域内循环一周内的平均延迟, 这里将ferry节点运动一周的四分之一作为时间单位, 因为在不同的时刻, 两个ferry 节点的相对位置不同, 引起的分组信息传输的延时情况也不尽相同, 这里分析ferry 节点运动一周的情况,进而计算平均延时。

  两个ferry节点的相对位置如图3, 对应于图3中的前两个状态的节点延时(这里的延时指的是ferry节点转发信息所带来的延时)分别对应于表3、表4, 根据节点状态的对称性, 状态三与状态四分别与状态一和状态二是对称的, 在这里省略。

  考虑一个时间单位内的平均数据延迟:


  其中dz ij 即为上面各表中所列的数据, 代表一周内ferry节点传递信息的延时; d'zij 为区域i内的节点在状态z内, 产生的发送到目的节点在区域j中的信息等待ferry节点的延时; p ij 为区域i产生的, 目的节点在区域j的数据的概率; 源区域i, 目的节点区域为一区的概率qi1, 二区的概率qi2, 三区的概率qi3, 四区的概率qi4 。

表3 逆向延时表


表4 逆向延时表


  在信息负担很小的情况下, 不论是ferry 节点同向运动还是逆向运动, 信息都不需要延时等待ferry节点, 即d#zij = 0, 此时只需考虑信息通过ferry 节点传递时的延时, 假设数据的目的节点区域是平均分布的qi1 = qi2 = qi3 = qi4 , 双ferry节点逆向运动时,平均延时是: 当两个ferry节点同向运动时, 一个时间单位内的分组信息延时情况如表5, 因为ferry 节点的相对位置相同, 所以一个ferry周期内信息传输情况是相同的:

表5 同向延时表



  所以双ferry节点同向运动时的平均延时为:


  这种情况下D=D'; 当信息负担比较重时, 分析d'zij信息等待ferry节点的延时, 由3. 1节分析可知ferry节点逆向运动可以提高携带能力, 减少信息等待ferry节点的延时, 从而可知: 逆向运动下的d'z ij 同向运动下的d'z ij, 从而使D D', 即双ferry节点逆向运动时的延时小于双ferry节点同向运动时的延时。

  以上分析是在ferry节点在匀速运动的条件下, 节点数据产生率一定, ferry节点在经过某一区域时, 与门节点的通信时间充足, 可以完成数据的双向通信的前提下。

  4 仿真实验及分析

  4. 1 仿真模型

  在DTN模型中, 节点随机分布在四个不相连接的区域中, 各个区域节点数目大致相当, 两个ferry节点沿固定路径运动, 并且假设ferry节点与各个区域门节点的接触时间相当, 并且足够与门节点进行通信, 每个区域中节点所到达的目的节点是平均概率分布的, 门节点和ferry 节点的存储能力固定, 这里实验时间设为100000s。

  因为本文方案中没有涉及到对簇间通信的路由策略, 所以仿真实验中所有的数据仅考虑簇间通信的代价与性能。

  4. 2 仿真结果分析

  4. 2. 1 多次实验的结果分析

  各个节点的数据产生率是随机的, 随机分布在100- 300个单位信息之间, 进行多次实验。

  从图4、图5中可以看出, ferry节点逆向运动不仅降低了平均延时和数据丢失率, 并且延时和丢失率是大致稳定的, 这就说明在随机条件下, ferry节点逆向运动的适应性和传输能力更强, 也更加稳定。


图4平均延时的比较


图5 平均数据丢失率的比较.

  4. 2. 2 不同数据产生率分析

  当节点的数据产生率变化时, 通过实验分析网络的性能变化的趋势, 实验结果如图6、图7。

  由图6和图7中可以看出, 随着数据产生率的提高, ferry节点逆向运动的优越性逐渐体现出来,这与3节中的理论分析是一致的, 在网络负担较重的情况下, 逆向ferry节点的性能高。


  5 总结

  本文在研究了DTN 网络中基于ferry节点的路由设计方案基础上, 提出了通过改变DTN 中ferry节点的运动状态, 来提高网络传输中存储- 携带-转发三个过程中的携带能力, 进而提高网络的传输能力, 通过实验仿真和理论分析, 在大负荷的通信区域内, ferry节点的逆向运动优于同向运动, 在小负荷的情况下, 两者性能相差不大, 同时也考虑了突发情况, 进一步提高网络的传输能力。转发能力是与ferry节点与簇内门节点的通信时间紧密相关的, 这里我们没有改变ferry节点的运行时间和路径, 所以它的转发能力未能改变, 进一步的工作是期望通过簇内门节点与ferry的通信自适应改变ferry节点与门节点的通信时间, 从而更进一步的提高DTN 网络的传输能力。



评论


相关推荐

技术专区

关闭