路由和定位

2024-07-08

路由和定位(精选3篇)

路由和定位 篇1

1 引言

船舶自组网是一种由移动的船舶自配置组成的多跳无线通讯网络, 是一种Ad-Hoc网络运用到海洋上的自组网, 其特殊网络结构及配置方式使其具有传统网络所不具有的特性, 如不需要预置基础设施、网络拓扑的动态性以及节点的资源受限等。这些特性使得传统的网络路由技术很难直接应用于移动自组织网络中, 因此需要研究适用于船舶自组网的路由算法。

目前, 移动自组网多采用基于拓扑信息的路由算法, 此类算法能够构造优化路径并保证数据传输可达性, 然而此类算法直接或间接需要全局网络的拓扑信息来进行路由选择, 由此造成的高路由开销使其不适合应用于大规模网络中。基于位置信息的路由算法由于仅需要局部网络位置信息进行路由选择, 在网络规模变大时能仍保持较低开销, 因此具有高可扩展性的优点。近年来, 网络自定位算法、卫星定位系统的发展使节点获取位置信息的精度不断提高且成本不断降低, 利用节点位置信息来构造路径的路由算法因其诸多优点和不再高昂的成本正日益受到重视。

Spray and Wait[7]协议具有传输延迟较小, 接近于最优, 有较好的适应性, 有较好的可扩展性, 无论网络的规模大小, 节点密度如何改变, 都能保持较好的性能且该算法简单便于执行等优点。然而该协议应用在船舶自组网中, 由于船舶移动的速度相对较慢, 节点稀疏, 固定航道, 相遇机会概率较低等, 无法适应这种背景场景。

本文提出一种利用北斗卫星导航定位系统获取船舶现有位置信息和航行方向, 结合相应的算法对未来船舶位置进行预测, 对Spray and Wait进行改进, 增大船舶自组网网的连通性。最后通过获取相关度量值, 通过实验验证结果与目前比较流行机会网络协议比较传输成功率, 传输的延迟, 路由开销等性能提升来说明其优越性。

2 北斗定位与路由算法

北斗卫星导航定位系统是中国自主研制、自行建立的卫星导航定位系统。已经在轨使用的是由3颗卫星组成的北斗一号区域定位系统, 正在建设的是由30颗卫星组成的北斗二号全球定位系统。与美国全球定位系统 (GPS) 、俄罗斯全球导航卫星系统 (GLONASS) 以及欧洲正在发展的伽利略 (GALILEO) 卫星导航定位系统不同, 北斗一号采用双星定位原理, 而且具有双向数据通信功能, 因此其应用系统也是独具特色的。

在三维立体空间需要3个条件才能唯一地确定一个点, 而北斗一号只有2颗经度上相距60°的地球静止卫星 (另有一颗备份星) , 为了定位必须要第3个条件--利用已有的数字高程地图, 通过用户与地面指挥中心直接的双向数据通信确定用户至地心的距离 (即第3个条件) , 从而也就知道了用户的位置, 再通过广域差分标校来提高定位精度。在有标校地区的定位精度一般优于10~20m.这样的技术途径有利也有弊:缺点是用户终端要有接收和发送两种功能, 体积相对大些;优点是把导航定位、双向数据通信和精密授时结合在一起, 不仅用户知道自己所处的位置, 而且调度指挥中心也可以知道用户位置, 双向通信链路将作为大范围网络路由链路来使用。当北斗二号系统完整建成后, 其全球定位与通信的特点将发挥更大作用。

2.1 基于船舶位置预测的算法判断

2.1.1. 距离判断

通过携带消息的船舶A相遇另外一只船舶B, 通过计算预测未来船舶位置, 并且计算到未来目的船舶的之间距离, 通过比较距离长短, 决定消息转不转发, 选择距离较近的作为转发中继, 在此处, 距离长短作为判断的依据。

例如两坐标为, 目的节点, 分别计算出两个节点到目的节点的距离:

2.1.2 航行方向判断

