doc: Update ns-3 version in tutorial and installation
This commit is contained in:
@@ -42,13 +42,13 @@ source archive download (via a web browser, ``wget``, or ``curl``).
|
||||
| | or ``tar`` and ``bunzip2`` | No minimum version |
|
||||
| | (for Web download) | |
|
||||
+--------------------+--------------------------------------+------------------------------+
|
||||
| **Compiler** | ``g++`` | >= 9 |
|
||||
| **Compiler** | ``g++`` | >= 10 |
|
||||
+ + + +
|
||||
| | or ``clang++`` | >= 10 |
|
||||
| | or ``clang++`` | >= 11 |
|
||||
+--------------------+--------------------------------------+------------------------------+
|
||||
| **Configuration** | ``python3`` | >= 3.5 |
|
||||
| **Configuration** | ``python3`` | >= 3.8 |
|
||||
+--------------------+--------------------------------------+------------------------------+
|
||||
| **Build system** | ``cmake``, | >= 3.10 |
|
||||
| **Build system** | ``cmake``, | >= 3.13 |
|
||||
+ + + +
|
||||
| | and at least one of: | No minimum version |
|
||||
| | ``make``, ``ninja``, or ``Xcode`` | |
|
||||
@@ -80,13 +80,13 @@ Download
|
||||
|
||||
There are two main options:
|
||||
|
||||
1. Download a release tarball. This will unpack to a directory such as ``ns-allinone-3.42``
|
||||
1. Download a release tarball. This will unpack to a directory such as ``ns-allinone-3.43``
|
||||
containing |ns3| and some other programs. Below is a command-line download using ``wget``,
|
||||
but a browser download will also work::
|
||||
|
||||
$ wget https://www.nsnam.org/releases/ns-allinone-3.42.tar.bz2
|
||||
$ tar xfj ns-allinone-3.42.tar.bz2
|
||||
$ cd ns-allinone-3.42/ns-3.42
|
||||
$ wget https://www.nsnam.org/releases/ns-allinone-3.43.tar.bz2
|
||||
$ tar xfj ns-allinone-3.43.tar.bz2
|
||||
$ cd ns-allinone-3.43/ns-3.43
|
||||
|
||||
2. Clone |ns3| from the Git repository. The ``ns-3-allinone`` can be cloned, as well as
|
||||
``ns-3-dev`` by itself. Below, we illustrate the latter::
|
||||
@@ -99,7 +99,7 @@ you clone |ns3|, your directory will be named ``ns-3-dev``. By default, Git wil
|
||||
the |ns3| ``master`` branch, which is a development branch. All |ns3| releases are tagged
|
||||
in Git, so if you would then like to check out a past release, you can do so as follows::
|
||||
|
||||
$ git checkout -b ns-3.42-release ns-3.42
|
||||
$ git checkout -b ns-3.43-release ns-3.43
|
||||
|
||||
In this quick-start, we are omitting download and build instructions for optional |ns3| modules,
|
||||
the ``NetAnim`` animator, Python bindings, and ``NetSimulyzer``. The
|
||||
@@ -125,6 +125,30 @@ and support for |ns3| logging) is what is usually done at first::
|
||||
Depending on how fast your CPU is, the configuration command can take anywhere from a few
|
||||
seconds to a minute.
|
||||
|
||||
You should see some output such as below, if successful::
|
||||
|
||||
Modules configured to be built:
|
||||
antenna aodv applications
|
||||
bridge buildings config-store
|
||||
core csma csma-layout
|
||||
dsdv dsr energy
|
||||
fd-net-device flow-monitor internet
|
||||
internet-apps lr-wpan lte
|
||||
mesh mobility netanim
|
||||
network nix-vector-routing olsr
|
||||
point-to-point point-to-point-layout propagation
|
||||
sixlowpan spectrum stats
|
||||
tap-bridge test topology-read
|
||||
traffic-control uan virtual-net-device
|
||||
wifi wimax
|
||||
|
||||
Modules that cannot be built:
|
||||
brite click mpi
|
||||
openflow visualizer
|
||||
|
||||
Do not be concerned about the list of modules that cannot be built; these modules are all optional
|
||||
and require some extra dependencies, but are not needed for initial exploration of |ns3|.
|
||||
|
||||
Then, use the ``ns3`` program to build the |ns3| module libraries and executables::
|
||||
|
||||
$ ./ns3 build
|
||||
@@ -135,31 +159,9 @@ slower). Additional configuration (not covered here) can be used to limit the s
|
||||
build, and the ``ccache``, if installed, can speed things up. In general, plan on the build
|
||||
taking a few minutes on faster workstations.
|
||||
|
||||
You should see some output such as below, if successful::
|
||||
|
||||
'build' finished successfully (44.159s)
|
||||
|
||||
Modules built:
|
||||
antenna aodv applications
|
||||
bridge buildings config-store
|
||||
core csma csma-layout
|
||||
dsdv dsr energy
|
||||
fd-net-device flow-monitor internet
|
||||
internet-apps lr-wpan lte
|
||||
mesh mobility mpi
|
||||
netanim (no Python) network nix-vector-routing
|
||||
olsr point-to-point point-to-point-layout
|
||||
propagation sixlowpan spectrum
|
||||
stats tap-bridge test (no Python)
|
||||
topology-read traffic-control uan
|
||||
virtual-net-device visualizer wifi
|
||||
wimax
|
||||
|
||||
Modules not built (see ns-3 tutorial for explanation):
|
||||
brite click openflow
|
||||
|
||||
|
||||
Once complete, you can run the unit tests to check your build::
|
||||
At the end of the build, if successful, the output will report on the underlying ``cmake``
|
||||
build command that was invoked by the ``ns3`` program. Once the build is complete, you can
|
||||
run the unit tests to check your build::
|
||||
|
||||
$ ./test.py
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ the project provides an installation guide
|
||||
for various systems, available at
|
||||
https://www.nsnam.org/docs/installation/html/index.html.
|
||||
|
||||
As of the most recent |ns3| release (ns-3.42), the following tools
|
||||
As of the most recent |ns3| release (ns-3.43), the following tools
|
||||
are needed to get started with |ns3|:
|
||||
|
||||
============ ===========================================================
|
||||
@@ -116,21 +116,21 @@ get a copy of a release by typing the following into your Linux shell
|
||||
$ cd
|
||||
$ mkdir workspace
|
||||
$ cd workspace
|
||||
$ wget https://www.nsnam.org/release/ns-allinone-3.42.tar.bz2
|
||||
$ tar xjf ns-allinone-3.42.tar.bz2
|
||||
$ wget https://www.nsnam.org/release/ns-allinone-3.43.tar.bz2
|
||||
$ tar xjf ns-allinone-3.43.tar.bz2
|
||||
|
||||
Notice the use above of the ``wget`` utility, which is a command-line
|
||||
tool to fetch objects from the web; if you do not have this installed,
|
||||
you can use a browser for this step.
|
||||
|
||||
Following these steps, if you change into the directory
|
||||
``ns-allinone-3.42``, you should see a number of files and directories
|
||||
``ns-allinone-3.43``, you should see a number of files and directories
|
||||
|
||||
.. sourcecode:: text
|
||||
|
||||
$ cd ns-allinone-3.42
|
||||
$ cd ns-allinone-3.43
|
||||
$ ls
|
||||
bake build.py constants.py netanim-3.109 ns-3.42 README.md util.py
|
||||
bake build.py constants.py netanim-3.109 ns-3.43 README.md util.py
|
||||
|
||||
You are now ready to build the base |ns3| distribution and may skip ahead
|
||||
to the section on building |ns3|.
|
||||
@@ -180,7 +180,7 @@ release number:
|
||||
|
||||
.. sourcecode:: console
|
||||
|
||||
$ python3 download.py -n ns-3.42
|
||||
$ python3 download.py -n ns-3.43
|
||||
|
||||
After this step, the additional repositories of |ns3|, bake, pybindgen,
|
||||
and netanim will be downloaded to the ``ns-3-allinone`` directory.
|
||||
@@ -249,9 +249,9 @@ distribution of your choice.
|
||||
|
||||
There are a few configuration targets available:
|
||||
|
||||
1. ``ns-3.42``: the code corresponding to the release
|
||||
1. ``ns-3.43``: the code corresponding to the release
|
||||
2. ``ns-3-dev``: a similar module but using the development code tree
|
||||
3. ``ns-allinone-3.42``: the module that includes other optional features
|
||||
3. ``ns-allinone-3.43``: the module that includes other optional features
|
||||
such as bake build system, netanim animator, and pybindgen
|
||||
4. ``ns-3-allinone``: similar to the released version of the allinone
|
||||
module, but for development code.
|
||||
@@ -268,7 +268,7 @@ code either by inspection of the repository list or by going to the
|
||||
`"ns-3 Releases"
|
||||
<https://www.nsnam.org/releases>`_
|
||||
web page and clicking on the latest release link. We'll proceed in
|
||||
this tutorial example with ``ns-3.42``.
|
||||
this tutorial example with ``ns-3.43``.
|
||||
|
||||
We are now going to use the bake tool to pull down the various pieces of
|
||||
|ns3| you will be using. First, we'll say a word about running bake.
|
||||
@@ -297,7 +297,7 @@ Step into the workspace directory and type the following into your shell:
|
||||
|
||||
.. sourcecode:: console
|
||||
|
||||
$ ./bake.py configure -e ns-allinone-3.42
|
||||
$ ./bake.py configure -e ns-allinone-3.43
|
||||
|
||||
Next, we'll ask bake to check whether we have enough tools to download
|
||||
various components. Type:
|
||||
@@ -347,7 +347,7 @@ should yield something like:
|
||||
>> Downloading click-ns-3.37 - OK
|
||||
>> Downloading BRITE - OK
|
||||
>> Downloading openflow-dev - OK
|
||||
>> Downloading ns-3.42 (target directory:ns-3.42) - OK
|
||||
>> Downloading ns-3.43 (target directory:ns-3.43) - OK
|
||||
|
||||
The above suggests that three sources have been downloaded. Check the
|
||||
``source`` directory now and type ``ls``; one should see:
|
||||
@@ -356,7 +356,7 @@ The above suggests that three sources have been downloaded. Check the
|
||||
|
||||
$ cd source
|
||||
$ ls
|
||||
BRITE click-ns-3.37 netanim-3.109 ns-3.42 openflow-dev
|
||||
BRITE click-ns-3.37 netanim-3.109 ns-3.43 openflow-dev
|
||||
|
||||
You are now ready to build the |ns3| distribution.
|
||||
|
||||
@@ -386,7 +386,7 @@ native |ns3| build system, CMake, to be introduced later in this tutorial.
|
||||
|
||||
If you downloaded
|
||||
using a tarball you should have a directory called something like
|
||||
``ns-allinone-3.42`` under your ``~/workspace`` directory.
|
||||
``ns-allinone-3.43`` under your ``~/workspace`` directory.
|
||||
Type the following:
|
||||
|
||||
.. sourcecode:: console
|
||||
@@ -419,7 +419,7 @@ and you should see something like:
|
||||
.. sourcecode:: text
|
||||
|
||||
>> Building netanim-3.109 - OK
|
||||
>> Building ns-3.42 - OK
|
||||
>> Building ns-3.43 - OK
|
||||
|
||||
There may be failures to build all components, but the build will proceed
|
||||
anyway if the component is optional.
|
||||
|
||||
@@ -64,13 +64,13 @@ Downloading the Latest Release
|
||||
|
||||
::
|
||||
|
||||
$ tar xjf ns-allinone-3.42.tar.bz2
|
||||
$ tar xjf ns-allinone-3.43.tar.bz2
|
||||
|
||||
3) Change into the |ns3| directory directly; e.g.
|
||||
|
||||
::
|
||||
|
||||
$ cd ns-allinone-3.42/ns-3.42
|
||||
$ cd ns-allinone-3.43/ns-3.43
|
||||
|
||||
The ns-allinone directory has some additional components but we are skipping
|
||||
over them here; one can work directly from the |ns3| source code directory.
|
||||
@@ -92,12 +92,12 @@ only to `cd` into ns-3-dev; the `master` branch is checked out by default.
|
||||
|
||||
$ cd ns-3-dev
|
||||
|
||||
If instead you want to try the most recent release (version 3.42 as of this
|
||||
If instead you want to try the most recent release (version 3.43 as of this
|
||||
writing), you can checkout a branch corresponding to that git tag:
|
||||
|
||||
::
|
||||
|
||||
$ git checkout -b ns-3.42-branch ns-3.42
|
||||
$ git checkout -b ns-3.43-branch ns-3.43
|
||||
|
||||
Building and testing ns-3
|
||||
*************************
|
||||
|
||||
Reference in New Issue
Block a user