Este é um módulo NS-3 que pode ser usado para executar simulações de uma rede de Lorawan.
Links rápidos:
Visão geral do modelo de simulação
Documentação da API
Para executar simulações usando este módulo, você primeiro precisa instalar o NS-3. Se você estiver no Ubuntu/Debian/Mint, poderá instalar os pacotes mínimos necessários da seguinte forma:
sudo apt install g++ python3 cmake ninja-build git ccacheCaso contrário, consulte diretamente a seção Pré-requisitos da página de instalação NS-3.
Nota: Embora o pacote
ccachenão seja estritamente necessário, ele é altamente recomendado. Pode aumentar significativamente os tempos de compilação futuros, economizando dezenas de minutos, embora com um custo de espaço em disco mais alto de aproximadamente 5 GB. Esse uso de espaço em disco pode ser reduzido através de uma configuração.
Então, você precisa:
src nela ePara instalar este módulo com a última confirmação, você pode usar o seguinte comando all-in-one:
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 Nota : Ao alternar para qualquer confirmação anterior, incluindo a versão mais recente , sempre verifique também o NS-3 para a versão correta (arquivo de NS3-VERSION na raiz deste repositório) suportado nesse momento.
O NS-3 adota uma filosofia orientada ao desenvolvimento. Antes de executar qualquer coisa, você precisará compilar o código NS-3. Você tem duas opções:
Compilar o NS-3 como um todo: disponibilize todos os módulos de simulação, configurando e construindo o seguinte (verifique se você está na pasta ns-3-dev !):
./ns3 configure --enable-tests --enable-examples &&
./ns3 buildConcentre -se exclusivamente no módulo Lorawan: para acelerar o processo de compilação, pois pode levar mais de 30/40 minutos em hardware lento, altere a configuração da seguinte forma:
./ns3 clean &&
./ns3 configure --enable-tests --enable-examples --enable-modules lorawan &&
./ns3 buildA primeira linha garante que você comece a partir de um estado de construção limpo.
Por fim, verifique se os testes funcionam sem problemas com:
./test.pySe o roteiro relatar que todos os testes passaram, você estará pronto para ir.
Se alguns testes falharem ou falharem, considere apresentar um problema.
O módulo inclui os seguintes exemplos:
simple-network-examplecomplete-network-examplenetwork-server-exampleadr-examplealoha-throughputframe-counter-updatelora-energy-model-exampleparallel-reception-example Os exemplos podem ser executados através do comando ./ns3 run example-name (consulte ./ns3 run --help para obter mais opções).
doc/lorawan.rst ).Outras fontes úteis de documentação:
Para discutir e obter ajuda sobre como usar este módulo, você pode abrir um problema aqui.
Consulte as diretrizes de contribuição para obter informações sobre como contribuir para este módulo.
Este software é licenciado nos termos do GNU GPLV2 (a mesma licença usada pelo NS-3). Consulte o arquivo License.md para obter mais detalhes.
A versão inicial deste código foi desenvolvida como parte da tese de mestrado na Universidade de Padova, sob a supervisão do Prof. Lorenzo Vangelista, Michele Zorzi e com a ajuda de Marco Centenaro.
Publicações: