这是一个NS-3模块,可用于执行Lorawan网络的模拟。
快速链接:
仿真模型概述
API文档
要使用此模块运行模拟,您首先需要安装NS-3。如果您在Ubuntu/Debian/Mint上,则可以安装最小所需的包装,如下所示:
sudo apt install g++ python3 cmake ninja-build git ccache否则,请直接参考NS-3安装页面的先决条件部分。
注意:虽然不需要严格要求
ccache软件包,但强烈建议使用。它可以通过节省数十分钟来显着提高未来的汇编时间,尽管磁盘空间成本较高,约为5GB。最终可以通过设置减少此磁盘空间的使用情况。
然后,您需要:
src目录中,并且要在最新提交中安装此模块,您可以使用以下多合一命令:
git clone https://gitlab.com/nsnam/ns-3-dev.git && cd ns-3-dev &&
git clone https://github.com/signetlabdei/lorawan src/lorawan &&
tag= $( < src/lorawan/NS3-VERSION ) && tag= ${tag # release } && git checkout $tag -b $tag注意:切换到任何先前的提交(包括最新版本)时,请务必还要在当时支持的正确版本(该存储库的根部的NS3-VERSION文件)查看NS-3。
NS-3采用了面向发展的哲学。在运行任何内容之前,您需要编译NS-3代码。您有两个选择:
整体编译NS-3:通过以下配置和构建来使所有模拟模块可用(确保您在ns-3-dev文件夹中!):
./ns3 configure --enable-tests --enable-examples &&
./ns3 build专门关注Lorawan模块:加快汇编过程,因为它可能需要超过30/40分钟的慢速硬件,请更改配置如下:
./ns3 clean &&
./ns3 configure --enable-tests --enable-examples --enable-modules lorawan &&
./ns3 build第一行可确保您从干净的构建状态开始。
最后,确保测试顺利进行:
./test.py如果脚本报告所有测试通过了,那么您就可以了。
如果某些测试失败或崩溃,请考虑提交问题。
该模块包括以下示例:
simple-network-examplecomplete-network-examplenetwork-server-exampleadr-examplealoha-throughputframe-counter-updatelora-energy-model-exampleparallel-reception-example示例可以通过./ns3 run example-name命令运行(有关更多选项,请参阅./ns3 run --help )。
doc/lorawan.rst上的源文件)。其他有用的文档来源:
要讨论并获得有关如何使用此模块的帮助,您可以在此处打开问题。
有关如何为该模块贡献的信息,请参阅贡献指南。
该软件是根据GNU GPLV2(NS-3使用的相同许可)获得许可的。有关更多详细信息,请参见许可证文件。
在洛伦佐·范格利斯塔(Lorenzo Vangelista)教授,米歇尔·佐尔兹(Michele Zorzi)和Marco Centenaro的帮助下,在帕多瓦大学(Padova University of Padova)的硕士论文中开发了此代码的初始版本。
出版物: