AODV路由协议
aodv路由协议工作过程
aodv路由协议工作过程AODV(Ad hoc On-Demand Distance Vector)是一种用于无线自组织网络(ad hoc network)的路由协议。
它是一种基于距离向量的路由算法,可以在网络中动态地选择最佳路径来传输数据包。
本文将详细介绍AODV路由协议的工作过程。
AODV路由协议的工作过程可以分为四个阶段:路由发现阶段、路由维护阶段、路由错误处理阶段和路由释放阶段。
在路由发现阶段,当一个节点需要发送数据包到目标节点时,它首先会向周围节点发送路由请求(Route Request)消息。
这个消息包含了目标节点的地址和源节点的地址。
当一个节点收到路由请求消息时,它会检查自己的路由表,如果没有关于目标节点的路由信息,它会将该消息广播给它的邻居节点。
这样,路由请求消息会不断地传播,直到达到目标节点或者遇到已知路由的节点。
在路由维护阶段,当目标节点或者有关的中间节点收到路由请求消息时,它们会生成路由回复(Route Reply)消息,并将它发送回源节点。
路由回复消息中包含了从目标节点到源节点的最佳路径信息。
当源节点收到路由回复消息后,它将更新自己的路由表,并开始向目标节点发送数据包。
在路由错误处理阶段,如果某个节点无法到达目标节点或者中间节点,它会发送路由错误(Route Error)消息。
这个消息会被广播给所有与这个节点有关的节点。
当一个节点收到路由错误消息后,它会将与错误相关的路由从自己的路由表中删除,并向其他节点发送路由错误消息。
这样,整个网络中的节点都会知道该路径已经不可用。
在路由释放阶段,当一个节点不再需要与目标节点通信时,它可以发送路由释放(Route Release)消息。
这个消息会被广播给与这个节点有关的所有节点,以通知它们可以删除与目标节点相关的路由信息。
AODV路由协议的工作过程充分利用了网络中节点之间的相互通信来动态地选择最佳路径。
它能够在网络拓扑发生变化时及时更新路由信息,保证数据包能够成功传输。
AODV简介
2 AODV路由发现
正向路由的建立:RREQ分组最终将到达一个节点,该节点 可能是目的节点,或者这个节点由到达目的节点的路由。 如果这个中间节点有到达目的的路由项,它就会比较路由 项里的目的序列号和RREQ分组里的目的序列号的大小来判 断自己已有的路由是否是比较新的。如果是就对收到的 RREQ分组做出响应,否,则更改RREQ中的目的节点序列号 至当前最大,跳数字段加1,然后继续广播。 在RREP转发回源节点的过程中,沿着这条路径上的每一个 节点都将建立到目的节点的正向路由,也就是记录下RREP 是从哪一个邻居节点来的地址以及记录下RREP中目的节点 的最新序列号。
链路断广播RRER:
4 AODV优点
使用序列号机制,避免路由环路 支持中间结点应答,减少了广播数 节点只存储需要的路由,减少了内存的要求和不必要的复 制。 时延较大,不支持单向信道。
2 AODV路由发现
AODV借鉴了DSDV中的列号的思想,每一个节点都维持了独立序列 号计数器,利用这种机制就能有效地防止路由环的形成。当源节点想 与另外一个节点通信,而它的路由表中又没有相应的路由信息时,源 节点通过向自己的邻居广播RREQ(Route Requests)分组来发起一 次路由发现过程。 反向路由的建立:当RREQ分组从源节点转发,沿途所经过的节点都 要自动建立到源节点的反向路由。节点通过记录收到的第一个RREQ 分组的邻居地址来建立反向路由。
AODV路由发现:
3 AODV路由维护
(1)与活动路由无关的节点移动,并不影响信源到信宿 的寻径。 (2)如果信源节点移动导致路由不可用,则由信源重新 发起路由发现过程。 (3)当信宿节点或活动路由的中间结点移动,导致链路 中断,则链路的"上游节点“主动发送一个RERR,该 RERR的信宿大于其所获取的信宿序列号,跳计数设为无 穷大,并广播到所有活动邻居。
Ad Hoc网络中接收功率辅助的AODV协议的开题报告
Ad Hoc网络中接收功率辅助的AODV协议的开题报告1. 研究背景和意义Ad Hoc网络是一个无线的、自我组织的网络,其中节点可以自己动手管理网络拓扑结构。
这种网络可以在很多场合中使用,比如紧急救援、军事行动和自组织传感器网络等。
在Ad Hoc网络中,路由协议非常重要。
AODV(Ad Hoc On-Demand Distance Vector Routing)是一种广泛使用的路由协议,在需要时通过从源节点到目标节点请求路由。
无线传输中的信号接收功率是决定节点间链路质量的关键因素。
随着时间的推移和移动信号传输中干扰和障碍物的变化,传输中的信号接收功率也会发生变化。
因此,如何使用接收功率信息来优化AODV的路由选择是当前研究的热点之一。
2. 研究内容本文的研究重点是在Ad Hoc网络中使用接收功率辅助的AODV协议。
具体来说,将通过以下几个方面进行研究:(1)分析Ad Hoc网络中路由协议的优缺点,介绍AODV协议的基本原理,并研究其在实际应用中的局限性。
(2)研究如何利用接收功率信息来改进AODV协议的路由选择机制,提高网络的性能和稳定性。
具体来说,将探讨如何使用接收功率信息选择最佳的转发节点和优化数据包传输路径,以最大程度地减少数据包丢失和延迟。
(3)设计和实现具有接收功率辅助功能的AODV协议,并进行实验验证。
通过对比实验数据,评估新协议与传统AODV协议之间的性能差异,以证明所提出方案的优越性。
3. 预期结果通过研究,本文预计能够得出以下的结果:(1)对Ad Hoc网络中的AODV协议进行全面的分析和评估,通过对比实验验证,确定AODV协议的优缺点和局限性。
(2)提出一种基于接收功率辅助的AODV协议的路由选择机制,并进行实验验证,证明所提出方案的优越性,提高Ad Hoc网络的性能和稳定性。
(3)在实现方面,本文预计将设计一种能够在实际应用中使用的新型AODV协议,并将其加入到现有的网络中进行实验测试。
AdHoc网络中AODV路由协议的实现及数据业务处理中期报告
AdHoc网络中AODV路由协议的实现及数据业务处理中期报告中期报告:AdHoc网络中AODV路由协议的实现及数据业务处理1. 项目背景与意义随着移动终端设备的普及和无线通信技术的发展,AdHoc网络成为了一种越来越重要的通信方式。
AdHoc网络是一种无需基础设施的网络,由移动终端设备自组成。
相比传统有线网络和基础设施无线网络,AdHoc 网络能够更加灵活地应对复杂环境,并能够更加迅速地部署实施。
在AdHoc网络中,路由协议是起着至关重要的作用。
AdHoc网络由于网络拓扑变化频繁,节点移动、丢包等问题更加严重,因此泛洪等传统路由协议在AdHoc网络中显得不太适用。
AODV(Ad-Hoc On Demand Distance Vector Routing Protocol)是一种基于距离向量的路由协议,在AdHoc网络中得到了广泛应用。
AODV路由协议是一种基于需求的路由协议,当源节点需要向目标节点发送数据时,它会向周边节点发出寻找路由的请求,然后根据返回的路由信息建立路由并发送数据。
AODV路由协议具有快速、稳定、低开销等优点,因此被广泛应用于AdHoc网络中。
本项目旨在通过对AODV路由协议的实现,探索AdHoc网络中路由协议的应用。
本项目将实现AODV路由协议,并在此基础上实现AdHoc网络中常见的数据业务处理,包括数据的发送、接收、存储等。
通过本项目的实现,将加深对AdHoc网络的理解,为AdHoc网络的应用和发展做出贡献。
2. 工作进展本项目已完成了部分工作,包括:2.1 AODV路由协议的实现本项目利用C++语言,通过对AODV协议的研究和分析,实现了AODV路由协议。
该实现包括AODV的路由发现、路由维护、路由更新等功能,能够满足AdHoc网络中节点之间通信的路由需求。
在实现中,我们充分考虑了节点移动、丢包等问题,并进行了有效地处理和优化。
2.2 数据业务处理的设计与实现在AODV路由协议的基础上,本项目还开展了数据业务处理的设计和实现。
AODV协议详解
AODV协议详解1 AODV 报文格式AODV 有三种基本的协议报文类型:RREQ 报文、RREP 报文和RRER 报文。
1.1 RREQ 报文a. 对RREQ 的处理接收到RREQ 的结点做如下处理:(1)创建一个表项,先不分配有效序列号,用于记录反向路径。
(2)如果在“路由发现定时”内已收到一个具有相同标识的RREQ 报文,则抛弃该报文,不做任何处理;否则,对该表项进行更新如下:I.下一跳结点=广播RREQ 的邻居。
II.跳数=RREQ 报文的“跳计数”字段值。
III.设置表项的“过时计时器”。
(3)如果满足以下条件,则结点产生“路由回答报文”RREP,并发送到信源;否则更新RREQ 报文并广播更新后的RREQ 报文。
I.该结点是信宿。
II.结点的路由表中有到信宿的活动表项,且表项的信宿序列号大于RREQ中的信宿序列号。
(4)更新RREQ 报文并广播更新后的RREQ 报文I.信宿序列号=本结点收到的信宿相关的最大序列号。
II.跳计数加1。
1.2 RREP 报文(1)信宿结点产生RREP执行如下操作:I.如果收到相应的RREQ 的信宿序列号与信宿维护的当前序列号相等,则信宿将自己维护的序列号加1,否则不变。
II.跳计数=0。
III.定时器值。
(2)中间结点产生的RREP执行如下操作:I.本结点获取的该信宿的最大序列号。
II.跳计数=本结点到信宿的跳数(查相应表项即可得到)。
III.更新本结点维护的“前向路由表项”的下一跳和“反向路由表项”的前一跳b. 对RREP 的处理结点对接收到的RREP 作如下处理。
(1)如果没有与RREP 报文中的信宿相匹配的表项,则先创建一个“前向路表”空表项。
(2)否则,满足如下条件对已有表项进行更新。
条件:I.现有表项的信宿序列号小于RREP 报文中的序列号。
II.现有的表项没有激活。
III.信宿序列号相同,但RREP 报文的“跳计数”值小于表项相对应的值;通过更新或创建,产生一个新的前向路由。
路由协议-aodv
#3节点仿真Ad hoc AODV的例子# 环境设定set val(chan) Channel/WirelessChannel ;#信道类型set val(prop) Propagation/TwoRayGround ;#无线传输模块类型set val(netif) Phy/WirelessPhy ;#网络接口类型set val(mac) Mac/802_11 ;# MAC类型set val(ifq) Queue/DropTail/PriQueue ;#接口队列类型set val(ll) LL ;#链路层类型set val(ant) Antenna/OmniAntenna ;#天线类型set val(ifqlen) 50 ;#IFQ中最大报文数set val(nn) 3 ;# 移动节点数目set val(rp) AODV ;# 路由协议set val(x) 500 ;# 场景长xset val(y) 400 ;# 场景宽yset val(stop) 150 ;# 仿真结束时间set ns [new Simulator]#创建一个模拟对象set tracefd [open aodv.tr w]#打开一个trace file记录数据包的传送过程$ns trace-all $tracefdset windowVsTime2 [open win.tr w]set namtrace[open aodv.nam w] #创建.nam文件记录nam的trace数据$ns namtrace-all-wireless $namtrace $val(x) $val(y)set topo[new Topography]#建立一个Topography对象在拓扑边界范围内运动$topoload_flatgrid $val(x) $val(y)#设定场景的长宽尺寸#创建nn移动节点[$ val(nn)] 并将它们附加到信道。
无线传感器网络路由协议
无线传感器网络路由协议无线传感器网络(Wireless Sensor Network,WSN)是由大量低成本、低功耗的传感器节点组成的网络系统,用于感知和收集环境信息。
无线传感器网络的路由协议起着关键作用,它决定了数据在网络中的传输路径和方式,影响着整个网络的性能、能耗以及生存时间。
1. LEACH(Low-Energy Adaptive Clustering Hierarchy)是一种经典的层次化路由协议。
它将网络中的节点划分为若干个簇(Cluster),每个簇有一个簇首节点(Cluster Head)。
簇首节点负责收集和聚合簇内节点的数据,并将聚合后的数据传输给基站节点,从而减少了网络中节点之间的通信量,节省了能耗。
2. AODV(Ad Hoc On-Demand Distance Vector)是一种平面路由协议,适用于无线传感器网络中节点数量较少且网络拓扑较稳定的情况。
AODV协议通过维护路由表来选择最短路径,当节点需要发送数据时,它会向周围节点发起路由请求,并根据收到的响应建立起路由路径。
3. GPSR(Greedy Perimeter Stateless Routing)是一种基于地理位置的路由协议。
它通过利用节点的地理位置信息来进行路由选择,具有低能耗和高效的特点。
GPSR协议将整个网络划分为若干个区域,每个节点知道自己的位置以及周围节点的位置,当需要发送数据时,节点会选择最近的邻居节点来进行转发,直到达到目的节点。
除了以上几种常见的路由协议,还有很多其他的无线传感器网络路由协议,如HEED(Hybrid Energy-Efficient Distributed clustering)、PEGASIS(Power-Efficient Gathering in Sensor Information Systems)等,它们各自具备不同的优势和适用场景。
总之,无线传感器网络的路由协议在保证数据传输可靠性和网络能耗方面起着重要的作用。
基于AODV的安全路由协议研究的开题报告
基于AODV的安全路由协议研究的开题报告一、选题背景和意义移动自组织网络(MANETs)由一组自主移动节点组成,可以随时随地在没有固定网络基础设施的情况下进行通信。
它在无线电频段、战场、灾难等场合的通信中具有广泛的应用。
由于MANETs中的节点数量较大、节点资源受限、节点位置不稳定、网络质量不稳定等因素,使得MANETs 的安全性得到了广泛关注。
路由是MANETs中至关重要的任务,在很大程度上决定了网络的可靠性和效率。
目前,动态源路由协议(DSR)和自适应距离向量协议(AODV)是MANETs中最广泛使用的两种路由协议之一。
然而,由于它们的基于无限制的广播策略,会导致“黑洞攻击”、“虫洞攻击”、“篡改攻击”、“拒绝服务攻击”等安全问题,并且易受恶意攻击者攻击。
因此,设计高效、安全的路由协议是MANETs中的一项重要任务。
本研究将基于AODV协议,研究如何设计一种安全路由协议,以保证MANETs网络的安全性和可靠性,有利于推动其在各种场景中的广泛应用。
二、研究目标1、对基于AODV协议的前沿研究进行综述,分析其优缺点;2、对AODV协议进行安全性分析,阐述可能存在的攻击方式和安全风险;3、提出基于多因素安全要素的路由协议,并进行实验验证,评估其在网络安全性和性能方面的表现;4、将所研究的协议与已有的路由协议进行比较和评估,证明其在网络安全性和性能方面的优越性。
三、研究内容和方法本研究的具体内容如下:1、综述基于AODV的安全路由协议研究现状,比较其优缺点,分析存在的问题和未来发展趋势;2、分析AODV的安全性,确定可能出现的攻击类型、攻击手段和安全风险;3、基于AODV协议,设计一种高效的安全路由协议,采用多因素安全要素(如身份认证、加密技术、防火墙、访问控制等)进行安全控制,保证协议的安全性和性能;4、使用NS-3模拟器或其他相关工具进行研究渗透测试和模拟实验,在不同的实验场景下评估所设计的路由协议的性能和安全性;5、在测试得出的数据基础上,与已有的路由协议进行比较,并进一步评估所设计的协议的性能和优越性。
AODV协议详解
AODV协议详解AODV(Ad-hoc On-Demand Distance Vector)是一种用于自组织无线网络的路由协议。
它是基于距离矢量路由算法的一种改进,并在无线传感器网络(WSN)和移动自组网(MANET)中广泛应用。
AODV的主要目标是在网络中实现有效的路由,同时减少网络资源的消耗。
AODV协议通过以下方式工作。
当一个节点需要向目标节点发送数据时,它首先广播一个路由请求(RREQ)消息以查询目标节点的路由信息。
接收到这个消息的节点会更新路由表,并向源节点发送一个路由回复(RREP)消息,该消息包含到目标节点的路径信息。
在此过程中,源节点可以选择最佳的路径,并将其添加到路由表中。
当源节点收到RREP消息后,它就可以开始向目标节点发送数据了。
在途中,如果网络拓扑发生变化(例如节点移动或节点失效),AODV协议会更新路由表以反映这些变化。
在节点间的通信过程中,AODV协议使用一种称为序列号的技术来区分新的路由信息和旧的路由信息,并避免出现循环路径。
每次路由更新时,序列号都会递增,并在路由表中进行记录。
另外,AODV协议还支持源路由。
源路由是指由源节点指定的完整路由路径,数据包将按照此路径传输。
这意味着源节点可以控制数据包的传输路径,可以避免路径和路由发现的开销,并减少网络资源的消耗。
但是,源路由在网络中可能会面临节点失效、链路中断和网络拓扑变化等问题,因此需要进行有效的处理。
在AODV协议中,节点还可以进行路由维护。
路由维护是指节点在路由表中更新、维护和删除路由信息以反映网络状态的变化。
AODV协议使用一些机制来处理链路中断、节点失效和网络分割等问题。
当节点发现路由不可用时,它会向源节点发送一个路由错误(RERR)消息来通知源节点,并更新自身的路由表。
总结起来,AODV协议是一种用于自组织无线网络的强大路由协议。
它具有快速路由发现、低资源消耗和多路径支持等特点,可以在无线传感器网络和移动自组网等环境中提供高效的数据传输。
AODV协议操作过程
(3)如果满足如下条件,则结点产生“路由回答 “ 分组”RREP,并发送到信源;否则,转入到(4) ” 进行处理; A:该结点就是信宿; B:结点的路由表中有到信宿的活动表项,且表 项的序列号大于RREQ中的信宿序列号(新); (4)更新RREQ分组,并广播更新后的RREQ分组 A:信宿序列号=本结点收到的该信宿相关的最 大序列号; B:跳计数加1;
2.3对RREP的处理
结点对接收到的RREP分组作如下处理: (1)如果没有与RREP 分组中的信源相匹配的表项,则先创建一 个“前向路由表”空表项; “ ” (2)否则,满足如下条件下对已有表项进行更新: A:现有表项的信宿序列号<RREP分组中的信宿序列号; B: 现有的表项没有激活; C:信宿序列号相同,但RREP分组的“跳计数”值小于表项相对应 “ ” 的值,通过更新或创建,产生一个新的前向路径; (3)下一跳(forward pointer)= 广播RREP的邻居结点; (4)信宿序列号=RREP中的信宿序列号; (5)跳计数加1;
2.1 RREP的传播
RREP的传播 1)产生RREP的条件如上所述,RREP中的内容包括:跳计 数、信宿序列号、信宿地址、信源地址、生存时间等。结点通 过前面建立的反向路由反馈给源结点点,并且是以单播方式发 送; 2)转发RREP的中间结点f会更新路由表,记录转发路由的 下游结点D、跳数、生存时间、目的序列号等内容,并根据先前 记录的反向路由将RREP报文转发给上游结点e,直至源结点s; 3)源结点s收到RREP报文后,就获得了到目的结点D的路 由
2.2 RREP分组各字段设置如下
(1)信宿结点产生的RREP A:RREQ的信宿序列号=信宿维护的当前序列号? 是则信宿将自己维护的序列号加1 否则不变; B:RREP中的信宿序列号=信宿维护的序列号; C:跳计数=0; D:设置定时器值; (2)中间结点产生的RREP A:本结点所获取的该信宿的最大序列号; B:跳计数=本结点到信宿的跳数(查相应表项可得到); C:更新本结点维护的“前向路由表项”的下一跳和“反向路由表 “ ” “ 项”的前一跳; ”
Aodv路由协议报告
Aodv路由协议报告本周主要工作是分析aodv协议代码的具体实现过程,根据代码总结出aodv中比较重要的知识一.Aodv数据结构路由表项{rt_dst:目的节点ip地址rt_seqno:目的节点序列号,目的节点有效序列号为偶数rt_hops:跳数rt_req_cnt:发rreq的次数,不得大于rreq_retries次rt_req_timeout:路由请求超时时间,只有超过此时间才能再次发出rreq的aodv消息.rt_req_last_ttl:上次请求生命期,即发送rreq时ip头中ttl的值rt_disc_latency[]:每次请求的延时rt_last_hop_count:上次使用的路由跳数rt_nexthop:下一跳ip地址rt_expire:路由寿命rt_flag:路由状态标志(RT_UP,RT_DOWN,RT_IN_PAIR)rt_prelist:路由前驱列表hist_index:本次发送的rreq次数}邻居列表{Expire:超时时间Id:邻居ip地址}广播列表{expire:过期时间id:广播iddst:广播源节点ip地址}二.节点定时器btimer:广播定时器,用来调用id_purge()函数,顺序查看广播表中的每个条目,比较过期时间是否大于当前时间,如果大于,则调用id_delete()函数删除此广播htimer:hello定时器,用来调用sendhello()函数,发送hello消息ntimer:邻居列表定时器,用来调用nb_purge()函数,顺序查看邻居表中的每个条目,如果过期时间超过当前时间,则认为此邻居不可达,删除此邻居条目rtimer:路由缓存定时器,用来调用rt_purge()函数,顺序查看每条路由的是否过期,如果没过期且有效,则看是否缓存队列中是否有要发送到目的节点的分组,如果有则按路由转发,并将路由过期时间重置。
如果路由过期且有分组待转发,则发送rreq消息。
Ad Hoc战术网络路由协议研究——AODV协议的设计与仿真的开题报告
Ad Hoc战术网络路由协议研究——AODV协议的设计与仿真的开题报告一、选题背景与意义随着无线网络技术的迅速发展,灵活性高、覆盖范围广的Ad Hoc网络已经成为研究热点。
然而,在无线Ad Hoc网络中,由于节点的动态性和不稳定性,网络拓扑变化频繁,网络效率和数据传输质量都受到很大挑战。
在这种情况下,合适的路由协议可以大大提高网络的联通性和吞吐量,保证数据传输的稳定性和可靠性。
AODV (Ad Hoc On-demand Distance Vector Routing Protocol)是一种经典的基于距离向量的Ad Hoc网络路由协议,该协议的核心思想是按需建立路由,通过链路状态查询和路由发现,及时获取网络拓扑信息。
在Ad Hoc网络中应用广泛,并且与其他路由协议相比,具有更低的网络负载和更快的数据传输速度。
研究和实现AODV协议,并对其在不同场景下的性能进行评估和优化,对于提高Ad Hoc网络性能和应用效果具有重要意义。
二、研究内容和方法1. AODV协议设计细节:设计并实现AODV协议的核心算法和关键功能。
包括路由表的建立、维护和更新;链路状态查询和路由发现;路由信息的传递和更新等。
在理论上掌握AODV的优化方法,提高路由协议的效率和稳定性。
2. 网络仿真平台搭建:实现Ad Hoc网络仿真模拟环境的构建和模拟,包括拓扑结构的搭建、节点分布规律、节点移动模型和网络数据流的模拟等。
选用Ns-3(Network simulator 3)平台进行网络仿真,通过该平台评估和分析AODV协议在不同网络场景下的性能和优化策略。
3. 仿真性能评估:设计仿真实验并收集网络性能数据,对不同参数和场景下的AODV协议进行性能评估和分析。
包括路由发现时间、路由重构时间、网络吞吐量、平均端到端延迟等指标的分析。
基于仿真结果,分析AODV协议的性能优化策略和改进思路。
三、预期成果和意义本研究预计可以设计实现AODV路由协议,并基于Ns-3平台搭建Ad Hoc网络仿真环境,进行性能数据测试和分析。
AODV
产生或收到RERR后路由更新
目的节点序列号 - i和ii两种情况下更新路由表中的目的节点序列号(+1), 并将更新后的序列号包含在RERR中 - 第iii种情况下只需复制接收的RERR目的节点序列号到路 由表中或者需要转发的RERR中 将指向该RERR中目的节点的路由入口设为无效 生存时间字段更新为(当前时间+DELETE_PERIOD) 生存时间超时以后才可以彻底删除路由入口
RREP路由应答帧的传播 A A
A
A B
4、路由发现和维护
路由发现过程
广播RREQ路由请求帧 中间节点更新各自到源节点的路由表 如果收到RREQ的节点不是目的节点,并且没有到达目的节 RREQ 点的更新的有效路由,则转发该RREQ 中间节点维护指向路由发起节点(源节点)的反向路由 目的节点或存在到目的节点有效路由的中间节点产生RREP 路由应答帧 RREP通过之前建立的反向节点单播至源节点 源节点收到RREP应答帧,至此源节点可以向目的节点发送 数据包
按需距离矢量路由协议 AODV AODV简介
内容
1、AODV 概述 2、RREQ路由请求帧 3、RREP路由应答帧 4、路由发现和维护 5、路由错误控制 6、拥塞控制
1、AODV 概述
AODV是为快速移动自组网(MANET)设计的数据包路由协议 较适用于有大量节点的无线自主网络 按需路由协议,只有当到达某目的节点的路由不存在时才会激 活该协议发起路由请求 使用节点序列号机制避免环路产生 传输层使用的是UDP协议 网络各节点使用IP地址统一编址 每一个节点维护一个包含到达目的节点路由信息的路由表
路由信息新旧判断
AODV依赖网络中每个节点维护自身的序列号 源节点在广播路由请求帧RREQ之前要先更新自己的序列号, 即将序列号加1 目的节点在产生RREP应答帧之前也要将自身的序列号加1 每个节点在对各自的序列号加1的时候是将其视为无符号数进行 的 通过比较来自目的节点路由控制帧中的序列号SN1和本节点维 护的目的节点的序列号SN2就可以确定本链路的新旧程度,进 而做相应处理。如果SN2-SN1<0(有符号数相减),说明路由 表中维护的信息已过时,应将路由信息更新至路由控制帧中最 新的路由信息
AODV协议概述
AODV协议概述AODV是由Nokia研究中⼼的Charles E.Perkins和加利福尼亚⼤学Santa Barbara的Elizabeth M.Belding-Roryer以及Cincinnati⼤学Samir R.Das等共同开发,已经被 IETF MANET⼯作组于2003年7⽉正式公布为⾃组⽹路由协议的RFc标准。
AODV实质上就是DSR和DSDV的综合,它借⽤了DSR中路由发现和路由维护的基础程序,及DSDV的逐跳(Hop-by-HoP)路由、⽬的节点序列号和路由维护阶段的周期更新机制,以DSDV为基础,结合DSR中的按需路由思想并加以改进。
AODV在每个中间节点隐式保存了路由请求和应答的结果,并利⽤扩展环搜索的办法来限制搜索发现过的⽬的节点的范围。
AODV⽀持组播功能,⽀持Qos,⽽且AODV中可以使⽤IP地址,实现同Internet连接,但是不⽀持单向信道。
和DSDV保存完整的路由表不同的是,AODV通过建⽴基于按需路由来减少路由⼴播的次数,这是AODV对DSDV的重要改进。
和DSR相⽐,AODV的好处在于源路由并不需要包括在每⼀个数据分组中,这样会使路由协议的开销有所降低。
AODV是⼀个纯粹的按需路由系统,那些不在路径内的节点不保存路由信息,也不参与路由表的交换。
AODv协议可以实现在移动终端间动态的、⾃发的路由,使移动终端很快获得通向所需⽬的的路由,同时⼜不⽤维护当前没有使⽤的路由信息,并且还能很快对断链的拓扑变化做出反应。
AODV的操作是⽆环路的,在避免了通常Bellman-ford算法的⽆穷计数问题的同时,还提供了很快的收敛速度。
AODv的路由表中每个项都使⽤了⽬的序列号(Destination Sequence Number)。
⽬的序列号是⽬的节点创建,并在发给发起节点的路由信息中使⽤的。
使⽤⽬的序列号可以避免环路的发⽣。
AODV使⽤3种消息作为控制信息 :RouteRequest(RREQ),RouteReply(RREP)和 RouteError(RERR)。
aodv路由协议原理
aodv路由协议原理宝子!今天咱们来唠唠这个AODV路由协议的原理呀。
AODV呢,全称是Ad - hoc On - Demand Distance Vector,这名字听起来是不是有点高大上?其实呀,它就像是在一个自由组合的网络世界里的一个小管家呢。
咱先来说说这个Ad - hoc网络的特点。
这就像是一群小伙伴临时凑在一起玩游戏,没有什么预先设定好的规则或者固定的老大来指挥交通。
每个小伙伴(也就是网络中的节点)都有可能随时加入或者离开这个游戏(网络)。
这时候AODV就闪亮登场啦。
在这个网络里,当一个节点想要和另一个节点通信的时候,就像是你想给在这个临时小群体里的某个小伙伴传个小纸条。
如果这两个节点之间没有现成的路径,AODV 就开始忙活起来啦。
AODV的核心思想是按需路由哦。
啥叫按需呢?就是说不提前把所有可能的路径都找好存起来,那样多浪费精力呀,就像你不会提前把到每个小伙伴可能位置的路都先探索一遍一样。
只有当有通信需求的时候,才开始找路。
比如说节点A想要和节点C聊天(通信),A发现自己不知道怎么能到C那里,就会发出一个路由请求(RREQ)。
这个RREQ就像一个小广播,大声喊着:“我要找C,有没有人知道路呀?”这个广播会在网络里扩散开来,周围的节点收到这个广播后,就会看看自己是不是C或者自己知不知道到C的路。
每个收到RREQ的节点都会在自己的小本本上记录下这个请求是从哪个节点来的,就像你在心里记住是谁告诉你这个消息的一样。
如果一个节点已经收到过这个RREQ 了,就不会再转发啦,避免消息在网络里乱转,就像你不会一直重复听同一个消息一样。
当这个RREQ到达节点C或者到达一个知道到C的路的节点的时候,就会沿着之前记录的反向路径发回一个路由回复(RREP)。
这个RREP就像一个小向导,告诉A:“我知道路啦,跟着我走就行。
”这个反向路径就是通过之前每个节点记录的来源信息建立起来的。
而且哦,AODV还会定期检查这些路径是不是还能用呢。
AODV协议操作过程
对RREP的处理 按照上述过程,任何转发RREP的结点, 都记录了到信 宿的下一跳,当RREP到达 信源时,结点地址匹配,不再转发RREP, 信源到信宿的前向路径已建立起来了。信 源可以沿着这条前向路径进行分组传输。
3.对链路断的修复
AODV链路状态检测机制 邻居节点周期性的互相广播“Hello”信息,用来保持联系。 “ 若在一段时间内,没有收到“Hello”信息,则认为 “ 链路断。 AODV链路断的信息通告 当节点X、Y之间的链路断,数据分组无法从源节点S传到 目的节点D,节点X产生RERR(Route error)分组向源 节点报告此情况。RERR分组通过广播方式传送,维护路 由表的节点收到RERR分组后,更新路由表(将X、Y间 的链路设为无效),并转发RERR分组。
2.2 RREP分组各字段设置如下
(1)信宿结点产生的RREP A:RREQ的信宿序列号=信宿维护的当前序列号? 是则信宿将自己维护的序列号加1 否则不变; B:RREP中的信宿序列号=信宿维护的序列号; C:跳计数=0; D:设置定时器值; (2)中间结点产生的RREP A:本结点所获取的该信宿的最大序列号; B:跳计数=本结点到信宿的跳数(查相应表项可得到); C:更新本结点维护的“前向路由表项”的下一跳和“反向路由表 “ ” “ 项”的前一跳; ”
2.1 RREP的传播
RREP的传播 1)产生RREP的条件如上所述,RREP中的内容包括:跳计 数、信宿序列号、信宿地址、信源地址、生存时间等。结点通 过前面建立的反向路由反馈给源结点点,并且是以单播方式发 送; 2)转发RREP的中间结点f会更新路由表,记录转发路由的 下游结点D、跳数、生存时间、目的序列号等内容,并根据先前 记录的反向路由将RREP报文转发给上游结点e,直至源结点s; 3)源结点s收到RREP报文后,就获得了到目的结点D的路 由
AODV协议详解【版本1】
AODV协议详解【版本1】AODV路由协议详解移动Ad Hoc⽹络概述“Ad Hoc”⼀词起源于拉丁语,可以翻译为“for this purpose only”,意译为“特别的,临时的⽹络”。
移动Ad Hoc⽹络(Mobile Adhoc Network,MANET)专指⽤于移动⽆线设备的Ad Hoc⽹络,⽤于其它⽤途的Ad Hoc⽹络有⽆线⽹状⽹络(wireless mesh network,WMN)和⽆线传感器⽹络(wirelss sensors networks,WSN)等。
移动Ad Hoc⽹络中的节点⼀般是可以通过⽆线⽅式与其它设备进⾏数据接收和转发的移动设备,⽐如⼿机和⼿提笔记本。
每⼀个节点既是接收数据的主机,也是负责转发数据的路由器。
因为节点的路由器⾝份,移动Ad Hoc允许在没有⽆线访问接⼊点(wireless access point)的情况下节点之间的数据双向传输,⽹络中的数据可能需要经过节点的多跳传输才能到达⽬的节点。
移动Ad Hoc⽹络允许节点动态地进⼊和离开⽹络,⽹络拓扑动态的变化所可能造成的路由失效,可以通过修复路由或重新发现新路由等办法解决。
总结⼀下,移动Ad Hoc⽹络具有以下特点:(1)⾃组织,⽆需⽆线访问接⼊点即可通信,每个节点都充当路由器。
(2)⾃适应,允许⽹络拓扑的动态变化,可以进⾏路由的重新发现与修正。
(3)易部署,⽆需部署⽆线访问接⼊点即可实现节点之间的通信。
(4)⽹络控制频繁,由于⽹络拓扑可能经常变化,移动Ad Hoc⽹络需要⼤量的⽹络控制信息来维护路由。
(5)安全性与可靠性待加强,由于⽹络通过⽆线的⽅式传输,对⽐有线⽅式可靠性较差,且容易受到攻击与窃听。
移动Ad Hoc⽹络中节点需要相互信任,因为数据可能会经过中间节点转发到⽬的节点,这也需要⼀定的机制检验节点的安全性。
由于移动Ad Hoc⽹络的以上特点,传统的路由协议如RIP(Routing Information Protocol,路由信息协议)和OSPF(Open Shortest Path First,开放式最短路径优先协议)⽆法很好的在移动Ad Hoc⽹络上运⾏。
aodv路由协议
aodv路由协议AODV路由协议。
AODV(Ad hoc On-Demand Distance Vector)路由协议是一种无线自组网中常用的路由协议,它是一种基于距离向量的路由协议,同时也是一种按需路由协议。
AODV路由协议的提出,很大程度上解决了无线自组网中节点移动频繁、网络拓扑结构变化快速的问题,因此在实际应用中得到了广泛的应用。
AODV路由协议的核心思想是按需建立路由,即当源节点需要发送数据时,会先检查路由表中是否存在到目标节点的有效路由,如果不存在,则会向周围节点发送路由请求,直到找到到目标节点的有效路由为止。
这种按需建立路由的方式,使得AODV路由协议具有较高的路由效率和较低的路由开销。
AODV路由协议的工作原理如下,当源节点需要发送数据时,会首先检查自己的路由表中是否存在到目标节点的有效路由,如果存在,则直接发送数据;如果不存在,则会向周围节点发送路由请求。
周围节点收到路由请求后,会根据自己的路由表信息做出相应的决策,如果知道到目标节点的路由,则向源节点发送路由回复;如果不知道,则会继续向周围节点发送路由请求。
当源节点收到到目标节点的路由回复后,就可以建立起到目标节点的有效路由,从而发送数据。
AODV路由协议的特点有以下几个方面:1. 按需路由,AODV路由协议是一种按需路由协议,只有当源节点需要发送数据时才会建立路由,这样可以减少路由表的维护开销,提高路由效率。
2. 路由维护,AODV路由协议采用路由维护机制,当网络拓扑结构发生变化时,会及时更新路由信息,保证路由的有效性和稳定性。
3. 广播优化,AODV路由协议中的路由请求和路由回复采用了广播的方式,但通过序列号的方式避免了广播风暴的问题,从而减少了网络中的冗余信息。
4. 支持多播,AODV路由协议支持多播传输,可以有效地支持多播数据的传输。
总之,AODV路由协议作为一种按需路由协议,具有较高的路由效率和较低的路由开销,在无线自组网中得到了广泛的应用。
实验5--无线自组织网络仿真(一)-AODV协议
西安邮电大学(计算机学院)课内实验报告实验名称:无线自组织网络仿真(一)-AODV协议(2学时)专业:网络工程班级:姓名:学号:指导教师:日期:2017年5月27日一.实验目的理解AODV路由协议的工作过程。
二.实验环境VirtualBox + Ubuntu + NS2三.实验内容1.AODV基本原理AODV 是应用最广泛的按需路由协议之一。
它是 DSDV 算法的改进,但中间节点不需事先维护路由。
AODV 中节点移动可能会导致原来路由不可用,它采用逐跳路由方式转发分组,并利用广播请求查找路由。
整个通信过程对称的,路由可逆。
其基本工作过程如下:①源节点希望向某个目的节点发送数据,但当前路由表中并无该节点的路由信息时,启动路由发现过程;②源节点向其邻居广播一个 RREQ(路由请求)消息,进行路由探测;③每个收到RREQ消息的节点向其邻居扩散该消息,直至消息到达一个知晓目的节点路由的节点(中间节点或目的节点);同时建立反向路由;④该中间节点或目的节点向源节点发送一个 RREP(路由响应)消息,当RREP消息到达源节点时,建立起源节点到目的节点的路由。
2.仿真拓扑建立一个13个移动节点的Ad hoc网络,分别是节点 0~12。
其中,节点 8 是源节点,节点 2 是目标节点。
四.实验过程及分析1.阅读并解释仿真代码(AODV.tcl),描述仿真设置;创建14个移动终端节点定义代理的连接定义FTP是被TCP封装的,CBR是被\UDP封装的定义终端的属性2.运行仿真脚本;1)创建14个节点,节点间未交换路由信息,路由表尚未建立2)仿真到0.02s 时,节点8 开始向节点2 发送数据,注意,在发送数据前,节点8 需要通过RREQ/RREP 与节点2 建立路由8与2传输数据3)仿真进行到0.25s 时,节点4 开始向节点1 发送数据,同样的,节点4 需要通过RREQ/RREP 与节点1 建立路由。
4)在仿真过程(0.25~3s)中,两条传输的数据流会出现断断续续的情况,其反映的是TCP 的拥塞控制。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AODV Route Discovery
Time Out Time Out
: RREQ : RREP :Valid Route
Route Maintenance
• Periodic Hello message to detect continued presence of neighbours • When a link break is detected
AODV route table entry
• • • • • • • • • Destination IP Address Destination Sequence Number Vaild Destination Sequence Number flag (有效) Network Interface(网络接口模式。设成混搭模式) Hop Count (number of hops needed to reach destination) Next Hop List of Precursors Lifetime (expiration or deletion time of the route) Other State and routing flag (e.g. valid, invalid, repairable, being repaired)
– Node sends a RERR containing list of unreachable destinations due to link break – Receiving nodes forwards RERR to precursors of unreachable destinations
A destination node increments its own sequence number in two circumstances:
• before a node originates a route discovery • before a destination node originates a RREP in response to a RREQ(序号+1)
The route is only updated if the new sequence number
• higher than the destination sequence number in the route table • the sequence numbers are equal, but the hop count is smaller than the existing hop count in the routing table • the sequence number is unknown
• RREP (route reply) is unicast back
– From destination if necessary – From intermediate node if that node has a recent route
AODV Messages
• • • • Route request (RREQ) Route reply (RREP Route error (RERR) Hello messages
• Before sending or forwarding RERR
– Update destination sequence number in routing table entry – Invalidated entry
AODV Local Route Repair
Data packet be buffered
Ad-hoc Networking Example
• Suppose MH1 moves away from MH2 towards MH7, and has active sessions with MH3 and MH6. The following actions occur:
• MH2 notices that its link to MH1 is broken • MH2 checks its routing table, and finds that its link to MH1 was actively in use by MH3 and MH4. • MH2 unicasts an ∞-metric route update, with an incremented destination sequence number, to MH3 and MH4. MH3 may subsequently issue a new route request for MH1. • MH4 also notes that its route to MH1 was actively in use, and forwards the ∞-metric route update to MH6. • MH6 may subsequently issue a new route request for MH1.
Route Reply (RREP) Message Format
Route Error (RERR) Message Format
Link Breakage
• Nodes remember active routes • Next hop breaks -> neighbors using that route are notified • Notification is a RREP with: - metric = ∞ - dest_seqno = previous + 1 and is sent to each active neighbor
A node may change the sequence number in the routing table entry
• it is itself the destination node, and offers a new route to itself • it receives an AODV message with new information about the sequence number for a destination node • the path towards the destination node expires or breaks
B
A
K
D N
Inclusion
• AODV has the following features:
- Nodes store only the routes that are needed - Need for broadcast is minimized - Reduces memory requirements and needless duplications - Quick response to link breakage in active routes - Loop-free routes maintained by use of destination sequence numbers - Scalable to large populations of nte Discovery
• RREQ (route request) is broadcast
– Reverse path is set up along the way – RREQ message contains < bcast_id; dest_ip; dest_seqno;src_ip; src_seqno; hop_count >
Ad hoc On Demand Vector routing (AODV路由协议)
• AODV是基于距离矢量算法的路由协议。AODV只在路由表 中保持需要的路由,通常每一个目的节点保存一条路由,每 条路由信息都有生存期,若超时则该项路由信息无效。 AODV采用每个目的节点中保存的序列号来保持路由信息的 有效性,所有的路由分组都保存序列号。 • Route is set up only when requested • Nodes not along active paths not required to maintain route information • Avoids the Bellman-Ford “counting to infinity” problem • Link breakages notification only to affected nodes • Multicasting(多播路由算法) • Key Feature: Use of Destination sequence Number(目的 节点序列号) • Loop freedom(路由回环)
完整性
n • 它的路由表中通往目节点D的链路为 ( n , n ), j 为 n 的邻节点,可知链路 ( n , n )一定存在,即 i (n , n ) (n , n ) (n , n ) ( j ) 所以 n i 是节点 n j到目的节点D路由中记录的 下一跳节点。是由 i 的任意性,我们得到在 邻节不变的情况下,AODV通过记录到目的 节点的下一跳节点的IP地址,在Ad hoc网络 中可以形成一条完整的路由。
• Example
RREQ S E F C G H I K D N J
B
A
RREQ <S, 11, 1, D, 0, 1> [D, S, 1, time, 11] S E F C G H I Reverse pointer J
B
A
K
D N
Forward pointer RREP <S, D, 12, 3, lifetime> S E F C G H I timeout J