最近看了几篇论文,对于入门,很是不错,现在把它总结起来。
路由协议执行网络拓扑结构描述、路由选择和数据转发的功能,影响整个网络的性能和存活时间。物联网属于低功耗有损网络(LLN),“有损”就是链路不稳定、不可靠。LLN和传统 Internet 网络 ,以及AdHoc网络相比,在实际应用方面有很多不同之处,这也导致了它们的路由算法也不尽相同。
Internet 网络中有两种常见路由协议,一种是基于距离矢量,一种基于链路状态。在基于距离矢量的路由协议中,每个路由器都维护一个距离矢量表,表中记录着从本节点到其它节点的最佳路由信息;当需要更新该距离矢量表时,则通过与邻居路由器交换数据。而基于链路状态的,所有路由器通过发布链路状态来维护一个完整的网络拓扑结构,并按照该拓扑结构计算最短路由。
Adhoc 网络中的节点处于不断移动,整个网络中路由信息需要不断刷新,根据路由发现的驱动模式不同,分为 表驱动路由协议 和 按需路由协议。表驱动路由和和传统IP网络的路由协议相似,差别在于路由表的数量和更新方式。在 按需路由协议 中,只有在需要一条路径时才开始建立,比如发送数据时,当没有到达目标节点的路由时,就开始启动路由发现机制。Zigbee网络层使用的AODV 就属于Adhoc。