Test script. More...
Collaboration diagram for TracerouteExample:Public Member Functions | |
| TracerouteExample () | |
| bool | Configure (int argc, char **argv) |
| Configure script parameters. | |
| void | Report (std::ostream &os) |
| Report results. | |
| void | Run () |
| Run simulation. | |
Private Member Functions | |
| void | CreateDevices () |
| Create the devices. | |
| void | CreateNodes () |
| Create the nodes. | |
| void | InstallApplications () |
| Create the simulation applications. | |
| void | InstallInternetStack () |
| Create the network. | |
Private Attributes | |
| NetDeviceContainer | devices |
| devices used in the example | |
| Ipv4InterfaceContainer | interfaces |
| interfaces used in the example | |
| NodeContainer | nodes |
| nodes used in the example | |
| bool | pcap |
| Write per-device PCAP traces if true. | |
| bool | printRoutes |
| Print aodv routes if true. | |
| uint32_t | size |
| Number of nodes. | |
| double | step |
| Distance between nodes, meters. | |
| double | totalTime |
| Simulation time, seconds. | |
Test script.
This script creates 1-dimensional grid topology and Traceroute the last node from the first one:
[10.0.0.1] <– step --> [10.0.0.2] <– step --> [10.0.0.3] <– step --> [10.0.0.4]
The results should be all the intermediate hops all the way to 10.0.0.10
Usage:
traceroute 10.0.0.10
Definition at line 54 of file traceroute-example.cc.
| TracerouteExample::TracerouteExample | ( | ) |
Definition at line 119 of file traceroute-example.cc.
| bool TracerouteExample::Configure | ( | int | argc, |
| char ** | argv | ||
| ) |
Configure script parameters.
| argc | is the command line argument count |
| argv | is the command line arguments |
Definition at line 129 of file traceroute-example.cc.
References pcap, printRoutes, ns3::RngSeedManager::SetSeed(), size, step, and totalTime.
Here is the call graph for this function:
|
private |
Create the devices.
Definition at line 202 of file traceroute-example.cc.
References ns3::YansWifiChannelHelper::Create(), ns3::YansWifiChannelHelper::Default(), devices, ns3::PcapHelperForDevice::EnablePcapAll(), nodes, pcap, ns3::YansWifiPhyHelper::SetChannel(), and ns3::WifiMacHelper::SetType().
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Create the nodes.
Definition at line 171 of file traceroute-example.cc.
References ns3::Names::Add(), ns3::NodeContainer::Create(), ns3::NodeContainer::Get(), nodes, size, and step.
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Create the simulation applications.
Definition at line 244 of file traceroute-example.cc.
References ns3::NodeContainer::Get(), ns3::V4TraceRouteHelper::Install(), nodes, ns3::Seconds(), ns3::V4TraceRouteHelper::SetAttribute(), ns3::ApplicationContainer::Start(), ns3::ApplicationContainer::Stop(), and totalTime.
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Create the network.
Definition at line 224 of file traceroute-example.cc.
References devices, interfaces, nodes, printRoutes, ns3::Ipv4RoutingHelper::PrintRoutingTableAllAt(), and ns3::Seconds().
Referenced by Run().
Here is the call graph for this function:
Here is the caller graph for this function:| void TracerouteExample::Report | ( | std::ostream & | os | ) |
Report results.
| os | the output stream |
Definition at line 166 of file traceroute-example.cc.
| void TracerouteExample::Run | ( | ) |
Run simulation.
Definition at line 148 of file traceroute-example.cc.
References CreateDevices(), CreateNodes(), ns3::Simulator::Destroy(), InstallApplications(), InstallInternetStack(), ns3::Simulator::Run(), ns3::Seconds(), ns3::Simulator::Stop(), and totalTime.
Here is the call graph for this function:
|
private |
devices used in the example
Definition at line 88 of file traceroute-example.cc.
Referenced by CreateDevices(), and InstallInternetStack().
|
private |
interfaces used in the example
Definition at line 90 of file traceroute-example.cc.
Referenced by InstallInternetStack().
|
private |
nodes used in the example
Definition at line 86 of file traceroute-example.cc.
Referenced by CreateDevices(), CreateNodes(), InstallApplications(), and InstallInternetStack().
|
private |
Write per-device PCAP traces if true.
Definition at line 82 of file traceroute-example.cc.
Referenced by Configure(), and CreateDevices().
|
private |
Print aodv routes if true.
Definition at line 84 of file traceroute-example.cc.
Referenced by Configure(), and InstallInternetStack().
|
private |
Number of nodes.
Definition at line 76 of file traceroute-example.cc.
Referenced by Configure(), and CreateNodes().
|
private |
Distance between nodes, meters.
Definition at line 78 of file traceroute-example.cc.
Referenced by Configure(), and CreateNodes().
|
private |
Simulation time, seconds.
Definition at line 80 of file traceroute-example.cc.
Referenced by Configure(), InstallApplications(), and Run().