From 82aca38f7e1ecb3939ada1699865f1f651abf2a6 Mon Sep 17 00:00:00 2001 From: eltayebmusab Date: Fri, 19 Apr 2024 08:12:16 +0200 Subject: [PATCH] Update install script and readme and add citation file --- CITATION.cff | 19 +++++++++++++++++++ README.md | 14 ++++++++++++-- install.sh | 18 +++++++++--------- 3 files changed, 40 insertions(+), 11 deletions(-) create mode 100644 CITATION.cff diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..87dcb9f --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,19 @@ +cff-version: 1.2.0 +message: "If you use this software, please cite it as below." +authors: + - family-names: Ahmed + given-names: Musab + orcid: https://orcid.org/0000-0001-5554-3414 + - family-names: Fuger + given-names: Konrad + orcid: https://orcid.org/0000-0002-8472-1483 + - family-names: Kuladinithi + given-names: Koojana + orcid: https://orcid.org/0000-0001-6083-4048 + - family-names: Timm-Giel + given-names: Andreas + orcid: https://orcid.org/0000-0002-5998-6113 +title: "LDACS Greedy K-Hop Simulator" +version: 1.0 +doi: 10.5281/zenodo.10995586 +date-released: 2024-04-19 \ No newline at end of file diff --git a/README.md b/README.md index 6820fe5..32d4165 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,15 @@ # [LDACS-Greedy-K-Hop-Simulator](https://github.com/ComNetsHH/LDACS-Greedy-K-Hop-Simulator) +## Copyright and License + +**Copyright (C) 2024 Musab Ahmed, Konrad Fuger, Koojana Kuladinithi, Andreas Timm-Giel, Institute of Communication Networks, Hamburg University of Technology, Hamburg, Germany** + +This program is free software: you are free to redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License along with this program. If not, see [GNU Licenses](https://www.gnu.org/licenses/). + ## Overview The LDACS-Greedy-K-Hop-Simulator is an open-source simulation model developed to enhance and evaluate geographic greedy routing in sparse LDACS air-to-air networks. It specifically simulates the application of a geographic greedy routing protocol that leverages k-hop neighborhood information. The simulator evaluates three distinct methods for selecting k-hop subsets: a random method, Farthest First Traversal (FFT), and Enhanced Farthest First Traversal (EFFT). These methods are tested within simulated French airspace scenario, allowing for comprehensive analysis of routing efficiency and the impact of different neighbor selection strategies on network performance. The simulation is implemented using OMNeT++ and Python, ensuring detailed and scalable simulation capabilities. Additionally, it is compatible with HPC environments using Slurm, making it suitable for large-scale simulation tasks. @@ -11,9 +21,9 @@ The LDACS-Greedy-K-Hop-Simulator is an open-source simulation model developed to ## Installation Clone the repository and set up the simulation environment with the following commands: ```bash -git clone https://github.com/yourusername/LDACS-Greedy-K-Hop-Simulator.git +git clone https://github.com/ComNetsHH/LDACS-Greedy-K-Hop-Simulator.git cd LDACS-Greedy-K-Hop-Simulator -./install.sh # Installs all dependencies and sets up necessary submodules +bash install.sh # Installs all dependencies and sets up necessary submodules ``` ## Configuration of Environment Variables for OMNeT++ diff --git a/install.sh b/install.sh index bc2499c..06e3873 100644 --- a/install.sh +++ b/install.sh @@ -20,9 +20,9 @@ NUM_CPUS=10 # set to your no. of cores LOC_OMNET=https://github.com/omnetpp/omnetpp/releases/download/omnetpp-5.6.2/omnetpp-5.6.2-src-linux.tgz LOC_OMNET_MAC=https://github.com/omnetpp/omnetpp/releases/download/omnetpp-5.6.2/omnetpp-5.6.2-src-macosx.tgz LOC_INET=https://github.com/eltayebmusab/inet/archive/refs/tags/v4.2.5.tar.gz -LOC_RADIO=https://github.com/ComNetsHH/LDACS-Abstract-Radio/archive/refs/tags/ldacs_abstract_radio-v1.0.1.zip -LOC_TDMA=https://github.com/ComNetsHH/LDACS-Abstract-TDMA-MAC/archive/refs/tags/ldacs_abstract_tdma-v1.0.1.zip -LOC_GREEDY_ROUTING=https://github.com/ComNetsHH/LDACS-Greedy-K-Hop-Routing/archive/refs/tags/ldacs_greedy_k_hop_routing-v1.0.1.zip +LOC_RADIO=https://zenodo.org/records/10995663/files/ComNetsHH/LDACS-Abstract-Radio-ldacs_abstract_radio-v1.0.4.zip +LOC_TDMA=https://zenodo.org/records/10995658/files/ComNetsHH/LDACS-Abstract-TDMA-MAC-ldacs_abstract_tdma-v1.0.4.zip +LOC_GREEDY_ROUTING=https://zenodo.org/records/10995656/files/ComNetsHH/LDACS-Greedy-K-Hop-Routing-ldacs_greedy_k_hop_routing-v1.0.4.zip # Download OMNeT++ v5.6.2, unpack and go to directory. echo -n "Downloading OMNeT++ " if [ $1 = "mac" ]; then @@ -69,11 +69,11 @@ echo -e "\n\nDownloading LDACS Abstract Radio" mkdir ldacs_abstract_radio wget $LOC_RADIO umask 000 -unzip ldacs_abstract_radio-v1.0.1.zip -d tmp_extract +unzip LDACS-Abstract-Radio-ldacs_abstract_radio-v1.0.4.zip -d tmp_extract mv tmp_extract/*/* ldacs_abstract_radio/ mv tmp_extract/*/.* ldacs_abstract_radio/ rm -r tmp_extract -rm -r ldacs_abstract_radio-v1.0.1.zip +rm -r LDACS-Abstract-Radio-ldacs_abstract_radio-v1.0.4.zip cd ldacs_abstract_radio/src opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../inet4 -I. -I../../inet4/src -L../../inet4/src -lINET # opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../inet4 -I. -I../../inet4/src -L../../inet4/src -lINET_dbg @@ -86,11 +86,11 @@ echo -e "\n\nDownloading LDACS Abstract TDMA MAC" mkdir ldacs_abstract_tdma_mac wget $LOC_TDMA umask 000 -unzip ldacs_abstract_tdma-v1.0.1.zip -d tmp_extract +unzip LDACS-Abstract-TDMA-MAC-ldacs_abstract_tdma-v1.0.4.zip -d tmp_extract mv tmp_extract/*/* ldacs_abstract_tdma_mac/ mv tmp_extract/*/.* ldacs_abstract_tdma_mac/ rm -r tmp_extract -rm -r ldacs_abstract_tdma-v1.0.1.zip +rm -r LDACS-Abstract-TDMA-MAC-ldacs_abstract_tdma-v1.0.4.zip cd ldacs_abstract_tdma_mac/src opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../ldacs_abstract_radio/src -I. -I../../inet4/src -L../../inet4/src -L../../ldacs_abstract_radio/out/gcc-release/src/ -lINET -lldacs_abstract_radio # opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../ldacs_abstract_radio/src -I. -I../../inet4/src -L../../inet4/src -L../../ldacs_abstract_radio/out/gcc-release/src/ -lINET_dbg -lldacs_abstract_radio_dbg @@ -103,11 +103,11 @@ echo -e "\n\nDownloading LDACS-Greedy-K-Hop-Routing" mkdir ldacs_greedy_k_hop_routing wget $LOC_GREEDY_ROUTING umask 000 -unzip ldacs_greedy_k_hop_routing-v1.0.1.zip -d tmp_extract +unzip LDACS-Greedy-K-Hop-Routing-ldacs_greedy_k_hop_routing-v1.0.4.zip -d tmp_extract mv tmp_extract/*/* ldacs_greedy_k_hop_routing/ mv tmp_extract/*/.* ldacs_greedy_k_hop_routing/ rm -r tmp_extract -rm -r ldacs_greedy_k_hop_routing-v1.0.1.zip +rm -r LDACS-Greedy-K-Hop-Routing-ldacs_greedy_k_hop_routing-v1.0.4.zip cd ldacs_greedy_k_hop_routing/src opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../inet4 -I../../ldacs_abstract_radio/src -I../../ldacs_abstract_tdma_mac/src -I. -I../../inet4/src -L../../inet4/src -L../../ldacs_abstract_radio/out/gcc-release/src/ -L../../ldacs_abstract_tdma_mac/out/gcc-release/src/ -lINET -lldacs_abstract_radio -lldacs_abstract_tdma_mac # opp_makemake -f -s --deep -O out -KINET4_PROJ=../../inet4 -DINET_IMPORT -I../../inet4 -I../../ldacs_abstract_radio/src -I../../ldacs_abstract_tdma_mac/src -I. -I../../inet4/src -L../../inet4/src -L../../ldacs_abstract_radio/out/gcc-release/src/ -L../../ldacs_abstract_tdma_mac/out/gcc-release/src/ -lINET_dbg -lldacs_abstract_radio_dbg -lldacs_abstract_tdma_mac_dbg