无线传感网学习笔记(8)—— DSDV路由协议 和 AODV路由协议


一、DSDV路由协议

1、概念:一种目的节点序列机理矢量的路由算法。(Destination-Sequenced Distance Vector

2、组成:该路由为先应式路由,采用分布式Bellan-Ford算法。
 ① 先应式路由也称表驱动路由,在实际需要前已预先建立好路径,通过查表找到下一跳邻居,路径可以立即使用。但是路由的表规模可能会很大,表中的过时信息也会导致路由错误。

 ② 分布式Bellman-Ford算法是一种距离矢量算法,每个节点都拥有一张路由表,表中的信息包括目的节点、下一跳节点以及该节点到目的节点的代价距离,并且路由表会在节点间进行交换。
在这里插入图片描述
 距离矢量算法应用于WSN并不合适,因为当存在断链时会出现环路问题,导致路由表中的代价距离至无穷大,使得资源被占用消耗。

3、基本特征
 ① 每个节点都拥有到达所有目的节点的路由信息。
 ② 路由信息会周期性更新,即使没有网络拓扑变化,也存在流量的开销控制。
 ③ 会维持一些从来不使用的路由。

4、优点
 ① 保持了距离矢量DV算法的简单性。
 ② 保证了无环路(引入了序列号机制)。
 ③ 对拓扑变化反应迅速,通过立即广播进行更新。

(补充:目的序列号在每次广播时仅使用偶数进行增加,只有当一个节点不可达时,使用奇数增加,并将路由度量值设置为无穷大。当更新信息和节点自身信息进行对比确认路由时,将选择更大序列号的路由,并且把序列号为奇数的路由视作断链)


二、AODV路由协议

1、概念:一种无线自组网按需距离矢量路由。(Ad hoc On-demand Distant Vector

2、组成:该路由为反应式路由,采用按需协议。
 ① 反应式路由按需进行路由发现和路由维护,源节点发起路由的发现过程,在找到至少一条路由后或已检验过所有潜在路由后结束发现过程。
 ② 新建立的路由会被维护到发生断链或不再被源节点需要,然后该路由被删除。
 ③ 每个路由入口项都有生存时间。
 ④ 路由的控制消息包括路由请求消息(RREQ)和路由应答消息(RREP)。

3、协议过程

① 路由发现:如果源节点无到目的节点的有效路由,它将发生路由发现过程。

  • Step1:源节点创建路由请求消息RREQ,消息包含源节点地址、当前序列号、目的节点地址、目的序列号以及广播ID。

  • Step2:源节点广播RREQ,并设置计时器,等待应答消息RREP。

  • Step3:当某个节点收到RREQ时,它会通过广播ID和源节点IP检查是否已经接收过(每个节点都会为收到的RREQ维持记录:源节点IP地址和广播ID)。

  • Step4:节点在自身路由表中为源节点设置反向路由入口项,信息包括源节点IP和序列号、到源节点的跳数和发送RREQ的邻居IP。(为了寻找建立路由的路径)
    注意:如果路由入口项在特定的生存时间内未被使用,该路由信息将被删除)

  • Step5:满足以下条件,中间节点将响应RREQ,并传播RREP给源节点。否则该节点将继续根据路由表转发RREQ。

    • 节点的路由表中必须拥有到达目的节点的有效入口(未过期)
    • 与目的节点关联的序列号必须大于等于RREQ中携带的目的节点序列号
  • Step6:当其它中间节点收到RREP时,将在其路由表中设置一个到达目的节点的转发路径入口项,然后转发RREP,直到源节点。

  • Step7:当源节点第一次收到RREP时,它开始传输数据。
    注意:如果RREQ丢失,源节点重新广播RREQ,重起路由发现过程)
    在这里插入图片描述

② 路由维护:只要源节点需要,发现的路由将一直被维护。

  • 如果源节点发生移动,将重起路由发现过程。
  • 如果目的节点或中间节点发送移动,将创建路由差错消息RERR,它的前驱节点设置其路由标记无效,并重起路由发现过程。
  • 邻居节点周期性交换HEELO消息用来监视链路状态,当路由中有一条链路断开时,靠近源节点的中间节点检测到并向它发送RERR,然后重起路由发现过程。
  • 节点可以重启,并创建路由环路,在接收到任何节点的RREQ时,该节点更新其序列号。

在这里插入图片描述

发布了49 篇原创文章 · 获赞 11 · 访问量 3043
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章