Ns3 Projects for B.E/B.Tech M.E/M.Tech PhD Scholars.  Phone-Number:9790238391   E-mail: ns3simulation@gmail.com

NS 3.35 INSTALLATION STEPS

The installation steps for ns 3.35, which are often challenging for scholars, are provided below. Enhance your research by collaborating with ns3simulation.com for valuable insights.

Network Simulator 3 (ns-3), which is a multipurpose and robust open-source simulator for computer networks. It enables users to analyze, assess, and verify the behavior of a network or system in different situations. The simulator features a modular architecture, allowing for seamless integration of new components or modification of existing ones. With ns-3, network architects and researchers can simulate network protocols, topologies, and devices, easing the challenging and improvement of cutting-edge network technologies and architectures.

Notify the steps that are required for the installation of network simulator 3.35.

PRE-REQUISITES:

  1. Fresh installation of Ubuntu 22.04 LTS:

Screenshot:

Fresh installation of Ubuntu 22.04 LTS

2.Download ns-allinone-3.35.tar.bz2 file:

We have to download the ns-allinone-3.35.tar.bz2 under home directory by the clicking the Link, it will directly download to Download Location and move the compressed file to the home Directory.

Link: https://www.nsnam.org/releases/ns-allinone-3.35.tar.bz2

Screenshot:

Download ns-allinone-3_35_tar_bz2 file

3.Extraction of the ns-allinone-3.35.tar.bz2 file:

Next, we have to extract the compressed file by right click and click Extract here to extract the ns-allinone-3.35 as folder in the home directory.

Screenshot:

Extraction of the ns-allinone-3_35_tar_bz2 file
Extraction of the ns-allinone-3_35_tar_bz2 file

ns-allinone-3.35 compressed file Extracted Successfully in the home directory.

INSTALL DEPENDENCIES OF NS3:

  1. Open a terminal, Copy and Paste the commands to install required package:

Screenshot:

Open a terminal

2.System File Update Command:

First of all, we need to updates the list of available packages and their versions stored in the system’s package index. Use below command to update the system package.

Command:      “sudo apt-get update”

Screenshot:

System File Update Command

2.Install Essential Tools:

    1. g++: A C++ compiler from the GNU Compiler Collection, essential for compiling C++ programs.
    2. python3: The Python programming language interpreter, used for running Python scripts and applications.
    3. cmake: A cross-platform tool for managing the build process of software using a compiler-independent method.
    4. git: A distributed version control system for tracking changes in source code during software development.

Command:      “sudo apt install g++ python3 cmake git ”

Screenshot:

Install Essential Tools

Click the key Y to install the required Essentials tools for giving permission to install the package in the user system.

Install Essential Tools

Installation of the Essential tools package completed successfully.

  1. Install Required Libraries and Development Tools:
  2. python3-dev: Header files and a static library for Python development.
  3. pkg-config: Helps to manage compile and link flags for libraries.
  4. autoconf: Tool for generating configure scripts.
  5. automake: Tool for generating Makefile.in files.
  6. libc6-dev, libc6-dev-i386: Development libraries for the GNU C Library.
  7. libclang-dev: Development files for Clang, a C language family frontend for LLVM.
  8. llvm-dev: Development libraries for LLVM.
  9. libboost-all-dev: Boost libraries development files.
  10. gsl-bin, libgsl-dev, libgslcblas0: GNU Scientific Library development files and binaries.
  11. python3-setuptools: Tools for installing Python packages.
  12. python3-gi, python3-gi-cairo: Python bindings for gobject-introspection libraries.
  13. python3-pygraphviz: Python interface to Graphviz.
  14. ipython3: Enhanced interactive Python shell.
  15. qtbase5-dev, qtchooser, qt5-qmake, qtbase5-dev-tools: Development files and tools for Qt 5.
  16. 2-goocanvas-2.0, gir1.2-gtk-3.0: GObject introspection data for GooCanvas and GTK+.
  17. openmpi-bin, openmpi-common, openmpi-doc, libopenmpi-dev: MPI libraries and tools for parallel computing.
  18. cvs: Concurrent Versions System, a version control system.
  19. bzr: Bazaar, a distributed version control system.
  20. unrar: Unarchiver for .rar files.
  21. wireshark, tcpdump: Network protocol analyzers.
  22. openmpi-bin, openmpi-common, openmpi-doc, libopenmpi-dev: Tools and libraries for the Open MPI project.
  23. sqlite3, libsqlite3-dev: SQLite database command-line interface and development files.
  24. libxml2, libxml2-dev: Libraries for parsing XML.
  25. libxmu-dev: package that provides the development headers for the X11 miscellaneous utility library (libXmu)
  26. build-essential: A meta-package in Linux distributions like Ubuntu that groups together essential tools for compiling software from source code

