Test script. More...
Public Member Functions | |
TracerouteExample () | |
bool | Configure (int argc, char **argv) |
Configure script parameters. More... | |
void | Report (std::ostream &os) |
Report results. More... | |
void | Run () |
Run simulation. More... | |
Private Member Functions | |
void | CreateDevices () |
Create the devices. More... | |
void | CreateNodes () |
Create the nodes. More... | |
void | InstallApplications () |
Create the simulation applications. More... | |
void | InstallInternetStack () |
Create the network. More... | |
Private Attributes | |
NetDeviceContainer | devices |
devices used in the example More... | |
Ipv4InterfaceContainer | interfaces |
interfaces used in the example More... | |
NodeContainer | nodes |
nodes used in the example More... | |
bool | pcap |
Write per-device PCAP traces if true. More... | |
bool | printRoutes |
Print aodv routes if true. More... | |
uint32_t | size |
Number of nodes. More... | |
double | step |
Distance between nodes, meters. More... | |
double | totalTime |
Simulation time, seconds. More... | |
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 second::cmd, pcap, printRoutes, size, step, and totalTime.
|
private |
Create the devices.
Definition at line 202 of file traceroute-example.cc.
References ns3::YansWifiChannelHelper::Create(), devices, ns3::PcapHelperForDevice::EnablePcapAll(), nodes, pcap, ns3::YansWifiPhyHelper::SetChannel(), ns3::WifiMacHelper::SetType(), and third::wifi.
Referenced by Run().
|
private |
Create the nodes.
Definition at line 171 of file traceroute-example.cc.
References ns3::NodeContainer::Create(), ns3::NodeContainer::Get(), third::mobility, nodes, size, and step.
Referenced by Run().
|
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().
|
private |
Create the network.
Definition at line 224 of file traceroute-example.cc.
References first::address, devices, interfaces, nodes, printRoutes, ns3::Seconds(), and first::stack.
Referenced by Run().
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(), InstallApplications(), InstallInternetStack(), ns3::Seconds(), and totalTime.
|
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().