X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1cd1baa02965994b011595fb05c8b3b575571f12..59a1cb7b07e16f70c90ac11398fde26a52f749e4:/doc/doxygen/pls.doc diff --git a/doc/doxygen/pls.doc b/doc/doxygen/pls.doc index b6890c2034..8c421bf7e3 100644 --- a/doc/doxygen/pls.doc +++ b/doc/doxygen/pls.doc @@ -1,26 +1,22 @@ /*! \page pls Packet level simulation -It is possible to use a packet-level network simulator -instead of the default flow-based simulation. You may want to use such -an approach if you have doubts about the validity of the default model -or if you want to perform some validation experiments. At the moment, -we support the NS3 simulator; see Section \ref pls_examples "Examples" for -some additional information. +\tableofcontents -At the moment, we only support the NS3 simulator. Previous versions of -SimGrid did support the GTNetS simulator and that support could -possibly be revived by someone who would need it. +It is possible to use a packet-level network simulator instead of the default flow-based models. You may want to use +this feature if you have doubts about the validity of the default model or want to perform some validation experiments. -\section pls_simgrid_configuration_ns3 NS3 as a SimGrid model +At the moment, we support the well-known ns-3 packet-level simulator. Earlier +releases of SimGrid did support the GTNetS simulator. Its support could possibly be revived by someone who would +need it. -You may want to replace the SimGrid network models by the ones of the -well known packet-level network simulator NS-3 instead. -This section explains how to do so. +\section pls_simgrid_configuration_ns3 ns-3 as a SimGrid model -\subsection pls_simgrid_configuration_ns3_install Installing NS3 +This section explains how to replace the SimGrid network models by those of the well-known +ns-3 packet-level network simulator. -The easiest is to install it with the package manager. Under -Debian/Ubuntu, simply type as root: +\subsection pls_simgrid_configuration_ns3_install Installing ns-3 + +The easiest is to install it with the package manager. Under Debian/Ubuntu, simply type as root: \verbatim apt-get install libns3-dev ns3 @@ -30,83 +26,70 @@ You can also install it from scratch with the following commands: \verbatim # Download the source -wget http://www.nsnam.org/release/ns-allinone-3.22.tar.bz2 -tar -xf ns-allinone-3.22.tar.bz2 -cd ns-allinone-3.22/ns-3.22/ +wget http://www.nsnam.org/release/ns-allinone-3.25.tar.bz2 +tar -xf ns-allinone-3.25.tar.bz2 +cd ns-allinone-3.25/ns-3.25/ # Configure, build and install -./waf configure --prefix="ns-3_install_directory" +./waf configure --prefix="/opt/ns3" # or give another path if you prefer ./waf ./waf install \endverbatim -For more information, please refer to the NS-3 documentation. +For more information, please refer to the ns-3 documentation. -\subsection pls_simgrid_configuration_ns3_config Enabling SimGrid's support for NS3 +\subsection pls_simgrid_configuration_ns3_config Enabling SimGrid's support for ns-3 -Normally, you just have to enable NS3 in ccmake or cmake as follows. -If you installed NS3 in a regular path, just drop the ns3_path -configuration item. +Normally, you just have to enable ns-3 in ccmake or cmake as follows. If you installed ns-3 in a regular path, just +drop the ns3_path configuration item. \verbatim -cmake . -Denable_ns3=ON -Dns3_path= +cmake . -Denable_ns3=ON -DNS3_HINT=/opt/ns3 # or change the path if needed \endverbatim -By the end of the configuration, cmake reports whether NS-3 was found. -You can also double-check by executing the tests after the compilation. +By the end of the configuration, cmake reports whether ns-3 was found. You can also double-check by executing the tests +after the compilation. \verbatim $ ctest -R ns3 -(several tests should be run) +(test(s) should be run) \endverbatim -If you have a NS3 version that is not known (yet) to SimGrid, the -detection may fail. In that case, edit the file -tools/cmake/Modules/FindNS3.cmake in your SimGrid tree. The -required changes are very easy, and documented at the beginning of -this file. +If you have a ns-3 version that is not known to SimGrid (yet), the detection may fail. In that case, edit the +tools/cmake/Modules/FindNS3.cmake file in your SimGrid tree. The +required changes are very easy, and documented in the file header. -If the compilation fails when linking the library because of some .a -file that cannot be used dynamically, that's probably because you only -installed the libns3-dev library on your Debian, where you also need -libns3-3. That's probably a bug of the libns3-dev package that should -depend on the dynamic libraries corresponding to its .so files. +If the compilation fails when linking the library because of some .a file that cannot be used dynamically, this is +probably because you only installed the libns3-dev library on your Debian, where you also need libns3-3. This is +probably a bug of the libns3-dev package that should depend on the dynamic libraries corresponding to its .so files. -\subsection pls_simgrid_configuration_ns3_use Using NS3 from SimGrid +\subsection pls_simgrid_configuration_ns3_use Using ns-3 from SimGrid -A working example of NS3/SimGrid interactions can be found in -examples/msg/ns3. Basically, you just have to run your SimGrid -simulation with the configuration option "network/model" set to the -value "NS3". The rest remains unchanged. +A working example of ns-3/SimGrid interactions can be found in examples/msg/network-ns3/. Basically, you just have to +run your SimGrid simulation with the configuration option "network/model" set to "NS3". The rest remains unchanged. -The following should work from the examples/msg/ns3 folder (ns3 here -is the name of our example binary). +The following should work from the examples/msg/network-ns3 folder (network-ns3 is the name of our example binary). \verbatim -./ns3 ./3hosts_2links_p.xml 3hosts_2links_d.xml --cfg=network/model:NS3 --log=root.threshold:info +./network-ns3 ./3hosts_2links_p.xml 3hosts_2links_d.xml --cfg=network/model:NS3 --log=root.threshold:info \endverbatim -A ns-3 platform is automatically created from the SimGrid platform -file that you will provide. There is some caveats to know: +A ns-3 platform is automatically created from the provided SimGrid platform file. However, there are some known caveats: - More about ns-3 simulator (Official website) \subsection pls_examples Examples -There are some examples in the \c examples/ folder, that show how to use -the bindings; see also the \ref MSG_ex_PLS "documentation for these examples". +There is an example in the \c examples/ folder, that shows how to use the bindings. See also the \ref MSG_ex_PLS +"documentation for this example". */