通过北斗的定位功能, 比较船舶的运行方向是否偏离目的船舶, 来判断决定消息是否转发。在这里, 由于海洋上船舶运动方向一般按照预先设定好的航道, 运动方向, 短时间内不会有大的改变, 在预测下一刻时候, 可以认为船舶的船速和运动方向没有改变。

3 基于北斗定位的Spary-and-Wait路由协议改进

Spary and Wait算法分为两个阶段。Spray阶段, 源节点中的部分数据包被扩散到邻居节点;Wait阶段, 若Spray阶段没有发现目标节点, 包含数据包的节点以Direct Delivery方式将数据包传送到目标节点。

我们提出了一种基于船舶位置信息的B Spray and Wait的新协议, 主要对Spray and Wait协议在第二阶段 (wait阶段) 进行改进, 通过北斗定位系统来获取船舶的位置和航向, 并预测未来t时间的位置, 从而增加其与目的节点船只相遇的可能性, 来达到一种高效传输的机会路由算法。

在Spray阶段, 当碰到一个节点时, 决定多少份给该节点。最简单的分发策略是一份一份地发, 还有另一种分发策略是每次将一半复制给遇到的节点, 当节点只有一份消息时, 就退化成Direct Delivery了, 则进入第二阶段。关于Spray阶段其他文献有详细的叙述, 这里不再重复。

在wait阶段, 在Spray阶段经过数据分组, 每一个分组之后的副本, 在网路环境中移动时并伴有一定的传播范围, 如图中的A和B两只船舶在航道中不停地移动, 并且不断的记录相关信息实时的更新, 根据以往位置信息我们可以预测出未来船舶的位置, 在此时根据未来船舶的位置与未来目的船舶的距离长短, 即S1和S2, 以及速度矢量的夹角θ1, θ2相结合来判断哪个点更有可能到达目的船舶节点, 距离最短的和运动方向偏向目的船舶的方向为最佳中继船舶, 选择该船舶进行传输 (如图3) , 该方案可以大大可以提高接触目的节点相遇可能性, 相比以前在wait阶段的泛洪, 有助于我们增大其传输成功率, 减小平均延时, 降低路由的开销等。

综上所述, 改进后的新协议, 在Spray阶段源节点以二发法的方式进行数据分组, 该算法的机制是源节点为每个在该节点起源的数据分组生成L个副本;若源节点A包含n个数据分组, 当其遇到新中继节点B, 则以n/2个数据分组转发给B, 自己同样留有n/2分组, 依次以同样的方法分组, 直到所有节点只有一个数据分组, 则进入到wait阶段, 携带消息节点 (包括源节点) 如果此时相遇到目的节点D, 则直接转发给目的节点, 如果没有遇到目的节点D, 通过位置预测方案, 节点未来的位置, 在基于与目的节点的距离长短和节点运行方向来判断那个节点更有可能接触到目的节点, 从而决定转发时机, 增大了消息传递到目的节点可能性。

4 实验结果与分析

4.1 建立仿真场景

建立特定仿真场景, 通过使用ONE软件来模拟仿真, 通过比较来说明性能的提升, 本文评价自组网路由协议的优劣主要通过以下几个指标来分析。由于自组网的主要目标是尽最大可能传递信息, 所以传输的成功率 (Delivery Ratio) , 即在一定的时间内成功到达目标节点数据包总数和源节点发出的需传输数据包总数之比, 是最重要的指标。另外传输延时, 即数据包从源节点到达目标节点所需的时间, 是评价路由的另一重要指标。最后要考虑到资源消耗。

4.2 仿真结果分析

本文通过比较Spary and Wait协议和改进过后的B Spra and Wait协议以及机会网络常用路由Max Prop三者之间的比较, 来表现出三者之间的相关性, 并且通过设置不同节点数 (Number of Nodes) , 进而突出改进之后的显著效果。

从下面仿真的结果来看, 图2显示是三种路由协议传输成功率的一个比较, Max Prop比Spray and Wait高出10%, 而B Spray and Wait比原来的Max Prop高15%, 性能最优, 这是由于新协议通过预测未来船舶可能存在的位置, 在一定程度上增加向目的船舶数据包的传递的可能性。

在实验中我们发现Max Prop路由开销呈现的是一种较快增长形势, 消耗能量过多, 而Spray and Wait和B Spray and Wai基本同一标准上保持较低的路由开销状态, 新协议在遵循原协议的基础上开销稍有改善。

而图3显示随着网络中节点的增多时, Max Prop路由的组内直接传送方式的平均传送时延变化并不大, 而SSpprraayy aanndd WWaaii传输时延具有明显降低, 所需要的平均时间较少, 而BB SSpprraa aanndd wwaaiitt通过预测来选择中继节点, 缩短传输时间, 从而占用更少网络资源。

综上所述, 根据图中的三种协议性能指标走向, 新协议B Sprayy aanndd WWaaiitt相比其他两种协议, 评价指标都有较大的提升, 尤其表现在传输成功率显著增高, 而路由开销和传输时延, 也相应地有所降低, 基本上达到了我们预期想要的效果。

5 总结

基于Spray and wait协议本身的一些特性, 该协议比较适合应用于海洋互联网, 但是面对广阔的海域, 以及移动的船舶, 由于自身的局限性, 执行起来效率并不高, 而本文引入了北斗导航定位系统, 对Spray and wait协议进行了改进, 建立一套船舶自组网路由机制B Spray and wait, 可以有效地解决这一问题, 提高船舶自组网的连通性。通过仿真实验, 验证其改进过后的有效性, 能提高传输成功率, 减少延时, 从而提高了船舶自组网的性能。

摘要:结合船舶自组网的特点, 利用中国北斗定位系统的定位功能, 提出了一种新的基于地理位置信息的路由优化算法。该算法利用北斗卫星获取船舶位置和航行方向等信息, 传递节点路由信息, 从而减少搜索盲目性, 提高路由效率。仿真结果表明:改进算法提高了路由收敛速度, 提升了数据传输成功率, 节约了能量开销, 挺升了网络的性能。

关键词:北斗,位置信息,航行方向,船舶自组网,Spray and Wait

参考文献

[1]任智, 黄勇, 陈前斌.机会网络路由协议[J].计算机应用, 2010, 30 (3) :723-728.

[2]曹得胜.机会网络路由算法研究[D].广西师范大学, 2013.

[3]杨奔全.基于位置预测的Ad hoc网络路由协议研究[D].湖南大学, 2010.

[4]Byung-Gook Kim;Jang-Won Lee;Opportunistic ResourceScheduling for OFDMA Networks with Network Coding at Re-lay Stations.Wireless Communications, IEEE Transactions on2012, Page:210-221.

[5]Zipf A, Jost M, Location-Based Services, in Springer Hand-book of Geographic Information[M].Springer Berlin Heidel-berg, 2012:417-421.

[6]Gerla M, Kleinrock L.Vehicular Networks and the Futureof Mobile Internet[J].Computer Networks, 2011.55 (2) :457-469.

[7]Alotaibi E, Mukherjee B.A Survey on Routing Algorithmsfor Wireless Ad-Hoc and Mesh Networks[J].Computer Net-works, 2012.56 (2) :940-965.

[8]Chen M, Gonzalez S, Vasilakos A, et al.Body Area Net-works:A Survey[J].Mobile Networks and Applications, 2011.16 (2) :171-193.

[9]文静.MP-OLSR在船舶自组网中的优化和性能研究[D].华南理工大学, 2014.

[10]王文涛, 郑芳, 王奇枫, 等.基于ONE平台的机会网络路由协议仿真分析[J].中南名族大学学报, 2013, 9 (3) :110-114.

路由和定位 篇2

