fixed seeds for tutorial examples and updates to tutorial to match
This commit is contained in:
@@ -105,6 +105,13 @@ familiar to you so far.
|
||||
LogComponentEnable("UdpEchoServerApplication", LOG_LEVEL_INFO);
|
||||
@end verbatim
|
||||
|
||||
A fixed seed is provided to the random number generators so that they will
|
||||
generate repeatable results.
|
||||
|
||||
@verbatim
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
@end verbatim
|
||||
|
||||
Next, you will see some familiar code that will allow you to change the number
|
||||
of devices on the CSMA network via command line argument. We did something
|
||||
similar when we allowed the number of packets sent to be changed in the section
|
||||
@@ -657,6 +664,13 @@ the simulation.
|
||||
LogComponentEnable("UdpEchoServerApplication", LOG_LEVEL_INFO);
|
||||
@end verbatim
|
||||
|
||||
A fixed seed is provided to the random number generators so that they will
|
||||
generate repeatable results.
|
||||
|
||||
@verbatim
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
@end verbatim
|
||||
|
||||
Next, you will see more familiar code that will allow you to change the number
|
||||
of devices on the CSMA and Wifi networks via command line argument.
|
||||
|
||||
|
||||
@@ -362,6 +362,21 @@ enable on each component. These two lines of code enable debug logging at the
|
||||
INFO level for echo clients and servers. This will result in the application
|
||||
printing out messages as packets are sent and received during the simulation.
|
||||
|
||||
The next line of code is used to give a fixed seed to the random number
|
||||
generators so that they will generate repeatable results. In the example
|
||||
programs, it allows us to thouroughly document the output of the trace files
|
||||
in a consistent way. Having a fixed seed also allows us to use the examples
|
||||
in our regression testing framework.
|
||||
|
||||
@verbatim
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
@end verbatim
|
||||
|
||||
Random variables are very important in understanding how to get repeatable
|
||||
results, so you are encouraged to read the Doxygen and manual sections to
|
||||
understand what is going on there. For us, the main concern is in making
|
||||
random backoff algorithms consistent across runs.
|
||||
|
||||
Now we will get directly to the business of creating a topology and running
|
||||
a simulation. We use the topology helper objects to make this job as
|
||||
easy as possible.
|
||||
|
||||
@@ -29,6 +29,8 @@ main (int argc, char *argv[])
|
||||
LogComponentEnable("UdpEchoClientApplication", LOG_LEVEL_INFO);
|
||||
LogComponentEnable("UdpEchoServerApplication", LOG_LEVEL_INFO);
|
||||
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
|
||||
NodeContainer nodes;
|
||||
nodes.Create (2);
|
||||
|
||||
|
||||
@@ -39,6 +39,8 @@ main (int argc, char *argv[])
|
||||
LogComponentEnable("UdpEchoClientApplication", LOG_LEVEL_INFO);
|
||||
LogComponentEnable("UdpEchoServerApplication", LOG_LEVEL_INFO);
|
||||
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
|
||||
uint32_t nCsma = 3;
|
||||
CommandLine cmd;
|
||||
cmd.AddValue ("nCsma", "Number of \"extra\" CSMA nodes/devices", nCsma);
|
||||
|
||||
@@ -43,6 +43,8 @@ main (int argc, char *argv[])
|
||||
LogComponentEnable("UdpEchoClientApplication", LOG_LEVEL_INFO);
|
||||
LogComponentEnable("UdpEchoServerApplication", LOG_LEVEL_INFO);
|
||||
|
||||
RandomVariable::UseGlobalSeed (1, 1, 2, 3, 5, 8);
|
||||
|
||||
uint32_t nCsma = 3;
|
||||
uint32_t nWifi = 3;
|
||||
CommandLine cmd;
|
||||
|
||||
Reference in New Issue
Block a user