基于DSR协议的Ad Hoc网络在铁路通信中的应用分析

2010-08-07 08:41倪晓林
铁路计算机应用 2010年2期
关键词:路由分层节点

张 东,倪晓林,杨 妮

(兰州交通大学 自动化与电气工程学院,兰州730070)

传统的无线通信网络按照其组网控制方式一般为集中控制的,即有中心的。此类无线网络的运行要依赖预先部署的网络基础设施。

铁路沿线多处于偏远的地区,通信质量较差,线路一旦发生突发性的灾难(诸如地震、水灾、大型山体滑坡等),预先部署的固定设施很可能被破坏,无法进行正常的通信。在这种特殊的场合下,需要一种能够快速自动组网的移动通信技术。Ad Hoc网络具有组网快速、灵活、使用方便等特点,还具有很强的抗毁性、临时自治性以及自组织的性能。本文根据Ad Hoc网络的特点以及铁路自身的具体特性,建立基于DSR协议的路由,分析Ad Hoc网络在紧急情况下的应用。

1 Ad Hoc网络简介

Ad Hoc网络最初的研究动机是满足军事战场的通信需求。在战场恶劣的环境下,通信设备不可能依靠的通信基础设施,需要一种能快速装备、自组织的移动基础设施的网络,使之报文交换不受固定或有线的基础设施限制的环境下运行。在结构上,Ad Hoc网络是由一系列移动结点组成,是一种自组织、无中心的网络,不依靠于任何已有的网络基础设施。网络中的结点动态且任意分布,结点之间通过无线方式互连,它将分组交换网络的概念引伸到广播网络的范畴。

2 Ad Hoc网络的结构

2.1 平面结构

平面结构如图1,在平面结构的Ad Hoc网络中,所有节点地位平等,当节点之间距离足够近,无线电波能够相互传播时,就建立连接(只受网络连通性的影响及安全条件的限制)。由于源节点和目标节点之间可存在多条路径,可以在多条径路上实现流量平衡,在这种网络中,数据流可根据自身的特征选择最合适的路径进行发送。

图1 平面结构的ADHOC网络

2.2 分层结构

在分层结构Ad Hoc网络中,节点被划分成组,称为簇(cluster)。每个簇由一个簇头(cluster header)和多个簇成员(cluster member)组成。簇头主要负责簇间数据的转发,它要维护好到其他簇头的路由及所有节点与簇的所属关系。簇内成员的功能相对简单,基本上不需要维护路由。不同簇间节点的通信都要经过各自的簇头转发。根据分层的数量,Ad Hoc网络的深度可分为单层和多层,图2是一个两层的网络结构。为了维护分层结构网络的层次性需要实现较复杂的簇头选择算法。

图2 一个两层的分层Ad Hoc网络

3 基于DSR协议的Ad Hoc路由的建立

根据对网络拓扑结构变换的反应不同,Ad Hoc网络的路由协议可以分为先应式(基于路由表)路由协议和反应式(基于需求)路由协议。

先应式路由协议是基于传统的距离向量路由机制。反应式路由协议仅在需要时才去发现和建立路由。

一个Ad Hoc网络协议需要解决3个问题:建立路由、数据转发、维护路由。当源节点需要传送数据到目的节点,必须找到路由,然后才能传送,一旦Ad Hoc网络拓扑结构发生变化,原有建立的路由质量可能恶化甚至断开。本文基于DSR协议建立路由,研究分析其在铁路通信中的应用。

3.1 建立路由

动态源主机路由(DSR)从源节点开始,源节点需要一条到达目的节点的路由,它将广播一个路由请求(ROUTE_REQ)信息包给它的邻居。当一个节点收到ROUTE_REQ包时,分两种情况进行不同的处理:

(1)未知去往目的节点的路由:可以看作2个步骤,第1步,源节点将其地址信息附加到ROUTE_REQ包中并把这条请求信息广播给邻居,寻找目的节点。第2步,当目的节点收到一个ROUTE_REQ时,它返回给源节点一个包含了ROUTE_REQ中的路由信息的路由回应(ROUTE_REPLY)包。ROUTE_REPLY包以单播的形式沿着建立路由相反的方向或者沿着一条目的节点已知的路线发送给源节点。一旦源节点收到ROUTE_REPLY包,将把这条路由放到路由缓存中。

如图3,A为源节点,I为目的节点,A节点通过ROUTE_REQ包的扩散,通过箭头传输的方向进行传输,箭头上的字符序列表示包头中包含的经历的主机序列,当I收到信息后,挑选最佳路径向源节点A发送ROUTE_REPLY包。

图3 DSR中路由发现的过程

(2)如中间节点的缓存中存在一条足够新的路由,可以直接返回一个ROUTE_REPLY包,这样,中间节点只要把ROUTE_REQ中的路由与缓存中的路由合并起来返回给源节点即可。同时中间节点记录已收到的ROUTE_REQ防止重复收到ROUTE_REQ。

3.2 数据转发

DSR协议采用源节点路由的方法转发数据。数据包在转发的过程中中间节点不查看路由表,数据包要穿过的整个路径信息已包含在包头中,中间节点不需要保存任何路由信息,只是根据包头中的路径信息传送数据包,所有的路由工作都由源节点完成。

3.3 路由维护

当中间节点向下一个节点转发数据时,前一个节点预先检查后面节点的链路状况,如果前一个节点没有发现其后节点对数据的任何传输动作,它就认为本节点到下一个节点的链路是断开的,这个检查的节点就会发送一个错误报告信息给源节点,源节点主机收到通知之后就会重新建立一条新的路由。错误报告信息沿着返回的路径通知其他中间节点主机失效的路由表项。ROUTE_REQ信息包只在旧的路由所包含的节点邻居中传输。

4 结束语

本文根据Ad Hoc自身的网络结构及特点,并结合铁路自身的特性,基于DSR协议建立合适的路由,利用自身的无线收发设备与其发射范围内的其它节点直接通信。基于DSR的Ad Hoc网络能够克服现在偏远地区铁路通信质量差的问题,在地震等突发事件发生时,原有部署的通信设备可能被破坏,Ad Hoc网络能够不依赖原有网络,进行快速组网。

[1] 蒋笑冰,吴昊,卢燕飞. 现代铁路通信技术[M] . 北京:中国铁道出版社,2006,12.

[2] 徐恪,吴建平,徐明伟. 高等计算网络[M] . 北京:机械工业出版社,2003,9.

[3] 陶铭,俞鹤伟. 分层结构Ad Hoc网络中基于节点位置的通信改进[J] . 通信技术,2009(1):134-136.

[4] 胡甜,周颢,赵保华. 无线Ad hoc网络中的负载平衡广播路由算法[J] . 通信学报,2008(7):129-133.

[5] 马朝斌,贾晋康,张立军. Ad Hoc网络中广播风暴的抑制方案[J] . 中国数据通信,2005(7).

猜你喜欢
路由分层节点
CM节点控制在船舶上的应用
基于AutoCAD的门窗节点图快速构建
概念格的一种并行构造算法
铁路数据网路由汇聚引发的路由迭代问题研究
一种沉降环可准确就位的分层沉降仪
一种基于虚拟分扇的簇间多跳路由算法
探究路由与环路的问题
雨林的分层
有趣的分层
基于预期延迟值的扩散转发路由算法