数字最能说明问题。在有一个100Mbps上行链路的交换机里,每个10Mbps受控交换机端口的成本为100美元。 路由选择技术并不真正按给每个端口分配一个用户的方式来分段网络,每个路由选择技术端口的成本至少是交换机端口的三四倍, 因而管理负担大得惊人。尽管用路由器分段的网络只有TCP/IP通信量,但由于成本高,性能不高,子网太多,并且配置工作量大, 所以很快就行不通了。相比而言,交换机和集线器一样,是即插即用设备。目前正在出现具有“自学”功能的路由选择设备, 采用所支持的协议自动配置端口。在缺省情况下,纯交换网络是平面网络。如果每个节点都有自己的交换端口, 网络就很难发生争用情况,即入站通信量与节点的出站通信量发生资源争用,反之亦然。相比而言,在传统的共享网段或者环里, 每个节点的吞吐量随着节点的增多而下降,例如有25个节点的10BaseT网络只能给每个节点平均提供400Kbps带宽, 而有专业交换端口的节点却拥有10Mbps吞吐量。

一般被节点用于做广告或者寻找目前未知的广播技术可大大提供这种网络的吞吐量, 而通常的单址广播帧只能广播到一个目的地节点和中间交换端口。自从网桥流行的那一天起, 我们就知道我们实际上并不希望有数千个节点的广播域,因为广播风暴无法预测且难以控制。把平面网络变成较小的广播域,无异于使交换网络变成一种丰富多彩的调色板。与其用路由选择技术定义任意大小的子网, 倒不如用交换机建立VLAN。

VLAN的管理

VLAN与交换网络密不可分,但实施VLAN要重新定义管理环境。VLAN定义的逻辑域涉及网络里的可能视图, 因而网络管理平台可显示IP图像,有时还会显示基于IPX的图像。如果部署VLAN,其拓扑可能与上述视图不匹配。 当VLAN部署完毕之后,你很可能对根据逐个VLAN监视通信量并生成警报这一点感兴趣。

在目前,大多数基于交换机的VLAN是专用的。IEEE 802.1P委员会开发出一种多址广播标准, 使VLAN成员可以在取消VLAN广播抑制任务的情况下通信。在可互操作的软件和硬件里实现上述标准之前, VLAN配置仍将要求维护单一供应商交换机环境。

即使在单一供应商VLAN里,网络管理也是一种挑战, 例如检查VLAN对话要求管理软件处理的统计信息不同于检查常见的LAN或IP子网对话: RMON MIB和RMON-2 MIB分别提供确定LAN和子网信息的框架,而VLAN配置必须定义自己的MIB, 或者配置如何根据其他MIB获得上述信息,

此外,为了提供连贯的VLAN行为特性图,管理软件要收集并合并来自多个RMON检测器的数据。

如果上述问题很严重,就要考虑捕捉多交换机VALN数据的地方只限于中间交换机链路或者主干网。在大型网络里, 主干几乎都在100Mbps以上,高速控制器的部署与常见VLAN不一样,而且成本很高。

VLAN的配置

如果根据交换机端口定义VLAN,通常很容易用某种拖放软件把一个或多个用户分配到特定的VLAN。在非交换环境里,移动、 添加或更改操作很麻烦,有可能要改动接线板上的跳线充一个集线器端口移动到另一个端口。然而,改动VLAN分配仍然要靠人工进行: 在大型网络里,这样做很费时,因而很多联网供应商鼓吹采用VLAN可以简化移动、添加和更改操作。

基于MAC地址的VLAN分配方案确实可使某些移动、添加和更改操作自动化。 如果用户根据MAC地址被分配到一个VLAN或多个VLAN, 他们的计算机可以连接交换网络的任何一个端口,所有通信量均能正确无误地到达目的地。显然,管理员要进行VLAN初始分配, 但用户移动到不同的物理连接不需要在管理控制台进行人工干预;例如有很多移动用户的站, 他们并非总是连接同一端口?D?D或许因为办公室都是临时性的,采用基于MAC地址的VLAN可避免很多麻烦。

