[Zigbee 科普系列】 - 7 路由机制

Zigbee 子设备开发


Post Reply
huanghuan
Posts: 202

下面介绍下route request的作用和设备发送route request的时机

many to one route request

many to one route request 多用于zigbee 集中式网络,由协调器广播 router转播的方式建立router路由表和网关的源路由表,优点是可以统一刷新网络中router的路由表老化时间

协调器以合理的间隔发送many to one route request可以减少各个节点发起端对端 route request的概率,提高网络稳定性

Image

涂鸦网关会定时发送 many to one route request,网络中的router在数据转发过程中,会计算自己到达网关的path cost并把自己的地址加到数据包中

Image

当网络中的router转发many to one route request后,当router有数据需要上报给网关且网关不是该router的邻居时,设备会选择接收到的many to one route requestpath cost最小的一条路径作为自己的上报路径,将其更新到自己的路由表中,并发送route record,将路由表中的下一跳作为该条route recordmac destination

下一跳会根据自己的路由表或邻居表选择一条路径转发该数据,通过多跳传递直到数据达到目的地址

unicast route request

当前一个设备需要发送给目标设备数据,且目标设备不在发起端设备的邻居表和有效路由表中,则发起端设备会发起端对端的route request,以尝试建立到达目标设备的数据发送链路,优点是可以快速的建立到达目标设备的路由表,灵活的建立端对端通讯的路径

Image

当发送端设备发送route request后,网络中的router收到该包后会检查目标设备是否是自己,或是它的邻居,或是存在它有效路由表中。如果均不在,则加上上一跳到自己的path cost并转发route request

Image

当网络中router收到该包后发现目标设备是自己,或是它的邻居,或是存在它有效路由表中。则router需要选择收到的所有route requestpath cost最小的一条路径,通过该路径发送 route reply

如果回复route reply的设备并不是目标设备,而是通过邻居表或路由表确认的,则route reply中需要加上回复设备到目标设备的path cost

Image

发送设备收到route reply后,会建立路由表,并通过该路由表指定的路径发送数据

Post Reply