Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
We only have one packet-level simulator underneath
authorMartin Quinson <martin.quinson@loria.fr>
Tue, 24 May 2016 20:10:05 +0000 (22:10 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Tue, 24 May 2016 20:10:05 +0000 (22:10 +0200)
doc/Doxyfile.in
doc/doxygen/index.doc
doc/doxygen/ns3.doc [moved from doc/doxygen/pls.doc with 66% similarity]
doc/doxygen/options.doc
examples/msg/README.doc
tools/cmake/DefinePackages.cmake

index 7835adc..a6c08e0 100644 (file)
@@ -649,7 +649,7 @@ INPUT                  = doxygen/index.doc \
                            doxygen/bindings.doc \
                          doxygen/platform.doc \
                           doxygen/models.doc \
                            doxygen/bindings.doc \
                          doxygen/platform.doc \
                           doxygen/models.doc \
-                           doxygen/pls.doc \
+                           doxygen/ns3.doc \
                         doxygen/scenario.doc \
                            doxygen/deployment.doc \
                            doxygen/options.doc \
                         doxygen/scenario.doc \
                            doxygen/deployment.doc \
                            doxygen/options.doc \
index 2f98047..cc54313 100644 (file)
@@ -19,7 +19,7 @@
   - @subpage bindings
 - @subpage platform
   - @subpage models
   - @subpage bindings
 - @subpage platform
   - @subpage models
-  - @subpage pls
+  - @subpage pls_ns3
 - @subpage scenario
   - @subpage deployment
   - @subpage options
 - @subpage scenario
   - @subpage deployment
   - @subpage options
similarity index 66%
rename from doc/doxygen/pls.doc
rename to doc/doxygen/ns3.doc
index b4ca1a0..c34f783 100644 (file)
@@ -1,20 +1,22 @@
-/*! \page pls Packet level simulation
+/*! \page pls_ns3 ns-3 as a SimGrid model
 
 \tableofcontents
 
 
 \tableofcontents
 
-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.
+You can use the well-known 
+<a href="http://www.nsnam.org/"><b>ns-3</b></a> packet-level network
+simulator as a SimGrid model, for example to investigate the validity
+of your simulation. 
 
 
-At the moment, we support the well-known <a href="http://www.nsnam.org/"><b>ns-3</b></a> packet-level simulator. Earlier 
-releases of SimGrid did support the <b>GTNetS</b> simulator. Its support could possibly be revived by someone who would
-need it.
+This binding is still somehow limited: you can only express what is at
+the intersection between ns-3 and SimGrid. For example, ns-3 wireless
+models are not available, while no route longuer than 1 must appear in
+your SimGrid platform (add routers on need).
 
 
-\section pls_simgrid_configuration_ns3 ns-3 as a SimGrid model
+But if you stick to what is possible in both systems, there should be
+very little things to change in your SimGrid settings (platform and
+experimental scenario) to use ns-3
 
 
-This section explains how  to replace the SimGrid network models by those of the well-known 
-<a href="http://www.nsnam.org/">ns-3</a> packet-level network simulator.
-
-\subsection pls_simgrid_configuration_ns3_install Installing ns-3
+\section pls_ns3_install Installing ns-3
 
 The easiest is to install it with the package manager. Under Debian/Ubuntu, simply type as root:
 
 
 The easiest is to install it with the package manager. Under Debian/Ubuntu, simply type as root:
 
@@ -37,7 +39,7 @@ cd ns-allinone-3.25/ns-3.25/
 
 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 ns-3
+\section pls_ns3_config Enabling SimGrid's support for ns-3
 
 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.
 
 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.
@@ -62,10 +64,11 @@ If the compilation fails when linking the library because of some .a file that c
 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.
 
 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 ns-3 from SimGrid
+\section pls_ns3_use Using ns-3 from SimGrid
 
 
-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.
+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/network-ns3 folder (network-ns3 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).
 
@@ -76,7 +79,7 @@ The following should work from the examples/msg/network-ns3 folder (network-ns3
 A ns-3 platform is automatically created from the provided SimGrid platform file. However, there are some known caveats:
 
 <ul>
 A ns-3 platform is automatically created from the provided SimGrid platform file. However, there are some known caveats:
 
 <ul>
-  <li>The default values (e.g., TCP parameters) are the ns3  values. Don't blame us for them.</li>  
+  <li>The default values (e.g., TCP parameters) are the ns3 values. Don't blame us for them.</li>  
 
   <li>ns-3 networks are routed using the shortest path algorithm, using
    ns3::Ipv4GlobalRoutingHelper::PopulateRoutingTables.</li>
 
   <li>ns-3 networks are routed using the shortest path algorithm, using
    ns3::Ipv4GlobalRoutingHelper::PopulateRoutingTables.</li>
index f45e1f5..a31c819 100644 (file)
@@ -117,11 +117,10 @@ described in
     lmm_solve (experts only; check the code for more info).
 
 If you compiled SimGrid accordingly, you can use packet-level network
     lmm_solve (experts only; check the code for more info).
 
 If you compiled SimGrid accordingly, you can use packet-level network
-simulators as network models (see \ref pls). In that case, you have
+simulators as network models (see \ref pls_ns3). In that case, you have
 two extra models, described below, and some \ref options_pls "specific
 additional configuration flags".
 two extra models, described below, and some \ref options_pls "specific
 additional configuration flags".
-  - \b NS3: Network pseudo-model using the NS3 tcp model instead of an
-    analytic model
+  - \b NS3: Network pseudo-model using the NS3 tcp model
 
 Concerning the CPU, we have only one model for now:
   - \b Cas01: Simplistic CPU model (time=size/power)
 
 Concerning the CPU, we have only one model for now:
   - \b Cas01: Simplistic CPU model (time=size/power)
index 5b6e089..baefe26 100644 (file)
@@ -164,10 +164,10 @@ They have to be run with the following options:
 @subsection msg_ex_ns3 NS3 as a SimGrid Network Model
 
 This example demonstrates how to use the bindings to the Network
 @subsection msg_ex_ns3 NS3 as a SimGrid Network Model
 
 This example demonstrates how to use the bindings to the Network
-Simulator, as explained in @ref pls. The most
+Simulator, as explained in @ref pls_ns3. The most
 interesting is probably not the C files since they are unchanged from
 the other simulations, but the associated files, such as the platform
 interesting is probably not the C files since they are unchanged from
 the other simulations, but the associated files, such as the platform
-file to see how to declare a platform to be used with the PLS bindings
+file to see how to declare a platform to be used with the ns-3 bindings
 of SimGrid and the tesh file to see how to actually start a simulation
 in these settings.
   
 of SimGrid and the tesh file to see how to actually start a simulation
 in these settings.
   
index 506d7c6..687546a 100644 (file)
@@ -815,13 +815,13 @@ set(DOC_SOURCES
   doc/doxygen/module-trace.doc
   doc/doxygen/module-xbt.doc
   doc/doxygen/module-index.doc
   doc/doxygen/module-trace.doc
   doc/doxygen/module-xbt.doc
   doc/doxygen/module-index.doc
+  doc/doxygen/ns3.doc
   doc/doxygen/options.doc
   doc/doxygen/outcomes.doc  
   doc/doxygen/outcomes_logs.doc  
   doc/doxygen/outcomes_MC.doc  
   doc/doxygen/outcomes_vizu.doc  
   doc/doxygen/platform.doc
   doc/doxygen/options.doc
   doc/doxygen/outcomes.doc  
   doc/doxygen/outcomes_logs.doc  
   doc/doxygen/outcomes_MC.doc  
   doc/doxygen/outcomes_vizu.doc  
   doc/doxygen/platform.doc
-  doc/doxygen/pls.doc
   doc/doxygen/scenario.doc
   doc/doxygen/stylesheet.css
   doc/doxygen/uhood.doc
   doc/doxygen/scenario.doc
   doc/doxygen/stylesheet.css
   doc/doxygen/uhood.doc
@@ -983,6 +983,7 @@ set(CMAKE_SOURCE_FILES
   tools/cmake/Modules/FindLibunwind.cmake
   tools/cmake/Modules/FindLuaSimgrid.cmake
   tools/cmake/Modules/FindNS3.cmake
   tools/cmake/Modules/FindLibunwind.cmake
   tools/cmake/Modules/FindLuaSimgrid.cmake
   tools/cmake/Modules/FindNS3.cmake
+  tools/cmake/Modules/FindPAPI.cmake
   tools/cmake/Modules/FindRngStream.cmake
   tools/cmake/Modules/FindSimGrid.cmake
   tools/cmake/Modules/FindValgrind.cmake
   tools/cmake/Modules/FindRngStream.cmake
   tools/cmake/Modules/FindSimGrid.cmake
   tools/cmake/Modules/FindValgrind.cmake
@@ -1011,6 +1012,7 @@ set(CMAKE_SOURCE_FILES
   tools/cmake/test_prog/prog_thread_storage.c
   tools/cmake/test_prog/prog_vsnprintf.c
   tools/cmake/cross-mingw.cmake
   tools/cmake/test_prog/prog_thread_storage.c
   tools/cmake/test_prog/prog_vsnprintf.c
   tools/cmake/cross-mingw.cmake
+  tools/smpi/generate_smpi_defines.pl
   tools/stack-cleaner/as
   tools/stack-cleaner/cc
   tools/stack-cleaner/c++
   tools/stack-cleaner/as
   tools/stack-cleaner/cc
   tools/stack-cleaner/c++