Command:           

“sudo apt install build-essential autoconf automake libxmu-dev python3-dev pkg-config sqlite3 python3-setuptools qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 openmpi-bin openmpi-common openmpi-doc libopenmpi-dev autoconf cvs bzr unrar gsl-bin libgsl-dev libgslcblas0 wireshark tcpdump sqlite sqlite3 libsqlite3-dev  libxml2 libxml2-dev libc6-dev libc6-dev-i386 libclang-dev llvm-dev automake python3-pip libxml2 libxml2-dev libboost-all-dev” 

Screenshot:

Install Required Libraries and Development Tools

Click Yes to install wireshark packages to capture the packets from Network simulator 3.

Install Required Libraries and Development Tools
Install Required Libraries and Development Tools

Installation of the Required Libraries and Development Tools package completed successfully.

INSTALL NETWORK SIMULATOR 3 (NS3):

  1. Locating the ns-allinone-3.35 Folder:

Next, we need to install the NS 3 in our system so locate the Extracted ns-allinone-3.35 folder in the home directory.

Screenshot:

Locating the ns-allinone-3_35 Folder

2.Launching the terminal in the ns-allinone-3.35 Folder:

Then Right Click in the current Directory and select the “Open in Terminal” button and it will launch the terminal.

Screenshot:

Launching the terminal in the ns-allinone-3_35 Folder

Here, we launched the terminal by that button in the folder.

Launching the terminal in the ns-allinone-3_35 Folder

3.Building the terminal in the ns-allinone-3.35 Folder:

Next, we need to build the ns-3.35 to install the network simulation 3 Environment in the User system and it will build the netanim also. So, use the command to build the ns-3.35.

Command:      “./build.py”

Screenshot:

Building the terminal in the ns-allinone-3_35 Folder

Netanim Building process:

Screenshot:

Netanim Building process

Ns-3.35 Configuring process:

Screenshot:

Ns-3_35 Configuring process

The “./ns3 configure” command is to configure the Network Simulator 3 (NS-3) environment. This command is typically used to set various parameters, such as the simulation duration, network topology, and node properties. It can also be used to specify the output format and other simulation settings.

Screenshot:

Ns-3_35 Configuring process

Ns-3.35 Configuration Completed successfully.

Ns-3.35 Building process:

Screenshot:

Ns-3_35 Building process

The “./ns3 build” command is used to build the Network Simulator 3 (NS-3) framework from its source code. When use this command, It will compiles the source code, generates the Makefiles, and builds the NS-3 binary and libraries and make Runnable Environment.

Screenshot:

Ns-3_35 Building process

Note: This Error will occur due to pybindgen configuration so follow the Python bindings Enabling Procedure as Below.

  1. Enable Python Bindings:

The Python bindings for NS-3 are a set of Python modules that allow you to use the Network Simulator 3 (NS-3) library from within Python. With the Python bindings, you can leverage the power of NS-3 to simulate and analyse network behaviour without needing to write code in C++.

Next, we will locate the cppclass.py file in /home/<your-user-name>/ns-allinone-3.35/pybindgen-0.22.0/pybindgen/ cppclass.py

Screenshot:

Enable Python Bindings

Screenshot:

Enable Python Bindings

Next, we need to open cppclass.py file in the text Editor by right clicking the file and Edit the following file code with below screenshot.

Screenshot:

Enable Python Bindings

Here we installed the python bindings required packages successfully.

Ns-3.35 Location Change:

Change the location to the ns-3.35.

Command:cd ns-3.35

Screenshot:

Ns-3_35 Location Change

Ns-3.35 Configuring process:

The Ns 3.35 configuration of the Network Simulator 3 (NS-3) environment. This command is typically used to set various parameters, such as the simulation duration, network topology, and node properties. It can also be used to specify the output format and other simulation settings.

Command: “./waf configure”

Screenshot:

Ns-3_35 Configuring process

Ns-3.35 Configuration Completed successfully.

Ns-3.35 Building process:

Screenshot:

Ns-3_35 Building process

The “./ns3 build” command is used to build the Network Simulator 3 (NS-3) framework from its source code. When use this command, It will compiles the source code, generates the Makefiles, and builds the NS-3 binary and libraries and make Runnable Environment.

Screenshot:

Ns-3_35 Building process

Ns-3.35 Installed successfully in the Ubuntu 22.04 system. So finally we have discussed about installation, even after this if you find trouble in installing then we guarantee you good support.