adhoc网络层路由协议总结Word文档格式.docx
《adhoc网络层路由协议总结Word文档格式.docx》由会员分享,可在线阅读,更多相关《adhoc网络层路由协议总结Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
HELLO消息用于建立一个节点的邻居表,报文中可以包括邻居节点的地址以及本节点到邻居节点的延迟或开销,OLSR采用周期性地广播HELLO分组来侦听邻居节点的状态。
HELLO分组只在一跳的范围内广播,不能被转发。
与HELLO消息相反,TC分组必须被广播到全网。
节点在从自己的一跳邻居节点中选择MPR时计算的原则是:
节点与MPR之间必须是双向对称链路,节点所发送的分组通过MPR的中继,能够到达所有对称的两跳邻居节点,如果能够满足这一点,那么MPR就能有效地进行TC分组的转发,同时,应该使MPR的数量尽量的少。
OLSR路由协议
优缺点
WRP的优点是当节点检测到任何链路变化时便检查邻居的一致性,有助于消除环路以及加速算法收敛。
缺点是由于WRP需要保存四张路由表且依赖于周期性的Hello消息,这些需要大量的存储空间和计算资源,浪费了内存和带宽。
另外,WRP的可扩展性不强,不适用于大型的AdHoc网络。
1.节点之间需要周期性地交换各种控制信息:
使接入AdHoc网的结点所处环境比较嘈杂;
2.TC分组必须被广播到全网。
全网处于动态游走的状态,需要周期性更新TC分组;
占用带宽比较严重。
1.2基于反向路径转发的拓扑分发(TBRPF)协议
TBRPF协议是一种先应式的链路状态路由协议,提供逐跳的最短路径。
每个节点根据缓存在拓扑表中的局部拓扑信息,利用Dijkstra算法,计算到目的节点(网络中的其他节点)的路由。
TBRPF协议包括两个模块:
路由模块:
协议允许每个结点迅速检测出相邻结点j,这样在结点i的接口I和结点j的接口J之间存在一条双向(I,J)。
TND协议也能够迅速检测出一条双向链是否中断或者变成一条单向链。
TND协议只报告链路状态中已经发生变化的那部分,从而能够快速的检测出网络拓扑变化。
TBRPF使用周期性的更新消息和增量的更新消息保证邻节点获得计算路由所需的状态信息——节点源树的一部分。
为了减少开销。
每个节点只向邻节点报告自己的部分源树——成为源树的报告部分。
为了改善协议的鲁棒性。
让节点获得更多的拓扑信息从而计算出多条路径,并且使得中继优先级高的节点更大可能地为其他节点转发分组,每个节点可以独立地选择报告除源树的报告部分之外的拓扑信息。
邻居发现模块:
通过“增量HELLO”分组,节点可以实现邻居发现功能。
节点周期性发送的增量HELLO分组,只报告发生变化的邻节点的状态信息,而不是报告所有的邻节点的状态信息,所以其分组长度比其它链路状态路由协议的分组要小得多。
优点:
能够快速的检测出网络拓扑变化,适用于小型AdHoc网络;
缺点:
Dijkstra对大型的移动网络不使用,重复算法步骤太多,需要时时更新Dijkstra算法结果;
TBRPF通过周期性的更新消息来维护拓扑结构,大量占用网络带宽,这也是先验性网络路由的通病。
1.3FSR路由协议
FSR是针对一个移动自组织网坏境开发的简单、有效的链路状态类型的主动路由协议。
FSR是对LS算法的改进,他只在邻里结点间交换LS消息。
此外FSR协议将鱼眼技术引入到传统的LS路由协议中,对于路由表中不同的记录采用不同的时间间隔记录采用不同时间间隔交换LS消息,对于较近的结节用较短的时间间隔交换LS消息,对于较远的结点用较长的间隔交换LS消息。
“鱼眼”技术被运用于FSR协议中,从属于不同鱼眼域的结点分别用不同频率向周边结点广播新的路由更新消息,每个结点可以通过结点之间相互交换路由消息而获取关于全网的拓扑消息。
结点更新路由信息的时间周期根据距离而定,因此对于处于同一鱼眼域内部的结点路由而言都是相对精确的。
当网络中洪泛过大时,FSR路由协议不会生成任何路由控制指令,而且不会在下一个路由更新消息中附带关于路由瘫痪的消息,而是直接删除结点路由表中的相关路由以及网络拓扑信息。
这种路由协议使用于结点移动随机性大/网络拓扑结构变化比较频繁的环境。
目的序列号使得结点能够一举最新的路由状态消息去维护网络拓扑结构,避免传输过程中出现环路。
2.移动AdHoc网络的按需路由协议
2.1按需距离矢量路由(AODV)协议
AODV路由协议是一种典型的按需驱动路由协议,该算法可被称为纯粹的需求路由获取系统,那些不在活跃路径上的节点不会维持任何相关路由信息,也不会参与任何周期路由表的交换?
此外,节点没有必要去发现和维持到另一节点的路由,除非这两个节点需要进行通信路由发现过程:
在AODV中,使用了RREQ,RREP,RERR。
首先需要数据发送的节点向周边节点广播包括源节点地址和序列号、目标节点地址和序列号、路由记录和唯一的ID号的“路由请求”RREQ信息。
AODV路由表项
当任意节点接收到RREQ,检查ID号和源节点地址,若ID和源节点地址相同,则丢弃RREQ;
否则,该节点建立回到源节点的反向路由;
若本节点地址即为所要查找目标节点,则将RREP沿反向路由发回到源节点,RREP数据分组头要加上路由所用节点路由信息,每个节点维护前向路由条目,并且跳数加1,源节点只接受先到达的RREP;
若本节点不是目标节点,则检查是否有到达目标节点的路由,若有,则检查本节点路由表和RREQ中目标节点ID号大小,若本节点的大,将RREP发回到源节点,表示路由己经找到,并且跳数加1,若小于或若无路由信息,则将RREQ向邻近节点广播,并且跳数加1。
可能有多个节点建立反向路由,当RREP回送不经过某条路由,他会因超时而取消。
AODV路由寻找过程
AODV在中小规模AdHoc网络优势较为明显,路由发现和维护过程都是按需的,节点只存储需要的路由,减少了内存的需求和不必要的复制,RREP都包含路由所经过节点的路由信息。
路由找寻和建立时间长,原路返回机制不够合理。
3.2基于互相关系的路由(ABR)协议
协议格式
3.3具有QoS意识的AODV路由协议
2.2DSR路由协议
DSR协议的特别之处是它运用了源路由算法,即只有发送节点知道完整的到目的节点的多跳路由。
这些路由被储存在缓存内。
被发送的数据分组在其分组头内携带源路由信息。
一个AdHoc网络中的节点欲发送数据到目的节点,但是当它检查自己缓存的中没有到目的节点的路由时,它将启动路由发现过程。
源节点用泛洪的方式给网络中的其他节点发送路由请求分组(RREQ)。
每一个收到该分组的节点向它的邻节点转发该分组,除非它就是目的节点或者在它的缓存中存有到目的节点的有效路由。
这样的节点将会回复一个路由应答分组(RREP)给源节点。
RREQ和RREP分组也是服从源路由算法的。
由RREQ分组建立了一条到目的节点的穿越网络的路径,RREP分组利用该路径反转路由而到源节点。
源节点则将收到的RREP分组所携带的路由信息储存到它的缓存内以备后用。
如果源路由中的任何一段链路由于一些原因而中断了,则会有一个路由出错分组(RRER)通知源节点。
源节点会将它的缓存内的包含那一跳的路由删除。
并且源节点将会启动新的路由建立过程。
抢修:
当分组传送过程遇到链路断开时可由中间节点根据自己的缓存来选择另一条路由。
在发送RERR分组之后,节点可能试图抢修遇到路由出错的数据分组而不是丢弃它。
它首先搜索自己的路由缓存,若查找到目的节点的路由,则通过用自己缓存中的路由替换分组中的源路由来抢修数据分组。
无确认路由修复:
源节点在收到RERR分组时,可把它包含在下次发送的RREQ中,这样可以帮助网络中其他节点获得RERR信息,刷新缓存。
混合侦听:
当节点侦听到并不是发给自己的分组时,它检查存储器,如果有通过自己的更好的路由,就发送RREP给源节点。
这样可以让节点不需要直接参与路由过程也获得路由信息。
在另一方面,如果听到的是RREP分组,对方就停止RREP的传送,可以在一定程度上避免RREP分组泛滥。
随机延迟:
为了防止RREQ在泛洪过程产生冲突,每个节点在收到RREQ分组时,转发前随机延迟一段时间。
节点为某个路由请求启动路由建立过程,在收到RREP分组之前,如果还没有超过最小时间限制,节点不为该请求再次启动路由建立。
路由建立过程稍带数据分组:
在业务产生而节点没有路由可用时,启动路由建立机制,在等待路由应答的这段时间内,数据分组或者被缓存或者被丢弃。
如果在RREQ中捎带数据分组,可以从一定程度上减少分组传输的时延。
但是,数据分组不能太大。
当然,如果中间节点收到路由请求分组并根据它的路由缓存发送分组,就会丢弃捎带的数据分组。
为了避免这种情况,中间节点在丢弃RREP分组之前,必须重新构造数据分组。
而且数据分组的路由分为两段:
前一段来自RREQ分组的路由记录部分,后一段来自路由缓存,而且,该数据分组的源节点为启动路由建立的节点。
优:
抢修遇到路由出错的数据分组而不是丢弃它,一定程度上避免了错误重传,有效的提高了网络链路利用率;
缺点也比较明显,采用了泛洪机制,占用网络宽带;
需要绝对的双工链路模式支持;
建立链路回传过程复杂;
2.3临时预定路由(TORA)协议
TORA协议是基于“逆向链路”算法的路由协议,是具有高度的自适应性的分布式路由算法。
它既不是距离矢量路由算法,也不是链路状态路由算法。
它能提供原节点到目的节点的多条路由,当拓扑发生变化时,它可以把控制信息限制在拓扑变化点的一个很小范围内,从而降低开销。
TORA协议具有3个阶段:
路由建立阶段、路由维护阶段和路由消除阶段。
路由建立和维护采用“高度”作为度量标准来建立有向无环图(DAG),路由创建由QRY(查询)和UPD(更新)两个控制分组完成。
路由维护是在节点检测到链路失败时,采用部分链路翻转算法,保证路由正确性维护以目的节点为根的DAG的过程。
在路由清除过程中节点广播CLR命令,清除无效路由。
该算法的缺点在于会产生类似于距离矢量算法中计数之无穷的问题,有在网络中产生振荡的隐患。
分布式路由算法,传输速度快,能够保证在网络拓扑在有效时间完成一次快速资源共享过程。
3.移动AdHoc网络的混合式路由协议
3.1域路由协议(ZRP)
路由协议ZRP是混合使用主动和按需路由策略的自组网路由协议,巧妙的结合了这两种路由协议的特点。
ZRP是一个分区路由协议,将整个网络分成若干个以节点为中心、一定的跳数为半径的虚拟区。
与一般的分级路由协议不同,区内的节点数与设定的区半径有关,因此ZRP的区重叠程度很高,许多节点可能同时属于多个区域,每个区域的半径长度由用户设定。
ZRP中,分级被称为“域”。
域形成算法比较简单,它是通过一个重要的协议参数—区域半径(以跳数为单位),指定每个节点维护的区域大小,即所有距离不超过区域半径的节点都属于该区域。
一个节点可能同时从属于多个区域。
为了综合利用按需路由和主动路由的各自优点,ZRP规定每个节点采用DVA主动路由协议维护去往域内节点的路由,采用类似于DSR协议中的按需路由机制寻找去往区域外节点的路由。
ZRP协议的性能很大程度上取决于区域半径参数值。
通常,小的区域半径适合在移动速度较快的节点组成的分级网络中使用;
大的区域半径适合在移动速度慢的节点组成的稀疏网络中使用。
3.2抢先式路由协议
抢先式路由维护算法结合按需算法和表格驱动算法的优点:
由于只是很可能中断的活动路由才触发路由更新,所以路由开销仍然保持在低水平状态;
由于提前纠正操作,其路由开销最低,但是这种操作是反应式的。
因此当路由中高端的时候,流的连接被打断,带发送分组需要等待一段时间,这就增大了分组的平均传输时延,加剧了分组传输时延的变化(抖动)。
抢先式解决方法是抢先寻找其他路径。
抢先式路由算法是一种辅助方法,起到锦上添花的效果。
对按需路由有普适作用。
3.3灵敏混合自适应路由(SHARP)协议
SHARP由主动式路由协议和反应式路由协议组成;
它在主动式路由策略和反应式路由策略之间高效、无缝的自适应。
SHARP通过动态调整每个目的节点的主动域半径来控制路由协议的性能。
每个目的节点根据网络特点(移动速率、结点密度)和数据流特征(源节点数量、源节点与目的节点之间距离)改变其主动域的大小。
4.移动AdHoc网络的多径路由技术
4.1按需路由多径距离路由(AOMDV)协议
AOMDV路由协议是在AODV路由协议基础上扩充而成的。
AOMDV协议计算“多条开环、链路不相交路径”,提供有效的容错能力,快速、有效恢复动态网络中的中断路由。
AOMDV主要思想就是在路由找寻期间计算多条路径。
4.2分离多径路由(SMR)协议
SMR协议建立和使用最大不相交路径的多条路由。
多条路由是按需寻找的,其中有一条是最短时延路径,SMR建立的各条路由不必等长度。
将数据流划分到各条路由上传输,以便避免拥塞,高效利用有效的网络资源。
提供多条路由有助于使路由恢复进程的调用频次达到最小和使控制消息开销最少,所以对于网络通信是有益处的,特别是在移动无线网络中更加有益。
SMR多径路由协议有两种维护方法。
第一种方法是当一个会晤使用的两条路由中只要任何一条路由中断则建立一对新的路由。
第二种方法是只有两条路由全部中断后才重新进行路由寻找。
仿真表明SMR协议性能优于DSR协议。
4.3多径源动态路由(MP-DSP)协议
4.4可靠数据交付安全(SPREAD)协议
4.5载荷平衡多径路由(MRP-LB)协议
5.移动AdHoc网络的多目标路由协议
5.1按需路由矢量多目标路由(MAODV)协议
5.2基于互相关系的多目标路由(ABAM)协议
5.3按需多目标路由(ODMRP)协议
5.4自适应按需驱动多目标路由(ADMR)协议
路由协议指标
路由算法的性能通常用以下指标进行衡量:
(1)时间复杂度:
算法在选定参与转发报文的节点时,所耗费时间的量级。
(2)消息复杂度:
算法在选定参与转发报文的节点时,所发送分组数的量级。
(3)消息域:
算法在选定参与转发报文的节点时,所必需知道的拓扑图的信息范围。
(4)可扩展性:
算法在网络规模变大时,是否仍然具有良好的性能。
(5)容错性:
算法在网络内有节点失效时,其性能是否仍然良好。
(6)数据汇集:
算法是否具有冗余数据处理能力。
(7)能耗:
实现容错性时算法在能量消耗方面的性能。
下表列出了一些常用的路由协议及其各项指标的情况: