LoRaWAN 网络是典型的星型架构网络,但单节点的广播数据也可以同时被多个网关收到并同时上报NS服务器,对于此消息有下行需求时,需要通过NS服务器的下行网关选择算法,选择合适网关进行下行。
一个健全的算法需要考虑到不同网关的网络延时、空口负载、信号质量及任务队列选择最优网关进行下行,确保下行消息可靠送达并使整体网络负载趋于均衡。
利尔达的下行选择算法也随着NS服务器的更新在不断迭代升级,我们在上篇中对两种常用的算法进行分析描述,今天将继续通过仿真一起看看各种算法在实际应用场景中是如何表现的。
一、现有算法缺陷及优化算法提出
算法一:信号质量优先法
算法简化流程图如下:
缺陷:
1、该算法仅以信号质量作为选择标准,NS可以选择出距离节点最近的网关,但是没有考虑网关网络延迟,若选择的网关为4G网关,网络波动严重,将产生大量下行丢包。
2、未考虑网关上行负载情况,遇到第三章中所述的负载问题时也无法进行有效处理。
算法二:影响因子得分加权法
算法简化流程图如下:
缺陷:
1、遇到第三章中所述的上下行链路不对等问题时,算法可能因为其他网关的网络延迟及通信负载较好而选择极远处网关下行而导致丢包
2、经过模拟测试,网关网络延迟大于450ms时,任何下行数据都将失败,使用权重来考虑该因素并不合理。
3、其实该算法的几个权重值都很难定夺,任何的影响因子出现较为极