1. 自组织网的现有协议
路由选择在自组织网中非常重要,它既是信息的传输策略问题,也涉及到网络的管理问题。目前自组织网的路由协议一般分为两种:路由表协议(table driven)和源始发的按需路由协议(source-initiated on-demand driven)。路由表协议包括有:DSDV、CGSR、WRP等,源始发的按需路由协议有:DSR、AODV、LMR、TORA、ABR、SSR等。 路由表协议需网络中的每一个节点都要周期性的向其它节点发
送最新的路由信息,并且每一个节点都要保存一个或更多的路由表来存储路由信息。当网络拓扑结构发生改变时,节点就在全网内广播路由更新信息,这样每一个节点就能连续不断地获得网络信息。
4.1.1、序列目的节点距离矢量路由协议(Destination-Sequenced Distance-Vector Routing)
DSDV是基于经典Bellman-Ford路由选择过程的改进型路由表
算法。DSDV以路由信息协议为基础。它仅适用于双向链路,是AD HOC 路由协议发展较早的一种。
依据DSDV,网络中的每一个节点都保存有一个记录所有目的节点和到目的节点跳数的路由表(routing table)。表中的每一个条目都有一个由目的节点注明的序列号(sequence number),序列号能帮助节点区分有效和过期的路由信息。标有更大序列号的路由信息总是被接收。如果两个更新分组有相同的序列号,则选择跳数(metric)最小的,而使路由最优(最短)。路由表更新分组在全网内周期性的广播而使路由表保持连贯性。
4.1.2、群首信关切换路由协议(Clusterhead Gateway Switch Routing)
CGSR和DSDV的不同之处在于寻址方式和网络组织过程。CSGR是有几种路由选择方式的分群的多跳移动无线网络。通过群首控制网络节点,信关隔离群,信道接入可以分配路由和带宽。群首选择算法用来选择一个节点作为群首并在群内应用分布式算法。信关为那些在两个或多个群首的通信半径之内的节点。节点发送数据包首先把它传送到群首,通过信关到另一个群首,一直重复此过程直到目的节点所在群的群首收到此数据包。然后,数据被传送到目的节点。用此方式,每个节点必须保存一个群成员表(cluster member table)和路由选择表(routing table)。群首方式的缺陷在于当群首频繁的变换时,节点忙于选择群首而不是数据转发,这样反而会影响路由协议的实行。因此,当群内成员发生变化时,产生了最小群变化协议(Least Cluster Change)。利用LCC,只有当一个群内有两个群首或一个节点在所有的群首通信范围之外时,群首才发生变换。
4.1.3、无线路由协议(The Wireless Routing Protocol)
WRP是以维护网络中所有节点间的路由信息为目的的基于表的协议。依据WRP,每一个节点都需保存距离表、路由表、链路开销表以及信息转发表(Message Retransmission List)。
节点通过更新分组告知其它节点链路的变化状况,通过接收相邻节点的确认分组以及其它信息来获知其它节点的情况。在WRP中,节点为网络中的每一个目的节点交流距离和下一跳到最后一跳的路由信息。WRP属于有特殊例外的路径搜寻算法。它通过强迫每一节点检查所有相邻节点发送的信息记录来避免无穷计(count-to-infinity)问题。这最终会消除环路现象和当链路断开时提供更快的路由收敛。 (Source-Initiated On Demand Routing)
这种路由选择方式只有当源节点需要时才建立路由。当一个节点需要到目的节点的路由时,它会在全网内开始路由发现过程。一旦检验完所有可能的路由排列方式或找到新的路由后就结束路由发现过程。路由建立后,由路由维护程序来维护这条路由直到它不再被需要或发生链路断开现象。
4.2.1、自适应源路由协议(Dynamic Source Routing)
DSR是基于源路由概念的按需自适应路由协议。移动节点需保留存储节点所知的源路由的路由缓冲器。当新的路由被发现时,缓冲器内的条目随之更新。
DSR主要由两部分组成:路由发现和路由维护。当一个节点欲发送数据到目的节点,它首先查询路由缓冲器看是否有到目的节点的路由。如果有,则采用此路由发送数据。另一方面,如果没有,源节点就开始路由发现程序。
路由维护通过路由错误分组(route error)和确认分组来实现。当链路层遇到传输问题时,错误分组开始传送。一旦收到错误分组,节点就会把发生错误的那一跳从路由存储缓冲器移走,并会在所有包含那一条的路由里删掉那一跳。除路由错误分组外,确认分组用来验证路由连接的正确运行。
4.2.2、自组织网按需距离矢量路由协议(Ad Hoc On-Demand Distance Vector Routing)
AODV实质上就是DSR和DSDV的综合,它借用了DSR中路由发现和路由维护的基础程序以及DSDV中跳到跳的路由选择、序列号码及周期性的更新信息的用法。
和DSDV保存完整的路由表不同的是,AODV通过建立基于按需的路由来减少路由广播的次数,这是AODV对DSDV的重要改进。和DSR相比,AODV的好处在于源路由并不需包括在每一个数据包中,这样会使路由协议的开销有所降低。AODV是一个纯粹的按需路由系统,那些不在路径内的节点不保存路由信息也不参与路由表的交换。
4.2.3临时排序路由算法(Temporally-Ordered Routing Algorithm)
TORA是基于‘逆向连接’概念的高度自适应、环路开放、分布式路由算法。TORA主要应用在动态移动网络环境内。它是源始发的路由协议,能向每一对源-目的节点提供多径路由。TORA的关键思想是把路由信息的传送限制在网络拓扑结构变化处附近较小的范围内。为了实现这一点,节点必需保留一跳之远的节点的路由信息。TORA主要实现三个基本功能:路由建立、路由维护、路由删除。
在路由建立和路由维护的过程中,节点应用‘高度(height)’ metric来建立一个以目的节点为根部的指导性的非循环的图表(Directed Acyclic Graph)。这样链路根据相邻两个节点的高度值来确定向上或向下的方向。
4.2.4、基于联合的路由协议(Associativity-Based Routing)
ABR协议是环路开放的、分组复用的,它为自组织网定义一个新的度量(metric)。这个metric就是联合稳定性程度(dgree of associativity stability)。在ABR,路由的选择基于节点的联合稳定性程度。节点周期性地发送信标来表明自身的情况。一旦相邻节点收到信标,它们的联合路由表就会被更新。每接收一个信标,节点就增加一个关于发送信标的节点的联合条目。联合稳定性通过节点和其它节点在时间和空间的连接稳定性来定义。高联合稳定性也许意味着节点的低移动率,而低稳定性意味着高移动率。当节点的相邻节点或节点本身移动出相邻的范围时,联合条目会被刷新。ABR的基本目标是为自组织网找出生命时间更长的路由。
4.2.5、信号稳定性路由协议(Signal Stability Routing)
SSR是基于自适应路由协议的按需路由协议。SSR选择路由是基于节点间信号的强度以及节点位置的稳定性。这种路由选择标准有选择强连接性路由的作用。SSR可分成两部分:DRP(Dynamic Routing Protcol)动态路由协议和SRP静态路由协议(Static Routing Protcol)。
DRP主要负责路由表(Routing Table)和信号稳定程度表(Signal Stability Table)的维护。所有的传送过程及接收都在DRP进行。SRP则负责处理节点接收的数据。
2. 移动自组织网络路由协议简介
MANET 为Mobile Ad hoc network的简称,Ad hoc网络是一种自组织网络。
由于 MANET 网络中无线通信节点的能量一般都是受限的,通信范围并不能从源节点直接覆盖网络中的所有其他通信节点。节点间进行数据通信时,一般需要其他网络节点的协助,通过 多跳传输 才可以转发到并未直接相连的目的节点,所以路由协议是 MANET 网络关键技术中十分重要的一部分。在传统的通信网络中,路由器一般不移动,很少出现路由器在通信的过程中随意加入或者离开网络的情况,普通的路由协议对于 MANET 这类拓扑频繁动态变化的网络显然是不适用的。因此,有必要针对具体的移动无线自组织网络应用环境的特点,设计相应的 MANET 路由算法。
如图所示,MANET 网络的路由协议分类方法有很多种,并且新的路由协议也在不断的出现。根据路由发现机制的不同,基本可以被分为表驱动路由协议、按需路由协议以及混合式路由协议三种类型。
又称为 先验式路由协议 。网络中的节点维护一个包含其它网络节点信息的路由表。MANET网络中的每个节点都周期性地广播路由分组,同时通过从网络接收到的路由分组信息,持续更新自身的路由表。在发生网络拓扑结构性改变的时候,通信节点打包更新消息并发送给其它通讯节点,让它们更新最新路由。这样网络中的节点都一直保持准确最新的路由信息,无论是否有数据通信的需要。当有数据转发需求的时候,节点根据自身维护的路由表选择路由,作为发送或者转发数据包的下一跳节点。表驱动路由协议可以实现较低的端到端时延(End-to-End Delay),但是为了计算路由而周期性广播信标会产生较大的网络开销。 DSDV (目的序号距离矢量)协议、 OLSR (优化链路状态路由)协议是此类协议的主要代表。
又称为 反应式路由协议 。当自组织网络中的节点有通信需求的时候,进行路由搜索操作,本身并不保存路由信息。当通讯节点有发送数据包的需求时,该节点将会在网络中进行路由搜索,查找可以到达目的节点的路径;只有找到一条满足条件的可用路径后,数据包的发送过程才执行。把先前获得的路由信息缓存到本地当中,作为后续发送使用,可以加速网络效率。比起表驱动路由,按需路由没有周期性广播控制消息,因此降低了路由开销,极大的节省了网络带宽。按需路由协议有一个缺点是,如果在发送数据包的时候,找不到可用的路由路径信息,需要发起路由搜索。端到端时延(End-to-End Delay)在按需路由协议中可能比较高。 AODV (无线自组网按需平面距离向量路由)协议、 DSR (动态源路由)协议是按需路由协议的主要代表。
混合(分级)路由协议,就是结合上述两种路由协议的优势而得到的一类路由协议。在上文提到的两种路由协议中,所有节点的功能都为平等的,通常来说这两种路由协议都是单层架构的平面路由协议。而在分级路由协议中,层次指的是一个“区”或“簇”,可以采用两种方法来对节点分级。一种分级的方式是隐式的,被称为逻辑分级:每一个网络节点都被包含于某一个本地范围内,而对于本地范围的内部与外部则分别使用不同的路由发现机制。另一种分级的方式是物理分级。首先是构建簇,将那些在地理位置方面具有紧密联系的相关节点构建成一个显式的簇,然后从每个簇中选择出一个节点作为该簇的簇首,选择出的簇首节点与同一个簇内的各个节点都是可以直接进行一跳通信的。网络由若干个节点组成,在层内的节点使用先验式路由算法,在层间节点间则用反应式路由算法。混合路由协议避免了前面两类协议的缺陷:表驱动路由协议中过量的拓扑控制消息流量问题和按需路由协议中的长时延问题。常见的混合路由协议有 ZRP (区域路由)协议、CBRP(分簇路由)协议等。
这是不同于以前提到的三种路由协议。由于目前大量的通信节点都带了定位装置,使这类型协议开始流行。利用位置信息,可以优化的路由性能的自组织网络,再通过限制路由发现的洪泛,以减少拓扑控制消息的数量。 GPSR (贪婪周边无状态路由)和LAR(地理信息辅助路由)路由协议都属于地理位置辅助路由协议。