LoRaWAN网络服务器算法--下行蹊径选择算法对迸纂仿真(下)
2024/02/05
浏览量:4972
??LoRaWAN 网络是典型的星型架构网络,但单节点的广播数据也能够同时被多个网关收到并同时上报NS服务器,对于此新闻有下行需要时,必要通过NS服务器的下行网关选择算法,选择相宜网关进行下行。
??一个健全的算法必要思考到分歧网关的网络延时、空口负载、信号质量及工作队列选择最优网关进行下行,确保下行新闻靠得住投递并使整体网络负载趋于平衡。
??永利yl23455的下行选择算法也随着NS服务器的更新在不休迭代升级,我们在上篇中对两种常用的算法进行分析描述,今天将持续通过仿真一路看看各类算法在现实利用场景中是若何阐发的。
??一、现有算法缺点及优化算法提出
??算法一:信号质量优先法
??算法简化流程图如下:
??缺点:
??1、该算法仅以信号质量作为选择尺度,NS能够选择出距离节点最近的网关,但是没有思考网关网络延长,若选择的网关为4G网关,网络颠簸严沉,将产生大量下行丢包。
??2、未思考网关上行负载情况,遇到第三章中所述的负载问题时也无法进行有效处置。
??算法二:影响因子得分加权法
??算法简化流程图如下:
??缺点:
??1、遇到第三章中所述的高低行链路不合等问题时,算法可能由于其他网关的网络延长及通讯负载较好而选择极远处网关下行而导致丢包
??2、经过仿照测试,网关网络延长大于450ms时,任何下行数据都将失败,使用权沉来思考该成分并不合理。
??3、其实该算法的几个权沉值都很难决断,任何的影响因子出现较为极限的情况时,城市使最终得分有失合理性,很难通过权沉值平衡各类极限情况。
??算法三:永利yl23455Unicore 3.0 下行选择算法
??思考到现有算法的弊端并结合现实利用场景可能遇到的问题,现提出一种新的解决法子,由于主题部门涉及公司机密,故单一介绍其特点如下:
??1、充分进行网络负载平衡,保障网络内所有网关的下行负载处于健康状态,面对个别网关网络拥挤的情况时能够很好地将工作均分给左近网关。
??2、网关的下行充分思考下行质量,所有的下行保障处于安全边际内,不会由于个别成分的影响而选择信号质量在安全边际表的网关下行。保障高低行链路双向可达。
??3、能够处置较大的网络颠簸,保障选择的下行网关不受网络颠簸影响。
??二、算法仿真
??基于Python实现上述三种算法并对现实利用场景进行图形化建模,用以分析算法的执行情况。成效图如下:
??该算法仿真基于以下道理与如果:
??1、在1*1的正交坐标轴内以随机天生或手动指定的方式确定网关数量及坐标地位。网关地位以红色三角进行标注
??2、网关属性蕴含上行负载及下行负载,每个网关的上行负载可手动设定,且为静态值,与下行负载没有任何直接联系。网关的下行负载在仿真算法中动态推算,网关每处置一个下行要求城市累加下行负载
??3、坐标轴1*1区域内以均匀散布的方式随机天生指定数量的坐标点,代表有下行需要的节点,坐标点与网关的距离代表上行信息的信号质量,距离越远信号质量越差。
??4、无需思考现实环境中构筑、树林等遮挡物带来的信号衰减,由于坐标轴内的点地位即代表上行信号质量,并非现实中的节点地位。
??5、每随机天生一个下行需重点,运行指定的下行选择算法,选择出最优网关下行后,该网关下行负载增长,并将该点以该网关对应的色彩标注在坐标轴内。
??6、不思考下行速度及TOA功夫,将网关的高低行通讯占空比抽象为单一的数值,每有一个下行要求,网关下行负载+0.1。
??7、假定下行点数量即为周期功夫内整个系统必要处置的下行要求,且网关推算动态负载的周期与这个周期功夫一致。因而增长点数量即为仿照更高频次的下行要求,且代码中动态负载只需累加即可无需循环推算。
??8、为简化算法仿照过程,假定周期功夫都所有网关的网络延时均正常。
??9、处置完所有点的下行要求后坐标轴内会显示大量着色节点,代表单元功夫内对应网关处置的下行要求。
??10、代码运行实现后各网关的高低行负载情况会以表格的大局打印出来。
??三、算法对比
??手动设定网关地位及各网关上行负载,仿照出通例及各类特殊情况,对比三种分歧算法的阐发,验证算法成效。
??算法一:信号质量优先法
??算法二:影响因子得分加权法
??算法三:永利yl23455Unicore 3.0 下行选择算法
??【通例情况】
??前提:下行要求数量1000 / 网关数量3 / 随机散布 / 网关上行轻负载
??了局:算法一无负载平衡;算法二负载平衡成效差;算法三负载平衡成效佳
??了局分析:
??算法一和算法二在网关散布均匀且个网关上行负载无显著差距的情况下,出现的成效类似,根基是依照就近准则择优,图上能够看到显著的三条显著的分界限,即网关两两连线的中垂线。最终的网关高低行负载都不是很均匀。
??算法三中无显著天堑线,距离网关较近处的节点选择下行时较为矫捷,点位散布存在交叉区域,而较偏远的点则选择了信号质量最好的网关下行。网络负载也做到了很梦想的平衡。
??【部门网关地位较偏远】
??前提:下行要求数量1000 / 网关数量3 / 随机散布 / 网关上行轻负载 / 网关散布不均匀
??了局:算法一无负载平衡;算法二负载平衡成效差、部门下行可能丢包;算法三下行质量靠得住、负载平衡成效尚可。
??了局分析:
??该情况下拔取的三个网关地位中,两个的地位较偏远。由于下行行要求散点是均匀散布,难以依照设想轻易调整散布密度,因而扭转网关地位其实相当于扭转下行要求的散布情况。该情况下下行要求重要集中于中央网关的附件,下面看下三种算法对于这种情况的处置。
??算法一由于仅判断信号质量,鄙人行要求散布不均匀时,下行负载严沉不平衡。
??算法二能够把稳带红圈标注处的情况,由于网关负载在加权求和的算法中占有肯定权沉,因而当右上角网关负载较幼时,得分较高。红圈内的绿色点即是因而原因被分配给了该网关来下行。然而这么偏远地位的节点自身信号质量已经很差,还要选择非最近网关下行,很可能遇到第三章所述的高低行不合等问题,而导致下行失败。且由最终的下行负载情况能够看出负载散布也是差距悬殊。若调整网关负载所占的得分权沉,调大则高低行不合等问题越发显著,调幼则负载散布越发不均匀。存在肯定的局限性。
??算法三中右上角网关自身左近的下行要求较少,但是算法给他分配了大量中央网关左近的下行要求,最大水平地援手整个系统分管下行负载。并且该网关仅响应自己安全边际内的下行,对于偏远点全数交由最近的网关处置以保险通讯成功率。最终的下行负载情况固然没有做到齐全平衡,但是优于前两者。
??【某网关负载较沉情况】
??前提:下行要求数量1000 / 网关数量5 / 随机散布 / 单网关上行沉负载 / 网关散布较均匀
??了局:算法一无负载平衡;算法二负载平衡成效差;算法三负载平衡成效好。
??了局分析:
??这是一种较为常见的情况,区域内散布了五台网关,最右侧网关覆盖的节点较多,且上行负载较大,设定值为17.5%,重要关注各算法对这个高负载网关的处置。
??算法一仅判断信号质量,不判断负载情况,最右处网关在已有17.5%的上行负载时依然必要处置26.9%的下行负载。
??算法二在上一个仿照场景中露出出负载权沉过大的缺点,本场景中未扭转负载权沉D芄豢闯鱿喽杂谒惴ㄒ,算法二由于网关负载在加权求和的算法中占有肯定权沉,已经起到了肯定成效,将网关4的下行负载降低了一些,但是在该场景下,相对于上个场景反而显得负载的权沉太幼,无法处置好大负载网关。
??算法三中能够看到左侧的网关都向右分管了更多的下行工作,最终网关4的下行负载仅为12.9%,相迸宗其他算法有显著提升。
??四、总结
??综合以上仿真了局——
??算法一由于为思考网关负载情况,在负载平衡的处置上齐全由节点与网关的地位决定,固然能保障从信号最优网关下行,但是弊端在于无法做到负载平衡。
??算法二在将思考到了各类影响成分,设定分歧的权沉进行加权求和,看似能够通过权沉因子的调节矫捷地调整算法以应对各类情况,但是在仿真的仿照情况二和情况三中,使用一样的权沉,却露出出相反方向的问题,也就是说权沉因子无论若何调节都无法同时处置这两种情况。并且在负载平衡方面算法二也仅是相对于算法一有一点点提升。
??算法三在上述仿照情况及其余大量随机测试中没有露出出问题,算法从设计角度已经保障了远处节点能够得到最佳网关的响应,并且在负载平衡方面拿出近处节点矫捷分配,最大水平的做到负载平衡。