目录

1 一点前言

2 路由发现

2.1 相关概念

2.2 AODV的路由发现过程

2.3 与DSDV协议的对比

3 路由表管理及维护

3.1 更新路由表的策略

4 AODV协议的特点

4.1 优点

4.2 缺点


1 一点前言

在之前提过的DSR协议中,采用了源节点路由方式,每个数据报文头部都携带路由信息,增长了报文长度,降低了传输效率,尤其是在数据报文本身很短的情况下,其耗费尤为明显。在AODV协议中,路由中的每个节点都维护路由表,因而数据报文头部不再需要携带完整的路由信息,从而提高了协议的效率,其具体实现过程见下文: D

2 路由发现

2.1 相关概念

AODV协议采用与DSR协议类似的广播式路由发现机制。与DSR协议相比,AODV的路由依赖于中间节点建立和维护的动态路由表。AODV的路由发现过程由反向路由的建立和前向路由的建立这两部分组成。

反向路由是指从目的节点到源节点的路由,用于将路由响应报文回送至源节点。反向路由是源节点在广播路由请求报文的过程中建立起来的,具体过程见后面介绍。如图1(a)所示,反向路由可能会有多条。

前向路由是指从源节点到目的节点方向的路由,用于以后数据报文的传送。前向路由是在节点回送路由响应报文的过程中建立起来的,如图1(b)所示。

(a)反向路由的建立                                          (b)前向路由的建立

图1 AODV的路由建立过程

2.2 AODV的路由发现过程

(1)源节点首先发起路由请求过程,在发起的路由请求报文中携带以下信息字段:

        <源地址,源序列号,广播ID,目的地址,目的序列号,跳数计数器>

其中,序列对<源地址,广播ID>惟一标识一个路由请求。

(2)中间节点在收到路由请求报文时,比较本节点和目的节点的地址,

①如果自己是目的节点,则回复路由响应报文。否则转步骤②;

②根据<源地址,广播ID>判断是否收到过该请求消息,如果收到过则丢弃该请求消息,否则转向步骤③;

③记录相应的消息,以形成反向路由。记录的消息包括:上游节点地址(即向本节点发送路由请求消息的节点)、目的地址、源地址、广播ID、反向路由超时时长和源序列号等。同时跳数计数器加1,向邻节点转发该路由请求报文。

2.3 与DSDV协议的对比

与DSDV协议相似,在AODV协议中也引入了序列号,包括源序列号和目的序列号。不同的是在AODV中,这些序列号都是单调递增的,它们主要用于避免过时的缓冲路由对系统带来负面的影响。其中源序列号用在路由请求广播中保证反向路由的有效性,而目的序列号则用来维护前向路由的有效性。

3 路由表管理及维护

AODV路由协议中的路由表主要包括目的节点、下一跳节点、距离目的节点的跳数、目的节点序列号、本路由的活跃邻节点和本路由的超期时长等信息。

同时,在AODV协议中,节点还存储一些与路由表相关的信息。以下几点是其中比较重要的。

(1)路由请求超时定时器:和反向路由相关的定时器,当定时器超期后,节点仍未收到路由协议报文时,节点则认为该反向路由无效,删除该反向路由。

(2)活跃超时时长:和前向路由相关的时长。当超过活跃时长时间后,节点仍无数据利用该路由发送时,删除该路由(即使该路由可能有效)。

3.1 更新路由表的策略

当节点使用路由表中的某项路由发送数据时,该路由的超期时长更新为当前时间+活跃超时时长。当节点收到一条新的路由时,选择新路由和本节点存储路由中目的节点序列号大的路由为有效路由。当序列号一样时,则选择跳数小的路由。

节点的移动可能会造成现有路由的失效,根据节点的不同,AODV路由协议的处理方法不同:

(1)当由于源节点移动而造成路由失效时,此时只能由源节点再次发起路由请求过程。

(2)当由于中间节点或目的节点的移动而造成路由失效时,检测到路由断连的节点主动向其上游节点发送路由响应报文,该报文中将至目的节点的跳数设置为∞,同时将目的节点的序列号加1,。这样,上游节点在收到该路由响应报文时,会即使更新本地相关路由。

4 AODV协议的特点

4.1 优点

从前面介绍的DSDV协议和DSR协议来看,AODV协议综合了两者的特点。

(1)与基于表驱动方式的DSDV协议相比,AODV协议采用了按需路由的方式,即网络中的节点不需要实时维护整个网络的拓扑信息,而只是在发送报文且没有达到目的节点的路由时,才发起路由请求过程。

(2)与DSR协议相比,在AODV协议中,由于通往目的节点路径中的节点建立和维护路由表,数据报文头部不再需要携带完整路径,减少了数据报文头部路由信息对信道的占用,提高了系统效率。因此,协议的带宽利用率高,能够及时对网络拓扑结构变化作出响应,同时也避免了路由环路现象的发生。

4.2 缺点

但是在AODV协议中也存在一些问题。

(1)AODV协议仅适用于双向传输信道的网络环境。由于在路由请求消息的广播过程中建立了反向路由,供路由响应报文寻路,因此网络要满足双向传输信道的要求;

(2)路由表中仅维护一条到指定目的节点的路由,而在DSR协议中,源节点可以维护多条到目的节点的路由。如果节点间存在多条路由,当某条路由失效时,源节点可以选择其他的路由而不需要重新发起路由发现过程,这在网络拓扑结构变化频繁的环境中尤其重要。

(3)由于AODV协议采用了超时删除路由的机制,因此及时路由未失效,在超过时限后也将被删除。

Ad hoc网络路由协议概述4——按需路由协议(2)AODV协议 (Ad-hoc on-demand distance vector algorithm protocol)相关推荐

  1. Ad hoc网络路由协议概述3——按需路由协议(1)DSR协议(Dynamic source routing protocol)

    目录 1 DSR协议简介 2 路由发现 2.1 路由发现过程 2.2 几种情况 3 路由维护 3.1 点到点证实机制 3.2 端到端证实机制 4 路由缓冲技术优化策略 5 DSR协议的优缺点 5.1 ...

  2. Ad hoc网络路由协议概述2——表驱动路由协议(1)DSDV协议(Destination-sequenced distance vector protocol)

    目录 1 DSDV协议的先导协议: DV协议的困境 2 解决DV协议计数到无穷的困境 2.1 毒性反转 (Poisoned reverse) 2.2 增加序列号 3 DSDV协议 3.1 基本流程 3 ...

  3. Ad Hoc网络的概述

    这篇博客主要介绍三大网络:移动自组网,无线Mesh网络以及无线传感器网络 1.移动自组网(Ad Hoc):.移动自组网是一种随建即连的网络,是一群移动节点的集合, 在没有任何预先部署的固定基础设施的情 ...

  4. Ad hoc网络路由协议概述1——分类

    目录 1. 传统Internet网络路由协议 1.1 距离矢量路由协议(Distance Vector) 1.2 链路状态路由协议(Link State) 1.3 在Ad hoc网络中的不适用性 1. ...

  5. Ad Hoc网络技术浅析

    Ad Hoc Network Technology 摘 要:Ad Hoc网络是随着无线通信技术的快速发展而出现的一种新型网络.本文详细介绍了Ad Hoc网络的概念.特点.应用需求.与其他移动通信系统的 ...

  6. 移动Ad hoc网络研究

    引言 随着人们对摆脱有线网络束缚.随时随地可以进行自由通信的渴望,近几年来无线网络通信得到了迅速的发展.人们可以通过配有无线接口的便携计算机或个人数字助理来实现移动中的通信.目前的移动通信大多需要有线 ...

  7. Ad Hoc网络学习

    学习内容:学习Ad Hoc网络技术前两章内容,对Ad Hoc网络技术及其体系结构初步认识. 个人小结: Ad Hoc网络独立组网.无中心.自组织以及多跳路由等特点赋予其传统网络所无法比拟的优势.比如: ...

  8. 3.2 Ad Hoc 网络路由协议

    Ad Hoc 网络路由协议 Ad Hoc 网络路由面临的问题 在设计Ad Hoc 网络路由协议时,我们首先要明确可能面临的问题: (1)路由信息不易获得:定期交换路由信息的开销大.网络资源有限,并且必 ...

  9. Ad Hoc网络路由协议

    个人小结: 由于Ad Hoc网络节点的频繁移动以及网络拓朴结构的频繁变化,传统的蜂窝移动通信系统的路由选择方式对Ad Hoc网络并不适用.为解决Ad Hoc网络的路由选择问题,需要设计更为合适的路由协 ...

最新文章

  1. OpenCV学习之六: 使用方向梯度直方图估计图像旋转角度
  2. mongodb视频教程云盘,深度讲解Java多线程开发—电子表项目实现
  3. Shiro总是将我重定向到login.jsp
  4. Boost:双图bimap与lambda表达式的测试程序
  5. Flutter中Widget 、Element、RenderObject角色深入分析
  6. pvr转png工具_图片如何转换格式?最好用的3个转换工具都在这了
  7. 在DataGrid和GridView中对表头设定背景图片
  8. HTML的基本知识(三)
  9. TortoiseGit--小乌龟git项目中的使用简介
  10. Syncthing - 远程文件实时同步(P2P)工具简介、安装及使用
  11. App Store商店图片文案填写说明
  12. 星巴克急了,瑞幸就稳了?
  13. 生理卫生课的经典对白
  14. Double计算精度丢失(金融入门知识点)
  15. 【软件建模与UML】(持续更新)
  16. php 内网唤醒,手机微信实现网络唤醒电脑(WOL),远程开机,WakeOnLan
  17. 【乐器常识】声音之美
  18. Code for VeLO 2: Training Versatile Learned Optimizers by Scaling Up
  19. 《Linux7构搭建DISCUZ论坛 》
  20. 视频剪辑技巧,教你视频画面用图片进行遮挡的方法

热门文章

  1. idea运行报路径不存在
  2. 美信GMSL技术让汽车数据传输更为高效
  3. c语言求婚代码大全,程序员表白教程,这些代码用过的都成功了!
  4. QIIME2-傻瓜式安装
  5. c语言常见表达式汇总(赋值表达式,条件表达式,关系表达式,算数表达式......)
  6. 求助,电脑关闭游戏后自动弹出dptf
  7. TCP MSS PMTU PING
  8. 关于ES5和ES6的简介
  9. [USACO2.1] 健康的荷斯坦奶牛 dfs
  10. 18在protel DXP中PCB图中给电路板绘制边框、安装孔的方法介绍成都电路板设计