多跳无线传感器网络

2024-05-19

多跳无线传感器网络(精选10篇)

多跳无线传感器网络 篇1

摘要:高精度低功耗的时间同步对于无线传感网络至关重要,文中重点分析了高精度时间同步算法,发现其在多跳网络时间同步过程中由于每跳范围内所有节点均要广播时间同步包,会产生大量的冗余信息。为降低同步功耗,提出了一种新方法,通过调节发射功率,筛选出每一跳范围内的周边节点,使其完成下一跳范围的时间同步,而非周边节点只接受却不发送时间同步包。最后,针对改进的算法在OMNet++上进行了仿真实验,仿真结果表明,改进后的算法能够有效地降低全网能量消耗。

关键词:无线传感网络,时间同步,低功耗,多跳网络

无线传感器网络( Wireless Sensor Network,WSN) 是由部署在监测区域的大量传感器节点通过自组织方式组成的一种分布式网络。其能够实时的监测、采集目标区域的数据,并传输到目的服务器[1]。时间同步技术属于无线传感网的一项重要支撑技术,对于数据采集及数据融合至关重要,由于无线传感网能量有限的特点,因此低功耗高精度的时间同步算法是关键。 针对无线传感网时间同步的问题,研究人员提出了诸多时间同步算法,经典算法包括RBS( Reference broadcast Synchronization) 算法[2]、TPSN( Timing -Sync Protocol for Sensor Networks) 算法[3]、DMTS( Delay Measurement Time Synchronization) 算法[4]和FTSP( Flooding Time Synchro- nization Protocol) 算法[5]等。这些算法致力于提高同步精度,基本没有考虑时间同步带来的能量消耗问题。 虽然,后期的研究人员也提出了一些能量高效的时间同步算法,但均是以牺牲同步精度来降低功耗,例如由加州大学伯克利分校的Jana Van Greunen等人提出的LTS( Lightweight Tree - based Synchronization) 算法[6]。

FTSP算法对时间同步误差做了详细分析,采用MAC层时间标技术,大幅提高了时间同步精度,但其能耗较大,尤其是在多跳网络中,由于每个节点均要广播时间同步包,导致网络中充斥着大量的冗余信息,不仅增加了能量的消耗,也造成了严重的信道冲突,从而影响了整个网络的使用寿命,甚至影响了同步精度。 本文针对其在多跳网络中高能耗的缺点,提出了消除冗余数据包,并降低功耗的改进算法。

1 FTSP算法介绍

1. 1 MAC层时间标

FTSP算法对时间同步误差来源做了详细分析,对这些误差进行有效的分析及补偿才能提高时间同步的精度。这些误差来源有以下10 个部分: 发送时延、访问时延、传输时延、传播时延、接收时延、接收处理时延、中断处理时延、编码时延、解码时延和字节对齐时延[5]。针对这些误差FTSP算法采用了MAC层时间标技术,分别在发送方和接收方的MAC层记录多个时间戳,然后再对其标准化,由于时间戳都是在每个字节发出后记录的,所以标准化就是将时间戳减掉一个适当整数倍的单个字节的传输时间,并取平均值作为本包数据的最终时间戳。该种方法可消除编解码所带来的误差,又由于其在MAC层操作,可消除传输工程中的发送时延、访问时延及接收处理时延,所以FTSP算法可取得较高的精度。

1. 2 多跳网络的时间同步

FTSP算法提供了多跳网络的时间同步算法,其根据节点的ID号动态选举一个根节点,作为时钟源节点,所有节点的时间均同步于根节点的时间[5]。如图1 所示,0 号节点为根节点,所有标号为1 的节点均为第一跳范围内的节点,所有标号为2 的节点均为第二跳范围内的节点。在全网同步期间,根节点向一跳范围内的节点广播时间同步包,接收到时间同步包的节点在MAC层记录接收时间,并从数据包中取出发送时间,组成一个时间坐标( globaltime,localtime) ,其中globaltime即为根节点发送时间同步包时记录的时间, 而localtime为接收节点接收到时间同步包时所记录的时间。随后,接收到时间同步包的节点通过多个时间坐标拟合出一条时间曲线,作为计算全局时间的公式。 同步之后的节点,继续向下一跳范围内的节点广播全局时间,并最终完成全网时间同步。

随着无线传感网络研究的深入,其应用也越发广泛,且要求更大的规模,例如应用在桥梁测量方面,需要分布更密集的无线传感器网络,每跳范围内节点数目大。再如无线视频监控网络,由于摄像头的有效监测区域问题,通常会在每跳范围内布置众多传感器节点。面对这样的应用,低功耗的时间同步是至关重要的,而FTSP算法在这方面存在不足。如图1 所示,按照FTSP算法,处于第一跳范围内的节点在取得时间同步后,均会向二跳范围内的节点广播全局时间,而实际上处于一跳范围内的外围节点已经足够覆盖二跳范围内的全部节点,因此这样的时间同步会导致网络中充斥着大量的冗余信息,不仅增加了能量的消耗,也造成了严重的信道冲突,从而影响了整个网络的使用寿命,甚至会影响同步精度。

2 FTSP全网同步算法改进

2. 1 信号衰减模型

无线电信号在自由空间中传播,信号强度会随着距离的变大而衰减。对此,研究人员提出了信号衰减模型[7 -8]。最初的信号强度衰减模型可表示为

式( 1) 中,Pr( d) 表示距离发射节点为d0处的信号强度,单位dBm。Pt表示发送节点的发送信号强度,单位dBm。PL( d) 表示到发射节点距离为d处的路径的功率损耗,单位dBm。

但为更好地表示实际信号的衰减情况,研究人员又对式( 1) 进行了修改,使用了对数模型,并加入了不确定性,如式( 2)

式( 2) 中,PL( d0) 表示距离发射节点为d0处的信号强度; n与实际的环境有关,被称为衰减常数。Xδ表示均值为0 的高斯随机变量,其方差为 δ。

若取PL( d0) =55,n =2. 4,d0= 1,Xδ= 0,则可得到如图2 所示的信号损耗曲线。由图2 可知,随着距离的增加,信号功率损耗也在增多。这样无线发送模块可通过改变发射功率进而改变通信范围的半径,采用高的发射功率,通信半径也大,小的发射功率,通信半径则小。

2. 2 低功耗算法的实现

本文算法的关键部分是如何筛选出每跳范围内处于外围的节点,详细过程如下:

( 1) 根节点先调节发射功率为X1,然后以此功率向一跳范围内其他节点广播数据包m1,一跳范围内其他节点在未收到任何数据包时处于A态,当其接收到数据包m1时,这些节点将进入B态,并开启超时时间为T1的定时器。其次,根节点改变发射功率为X2( X2< X1) ,假设节点可调节的发射功率为N1,N2,…, Nn且X1= Nx( 1≤x≤n) ,则X2采用式( 3) 确定

( 2) 在T2( T2< T1) 时间后,以此功率再向一跳范围内其他节点广播数据包m2,一跳范围内其他节点收到数据包m2时,其状态由B态转移到C态,而远离根节点的节点,由于无法接收到数据包m2,依然处于状态B,这些节点在定时器超时后,将转移到D态,此时这些进入D态的节点称为周边节点。而根节点不参与状态转换,其他节点的状态转移如图3 所示。

节点的初始状态是A态,当节点接受到一包数据后,并判断其类型,若是m1数据包,则转换节点状态到B态。但节点处于B态时,当接受的数据包是m2类型时, 会转换为C态,当定时器超时后,则会转换为D态。

最后,每一跳范围内的周边节点一旦进入D态, 就先会调节发射功率为X1,并广播数据包m1,接着在T2时间后广播数据包m2,其他接收到m1、m2数据包的节点按照参照图3 所示的状态迁移。

整个筛选流程如图4 所示。

当周边节点筛选完毕后,网络进入时间同步阶段, 根节点先调节发射功率为X1,然后广播时间同步包,其一跳范围内其他节点收到此同步包后,完成时间同步。 周边节点完成同步后,调节发射功率为X1,向下一跳范围广播时间同步包,而非周边节点不发送时间同步数据包,其他周边节点采取同样的方式,完成全网的时间同步。由于每跳范围内只有一部分节点负责完成下一跳网络的时间同步,所以可在全网范围内广泛降低功耗。

3 仿真分析

为了说明本开发对降低功耗的有效性,即对传统FTSP算法和本文提出的改进算法LECFTSP ( Low Energy Consumption Flooding Time Synchronization Protocol) 在OMNet ++ 仿真工具上进行了仿真分析。 OMNet ++ 是一款面向对象的离散事件网络模拟器,具有通用的体系结构,可仿真大规模无线传感网络[9]。 仿真分析结果如图5 所示。

仿真中使用了25 个节点,均匀分布在40 m × 40 m的区域,节点的分布如图5 所示,根节点位于分布区域的左上角。图5 中实心节点是筛选出的周边节点, 空心节点属于非周边节点,这些节点在时间同步过程中不再广播时间同步包。

表1 是LECFTSP算法与传统FTSP算法在耗能方面的比较,由此可看出,LECFTSP由于具有众多节点不再需要广播同步包,使整个网络的能耗得以降低。

从表1 中可看到,在网络节点分布较密集的无线传感网络中,LECFTSP与传统方法相比,能够降低大量的能量消耗,且并未损失时间同步精度。

4结束语

本文重点研究了无线传感网时间同步能耗问题,针对密集分布的多跳网络,提出了一种低功耗的时间同步算法,有效降低了无线传感网在时间同步中的能量消耗。在后续研究中将进一步完善算法,使算法更具鲁棒性,且在实际物理环境中进行验证与测试,将算法应用于更大规模的无线传感网络中。

多跳无线传感器网络 篇2

本次实验我们进行的是无线传感器网络综合实验。在实验中,我们小组成员学习了无线传输的基本原理,合作完成实验系统的安装、调试与数据分析,在这一过程中我受益良多。

无线传感器网络系统是基于ZigBee技术。ZigBee技术是一种近距离、低复杂度、低功耗、低速率、低成本的双向无线通讯技术。主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用。

现在无线传感网络技术广泛用于很多方面,如农业物联网、工业自动化以及智能家居等。无线传感的使用使传感器和自动化技术得到了空前的发展,并给人们的生活带来了很大的便利。

我们平时的实验课更多注重对理论的验证,但是没有创新性和自主研发性,虽然这次的实验我们大部分也是照着实验说明书进行连接、烧录程序、演示等,但是此次的实验增加了我对电子设计的浓厚兴趣。只要有兴趣,我相信化兴趣为动力,我肯定能更加努力加强电子专业的学习,努力提高专业素养。

当然实验中还有注重团队的协作,我们分工明确,合作愉快,因此更快、更好地完成了实验。现在的项目工程,凭一己之力几乎不可能完成,所以企业也十分注重员工的团队意识,我们想要进入好的企业,对这块不能等闲视之,必须加以重视。

多跳无线传感器网络 篇3

关键词:无线多跳网络视频监控系统;设计;实现

中图分类号:TP399

1 无线多跳网络视频监控系统的设计

1.1 无线视频终端系统设计

无线多跳网络的视频监控系统主要有采集视频功能的模块,进行数据处理压缩的模块以及发送与接收无线数据的模块几部分构成,当然如果网关所接的是以太网的话,还需要以太网接口模块。这样才形成无线视频的整个系统图,如图1-1所示。

由图可知,获取收集视频数据的工作主要由其中视频采集模块来完成,它将所收集的数据进行整理,把有效一帧数据的传送到处理器处进行下一工作;数据压缩处理模块,也就是上图所示的视频编码模块,将处理器接收到的数据进行压缩与编码,可以减少数据量,提高网络传输效率,最大程度的减轻网线网路负担;而无线收发模块主要负责接受与发送整个无线网络视频监控的数据,包括无线网络的维护与组织等都是通过这一功能模块来完成的。在这一无线视频系统中,所有的功能模块的接入方式都有所不同,其中视频采集模块的接入比较特殊,是由自带的专用的数据接口来连接系统的,而视频压缩编码是通过MPEG4点解码引擎来进行视频压缩编码处理的,USB方式连接的是无线收发模块和信息处理器。

对于无线多跳网络视频监控系统关键在于硬件设施的选择,这样才能使得网络通畅,保证所收集的视频数据可以按时顺利的传送到目的地。正因为如此,在硬件设施的选择上最好采用功能比较强大的芯片来完成无线视频节点的设计,有助于缩短信息处理器所耗时间,尽可能保证网络的畅通无阻。因此,进行无线多跳网络视频监控系统硬件的设计时,多选择GM8120,这是由台湾所生产的具有高性能的视频处理器。这种处理器内核是ARM9,主频较高且芯片上有视频音乐的接口,还包括了实时时钟、以太网接口、视频编解码引擎和PCI接口等。而对于视频采集芯片最常用的就是SA7113,它能够完美的辅助处理器的工作,将接收的视频由CCD转换成YUV4:2:0,不仅如此,在视频数据接收处理完一帧以后,会自动中断视频数据的转换,而进行下一步工作,充分的将视频转换时间缩短了。

由于视频处理器的主频过高,因此在进行网络视频监控硬件布线时要尤其注意线路的距离与长度。这样才能很好的避免线路混乱、不匹配问题的产生,使无线视频系统中每个功能模块都能顺利的完成数据传输。

1.2 通过路由协议构建的无线多跳视频网络

(1)无线多跳网络。无线多跳网络也就是通常所说的无线自组织网络,它拥有路由、应用两种不同的使命,与无线传感器网络这种设备有一定的相似之处,即设备的节点是路由转发设备,除了进行用户程序中的特定任务外,还必须进行路由协议,才能保证视频监控网络的顺畅。在网络出现的时候,就需要由路由协议来完成网络的组织、建立与维护,而无线多跳网络有许多自身优良的特性,使得路由协议在网络应用中具有重要的地位。它不需要进行网线的铺设,还有很好的组网方案,只需要在合适的位置安装好网络节点就可以进行视频监控,大大的降低了网络建立的成本。(2)无线网络路由协议。相对于今天方便快捷的无线网络,有线网络具有一定的弊端。它所采用的路由协议,需要通过与其相邻的其他路由器来进行接收信息的交换,或是依靠链路分组进行信息的维护,制定出有效网络拓扑图,是比较固定的路由协议。在无线网路移动频繁,加入与退出自由的今天,有线路由协议根本无法满足要求。无线多跳网络的路由协议包含:表驱动路由协议、按需路由协议和混合式路由协议三种。其中表驱动路由协议,在网络的每个节点处,都需要对一张或更多的路由表进行维护,才能按照网络需求收集节点之间的路由信息,还要定期的检查更换路由表,确保网络与路由信息一致,主要有WRP、GSR、DSDV等几种协议,也被称作先应式路由协议。按需路由协议又叫反应式路由协议,它不同于表驱动路由协议每个节点都有路由协议,而是在所有节点中的一个对另外一个进行信息传输时,才会自动进行的找寻路由的一种路由协议。当合适的路由找到以后,才进行信息的发送,当然网络节点可以保存传输中的路由信息,供后续视频信息的发送,可以有效的提高网络传输效率。ABR、DSR、TORA、AODV是集中常见的按需路由协议。(3)无线视频监控系统的路由策略。普通的移动网络终端可以在整个网络里面漫无目的的随意移动,无线传感器网络的节点可以大面积任意的抛洒,而无线多跳网络却具有一定的自身特殊性。它的节点终端都必须安置在恰当的位置上,一般没有什么特别要求会将其固定在固体建筑中,不能随意进行移动,就算进行监控移动也是很小规模的移动。在无线多跳网络系统中的视频监控所涵盖的区域较广,因此进行监控设备安装铺设时,按照需求在一些适当的重要处进行安置便可,不需要大面积高密度的铺设。而且,无线多跳网络视频监控系统的数据所通过的网关各不相同,都有其固定的网关设备,再将所收集的视频数据传送到以太网。

2 无线多跳视频监控系统实现

无线多跳网络视频监控系统由视频采集压缩编码部分、无线多跳传输部分、网关和客户端监控系统等四大部分组成。在这一视频监控系统中,不同的设备具有不同的功能,但是彼此又具有双重使命,数据的采集、压缩,路由协议的维护、数据的转发等都必须相互协作完成。当然每个设备除了进行自身数据处理外,还要关注处理其他节点上所传送的信息。例如:有线与无线网络进行沟通的桥梁就是网关节点,它不仅将无线网络的节点进行组织集中,还把所收集的视频数据通过一定形式传送到以太网中,让互联网可以顺利的接收到视频数据,并对其进行实时监控,如图2-1所示。

上图中,左面是呈树形集聚的路由协议组成的多跳视频监控网络,主要负责视频的采集、传输、维护、监控工作。在视频设备进入多跳网络前,仅保持路由协议的运行,而不进行视频的采集,等加入多跳网络后才能将采集的视频进行编码,然后经过路由协议传送到下一线路,根节点处是所有视频数据最终的汇集处,也是网关。在网关设备处,把所收集的视频数据进行汇总后,再转发到互联网的客户端处,这就是完整的无线多跳网络视频监控系统。

3 结语

在安全防范意识增长的今天,人们对于可靠安全的监控设备需求也日益渐长。无线视频监控器成为人们的首要选择,它没有传输线铺设的束缚,比起传统的视频监控更具灵活机动性,可以满足人们对监控的更多要求。

参考文献:

[1]刘亭亭,李柏年,张金生.基于无线局域网的城市视频监控系统[J].现代电子技术,2008,9:272.

[2]张睿萍.视频监控系统关键技术研究[J].自动测量与控制,2008,27:3.

作者简介:王琦(1986-),男,中国电子科技集团公司第五十四研究所工程师,研究方向:网络架设与通信融合。

无线mesh网络多跳特性研究 篇4

Mesh其义为网格, mesh的特点就是所有节点都互相连接。Wireles Mesh即无线网状网, 是一种与传统的无线网络完全不同的新型网络。在无线mesh网络中, 每个节点都可以通过一跳或多跳的方式与一个或多个对等节点进行通信。Mesh架构作为一种新型的无线组网架构, 因其自组织多跳、自愈合高可靠性、灵活快速组网的特性适合于紧急通信或远程医疗等需要快速稳定组网的场景。

IEEE 802.11s作为WLAN网络下的mesh架构标准, 其物理层所使用的协议与Wi-Fi完全一致, 在MAC层则针对多跳特性做出了一些修订。本文针对IEEE 802.11写的mesh架构进行仿真, 并将仿真结果与传统单跳网络进行了对比, 最终分析得到WLAN网络下mesh架构的多跳特性。

二、无线mesh架构的多跳原理

围绕无线mesh网络架构的研究层出不穷, IEEE 802.11标准将无线网络中传输的的帧分为数据帧、控制帧和管理帧三类, 数据帧能携带更高层次的数据, 控制帧能被用作设定和认证, 设备通过管理帧来完成对一个本地WLAN或者一条链路的搭建、组织和维护。而IEEE 802.11s协议针对mesh网络的MAC帧结构做了特殊定义, 新定义下的MAC帧结构如图1所示。该帧结构中对地址结构的特殊定义使无线mesh网络具备了完成多跳传输的能力。

相对IEEE 802.11b/g/n协议下的MAC帧结构而言, ’s’工作组下的MAC帧结构所作出的特殊定义主要为图3中的蓝色部分, 即在802.11帧头末尾上添加了mesh控制域, 用以支持多跳功能。Mesh控制域主要包括mesh时间来直播完成同步 (TTL) , 一个mesh序列号、mesh标识域和可能的一个mesh地址扩展域。TTL和序列号信息组被用以避免帧永远的循环下去。Mesh标识域用以标识mesh控制域中是否有额外的MAC地址存在, 即是否MAC帧使用了mesh的3对地址, 即单跳源地址和目的地址, mesh路径中的源地址和目的地址以及端到端的源地址和目的地址。

三、仿真环境搭建

WLAN环境下Wi-Fi网络极其普遍。由于IEEE 802.11s下的无线多跳网络其物理层与IEEE 802.11所使用的物理层协议完全一致, 因此在IEEE 802.11的基础上研究无线多跳网络具有十分重大的意义。

由于网络的多跳通信过程设计网络的传输全过程, 并且需要考虑信道环境。因此本文使用了NS3来完成无线mesh网络的系统级仿真, 仿真过程中考虑了无线环境中的传输损耗, 并通过仿真Wi-Fi网络来参考完成无线mesh网络的单跳距离、传输损耗模型、信道探测阈值、能量探测阈值、天线增益等网络搭建的关键参数选取。

首先搭建了一组AP-STA的Wi-Fi网络, 通过采用控制变量的方法, 把传输速率 (Data Rate) 定为1Mbps, 然后改变STA节点与AP节点的距离, 测试得到了Wi-Fi网络的性能指标。我们运用随机变量, 测试了两次, 将两次得到的结果放在了同一张图中, 使结果更加可靠。图2即为吞吐量随距离变化的结果。两次测试结果均表明, 在150m以内, Wi-Fi网络的吞吐量表现良好, 能够达到我们设定的1Mbps;但是超出150m以外, 吞吐量会急速下降;到了200m以外, 吞吐量基本为零, 这意味着已经超出了这个网络的覆盖范围。

通过分析该性能指标, 我们可以得出结论, 在这样的设定下:

Wi-Fi网络表现良好的覆盖范围是100m, 此外, 参考常用的仿真信道参数, 采用如表1所示的仿真参数。下文将描述在上述设定下继续多跳测试。

四、多跳特性仿真结果分析

4.1 Wi-Fi网络与mesh架构的比较

上一小节通过基本的仿真结果确定了仿真环境的核心参数, 本节仿真将基于上述参数配置完成多跳仿真, 并将测试结果与IEEE 802.11环境下测试结果相比较。以数据发送速率 (Data Rate) 作为因变量, 看看Wi-Fi网络和Mesh网络 (一跳、两跳、三跳、四跳) 中吞吐量的变化情况, 从而分析出多跳的传输性能。

需要说明的是, Mesh网络中不同跳数的距离分析是一个平均值。由于单跳传输范围接近150m, 而仿真选取的100m为最佳传输距离。因此, 在3*3的网络拓扑下仿真结果得到的传输跳数包括1跳、2跳与4跳的传输结果。三个在某一跳范围内的节点, 本文以这三点的直线距离平均值作为该跳的覆盖范围。仿真结果得到Mesh 1跳的平均距离是120m左右;Mesh 2跳的平均距离是210m左右;Mesh四跳的直线距离是280m左右。图3所示, 仿真结果比较了Wi-Fi单跳与无线mesh网络各跳的传输性能。

从图3中我们可以看到, Wi-Fi网络和mesh 1跳的吞吐量基本一致的, 最大吞吐量都能达到1.2Mbps左右;mesh2跳的性能由于距离的增大表现得要差一些, 最大吞吐量达到了800kbps左右;mesh 4跳的性能由于传输距离的扩大, 吞吐量只能达到100kbps左右, 考虑到4跳的直线距离已经达到了280m, 这个结果还是能够接受的。因此, 从吞吐量这个指标可以看出来, 在相同条件下, 相同距离的时候, Wi-Fi网络和Mesh网络的性能是不相上下的。但是Mesh网络可以通过多跳的方式把覆盖范围扩大很多, 与此同时, 会牺牲一些吞吐量, 这是可以接受的。经过的跳数越多, 吞吐量受到的环境影响也越大。至于在本文的仿真结果中, mesh4跳的吞吐量只能达到100kbps, 这是网络拓扑结构和环境参数设定等各种因素综合影响的结果。

4.2实验总结

通过上述仿真分析, 我们可以得出如下结论:

(1) 在单跳的情况下, Wi-Fi网络与mesh网络的覆盖范围基本一致, 有效覆盖范围是150m左右。在这个范围内, 两类网络的吞吐量指标基本一致, 体现出良好的接入吞吐量。超出这个范围, 网络的性能会急速下降。

(2) 与Wi-Fi网络单跳覆盖相比, Mesh网络通过其多跳特性将无线传输的覆盖范围扩大了两倍多。此外, Mesh网络带来的不仅带来了覆盖范围的增加, 还能带来良好的解决网络拥塞、提高网络可靠性等无线多跳网络天然的优势。

(3) 随着数据发送速率的提高, 即单位时间内发送的数据包数量增加, 网络吞吐量明显提高。同时, 随着跳数增加, 网络吞吐量逐渐趋于饱和, 跳数越大, 饱和吞吐量越小, 因此, 在4跳情况下, 由于饱和吞吐量很小, 数据包发送速率的增加并没有引起吞吐量明显的提高。

五、总结

本文介绍了WLAN环境下无线mesh网络中多跳的由来, 并使用NS3网络仿真软件搭建Wi-Fi网络与无线mesh网络的仿真平台, 借助平台仿真结果分析了mesh网络多跳的特性。仿真结果从数据的角度体现了多跳网络在传输速率上可以匹敌Wi-Fi网络、在覆盖范围上远远超越Wi-Fi网络的优势。

参考文献

[1]I.Akyildiz and X.Wang, “A survey on wireless Mesh networks, ”Communications Magazine, IEEE, vol.43, pp.S23-S30, sept.2005.

[2]M.-X.Hu and G.-S.Kuo, “Delay and throughput Analysis of IEEE 802.11s Networks, ”in Communications Workshops, 2008.ICC Workshops‘08.IEEE Inter-national Conference on, pp.73-78, may 2008.

[3]IEEE 802.11s Amendment 10:Mesh Networking[S], IEEE LAN/MAN Standards Committee, 2011.

[4]Marc Esquius Morote, IEEE 802.11s Mesh Networking Evaluation under NS-3, in Enginyeria Electrònica, Abril 2011

[5]马春光, 姚建盛, NS-3网络模拟器基础与应用[M]。人民邮电出版社, 2013

[6]史蒂夫·梅思利, [著].王萍, 李颖哲, 黄飞[译]。无线Mesh网络基础[M], 西安交通大学出版社, 2012.7

[7]802.11无线网络权威指南[M]南京:东南大学出版社, 2007

[8]丁绪星, 吴青, 谢方方AODV路由协议的本地修复算法[J]。计算机工程, 2010, 36 (6) ::126-130

[9]沈奔, 秦军, 万丽无线Ad-Hoc网络中AODV路由算法的研究与改进[J]。计算机技术与发展, 2011.21 (3) :150-153

无线传感器网络多目标跟踪的介绍 篇5

无线传感器网络目标跟踪一直作为研究的热点,之前的研究多是单目标的跟踪,通过传感器网络的多个或全部节点协作跟踪同一个目标。

Mechitov K 等利用二元检测 ( binary-detect 协作跟踪的思想,通过目标是否处于传感器侦测距离之内或者之外,根据多个传感器的协作确定目标的位置,这种方法需要节点间的时钟同步,并要求节点知道自身的位置信息; Zhao F 等利用信息驱动 ( information-driven 协作跟踪的思想,利用传感器节点侦测到信息和接收的其他节点的侦测信息判断目标可能的运动轨迹,唤醒合适的传感器节点在下一时刻参与跟踪活动,由于有合适的预测机制,可有效的减少节点间的通讯,从而节省节点有限的能量资源和通讯资源; Zhang W S 等在解决无线传感器网络单目标跟踪时提出了传送树 ( convei tree 跟踪算法,这种算法是一种分布式算法,而之前的大多数跟踪算法为集中式的传送树是一种由移动目标附近的节点组成的动态树型结构,并且会随着目标的移动动态地添加或者删除一些节点,保证对目标进行高效跟踪的同时减少节点间的通信开销。

当前的目标跟踪算法主要是针对不同环境下的单目标跟踪,如何以较低的能量代价高效地融合有效的信息,增大丈量精度和延长网络生存期,并解决多目标跟踪,成为目前研究无线传感器网络目标跟踪的热点。研究无线传感器网络多目标跟踪时需要考虑能量有限;跟踪算法的分布式以延长网络寿命;传感器的量测可能是多个目标的合成量测,这些给传统的多目标跟踪算法带来了挑战。

Jaewon Shin 采用分布式的多尺度框架,用转移矩阵的思想,优化解决多目标识别的计算量问题,该算法通过局部节点信息更新给出全局的目标信息,该算法框架在解决无线传感器网络多目标跟踪时有一定的可行性; Lei Chen 等也提出了采用分布式数据关联的算法解决无线传感器网络多目标跟踪; Mauric Chu 采用贝叶斯估计的方法,解决多目标跟踪的数据关联问题,并采用分布式的算法实现了无线传感器网络多目标跟踪,

无线传感器网络多目标跟踪

线传感器网络跟踪是传感器网络的主要用途之一,也是一个难点和关键问题,同时具有很多商业和军事应用的基本要素,如交通监控、机构平安和战场状况获取等。利用无线传感器网络中的节点协同跟踪,无线传感器网络技术应用的一个很重要的方面。

最早的无线传感器网络系统跟踪实验是美国 DA RPA Defens Advanc Research Project Agenci SensIT 项目中一些跟踪方法实现。现在许多跟踪应用方案依然处于研究阶段。由于传感器节点存在很多硬件资源的限制,还经常遭受外界环境的影响,无线链路易受到干扰,网络拓扑结构动态变化,而传感器网络的活动目标跟踪应用具有很强的实时性要求,因此,许多传统的跟踪算法并不适用于传感器网络。活动目标跟踪在雷达领域研究多年,效果很多经典的活动目标跟踪是单传感器跟踪系统,发展了如最近邻法 ( NN 集合论描述法、广义相关法、经典分配法、多假设法、概率数据关联 ( PDA 法、联合数据互联 ( JPDA 法、交互多模型 ( IMM 法等数据互联算法。

多跳无线传感器网络 篇6

多跳蜂窝网已经成为一个热门的研究领域。Ad Hoc, 没有固定基础设施的节点集合, 节网络不需要集中管理点便可以通过相互转发数据包同不在其传输范围内的节点通信。在传统的蜂窝网中, 移动终端采用端对端方式直接同基站通信。在文献中已经提出了许多方法能单独提高蜂窝网或Ad Hoc网络的性能, 但是融合蜂窝网和Ad Hoc网络各自优点的多跳蜂窝网仍在研究中。在Ad Hoc网络中, 节点自身要完成所有的网络功能。因此每个节点不仅是终端, 还是路由器。由于缺乏路由设备, 节点不得不协同工作。节点是理性的, 它们的行为严格地由自己的利益决定, 因此就会存在不良行为。这种行为同样会出现在多跳蜂窝网中。造成不良行为的原因有多种, 其中无意的情况是链路错误或是电池耗尽;故意的不良行为就是恶意破坏, 比如恶意节点攻击网络或是自私节点拒绝转发。恶意节点加入网络的目的就是导致网络分割, 拒绝服务等, 造成对网络的最大化破坏。而自私节点为了保存自己的资源, 只利用其他节点的资源自己却不参加协作。它们并不想破坏网络, 但其行为会大大地影响网络性能[1,2]。根据博弈论, Ad Hoc网络的协作是个两难困境。节点为了节省自己的电池容量, 带宽和处理功耗, 就不应该为其他节点转发数据包。但是这样造成的结果就是所有的节点都会离开。因此需要一个理想的激励策略来激励节点之间的协作。

本文主要分析比较了Ad Hoc网络中和多跳蜂窝网络中的激励策略。根据每种策略的优缺点, 详细阐述了实现节点激励策略的关键因素。基于信誉机制和计费机制各自的优势, 结合这两者的激励策略才是节点之间协作通信的方向。

1 无线多跳网络中的激励策略

Ad Hoc网络的运行依靠的是节点之间的相互贡献。在紧急场合或军事环境, 所有的节点可以保证协同工作。但是在商业应用中, 节点成为独立的实体, 可以自由地决定如何使用其自己的资源, 比如电池容量或是传输带宽。由于中继数据包要消耗节点的带宽和能量, 节点自然不愿意无偿为其他节点服务。因此许多研究者已经认识到需要提出方案来激励节点协作。这些方案可粗略地分为两类, 一类是基于信誉的 (或基于检测的) 策略, 另一类是基于市场的 (或基于计费的) 策略。

在基于信誉的系统中, 节点观察其它节点的行为并据此采取措施, 或者奖励协作行为, 或者惩罚不协作行为。节点可以使用“看门狗”[1]来检测其它节点是否转发数据包, 避免路由选择中的恶意行为;同时在源节点处使用“探路人”[2]选择最可靠的路由发送数据包。另一种叫做CONFIDANT[2]的信誉系统可以阻止拒绝服务的攻击。如果一个邻居节点不转发数据包, 它就会被认为是不协作, 其信誉就会在网络中广播。CORE系统[3]提供三种不同的信誉量:主观信誉量, 间接信誉量和功能信誉量。利用这三种信誉量的加权值来决定是否协作, 同时避免了恶意节点的攻击。SORI[4]策略的目标是拒绝转发的行为, 使用类似看门狗的机制来监控, 而信誉系统维持的信息是节点转发的数据包和发送的数据包数量的比率。ARCS系统[5]在网络环境中引入一个协作程度的概念, 每个节点维持记录, 表明与它节点的交互情况。所有上面的信誉系统都通过数学估计。利用分析方法的信誉系统包括:利用Bayesian理论的形式概型来研究信誉机制, 增加节点间的协作。文献[6]中提出信誉机制考虑能量因素, 并利用基于“一报还一报” (tit-for-tat) 策略的博弈框架进行分析。然后另一种基于博弈论和图论的策略研究了数据包转发的均衡情况并证明了在协作策略和非协作策略下的均衡准则[7]。

另一种激励协作的方法是基于市场的。在这种策略中, 节点从它们转发的数据包那里获得报酬, 反过来节点可以用这些报酬发送它们自己的数据。一种叫做Nuglets的虚拟货币作为单跳的单位费用来激励每次传输中的协作[8]。在SIP[9]中, 节点转发数据后就会从发送者那里得到报酬, 它们的策略需要在每个节点上安装一种防伪设备来确保费用准确地增加与扣除。SPRITE[10]不需要防伪硬件, 它利用一个安全协议来管理费用的交换。上面两种策略的共同特点就是网络中每个节点转发数据包的定价相同。另外, 还有两个策略比较新颖, 一个是iPASS[11], 路由器运行“Vickery拍卖”[12]来决定流量的带宽分配和价格;另一个采用贿赂概念, 结合网络中心和节点中心的方法[12]。

大多数关于多跳蜂窝网中节点协作的激励策略都是基于计费的, 比如Micro-payment[13]等, 因为在多跳蜂窝网中存在骨干网络, 它在计费过程中起关键作用。节点从它们转发的数据包那里获得报酬, 反过来节点可以用这些报酬发送它们自己的数据, 而这些统计都由骨干网处理, 并不需要考虑在Ad Hoc网络中的每个节点上加载计费设备。

2 激励策略的比较

基于信誉策略的主要目标是利用收集到的关于其他节点行为的信息。像WATCHDOG, CONFIDANT或CORE这样的信誉系统, 需要表示信息, 分类信息, 使用二手信息和救赎机制来提供二次响应。带有CONFIDANT策略的DSR接收数据包与发送数据包的比率明显大于常规DSR, 但是当不良节点数目增大时, CONFIDANT策略的有效性开始下降;同时二手信息的使用加速了不良节点的检测, 提高了系统的性能。

另一种像NUGLETS和SPRITE的激励系统是基于计费和奖励的策略。计费策略对网络路由的影响表现在:加入计费可改变原先的路由, 从而增加节点转发数据包的可能。

在Ad Hoc网络中存在集中式问题。计费策略中需要有计费设备来确保费用的增减。SPRITE需要集中式的“费用整理服务” (CCS) , 好比一个银行, 每个节点在转发数据包时保存一个收据, 然后把收据发送到CCS来整理发送节点和转发节点之间的资金交易。类似地, 货币或奖励的分配同样需要集中式的服务。在像“探路人”这样的信誉系统中, 要让源节点作为集中设备来选择最可靠的路由发送数据包。由于集中式服务会造成伸缩性问题, 分布式自然值得保持。所以在基于信誉的CONFIDANT和SORI中, 每个节点监控自己邻居节点的行为并维护一张关于每个邻居节点的信誉表;在基于计费的iPASS中, 每个节点都成为一个“智能市场”, 拍卖过程就在这里连续不断地运行来决定谁获得多少带宽。

但是离散化有时会导致节点的负载加大, 在加入通信的节点上会有专门的硬件或构架需求。在Nuglets中, 每个节点都需要设备来统计费用, 包括每一数据包的处理, 这就造成大量的负载。同样的情况还出现在SIP中, 每个节点都嵌有智能卡, 当节点想发送数据包到某个非邻居节点时, 它必须首先将数据包发送到其智能卡上, 然后在发送出去之前增加一个SIP包头。AD-MIX[14]采用Mixnets的技术, 通过信息隐藏来鼓励节点协作。即, 转发节点不知道数据包的最终目的地, 这样的话每个节点需要所有路由节点的公钥, 也就需要密钥分配设备。数据包的加密和解密引进了额外的负载, 由于包头的增加, 数据包的长度也在增加。

安全问题是激励策略中最关键的问题。节点协作的安全性就是不仅要处理自私节点和恶意节点, 还要阻止其他方面的攻击。拒绝转发只是不良行为中的一种类型。许多其它关于路由的攻击更值得关注, 比如黑洞攻击, 灰洞攻击, 虫洞攻击和无理绕行攻击。因此激励策略需要额外的设备或机制来抵御攻击, 这就增加了系统的复杂性和集中式服务。如果没有外加的设备, 激励策略往往易受攻击。在CONFIDANT中, 由于没有机制验证收到的信息中不良行为的可靠性, 恶意节点可以发送错误的信息来影响清白的节点, 易受到西比尔 (Sybil) 攻击。另外, 对不良节点也没有救赎机制;GTFT中的机制很容易被欺骗。比如高能量的节点在发送自己数据包时使用其自己的身份, 而在要求转发数据包时假装能量低;iPASS的计费系统没有结合安全交易。最近的研究大多利用博弈论, 考虑市场的概念, 因为所有的网络功能都依靠参与者的贡献。节点不得不相互转发数据包来确保多跳通信, 这样就没有必要设计协作机制, 更重要的是考虑数据转发的均衡情况。

在多跳蜂窝网中, 由于基站的存在, 就不需要额外的集中式计费设备, 避免了节点之间集中式服务造成的伸缩性问题。因此在多跳蜂窝网中会多考虑基于计费的策略而不考虑基于信誉的策略, 另外基于信誉的策略还存在着一些问题:首先, 信誉系统或者依靠节点自己的观察或者考虑其它节点提供的信息。但二手信息可以伪造, 这就提出了问题, 如何以一种安全的方式利用它, 是否可以传播它。其次, 当某个节点被孤立时, 它不会被观察。如果节点的不良行为是暂时的, 一个赎回机制可以确保它重新回到网络。但是这就不能阻止那些惯犯节点利用赎回机制。第三, 当不良行为节点数量太大时, 就会出现一些其他的问题, 比如洗脑 (当一个节点周围全是共谋欺骗者时, 它会被欺骗从而相信伪造的信息。当这个节点不久移动到另一个拥有正常节点的环境时, 它不会再相信它们, 因为它们的信息偏移这个节点本身的信息太多了) , 陶醉 (节点在一个固定的时间内通过说实话来获得其他节点的信任, 从那以后开始欺骗) 和身份欺骗 (一个信誉差的节点会消失并用另外不同的身份再次出现) 。

由于没有上面的这些缺点, 基于计费的策略在多跳蜂窝网中可以更健壮地阻止一般攻击, 同时能检测出恶意攻击, 如无理绕行, 黑洞或灰洞攻击。

公平性问题是基于计费策略考虑的, 尤其是节点在转发数据包之前分配货币的情况。在Nuglets中, 由于靠近网络中心的节点能够处理更多的数据包, 这些节点得到奖励的货币就更多。因此边缘节点花费的要比得到的多, 这就造成其破产, 从而最终拒绝服务;在SPRITE和SORI中, 网络边缘的节点在通信需求低的地方会受到处罚, 这些节点很少有机会转发数据包, 因此不久就会用尽它们的货币从而不能再接入网络。

根据上面的比较, 一种好的激励策略应该包括下面的特征: (1) 策略不能违反和破坏激励系统 (安全性) ; (2) 应当保留分散的特性, 因为集中的服务会导致伸缩性问题 (离散性) ; (3) 一般不应该加入专门的硬件或构架来激励节点 (通用性) ; (4) 应该引进最小化的控制数据负载来避免网络性能的降低 (低负载) ; (5) 对所有节点都应公平 (公平性) 。

这些特点是设计激励策略的目标。考虑到信誉机制和计费机制各自的优势, 结合这两者的激励策略才是节点之间协作通信的方向。

3 结束语

多跳无线传感器网络 篇7

无线Mesh网络具有结构灵活、部署便捷、健壮性好等优点,得到业界广泛的重视,是实现无线宽带网络城域覆盖的关键技术之一[1]。但是,由于Mesh节点同时要提供用户接入和数据回传,其无线骨干回传链路随着跳数的增加而急剧下降。清华大学无线实证网络指出[2],随着无线跳数n的增加,TroposMetroMesh的传输带宽呈1/n的趋势急剧下降,而NortelWMN更是呈(1/2)n的趋势下降。文献[3]基于由开源的LinksysWRT54GL组成多跳Mesh网络,实验结果同样表明其多跳传输带宽呈1/n的趋势下降。文献[4]调整无线骨干回传链路的Cwin值以提高其介质访问的优先级,仿真结果表明3跳时仍下降50%以上。

Belair-networks[5]通过理论分析指出,采用多个无线模块和并发调度机制,并行处理用户接入和数据回传,可以解决Mesh网络多跳带宽下降问题。Strix-systems[6]对其最新研制的多模Mesh网络进行测试,结果表明:在实际运行环境下,单跳带宽21.30Mb/s,经过3跳为19.15Mb/s,经过10跳后还有12.15Mb/s,传输带宽只下降了40%。但是,该带宽甚至还低于无线用户接入带宽,无线骨干回传链路仍然是多跳Mesh网络的瓶颈,制约着Mesh网络的进一步发展与应用。本文在Linux平台下基于开源代码构建多跳Mesh网络实验床,通过深入分析和实验研究,发现并提出改进多跳Mesh网络无线骨干回传链路性能的方法。

1 多跳Mesh网络实验床

在文献[7]中作者基于Linux开源代码构建了开放性的无线Mesh实验床,在此基础上本文扩展多跳Mesh网络实验床如图1所示,每个Mesh路由器节点由1台配置多个无线模块的Linux服务器组成,以Madwifi开源代码驱动基于Atheros芯片的无线网卡,使其分别工作在ap和wds模式。由工作在ap模式下的无线模块为用户提供无线接入,通过wds链路实现Mesh路由器节点之间的无线骨干链路回传。

实验床部署在福建工程学院第一实验楼的一个U形楼道内,4个Mesh路由器节点分别部署在U形楼道的两端和两个拐角。用于覆盖的无线模块ath1工作在2.4GHz频段以提供用户接入,为尽量减少节点间的无线干扰,相邻Mesh节点依次配置为1和11正交频道。而用于无线骨干回传链路的无线模块ath0和ath2则工作在5—5.8GHz频段,以避开与用户接入链路的无线干扰。在该频段最多有24个正交频道可供使用,满足大规模网络部署的需要。在本实验床中,节点1—2、2—3、3—4之间的无线骨干回传链路依次使用42、58和152号频道。

本文采用电信级的网络性能测试工具NetIQ进行Mesh网络性能测试,4台无线接入笔记本电脑和4个Mesh路由器节点均安装测试端Endpoint 6.0,在通过以太网相连的PC上安装控制端Console5.40。当分别启动Endpoint#1—#2、#1—#3和#1—#4时进行无线骨干传输链路在1跳、2跳和3跳情况下的性能测试;当分别启动Endpoint#8—#4、#8—#3、#8—#2和#8—#1时进行无线用户接入链路在1跳、2跳、3跳和4跳情况下的性能测试(图1)。

2 实验模型设计

加强型多模Mesh网络模型由独立的无线模块以并发机制同时处理用户接入、无线骨干回传链路Ingree和Egress的任务[7]。无线模块athi(i=0,1,2)接收到数据包后的处理流程可设计如下:

Step 1:进行MAC地址匹配;

Step 2:如果是目的地址DA,则将数据包提交给上层协议栈处理;

Step 3:否则如果是接收地址RA,则根据DA匹配网桥的路由转发表;

Step 3.1:如果匹配成功,则将数据包提交给对应的无线模块athj(j=0,1,2)或以太网出口eth0;

Step 3.2:否则将数据包提交给其余的无线模块athk(k≠i)和以太网出口eth0;

Step 3.3:将数据包转发给下一跳;

Step 3.4:根据应答信息更新网桥的路由转发表;

Step 4:否则丢弃该数据包;

Step 5:处理结束。

为提高多跳Mesh网络的无线骨干回传链路的性能,首先需要一个符合多跳Mesh网络特点的数据包转发机制,其次需要不同网络模块的并发工作机制。

当进行无线骨干链路单跳传输实验,Mesh节点2接收到的数据包均为目的地址DA,直接交给上层协议栈处理。该实验模型仅涉及无线链路本身具备的传输能力,与Mesh节点的数据包转发机制、无线模块并发任务处理机制无关。当进行两跳及以上传输实验时,中间Mesh节点接收的数据包是接收地址RA,它需要根据路由转发策略将数据包提交给对应的网络模块,然后由该模块并发地将数据包传输给下一跳。

在以太网中,MAC层数据包转发策略的研究已经比较成熟,一个最基本的策略就是为Bridge添加一个端口记忆机制,如果数据包的目的地址DA与某个端口记忆相匹配,则数据包直接提交给该网络模块以进行下一步转发,否则向除接收端口之外的所有端口广播。该策略在以太网中已证明是一个高效的数据包转发方案,但是在无线网络中,由于无线用户可能经常地从一个AP切换到另一个AP,如果Mesh节点照搬以太网的数据包转发策略,数据包将依旧转发到原来的AP而找不到目的地址。这种数据包丢失往往导致网络连接长时间的中断,因为即使像TCP连接具有数据重传机制,但重传的数据包将依旧转发到错误的端口直至端口记忆失效。为此,我们提出了一种快速切换数据包转发策略,其核心思想是:当Mesh节点n次接收到同样的数据包就可判决出目的地址DA已不能通过原来的端口进行转发,立即将数据包向除接收端口外的所有端口广播以快速地定位出无线用户新的位置。

由于加强型多模Mesh网络模型由独立的无线模块分别处理无线骨干回传链路的Ingree和Egress任务,并且工作在正交频道,为无线骨干链路的并发数据传输提供了硬件基础。在以太网中,网桥的网卡间并发工作机制已经相当完善(最佳状态可以提供线速交换),但是无线网络与以太网有一个根本的区别,将TX队列中的数据包直接传送给下一个Mesh节点是不可以的,因为下一个Mesh节点并不接收源地址SA直接发送过来的数据包(802.11协议要求发送和接收端之间首先通过认证和关联)。所以,Egress模块在将数据包传输给下一跳之前,先要对数据包进行重新封装,即:将发送地址TA更换为自己的MAC地址,而RA为下一跳的MAC地址。

根据上述实验模型,本文在第一节建立的多跳Mesh实验床进行仿真实验。

3 实验结果与分析

3.1 无线骨干回传链路多跳传输性能

依次启动Endpoint#1—#2、#1—#3和#1—#4,测试无线骨干传输链路在1跳、2跳和3跳时的传输性能,测试结果如表1所示。

实验结果表明,无线骨干回传链路的单跳带宽和3跳带宽相比文献[6]分别提高了268%和261%,基本解决了无线Mesh网络骨干回传链路的瓶颈问题。同时,无线骨干回传链路每增加一跳其带宽仅衰减约6%,相比文献[2,3,4]呈1/n的急剧衰减趋势,得到了根本性的改善。

3.2 用户接入多跳传输性能

依次启动Endpoint#8—#4、#8—#3、#8—#2和#8—#1,测试多跳Mesh网络在无线用户以1跳、2跳、3跳和4跳接入时的传输性能,测试结果如表2所示。

实验结果表明,无线用户在1跳、2跳、3跳和4跳接入时的传输性能非常相近,即其传输带宽在有限跳数内基本不会随无线跳数的增加而下降,仅与接入AP的信号质量有关。这是因为该Mesh网络的无线骨干回传链路的传输带宽明显高于无线用户的接入带宽,相比传统Mesh网络,无线骨干回传链路的传输瓶颈得到了根本解决。

4 结语

本文基于开源代码构建多跳Mesh网络实验床,并建立了多模Mesh网络的数据包转发模型和网络模块并发调度模型。根据该模型,对其传输性能在多跳Mesh网络实验床上进行了实际的仿真实验。仿真结果表明:该多跳Mesh网络模型基本解决了无线Mesh网络骨干回传链路的瓶颈问题。

参考文献

[1]Akyildiz I F,Wang Xudong,Wang Weilin.Wireless mesh networks:a survey.Computer Networks,Elsevier,2005;47:445—487

[2]Chen Rongdi.Performance comparison of two wireless mesh net-works.Network Research Center of Tsinghua University,2005:10

[3]Stefan A,Wolfgang S.Performance measurements in wireless802.11g multi-hop networks,Master’s Thesis for the University of H gskolani Halmstad.2006

[4]Chen R D,Li HW,Li F H,et al.Performance optimization in wire-less Mesh networks based on Mesh point priority mechanism.Asia-Pasific Advanced Network.Singapore,2006

[5]Belair-networks.White paper:capacity of wireless mesh networks.http://www.belairnetworks.com/resources/pdfs/Mesh-Capacity-BDMC00040-C02.pdf,2006

[6]Strix-systems.Solving the Multi-Hop Dilemma.http://www.strix-sys.com/products/datasheets/StrixWhitepaper-Multihop.pdf,2007

多跳无线传感器网络 篇8

关键词:Ad hoc,AODV,NDP

1 AODV存在的问题分析

多跳无线Ad Hoc网络是由一组带有无线收发装置的移动终端节点组成的一个多跳的临时性的自治系统。由于网络中节点的移动, 网络拓扑会不断的变化, 因此传输数据的路由也会随着不断的重建或者更新, 因此, 路由协议的设计是Ad Hoc网络最具有挑战性的问题之一[1]。AODV (Ad-hoc On-demand Distance Vector) [2][3]是多跳无线Ad Hoc网络中最经典和最广泛被研究的按需驱动路由协议之一, 它允许移动终端很快的获得许多路径到达它所想要到达的目的地, 而且并不要求这些移动终端在没有激活的通信业务的时候去维护这些到目的端的路径。

1.1 单向链路的处理

AODV协议主要用于建立双向链路进行通信, 但是由于无线电波的传输特性, 单向链路是必然存在的。在路由过程中必须尽量避免使用单向链路, 在AODV协议处理RREQ消息的过程中, 在逻辑上存在一个问题:假设在一个由A、B和C三个节点并排组成的Ad Hoc网络, 当节点B接收到源节点A产生的RREQ消息时, 实际存在的是源节点A到节点B的链路, 但是节点B在路由表中建立的链路是节点B到源节点A的链路, 如果源节点A和节点B之间是双向链路, 那么不存在任何问题, 但是如果二者之间的链路是单向链路, 一旦这条链路被扩散开, 则必然会导致网络资源的浪费, 因为这条链路实际上无法到达节点A。原协议提到此时可以再由B发起路由请求, 建立到A的路由。这种方法不是很合适, 因为在发现之前网络资源已经浪费一部分, 再建立新的路由必然会对网络延时产生较大影响。如果在建立链路时加入一些简单的限制条件, 以避免单向链路的产生, 就可以避免上述情况。

为了达到此目的, 为每个节点设置一个邻节点表, 记录自己所有的一跳可达邻节点, 当收到来自某个邻节点的RREQ时, 首先查邻居节点表, 看该邻节点在邻节点表中是否有效, 如果无效, 直接丢弃RREQ;如果有效, 按照原协议进行相关操作。这样, 可以很大程度的避免了单向链路的产生。

为了保证邻节点表的有效性, 本文设计了一个邻节点发现程序 (Neighbor Discovery Procedure, 标记为NDP) , 该邻节点发现程序的的功能是使每个节点迅速的检测到所有的邻节点, 并避免使用单向链路和不稳定链路。它的最大特点就是使用一种改进的HELLO消息机制来发现邻节点, 并能避免单向链路的使用。

1.2 静态链路和瞬态链路

假设存在如下情况:Ad Hoc网络种的节点比较密集, 有某一个节点以相对比较快的速度在网络中到处移动, 如果这个节点出现在源节点到目标节点的路由中, 将导致至少一个RREP消息被抛弃, 或者产生至少一条RERR消息, 这事对网络资源的极大浪费。因为该节点的移动速度快, 导致它和邻节点之间的链路都是暂时性的, 依据AODV协议的生存处理, 在路由表中这类未过期路由实际上已经断开了。所以必须找到新的处理方法来解决这个问题。本文引入了静态链路和瞬态的概念, 有效解决了这个问题。

静止或者缓慢移动的节点之间的链接可以认为是连续存在的, 称为静态链路。快速移动节点之间的链路存在时间较短, 称为瞬态链路。寻路过程中, 应尽量使用静态链路以避免因网络拓扑结构的改变而导致链路断开。考虑到Ad Hoc网络拓扑结构的无法预知性, 不可能准确判断某个链路是静态还是瞬态的。但是可以通过制定一些规则, 来估计某个节点在下一个时刻消失的概率。根据一般的状态, 可以认为一个刚刚建立起来的链接相对于已经存在了一段时间的链路更容易断开。因此, 刚建立的链路称为瞬态链路, 存在一段时间后 (可以由实验得到一个门限值) , 变为静态链接。假如属于{|是一个静态链接, }。内的节点称为的静态链接。的节点称为瞬态邻节点。当在本文中, 将态链路和瞬态链路的判断工作放在NDP中处理, 具体做法是在节点收到来自邻节点的消息若干次时, 才标记为可用链路。AODV通过查询由NDP提供的邻节点表来建立链路。

2 邻节点发现程序 (NDP)

2.1 邻节点发现程序概述

邻节点发现程序 (NDP) 具有以下特点:

(1) 采用了三种H E L LO消息类型:邻节点请求H E L LO消息 (NRH) , 邻节点响应HELLO消息 (NAH) , 广播HELLO消息 (BH) 。

(2) 为了减少引入HELLO消息带来的路由开销, 根据Ad Hoc网络的原理, 引入了一种优化策略, 在不影响性能的情况下最大限度的减少HELLO消息的数量。

(3) 为了使该程序能够为路由协议使用, 每个节点都维护一个邻节点表。

(4) N D P不仅仅为AO D V路由协议而设计, 它是完全独立与AODV协议的。它可以被移植到其他协议中去。

邻节点表如表1所示, 其中, 邻节点ID是邻节点号;链路状态有四种:暂时、单向、双向和断路;当节点首次收到邻节点的任何HELLO分组时, 首先都设置为暂时, 表示与邻节点存在目前还不确定是否稳定的链路, 单向链路表示存在从邻节点到本节点的单向稳定链路, 双向链路表示链路正常, 可供路由;生存时间在链路状态为双向时为链路的存在时间, 记为时钟1, 当时钟过期时触发NRH, 在链路状态为断路时为等待NAH的时间, 记为时钟2。节点序列号为最近收到邻节点的序列号。HELLO消息次数在链路状态为暂时用来为链路状态从瞬态到静态的阀门;在链路状态为单向时为对该节点还可重传HELLO消息的次数, 初设值实际就是允许HELLO消息最大的失败次数;在链路状态为断开时, 为允许NRH失败的最大次数 (MAX_NRH_NBR) 。

HELLO消息的格式如表2所示:类型分为NRH、NAH和BH。序列号是该HELLO消息的当前序列号, 每次发送一个HELLO消息, 该值都增一。本节点ID为发送该HELLO消息的节点号;邻节点ID给出了需要对该HELLO消息处理的邻节点。BH是节点在一个HELL O_INTEVERAL时间内没有收到任何其他分组情况下而发送的。

2.2 发送HELLO消息

所有节点在HELLO_INTERVAL时间内必须向邻节点发送一种HELLO消息。为了避免HELLO消息发送同步, 造成物理层碰撞, 所有节点不能以相同的HELLO_INTERVAL发送HELLO消息。为了达到此目的, 这里的做法是设置H E L LO_I N T E R V AL为:HELLO_INTERVAL+D, 这里D为一个在[0, MAX_D]中随机变化的偏移量。为了防止无效的HELLO消息而引起错误的链路, 每次发送任何一种HELLO消息时, 节点的当前HELLO消息序列号都增一。HELLO消息的发送很大程度取决于邻节点表的内容。

节点刚入网时, 邻节点表为空, 节点首先侦听信道两个HELLO_INTERVAL, 如果没有收到任何HELLO消息, 则发送BH, 如果连续几次 (HELLO_MAX_NBR) 没有收到任何NRH, 则表示该节点独立于网络。继续侦听信道, 按照此过程执行。

2.3 接收HELLO消息

由于Ad Hoc网络是基于同频共享信道时分收发分配技术的因此当某节点处于有效发送时, 其相邻节点 (即在无线传输覆盖范围的其他节点) 都能够接收或侦听到该发送信息。一般协议中, 节点仅对发送给自己的信息以及广播消息分析处理, 而丢弃其他相邻节点间的交换信息, 尽管其已被正确收到。依据无线传输互易性原理, 这些被丢弃的信息实际也表示了该节点与相邻信息发送节点间无线传输链路有效联通的内在含义, 因此可将这部分信息充分利用到协议中, 以提高协议效率, 尤其在网络无线带宽与业务负载矛盾突出的情况下将更加显著。

根据此原理, 所有能收到邻节点的任何一种HELLO消息的邻节点, 都至少表示该链路单向存在;如果规定节点在设定的时间间隔内需要发送HELLO分组, 而当节点在几个时间间隔内都没有收到邻节点的任何HELLO分组, 则表示该邻节点已经断路或者变成单向。

2.4 本地链路修复

当链路状态由双向变为断路时, NDP并不立即删除此项, 而是首先做修复尝试。如果修复尝不成功, 再删除链路, 并向路由层发出断路通知。

3 仿真分析

笔者的研究工作全部是在一台PC机 (2.4GHZ四核, 2G RAM) 上完成, 使用的操作系统是Red Hat Linux 9.0, 模拟平台是NS2.35 (Network Simulator Version 2.35) [4]。模拟的基本方法是改变网络的场景平均移动速度, 分别看各种路由协议的性能变化。模拟中, 移动模式采用移动因子[5], 其他参数的设置如表3所示, AODV协议参数如表4所示。

在以上仿真环境中, 笔者做了四种版本的AODV协议仿真:路由层使用HELLO消息 (AODV-H) ;依据MAC的消息来判断链路状态, 路由层不再发送HELLO (AODV-M) ;路由层和MAC层都发送 (AODV-M-H) ;引入NDP (E-AODV) 。仿真结果如图1所示。

具有链路状态检测或者邻节点发现的底层支持的路由协议性能更稳定, 如采用邻节点发现程序的AODV、借助MAC消息同时又发送HELLO消息的AODV, 即使在网络拓扑变化非常剧烈的时候, 它们的分组递交率仍然稳定在95%以上, 其中采用邻节点发现程序的AODV在控制分组开销增加不大的情况下, 相比其他版本, 分组平均延时和分组递交率两个性能上都有了比较明显的提高;而依赖于周期性的广播分组来检测链路状态的路由协议性能较低, 如仅使用HELLO消息的AODV, 在网络拓扑变化剧烈时, 分组递交率仅仅在50%左右。

4 结语

本文对AODV路由协议进行了分析, 针对AODV协议中单向链路和RERR消息丢弃的问题, 设计了一种邻节点发现规程。改进的路由协议在不明显增加分组开销的情况下, 分组投递延时和分组递交率均有了明显的提高。

参考文献

[1]Chlamtac I, Conti M, Liu J.Mobile ad hoc networking:impera-tives and challenges[J].Ad hoc Networks, 2003, 1 (1) :13-64.

[2]C.E.Perkins and E.M.Royer, ”Ad-Hoc On-Demand Distance VectorRouting, ”Proceed-ings of 2nd IEEE Workshop on Mobile Com-puting Systems and Applications, pp.90-100, February 1999.

[3]Perkins C E, Belding-Royeret, S.Das.“Ad Hoc On-Demand Dis-tance Vector (AODV) ”, Internet-Draft, rfc3561.txt, July 2003.

[4]The Network Simulator (ns-2) http://www.isi.edu/nsnam/ns/

多跳无线传感器网络 篇9

无线多跳网络(例如无线传感器网络、无线mesh网络等)[1][2]常常应用于无人监管区域,由于条件的特殊性使得网络中的节点不仅需要传输数据,还应自主管理网络。无线多跳网络中任何无线设备节点都可能同时作为接入点AP (Access Point)或路由器与一个或者多个对等节点进行直接通信,实现拥塞时数据能够自动重新路由到邻近节点进行传输,从而减轻或消除网络拥塞状况。然而,实际的无线多跳网络并不像理论分析中的那样遵循预定的机制进行通信,而是存在许多自私节点。这些自私节点为了保存自己的能量或者延长自己的工作寿命而不积极参与网络的转发甚至是路由的发现和维持,从而导致个别节点成为"热点"以至于过早耗尽能量失效,造成整个网络的寿命下降。

针对无线多跳网络中的节点自私性,基于信誉度加强网络节点的协作性是一个有效的方法。[3][4]本文提出了基于贝叶斯网络模型的激励机制。新的模型以及激励机制通过采用等级服务激励网络节点参与网络的数据转发,实现自私节点的减少;同时,通过对节点信誉度的动态更新,及时的反应目前网络中节点的可信度与安全状态,实现对恶意结点的识别与隔离。

2. 贝叶斯网络

贝叶斯网络 (BN:Bayesian Network) 是一个有向无环图[5],有时也称为因果网,它由代表变量的节点及连接这些节点的有向边构成,图1给出了一个简单的6个节点的贝叶斯网络示例(未包含条件概率分布)。

一个具有N个节点的贝叶斯网络可以用N=<<V, E>P>来表示,其中包括2个部分:

1)<V, E>表示一个具有N个节点的有向无环图G。图中的节点V={V1, …, VN}代表变量,节点见的有向边E代表了变量见的关联关系。节点变量可以是任何问题的抽象。通常认为有向边表达了一种因果关系,因而贝叶斯网络也称为因果网。对于有向边 (Vi, Vj) ,Vi成为Vj的父节点,

而Vj称为Vi的子节点。Vi的父节点集合和非后代节点集合分别用pa (Vi) 和A (Vi) 来表示。有向图<V, E>蕴含了条件土地性假设,即在给定pa (Vi) 下,Vi与A (Vi) 条件独立:P (Vi|pa (Vi) , A (Vi) ) =P (Vi|pa (Vi) ) 。

2) P表示一个与每个节点相关的条件概率分布。由贝叶斯网络的条件独立性假设可知,条件概率分布可以用P (Vi|pa (Vi) 来描述,它表达了节点与其父节点的关联(因果)关系。如果给定根节点先验概率分布和非根节点条件概率分布,可以得到包含所有节点的联合概率分布,在图1中,包含全部节点的联合概率分布函数为:

3. 信誉度评价体系

鉴于无线多跳网中可能存在的自私节点将导致个别节点成为热点以至于过早耗尽能量失效,造成整个网络的寿命下降。如果这些自私节点正好是网络的关键节点,则可能造成整个网络的彻底瘫痪。通过网络让信誉度高的节点具有高优先级,即能够得到高优先级的服务,因此如何评判一个节点的信誉度就成为了关键问题。本文将合理地利用贝叶斯网络用于计算节点间的信誉度。

(1)对于网络中的每个节点Si,都维护一个直接通信成功概率表P (Sj) ,如表1所示;以及一个信誉度表N (Sj) ,如表2所示。其中,P (Sj) 为节点Si与节点Sj成功通信的次数除以通信的总次数。

(2)节点Si关于节点Sj的信誉度的计算分为以下3种情况:

情况1:当邻节点Sj与Si有实际接触时,例如邻节点Sj为Si转发路由请求,路由回复或数据包,Si就将其信誉度表中Nj的值改为目前成功通信的次数除以总的通信的次数,即成功通信的概率。不同节点对信息的转发情况不同,因此同一节点的信誉度在不同的节点中是不同的。

情况2:Sj没有与Si实际接触过,即Sj没有为Si转发过路由请求,路由回复或数据包,此时Si对Sj的信誉度就要从其他与Sj接触过的节点中获得。可以理解为,通过一个中间人,根据中间人对我们想要了解的节点的评价,来大体得出我们想要了解的节点的信誉度。因为每个节点要想从其他节点那里得到服务,是需要看他的信誉度的高低的,所以信誉度的计算十分重要。例如,节点S1想与S2通信,S2此时比较繁忙,S2要根据S1的信誉度的高低决定与不与他通信,但S2并没有关于S1的信誉度,那要如何求S1的信誉度呢,我们这里就采用贝叶斯网络的方法来计算。

如图2,我们要求S1关于S3的信誉度,但是,S1没有与S3实际接触过,这里我们就通过一个中间节点S2,通过中间节点S2对S3的评价,来得出S1关于S3的信誉度。节点S2与S3通信过,所以他有与S3成功通信的概率,表示为P (S2, S3) (本人中的概率P (Si, Sj) 表示节点Si的直接通信成功概率表中的P (Sj) ,可理解为在相信Si的前提下对Sj的信任度),而S1对于P (S2, S3) 值的信任度多高就取决于S1对于S2的信任度;即S1与S2成功通信的概率P (S2) ,那么S1关于S3的信誉度N13可以看成S1与S3通信成功的概率,(以下所有的Nij皆表示节点Si关于节点Sj的信誉度)可由公式(1)求得:

如图3所示,当有多个中间节点存在时,设S1与S2成功通信的概率为P (S2) ,S2与S3的成功通信的概率为P (S2, S3) ,S3与S4的成功通信的概率为P (S3, S4) ,则S1关于S4的信誉度N14为:

如图4所示,当Si与Sj共同接触的中间节点有多个时,可以做如下处理:先求的S1与S2通信成功的概率占3个节点通信成功的总数的比例为P (S2) / (P (S2) +P (S3) +P (S4) ) ,再求得S1与S3通信成功的概率占与3个节点通信成功的总数的比例为P (S3) / (P (S2) +P (S3) +P (S4) ) ,再求得S1与S3通信成功的概率占与3个节点通信成功的总数的比例为P (S4) / (P (S2) +P (S3) +P (S4) ) ,最后根据全概率公式求得S1关于S5的信誉度:

情况3:节点Si与节点Sj既有直接接触,Si又可以从其他节点处获得关于Sj的评价,如图4,此时就要综合两个信息,给出关于Sj的信誉度的值。这样Si就可以更快、更灵敏的得知Sj节点信誉度的变化,避免了某些节点的恶意攻击。

即S1关于S4的信誉度取决于以往通信成功的概率和从其他节点处获得的评价,以往通信成功的概率为通信成功的次数/总的通信次数,用P (S4) 表示,从其他节点处获得的评价为 (P (S2) *P (S2, S4) +P (S3) *P (S3, S4) ) / (P (S2) +P (S3) ) ,则S1关于S4的信誉度为:

上式中a表示直接通信成功的权重,(1-a)表示从其他节点处获得的评价的权重,因此一个节点关于另一个节点的信誉度可有以下公式给出:

其中Sz为有与Sj实际接触过的节点,P (Sz) 为Si的概率表中Sz节点的值,P (Sz, Sj) 为Sz表中关于Sj节点的值。特别的,当a=1时,即为情况1;当a=0时,即为情况2。

以图5为例,取a=0.5, S1与S4直接通信成功的概率为0.94, S1与S2直接通信成功的概率为0.94, S1与S3直接通信成功的概率为0.96, S2与S4直接通信成功的概率为0.5, S3与S4直接通信成功的概率为0.5。那么,在没有添加S2、S3两个节点的参数前,S1对于S4的信誉度为0.94。在添加S2、S3节点的参数后,根据上面的公式求得:

结果表明计算得出的信誉度比原来单纯的依据统计数据得出的概率小,也就是当其他节点发现某一节点的信誉度降低后,它能够通过这一方式向周围的其他节点获得这一节点信誉度的变化,从而更加敏锐的做出反应。而不用等到他与这一节点实际接触后才能得出。

4.仿真实验

本文采用使用Matlab软件[6]编程对本文提出的模型以及激励机制进行仿真验证,网络仿真结构如图6所示。其中S1作为根节点,Ps表示S1节点关于S4节点的信誉度直接通信成功的概率,N表示S1获得评价的间接节点的个数,V (N) 表示在间接节点个数为N时S1关于S4的信誉度。仿真将根据式(5),对S1关于S4节点的信誉度进行计算,参数的初始化如表3所示。

算法流程如图7所示:

仿真结果如图8和图9所示。其中图8中,x轴方向表示间接节点的个数,y轴方向表示S1关于S4的信誉度。从上图结果可以看出,在200个节点以内时,信誉度的值抖动比较大,但是增加到200个节点以上,信誉度的值就逐渐接近于某个固定的值。即在网络中节点数小于200的情况下,根据式(5)计算出的信誉度能较好反应某个节点信誉度的真实情况;但如果节点增加至200以上时,公式(-5)就无法很好的反应某个节点信誉度的变化。更改参数:当a取0.3,得到的结果如图9所示。

可以看出最后趋向的值由原来的0.6降为了0.56左右,但是信誉度的变化同样随着网络节点的增多呈现越来越平稳的趋势,说明不论a值的取值如何变化,当网络节点增加时信誉度的值就越来越不能准确反映节点的真实信誉。

通过以上的仿真结果可以看出本文所提出的信誉度的机制可以在一定程度上识别出恶意节点,使得网络更加安全,但是当网络过于庞大时,也就是从其他节点获得的评价太多时,反而会导致信誉度的计算值趋于一个固定值而不能很好的真实的反应出信誉度的变化,所以可以考虑在间接节点过多时只挑选从信誉度高的节点处获得评价,一来可以提高信誉度的准确性,二来可以减少计算时间和代价。最终的间接节点的数目的决定还留待做进一步的研究。

5. 总结

随着无线多跳网络在实际应用中的需求越来越广,无线多跳网络相应的信任机制需要给出合理构建方案,将贝叶斯网络应用到无线多跳网络中,在路由时引进节点信誉度的方法,可以有效地降低网络中的恶意节点。本文仅给出了在信誉度的计算公式,并且通过证明当网络节点数小于200时可以较好的发现某些恶意节点。但仍然存在当网络太大时,信誉度就不能很好的反映节点的真实情况的问题,针对这一问题仍需要进一步研究并给出更好的解决方法。

摘要:随着无线多跳网络在实际应用中的需求越来越广, 对网络的信任机制要求也逐步提高。通过引入贝叶斯网络的关联性机理, 基于节点信誉度来构建合理的信任机制, 可以有效地降低网络中的恶意节点, 提高网络性能。文章中通过模拟实验得出在中小规模的无线多跳网络中采用论文提出的机制可以很好的确定节点的信用度。

关键词:无线多跳网络,贝叶斯网络,信誉度

参考文献

[1]Ian F.Akyildiz and Xudong Wang.A Survey on Wireless MeshNetworks[J].IEEE Communication Magazine, September 2005:23-30.

[2]许力著, 无线传感器网络的安全和优化[M], 电子工业出版社, 2010, ISBN 978-7-121-10380-3.

[3]Li Xu, Yihui Zhang."A New Reputation-based Trust Man-agement Strategy for Clustered Ad Hoc Networks, "2009 Interna-tional Conference on Networks Security, Wireless Communicationsand Trusted Computing (NSWCTC 2009) .April, 2009.pp.116-119.

[4]王立, 吴蒙, 常莉, 移动Adhoc网络基于信誉系统的节点协作方案, 计算机技术与发展, 2010, 20 (3) , 32-35。

[5]张连文, 郭海鹏著, 贝叶斯网引论[M], 科学出版社, 2006, ISNB 7-03-018170-0.

多跳无线传感器网络 篇10

由于多跳无线Mesh网络需要为无线多跳链下的所有接入用户提供数据回传, 并且其传输带宽随着跳数n的增加而急剧下降, 骨干传输带宽一直是多跳无线Mesh网络的系统瓶颈, 吸引了国内外广泛的关注[1,2]。目前, WiFi的传输速率越来越快, 多跳无线Mesh网络也逐步开始走向应用, 但在常规应用环境下WiFi的网络开销太大[3], 例如802.11g的空中速率虽然高达54 Mb/s, 但实际传输带宽往往只有22 Mb/s左右[4]。为此, 本文将初步探讨在多跳无线Mesh网络环境下, 能否通过减少无线链路的网络开销以提高其基准带宽和多跳传输性能。

开源代码Madwifi支持Atheros芯片的无线网卡工作于Ahdemo模式。Ahdemo模式是一种没有信标帧的伪Ad-hoc模式, 即取消了无线管理帧如beacons等, 只有数据包传输, 从而可望大幅减少其网络开销。Ahdemo模式主要有如下特点:

1) 其BSSID 全部为零, 即BSSID=00:00:00:00:00:00。

2) 没有信标分发机制。

3) 在射频范围内的同一信道的结点组成一个广播网。

4) 处在此模式下的网卡不会发送任何无线控制帧和管理帧。

5) 在物理层上的帧以广播方式发送, 由IP层决定是否接收。

显然, Ahdemo模式在普通应用场景下将导致严重的无线同频干扰。但是对于沿公路/铁路做线状覆盖的多跳无线Mesh网络, 由于Mesh节点通常工作于5G频道且采用定向天线进行互联, 最多可部署24个正交频道, 因此无线干扰问题将不再那么严重。为此, 本文将基于嵌入式系统和Madwifi开源代码, 通过具体实验深入分析Ahdemo模式在多跳无线Mesh应用中的基准带宽和多跳传输性能。

1 实验平台的搭建

由于现有的商用WiFi设备一般都不支持Ahdemo模式, 为此本文基于IXP425嵌入式系统和Madwifi开源代码, 构建多跳无线Mesh网络实验床如图1所示。

Mesh路由器节点 (MR) 是多跳无线Mesh网络的主体, 这里采用多模结构, 由3个无线模块和1个有线模块构成, 其中接入模块负责为用户提供无线接入 (由于本文只考虑节点间的通信, 图1中并未标注) 、ingress和egress模块分别负责同左右邻居节点的数据回传, 有线模块负责与有线网络的数据传输。MR设计为一个二层网络设备, 这4个网络模块采用Bridge网桥关联在一起, 实现网络模块间透明的数据转发。为实现MR的3无线模块的并发工作, 需要将它们设置工作在彼此正交的频道上 (在本实验床中, 节点1—2、2—3、3—4、4—5一般工作在 (5—5.8) GHz频段802.11Ta模式的42、50、58、152信道) 。MR采用的主芯片为intel的ixp425网络处理器, 无线模块为WMIA 123AG, 软件平台为OpenWrt (linux内核版本为2.6.28.8, Madwifi版本为0.9.4) 。

多跳Mesh网络性能测试采用电信级的网络性能测试工具NetIQ, 每一个MR均有一台PC以有线方式与之相连, 均安装测试端Endpoint6.0。

在搭建好的实验床中, 依次启用节点1—2、2—3、3—4、4—5分别工作于Ahdemo模式, 1至4跳的多跳传输性能测试结果如表1所示。

实验结果表明, Ahdemo吞吐量随着跳数的增加并未明显下降, 是解决多跳无线Mesh网络的传输带宽随跳数增加而急剧下降问题的潜在方法之一, 但尚未达到其设计的理想速率 (108 Mb/s) , 为分析和查找问题的原因, 有必要进一步研究Ahdemo的具体工作方式。

2 实验分析

802.11的MAC层提供DCF以及PCF两种访问机制。DCF基于CSMA/CA机制, 移动站在发送数据前监听同一信道的其他站是否正在发送数据, 如果有其他站正在发送数据, 则继续监听。一旦信道空闲, 则进入退避过程, 等退避过程结束, 则发送数据。由于PCF作为可选功能, 在MadWiFi中并未实现, 这里不做讨论。

802.11使用3种不同类型的帧:管理帧、控制帧和数据帧。管理帧用于站点与接入点的连接和分离、定时和同步、身份认证。控制帧用于竞争期间的握手通信和正向确认、结束非竞争期。数据帧用于在竞争期和非竞争期间传输数据。802.11通过使用不同的帧间距 (IFS) 即SIFS、DIFS、EIFS来区分不同帧在竞争态下的优先级。分析MadWiFi源码[5]发现IFS按公式 (1) 计算。

{SlotΤime=Coverage+offsetDΙFS=2SFΙS+SlotΤimeEΙFS=SΙFS+DΙFS+ΡreambleLength+ΡLCΡΗeaderLength+8ACΚ (1)

式 (1) 中SlotTime是在两个节点之间完成一次数据传输所需的时间, 包括无线传输所需的时间Coverage和节点进行数据包处理所需的时间offset。PreambleLength为前导帧长度, PLCPHeaderLength为物理汇聚层 (Physical Layer Convergence Procedure) 协议报头长度 (注意, 所有的单位都需经过时间换算, 单位为ms) 。控制帧如RTS、CTS和ACK等的帧间距为SIFS, 时间最短, 故优先级最高。DIFS用于一般异步数据传输帧, 优先级其次。EIFS仅在当MAC协议数据单元传输出错重传时使用, 优先级最低。

本实验环境中Ahdemo舍去了管理帧, 理论上由于开销减少应能达到更高吞吐量, 但实验环境下Ahdemo模式的吞吐量性能却明显不如AP/sta模式。根据上述理论, Ahdemo模式在理想情况下 (不存在无线干扰) 发送下一个帧只需等待一个SIFS时间即可, 而在无线干扰严重的环境下则至多需要等待一个EIFS+退避 (冲突) 窗口时间。由此, Ahdemo模式性能应该是受到了帧间隔时间IFS的限制。为了验证想法, 使用无线抓包工具Omnipeek进一步分析DCF的具体工作方式。在同样的实验环境下, 分别对AP/sta与Ahdemo模式的单跳实验通信过程进行的监测, 其实验结果如表2所示。

因为节点间通信量主要是数据包, 这里只对基于连接的数据包传输过程进行抓包分析。实验中使用的带宽测试工具NetIQ设置为以最大速率发送数据包, 故由此得出的相对时间间隔可以视为实际帧发送间隔。由表2可见AP/sta的传输性能远优于Ahdemo模式, Ahdemo的重传频繁且伴有大量的CRC校验错误, 而相同无线环境下的AP/sta模式能获得良好的信道质量。本文认为出现这种显著性能差异的原因是:即便是处在没有MR节点间干扰的正交信道, 也不能完全排除其来自相邻信道上的无线干扰, 由于Ahdemo缺少管理帧 (CTS、RTS) 使得数据包在存在较多干扰源 (本实验环境约有5个AP, 17个终端) 的情况下发送失败的几率迅速上升。由于DCF的退避机制, 发送失败的几率越大, 耗费在重传和IFS等待上的时间就越多, 故Ahdemo模式的帧间隔要远大于AP/sta的帧间隔, 这也可以部分地解释为什么Ahdemo延迟略高。AP/sta的传输封包大小要略大于Ahdemo模式, 本文认为这同Madwifi使用的速率调制算法minstrel[6]有关, 这种算法在某一速率发送连续尝试失败后会将一部分数据降至基本速率 (6 Mps) 发送, 这样会减少数据封包的大小。

3 参数优化

由上一节可知Ahdemo模式尚不能在无线Mesh环境下获得理想的传输性能, 但其长距离通信带宽稳定的优势依然对解决多跳带宽下降问题有着重要的价值。在非竞争环境下Ahdemo舍弃管理帧开销能够部分地提升传输性能, 逼近带宽的理论极限, 但不论在实验室环境还是在室外环境中, 干扰都将是一定程度存在的。在竞争环境下多个站同时发送并碰撞的几率大大增加, 既然Ahdemo模式不处理传输错误而交由IP层处理重传, 那么要进一步提升传输性能应尽量减少物理层的冲突避免机制开销。

根据802.11MAC层标准, Slot Time、SIFS等参数为固定值, 为了减少时间开销, 通过对MAC层处理模型进行自定义修改, 将这些参数改为变量, 对网络模型进行优化。具体采用两种改进方案:

a. 减小Slot Time的方法降低平均介质访问时延。

b. 减小SIFS的方法降低竞争退避时间。

应用这两种方案对MAC层参数进行修改以减少访问开销, 在上述相同的实验环境下进行测试, 由于Madwifi中Ahdemo模式的SlotTime与SIFS默认值分别为13与8, 其余参数均由公式 (1) 推导, 所以我们只测试少于默认值的时间值, 每次测试时间大于5 min, 结果如图2所示。

图2中减少SlotTime能较好地减少访问延迟, 可见延迟时间基本随SlotTime减少而降低, 验证了方案a的思想, 而延迟曲线并未随SIFS减少而成比例降低, 反而出现较大波动, 这证明修改SIFS并不能带来性能上的提升。针对传输带宽性能的改进结果如图3所示。

可见减少SIFS基本对Ahdemo模式的吞吐量性能没有影响, 而当SlotTime设置为1时, 吞吐量较之为优化之前提升了20%—30%, 随着SlotTime接近于默认值, 吞吐量性能逐渐下降。观察图2和图3, 可以发现带宽与延迟大致上呈反比关系, 减少SlotTime是在竞争环境下的较优方法。吞吐量与延迟优化前后的效果如图4和图5所示。

本文认为访问延迟难以进一步降低, 因为在对同样的参数水平下的AP/sta模式的优化实验发现, 采用默认参数的AP/sta模式已经接近于实际吞吐量的最优水平 (设计空中速率的50%) , 减少IFS反而降低了此模式的通信性能。这应归咎于减少SIFS与SlotTime带来的DIFS与EIFS减少, 一方面增加了发送节点间的竞争, 减少了节点的发送时间;一方面减少了重传的等待时间, 带来了不必要的重传。减少SlotTime将Ahdemo模式的延迟降低到1.5 ms, 略低于AP/sta的最低延迟 (1.52 ms) , 这应是现有条件下所能达到的最优水平。

4 结束语

本文构建了AP/sta与Ahdemo模式在多跳无线Mesh网络下的实验平台并比较分析二者的通信性能, 实验结果表明Ahdemo在竞争环境下所能达到的吞吐量十分有限。针对沿公路/铁路做线状部署的多跳无线Mesh网络的应用环境, 修改madwifi驱动代码, 在竞争环境下通过减小Slot Time可以改善网络的时延, 明显提升Ahdemo的吞吐量, 优化网络的性能, 而减小SIFS则达不到预期的效果, 给通信带来不稳定因素。本文的研究对今后Ahdemo模式在室外远距离通信环境下的性能优化有着重要的指导意义。由于Ahdemo并没有管理帧, 也就不能从一开始就阻止冲突的发生, 下一步工作可以从出错后的处理机制入手, 如增大冲突窗口, 从而减少重传失败的几率。

参考文献

[1]Chen Rongdi.Performance comparison of two wireless Mesh net-works.Network Research Center of Tsinghua University, 2005:10

[2]Stefan A, Wolfgang S.Performance measurement in wireless802.11g multi-hop networks.Master's Thesis for the University of Hogskolani Halmstad, 2006

[3]朱铨, 蒋新华, 邹复明, 等.基于实验方法的多模Mesh网络多跳传输性能影响因素研究.科学技术与工程, 2008;8 (10) :5822—5826

[4]邹复民.旅客列车宽带Internet应用的若干关键技术研究.长沙:中南大学博士学位论文, 2008

[5]Madwifi-project.Madwifi Dowmentation.http://downloads.source-forge.net/madwifi/madwifi-0.9.4.tar.gz.2009;08

上一篇:家庭影响下一篇:产品设计理论与方法