AODV(Ad hoc 按需距离矢量法)

文章目录

  • AODV协议
  • 一、路由发现
    • 1)RREQ分组
    • 2)对RREQ的处理
    • 3)RREP的产生
    • 4)对RREP的处理
  • 二、路由维护
  • 三、本地连接管理
  • 四、与DSR的比较

AODV协议

AODV协议是在DSDV协议基础上,结合类似DSR中的按需路由机制进行改进后提出的。不同之处在于AODV采用了逐条转发分组方式,而DSR是源路由方式。因此,AODV在每个中间结点隐式保存了路由请求和回答的结果,而DSR将结果显示保存在路由请求和路由回答分组中。此外,AODV的另一个显著特点是它加入了组播路由协议扩展,并支持QoS。它的缺点是不支持单向信道,原因是AODV协议基于双向通信的假设工作,路由回答分组直接沿着路由请求的反方向回到源结点。


一、路由发现

AODV与DSR的路由发现有所不同。

1)RREQ分组

结点在需要(没有到信宿的活动路由)时,向其邻居广播RREQ分组用于路由发现。
RREQ分组包括信源地址、信源序列号、广播ID、信宿地址、信宿序列号、跳计数。
(1)<信源地址 广播ID>惟一地标识了一个RREQ分组。
(2)信源序列号由信源结点维护,用于表示“到信源的反向路由”的新旧。
(3)信宿序列号表示信源可接受的“到信宿的前向路由”的新旧,等于过去接收到的有关信宿的最大序列号。可见,结点需要为每一个信宿维护一个信宿序列号。
(4)RREQ的跳计数=0。

2)对RREQ的处理

接收到RREQ的结点作如下处理。
(1)创建一个表项,先不分配有效序列号,用于记录反向路径。
(2)如果在“路由发现定时”内已收到一个具有相同标识的RREQ分组,则抛弃该分组,不作任何处理;否则,对该表项进行更新如下。
①信宿序列号=RREQ分组的信源序列号。
②下一条结点(precursor)=广播RREQ的邻居。
③跳数=RREQ分组的“跳计数”字段值。
④设置表项的“过时定时器”。
(3)如果满足如下条件,则结点产生“路由回答分组”RREP,并发送到信源;否则,则转入到(4)处理。
①该结点是信宿。
②结点的路由表中有到信宿的活动表项,且表项的信宿序列号大于RREQ中的信宿序列号(新)。
(4)更新RREQ分组,并广播更新后的RREQ分组。
①信宿序列号=本结点收到的该信宿相关的最大序列号。
②跳计数加1。

3)RREP的产生

产生RREP的条件如上所述。RREP分组各字段的设置如下。
(1)信宿结点产生的RREP。
①如果收到的相应RREQ的信宿序列号与信宿维护的当前序列号相等,则信宿将自己维护的序列号加1,否则不变。
②信宿序列号=信宿维护的序列号。
③跳计数=0。
④定时器值。
(2)中间结点产生的RREP。
①本结点所获取的该信宿的最大序列号。
②跳计数=本结点到信宿的跳数(查相应表项即可得到)。
③更新本结点维护的“前向路由表项”的下一跳和“反向路由表项”的前一跳。

4)对RREP的处理

结点对接收到的RREP作如下的处理。
(1)如果没有与RREP分组中的信宿相匹配的表项,则先创建一个“前向路表”空表项。
(2)否则,满足如下条件下对已有表项进行更新。
①现有表项的信宿序列号小于RREP分组中的信宿序列号。
②现有的表项没有激活。
③信宿序列号相同,但RREP分组的“跳计数”值小于表项相对应的值;通过更新或创建,产生一个新的前向路径。
④下一跳(forward pointer)=广播RREP的邻居结点。
⑤信宿序列号=RREP中的信宿序列号。
⑥跳计数加1。
(3)按照上述的过程,任何转发RREP的结点,都记录了到信宿的下一跳,当RREP到达信源时,结点地址匹配,不再转发RREP,信源到信宿的前向路径已建立起来了。信源可以沿着这条前向路径进行分组传输。

二、路由维护

(1)与活动路由无关的结点移动,并不影响信源到信宿的寻径。
(2)如果信源结点移动导致路由不可用,则由信源重新发起路由发现的过程。
(3)当信宿结点或活动路由的中间结点移动,导致链路中断,则链路的“上游结点”主动发送一个RREP,该RREP的信宿序列号大于其所获取的信宿序列号,跳计数的值设为∞,并传播到所有的活动邻居。该过程重复,直至所有的相关信源结点被通告到。信源结点如果需要,可重发起路由发现过程。

三、本地连接管理

结点通过两种方法进行邻居关系的管理。
(1)结点监听到结点的广播分组传输。
(2)广播Hello消息(仅向邻居广播,邻居结点不再广播出去)。

该处使用的url网络请求的数据。


四、与DSR的比较

DSR的分组格式是IP的扩展,而AODV是在DSR的基础上改进的。两者有很大的相似性。这里对DSR和AODV进行一下比较。
(1)DSR使用源路由技术进行路由发现,AODV通过“路由请求分组”洪泛进行路由发现,DSR在一次路由发现过程中结点获取的路由信息远远多于AODV。从这个角度看,AODV进行“路由发现”可能更频繁,带来的开销更大。
(2)DSR在一次路由发现过程中或获取到多个替代的路由,而AODV只响应一个路由,后续的在定时内的申请被丢弃。

移动计算技术--AODV(Ad hoc 按需距离矢量法)相关推荐

  1. 移动Ad Hoc下按需距离矢量路由协议AODV实验报告

    移动Ad Hoc下按需距离矢量路由协议AODV实验报告 一.实验内容 通过分析AODV路由帧类型及作用,并仿真网络建立.节点间通信.节点加入.节点退出,进一步分析各帧在其中工作流程,通过Python仿 ...

  2. 无线传感器网络路由协议AODV(Ad hoc on-demand distance vector routing)

    AODV(Ad hoc on-demand distance vector routing)是一种源驱动路由协议.当一个节点需要给网络中的其他节点传送信息时,如果没有到达目标节点的路由,则必须先以多播 ...

  3. Ad Hoc网络路由技术

    Ad Hoc网络路由技术 Routing Protocols of Wireless Ad Hoc Networks 作者:盛敏,田野,李建东 文章来源:中兴通讯技术 点击数:328 更新时间:200 ...

  4. 无线Ad Hoc网络的安全

    此文简单的介绍了Adhoc的工作原理,并且对于遇到的密钥管理安全,数据层安全的保护方法进行了介绍,最主要的是此文引用了很多好的相关Paper可以进行参考帮助进一步研究. 作 者:周亚建 杨义先 Abs ...

  5. 路由算法之距离矢量算法和链路状态算法

    我们之前说了,路由器需要对于每一对端端节点都要寻找出一个最佳的路径,比如说最小链路成本的路径.路由算法就是通过自己到相邻节点之间的信息来计算出自己到目的地址的最佳出境线路是哪一条,进而进行转发的一类算 ...

  6. 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 ...

  7. 3.2 Ad Hoc 网络路由协议

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

  8. Ad Hoc网络路由协议

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

  9. 移动Ad hoc网络研究

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

最新文章

  1. 区块链还能赚钱吗 区块链挖矿赚钱吗
  2. 不存在_MySQL数据存在就更新,不存在就添加
  3. c语言中菲薄拉次数列,在VB子函数如何写出菲薄拉起数列
  4. linux id 命令 显示用户id和组id信息
  5. Inna and Sequence
  6. 桌面计算机安全策略,设置组策略实现Windows桌面显示计算机信息
  7. Web的新图像格式WebP
  8. sql查询前50条_您必须知道的前50条SQL查询
  9. python数组横向合并_python中合并数组的方法
  10. java dump 工具_Java内存Dump文件查看和分析工具介绍
  11. 数据仓库(8)数仓事实表和维度表技术
  12. win10清理注册表的方法
  13. Android 图片剪切框架 uCrop 简单集成
  14. WIN10打印机显示服务器脱机,图文给您说win10网络打印机脱机的解决方法
  15. 壬戌立冬十朋十一日陪路文周朋携提祖同访后 [宋] 王洋
  16. 微信支付sdk部署在服务器,android接入微信支付SDK
  17. c语言 输出方阵。输入一个正整数 n(1≤n≤10),打印一个n行n列的方阵,输出如下方阵
  18. Intel 助力移动云百万 IOPS 云硬盘,打造极速云存储体验
  19. 数据库实验2 数据库安全性定义与检查
  20. android 系统中静音后使得音量减键不能解除静音

热门文章

  1. R语言JAVA对比_R语言统计分析应用与SAS、SPSS的比较
  2. Android签名机制-签名过程详解
  3. 标准bootstrap3 form表单美化
  4. 忘记帝国cms后台登录密码和认证码如何找回
  5. 云盘 同步盘介绍 同步工具介绍
  6. 国密SM2算法的只求理解不求甚解 (4/5)SM2算法加解密协议
  7. O_ALV CL_SALV_TABLE, ALV 类的用法
  8. STM8S103 105唯一序列码的读取
  9. 汉字乱码状态下的编码转换将导致的问题
  10. Vue整合Rtmp流实现无Flash播放[hls篇]