1.1.4 按需距离矢量路由协议AODV
AODV(Ad hoc On-demand Distance Vector Routing)由DSDV发展而来,不同的是AODV为反应式路由协议[3]。源节点首先广播一个携带目的节点信息的路由分组(RREQ),其邻居节点依次向周围节点广播此路由分组,广播RREQ前会建立此节点到源节点的路由,直到路由分组到达目的节点或者一个中间节点,这个节点包含目的节点的路由信息,就不再广播RREQ。此过程中,会建立一个从源节点到目的节点的反向路由,也就是从目的节点到源节点的路由。然后该节点将沿着反向路由发回一个RREP,RREP到达源节点后路由发现过程结束。为避免路由循环,每一个路由分组中都包括一个sequence ID(SID)作为唯一标识,如果一个节点收到一个SID比它当前保留的SID小的数据包,表明该数据包是过时的,它将不予处理,而是简单的丢弃。发现多条路由时,源节点会选择一条SID大、跳数少的最优路由。
源节点移动后会重新启动路由发现过程,中间节点移动,那么其邻居节点会发现链路失效并向上游节点发送链路失效消息(RERR),一直传到源节点,然后源节点重新发起路由发现,或者也可以由发现链路失效的节点自己发起路由发现,此称为自修复。只要路由是活动的,路由表就要一直维护下去。活动的意思是有数据包从源节点发往目的节点,如果链路上不再有数据包传递,一段时间之后,链路就会过期,最终路由信息将会从中间节点的路由表中删除[7]。
1.1.5 机会路由
针对无线信道的广播、时变、丢失特性和确定性路由策略的不足,麻省理工学院的Biswas[15]等人于 2004年率先提出了机会路由(也称作机会转发)的概念[4,5].机会路由通过多个潜在中继节点竞争、自主智能判断进行下一跳节点选择,充分利用信道广播特性,提高吞吐量和传输可靠性。研究机会路由算法来提升无线多跳网络的性能,已成为当前无线自组织网络与传感器网络组网协议研究中的一个重要方向。