传统的Layer3技术怎么样呢?这里离开VLAN最近的是IP子网:每个子网需要一个路由器端口, 因为通信量只能通过一个路由器从一个子网移动到另一个子网。由于IP32位地址提供的地址空间很有限,所以很难分配子网地址, 还有看你是否熟悉二进制算法。因此,在IP网络里执行移动、添加和更改操作很困难,速度慢,容易出错,而且费用大。另外, 在公司更换ISP或者采用新安全策略时,可能有必要重新编号网络,这对于大型网络来说是无法想像的。实际上,如果有人采用现有的有子网的路由IP网络,并根据IP地址访问任意VLAN成员,路由选择技术就可能会被不必要的通信量淹没。

如果很多子网里都有VALN成员,常用的VLAN广播必须通过路由技术才能达到所有成员。此外, 糟糕的是广域链路会生成额外广播通信量;有WAN连接服务的VLAN成员数通常应该保持在最低水平。实际上, 基于Layer3地址的VLAN成员值有可能在增强和修改现有子网分布方面很有用,例如可通过一个全子网给VLAN添加两个新节点, 或者可用两个子网组成一个VLAN而无须重新编号。

路由和定位 篇3

我国的煤炭安全生产形势比较严峻, 重大的煤矿安全事故时有发生。井下人员定位系统对煤矿的安全生产起着十分重要的作用。随着无线传感器网络 (WSN) 技术走向成熟, 基于WSN技术的第三代人员定位跟踪系统成为近年来的研究热点, 而如何建立一套适用的路由算法, 是该研究热点要解决的核心问题。适用的路由算法能够为数据的传输提供支持和保障, 对适合井下人员定位系统的路由算法进行研究和探索, 有助于提高和改善现有人员定位系统的性能, 使煤矿安全工作和日常管理工作得到有效的保证。

本文根据井下人员定位系统的特点, 提出了一种基于ZigBee的井下人员定位系统分区域组网的方法, 设计了一种分簇路由算法FEECP (Fast and Energy Efficient Cluster Protocol) 。该算法可快速地进行路由发现, 减少路由控制开销。

1 井下人员定位系统的网络结构和网络节点的布置

为满足井下人员定位系统监测的需要, 在井下通道中, 每隔一定距离 (根据实际需要设定) 安置一个基站, 基站与总站之间通过现场总线连接。在一个基站的管辖范围内设置若干移动分站, 携卡的工作人员在移动分站间自由穿梭。基于以上情况, 笔者采用分区域组网的方法设计井下人员定位系统。在每一个基站管辖范围内的移动分站与经过该区域的移动终端组成ZigBee网络, 携卡人员信息经ZigBee路由节点, 通过一定的路由算法传送至协调点或直接传送至协调点, 再由协调点传送至基站, 基站向上传送到主站。人员定位系统的ZigBee网络结构如图1所示。

煤矿内多为类似走廊的狭长通道, 考虑采用如下方式布置网络节点: (1) 沿通道长度方向每隔一定距离 (根据实际情况设定, 应小于或等于节点有效传输距离) 设置一个FFD节点 (全功能设备) , FFD节点布置在通道顶部的中心位置, 保证整个通道范围内的正常通信。 (2) 为了保证通信的畅通, 为每个路由节点配备一个备用节点。 (3) RFD节点 (精简功能设备) 随意分布在通道内的任意位置。遵循以上原则, 煤矿某段通道内布置节点情况如图2所示。

2 FEECP算法设计

2.1 FEECP算法的设计思想

由于ZigBee网络中2种节点功能的不对等性[1], 本文考虑采用分簇路由的方案, 由具有路由功能的FFD来充当簇首节点, 接收或转发来自RFD的数据。对于人员定位系统, 由于网络中的路由节点全部是静止节点, 没有任何移动, 故簇的结构比较稳定。由网络协调点作为中央控制节点, 发起建立新的网络。基于以上分析, 本文提出一种应用于ZigBee网络的分簇路由算法FEECP。该算法的设计目标旨在快速地发现路由路径, 并对RFD节点进行精确定位, 具有简单、节能、可靠等特点。

2.2 簇的生成

FEECP算法的簇是静态形成的。开始时所有的节点处于“自由”状态, 协调点发起建立新的网络, 生成第一个簇并充当簇首 (CH, Cluster Head) , 确定簇首的身份后, 广播一个建簇信号, 周围的FFD节点收到该信号后, 记下信号的强度, 如果距离簇首两跳距离的节点中有FFD节点, 并且节点的状态为“自由”状态, 那么两跳距离的节点中收到信号强度最大的节点, 即是距离簇首最近的FFD节点静态地生成新的簇并充当簇首。如此继续下去, 直到所有的簇都生成。在簇生成后, 每个簇首节点都将维护一张簇内节点列表, 记录自己的簇成员地址, 并且每个路由节点也都将维护一张邻居节点列表, 记录自己周围的邻居节点的地址。节点一旦成为簇首, 就会向自己的邻居节点发布簇首广播信息, 收到广播信息的节点, 根据自己的类型作出不同的响应, 具体如下:

(1) 如果节点为RFD, 仅仅广播自己的存在信息, 故不进行任何动作。

(2) 如果节点为FFD, 而且没有加入任何簇, 它就向发布簇首广播的簇首节点发送“加入簇请求报文”, 簇首节点收到请求后, 返回一个“加入簇应答报文”。节点在收到应答报文后, 就成为簇的成员。

(3) 如果收到簇首广播的FFD节点已经加入了某个簇, 成为簇成员, 它就判断发送簇首广播的簇首节点是否是自己的簇首, 如果是, 不作响应;如果不是, 向该簇首节点发送“加入簇请求报文”, 在收到应答报文后, 该节点就加入这个簇。这时, 可以知道该节点同时加入了多个簇, 故称该类节点为网关节点 (GW, Gateway Node) , 网关节点用于相邻簇间的通信。成为网关节点后, 将向所有它能直达的簇首节点发送一个网关节点消息 (GWM, Gateway Message) , 簇首节点收到该信息后, 在簇内节点列表中把网关节点与自己的关系做一特殊标记, 表明网关节点身份的特殊性, 而网关节点内部也维护一张簇首节点表, 记录所有可以直达的簇首节点的地址。

(4) 如果收到簇首广播的是网关节点, 它将检查自己是否已经是该簇首的簇成员, 如果是, 不做响应;如果不是, 则向其发送加入簇请求报文, 在收到应答报文后, 加入这个簇, 然后将该簇首的地址加入簇首节点列表, 并向该簇首发送消息, 使簇首节点得知GW的身份, 在簇内节点列表中做一标记。

2.3 RFD节点的定位与FEECP路由的建立

RFD节点定时广播存在信息, 当RFD节点运动至某一个簇内时, 簇首节点接收此信息, 通过簇首节点的位置信息, 就可以粗略判断RFD节点的位置信息。同时也可以对RFD节点进行精确定位, RFD节点向周围的FFD节点广播存在信息, 收到存在信息的FFD节点将自己的位置信息与存在信息一起发送给簇首节点, 簇首节点就可以通过定位算法来计算RFD的精确位置。

无线传感网络中有多种定位算法, 但是这些算法通常只适用于地面上的系统。在井下, 一般都是狭长的空间, 巷道的宽度与长度相比较可以近似忽略, 节点的布置有一定的局限性。基于井下的特殊环境, 考虑采用两点定位法来对下井人员进行定位。两点定位法描述如下:已知收到RFD信息的2个FFD节点的位置, 也即是坐标信息, 同时也知道FFD节点收到RFD信息的信号强度, 根据收到的信号强度, 可以判断RFD节点距离2个FFD节点的远近, 再根据2个FFD节点的位置信息, 就可以大致判断出RFD节点的位置, 即在一个与巷道方向垂直的圆周上。由于巷道宽度很窄, 故RFD节点的位置可以基本确定。两点定位法原理如图3所示。

确定RFD节点的位置之后, 就要通过一定的路由路径将位置信息传送到地面。如果是簇内通信, 则直接由簇首节点进行转发;当源节点与目的节点不在同一个簇内, 即簇外通信时, 就要采用快速路由发现机制来寻找路由路径。

快速路由发现机制描述如下:如果源节点为普通簇成员, 它将向簇首节点转发RREQ控制分组;如果源节点为簇首节点, 它将向与其相连的网关节点发送RREQ控制分组;如果源节点为网关节点, 它将向与其相连的簇首节点转发RREQ控制分组。当目的节点收到RREQ控制分组后, 向源节点沿逆向路径返回一个RREP应答分组, 路由路径建立过程结束。每个路由节点都会维护一张路由表, 当要传送数据包时, 首先检查路由表中是否有可用路由, 如果有, 则直接按照已有路径转发数据包;反之, 进行快速路由发现。

2.4 路由与簇的维护

由于井下人员定位系统中固定分站与移动分站位置都比较固定, 是静止的路由节点, 所以网络拓扑结构比较固定, 采用快速路由发现机制可以有效地减少路由控制报文的数量, 快速地建立路由路径。但是由于种种原因, 快速路由发现可能会失败。如果是因为煤矿内无线传播环境造成的某个区域通信距离内的节点间无法正常通信, 则进行局部路由修复[2];如果是由于移动分站电池的耗尽或退出, 簇的结构被破坏而导致快速路由发现失败, 那么就要重新生成簇结构。

在井下人员定位系统中, 为了保证通信不发生中断, 能够实时进行数据的传输, 笔者为每个移动分站配置了备用路由, 如图2所示。根据快速路由发现的过程可知, 快速路由发现失败的原因可能是簇首节点退出或网关节点退出。当簇首节点退出时, 簇首节点的备用路由节点长时间接收不到簇首节点广播的“hello”报文, 由于备用路由距离相邻的簇首节点也是两跳的距离, 所以备用路由节点由普通簇成员而变成簇首节点, 然后向自己的邻居节点发布簇加入广播, 构成新的簇;当网关节点退出时, 由图2可知, 因为备用路由的存在, 当一个网关节点退出时, 另一个网关节点继续正常工作。当备用路由节点也失效时, 只能通过人为的修复来解决。

当有新的移动分站加入时, 通过周期性地广播“hello”报文使簇首节点得知新节点的加入, 簇首节点将会在簇内节点列表中增加一条记录, 然后发送簇首广播信息, 新节点收到广播信息后, 向发布簇首广播的簇首节点发送“簇加入请求报文”, 簇首节点收到请求后, 返回一个“簇加入应答报文”。节点在收到应答报文后, 就成为簇成员。

当节点退出时, 簇首节点根据该节点“hello”报文的超时信息, 将该节点的记录从簇内节点列表中删除, 如果该节点位于路由路径上, 相应的路由也要从路由表中删除。

2.5 FEECP算法分析

FEECP算法采用分簇路由协议的思想, 将网络中的节点分成若干簇, 采用快速路由发现机制可以简单快速地发现路由, 节省了控制开销, 相应地也节省了节点的能量消耗。同时FEECP算法也支持节点的加入和退出。由于对网络中的节点进行分簇, 当RFD节点位于某个簇内时, 簇首节点就可以对RFD节点进行粗略定位, 也可以根据两点定位法来计算RFD节点的精确位置。但是FEECP算法也存在一定的缺点, 由于快速路由发现机制限制了路由路径的选择, 所以在协调点附近的处于路由路径上的路由节点业务量较大, 能量消耗较多。

3 FEECP路由在井下人员定位系统中的应用

按照图2的方式布放网络节点, 由FEECP算法将形成如图4所示的簇结构。

下井人员在巷道中来回走动, 当位于某个簇中时, 簇首节点接收到标签卡发出的存在信息, 通过簇首节点的位置可以对下井人员进行粗略定位。同时, 也可以进行精确定位。当井下人员位于某个簇中时, 簇内所有的移动分站都可以接收到下井人员佩带的标签卡发出的信息, 然后将标签卡的信息连同移动分站的信息一起发送给簇首节点。由于簇内移动分站位置固定, 故位置信息一定, 基于煤矿井下的特点, 笔者采用两点定位法来计算人员的精确位置。由于为移动分站配备了备用分站, 两者距离很近, 可粗略认为是处于同一位置, 所以簇首节点收到的位置信息中会有相近的信息, 簇首节点需要选择相异性较大的2个位置信息来对人员进行定位。在确定RFD节点的位置后, 簇首节点将处理后的位置信息经由快速路由发现的路径传送给协调点, 再由协调点传送到地面监测中心。

