Code Monkey home page Code Monkey logo

srslte-emane's Introduction

srsLTE-emane

srsLTE-emane is a derivative project of srsLTE. In conjunction with the EMANE LTE Model, srsLTE-emane enables emulating an LTE network in EMANE on a laptop, desktop or other dedicated computer resources. Software Defined Radio (SDR) hardware is not required.

The srsLTE applications, srsenb, srsue, srsepc and srsmbms, are adapted to send RF traffic through the EMANE emulation environment. The EMANE version of the applications are renamed srsenb-emane, srsue-emane, srsepc-emane and srsepc-emane. srsenb-emane and srsue-emane contain an embedded EMANE instance to replace lower levels of the LTE radio stack required to emulate the over the air communication effects. The new applications are also instrumented for data extraction using OpenStatistic. Internal statistics can be queried manually via the ostatistic application, or collected automatically using OpenTestPoint and the OpenTestPoint LTE Probe.

srsLTE-emane is released under the AGPLv3 license. The current stable version is 19.09, the first release based on srsLTE 19.09


Build Instructions

  1. Install the latest pre-built EMANE bundle. EMANE version 1.2.3 or later is required.

  2. Build and install the EMANE LTE Model.

  3. Build and install srsLTE-emane:

Centos 7

sudo yum install cmake fftw3-devel polarssl-devel lksctp-tools-devel libconfig-devel boost-devel redhat-lsb-core
git clone https://github.com/adjacentlink/srsLTE-emane.git
cd srsLTE-emane
mkdir build
cd build
cmake -DUSE_GLIBC_IPV6=0 ..
make package
sudo yum install srslte-emane-*-x86_64.rpm

Fedora 33

sudo dnf install cmake fftw3-devel polarssl-devel lksctp-tools-devel libconfig-devel boost-devel redhat-lsb-core
git clone https://github.com/adjacentlink/srsLTE-emane.git
cd srsLTE-emane
mkdir build
cd build
cmake ..
make package
sudo dnf install srslte-emane-*-x86_64.rpm

Ubuntu 18.04 and 20.04

sudo apt-get install cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev lsb-release
git clone https://github.com/adjacentlink/srsLTE-emane.git
cd srsLTE-emane
mkdir build
cd build
cmake ..
make package
sudo dpkg -i srslte-emane-*-x86_64.deb; sudo apt-get install -f

Demonstration

EMANE LTE Model contains a demonstration for running a small network with two UEs and one ENB.


Configuration

Each of the emane version srsLTE applications take an input configuration file, identical to the one used by the regular srsLTE applications, with the following additional parameters.

[runtime]
daemonize = 1     # 0 - foreground, 1 - run as daemon

[mhal]
#statistic_service_endpoint=0.0.0.0:47100
#emane_configfile=emanelte.xml

The new runtime configuration section contains a daemonize parameter that controls whether the application runs in the foreground or as a daemon.

The new mhal section contains a statistic_service_endpoint parameter to set the OpenStatistic query address and port (all applications), and the emane_configfile parameter takes the name of the the configuration file fed to the embedded EMANE instance (srsenb-emane and srsue-emane only). Default values shown.

srslte-emane's People

Contributors

eschreiber-alink avatar jgiovatto avatar sgalgano avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

srslte-emane's Issues

Can't access external network, but can access each other

Hi there,
I am testing LTE emulation using emane+letce+srslte+lxc. Now I have successfully build 4 containers(ue-01, ue-02, enb-01, epc-01). However, they can't connect to external website, only can access each other.
It shows 'Temporary failure in name resolution' error inside containers.
Could anyone help me with the issue, please? Thank you very much.

How is SNR defined? And then, which is the mechanism that choose the MCS?

Issue Description

I have enabled the printing of the metrics in srsue (by pressing "t") and I have seen that the EU detects a SNR of 40dBm in downlink; it also uses the MCS 2 and 16 respectively for the downlink and uplink. I would like to understand where the 40dBm SNR is defined (it's uncorrelated from the "real" SNR dependent by pathloss, rxpower and txpower in EMANE, right?) in the code and then where the MCS choice is implemented. Is it a task entrusted to srsLTE-emane or to EMANE LTE Model?

Setup Details

My configuration is the same of the demonstrations in this page: https://github.com/adjacentlink/emane-model-lte

Additional Information

I have tried to analyze the code of srsLTE-emane. I have found the variables metrics.phy.dl.sinr and metrics.phy.dl.mcs in metrics_stdout.cc; I think I understood that their values come out of the calculations in phch_common.cc. But then? I'm not able to understand the exact chain leading to the SNR and MCS values mentioned above.

Thank you!
Andrea

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.