车载通信与导航(四):GPSR协议

取自https://blog.****.net/qq_30611601/article/details/79155353
GPSR通过应用邻居节点和终点的地理位置,允许每个节点对全局路由分配做出决策。当一个节点以贪婪算法转发一个包时,它有比自己更接近终点的邻居节点,这个节点就选择距离终点最近的邻居节点来转发该包。当没有这种邻居节点时,数据包进入周围模式,将包向前传送给网络平面字图的临近节点,直到传到距离终点较近的节点,将包转发的方式为贪婪算法模式。
该协议避免了在节点中建立、维护、存储路由表,只依赖直接邻节点进行路由选择,几乎是一个无状态的协议;且使用接近于最短欧氏距离的路由,数据传输时延小;并能保证只要网络连通性不被破坏,一定能够发现可达路由.
车载通信与导航(四):GPSR协议
协议源文件
gpsr_packet.h : 定义不同类型的包
gpsr_neighbor.h : 定义该gpsr实现所使用的每个节点的邻居列表
gpsr_neighbor.cc : 邻居列表类的实现
gpsr.h : 该实现的GPSR路由代理函数的定义
gpsr.cc : GPSR路由代理的实现
gpsr_sinklist.h: 用于多个接收器的场景的定义
gpsr_sinklist.cc: 实现gpsr_sinklist.h