4 FEECP算法的仿真

4.1 仿真环境的建立

本文采用NS2仿真软件[3]仿真FEECP算法。基于煤矿的实际环境, 仿真环境的参数如下:仿真环境为1 500 m×5 m的带状区域, 该环境模拟大巷环境;路由节点的个数从80个一直增加到140个, 每次增加10个路由节点, 并采用图2的格局布置;为模拟井下人员携带标签卡, 仿真过程中RFD节点先静止不动一段时间, 然后在区域内随机选择一个目标点, 以1 m/s的速度向该目标点匀速移动。当到达目标点后, 节点再次停留一段时间, 再随机选择一个目标点移动。节点反复进行这样的“停留/移动”过程, 直到仿真过程结束。仿真设定最大移动速度为2 m/s, 停留时间为30 s;在分析源节点的个数对路由性能的影响时, 设定源节点个数从40个增加到60个;数据包大小为256 B, 产生速率为30 s/次, 总仿真时间为600 s。

4.2 仿真结果与分析

本文选用路由开销、数据包成功接收率和端到端的延迟这3种指标对FEECP算法进行分析。为了体现分簇的优势, 在仿真中加入了与Z-AODV协议的比较。

图5为路由开销随节点数目增大的变化曲线。由图5可知, 在源节点数相同的情况下, FEECP算法与Z-AODV协议的路由开销都随着路由节点数的增加而增加, 但是, FEECP算法的路由开销明显低于Z-AODV协议, 这是因为在进行路由发现时, FEECP算法采用的是快速路由发现机制, 省去了很多控制分组的转发;在源节点数不同的情况下, FEECP算法与Z-AODV协议两者的路由开销都随着源节点数目的增加而增加, 源节点数目增大, 网络中要建立的路由路径就增多, 控制开销自然随着增加。

图6为数据包成功接收率随节点数目增大的变化曲线。

由图6可知, 随着源节点数目的增加, FEECP算法与Z-AODV协议两者的数据包成功接收率都随着降低, 这是因为随着网络中通信量的增加, 数据包发生冲突的概率增大, 所以降低了数据包的成功接收率。但是也可以看出, 在各种情况下, FEECP算法的数据包成功接收率都要比Z-AODV协议高。这是因为FEECP算法采用的是快速路由发现机制, 提高了路由的发现能力。

图7为端到端的延迟随节点数目增大的变化曲线。

由图7可知, 在源节点数目相同的情况下, FEECP算法与Z-AODV协议两者端到端的延迟都随着节点数目的增加而增加, 这是由中间节点数量的增加导致的。随着源节点数量的增加, 两者端到端的延迟都随着增大。但在各种情况下, FEECP算法的端到端的延迟都要低于Z-AODV协议, 这就表明了分簇带来的好处, 使路由发现变得简单快速。

5 结语

根据井下人员定位系统的实际特点以及ZigBee的特性, 提出了分区域组网的方法, 并设计了一种分簇路由算法——FEECP算法应用于井下人员定位系统中。仿真结果表明, FEECP算法在路由开销、数据包的成功接收率和端到端的延迟这三个方面表现出了优势。该算法采用了快速路由发现机制, 省去了很多控制分组的转发, 减少了路由控制开销, 节省了能量, 同时可以对井下人员进行精确定位, 并且由于网络中备用路由的存在, 使得该算法非常稳定可靠。该算法还具有很好的延展性, 方便于移动分站的加入和退出。

参考文献

[1]封瑜, 葛万成.基于ZigBee技术的无线传感器网络构建与应用[J].数字通信世界, 2006 (8) :73-76.

[2]于宏毅.无线移动自组织网[M].北京:人民邮电出版社, 2005:181-182.

上一篇:排球理论教学下一篇:初中生物教学中的美育