Public Member Functions | |
DsdvManetExample () | |
void | CaseRun (uint32_t nWifis, uint32_t nSinks, double totalTime, std::string rate, std::string phyMode, uint32_t nodeSpeed, uint32_t periodicUpdateInterval, uint32_t settlingTime, double dataStart, bool printRoutes, std::string CSVfileName) |
Private Member Functions | |
void | CheckThroughput () |
void | CreateDevices (std::string tr_name) |
void | CreateNodes () |
void | InstallApplications () |
void | InstallInternetStack (std::string tr_name) |
void | ReceivePacket (Ptr< Socket >) |
void | SetupMobility () |
Ptr< Socket > | SetupPacketReceive (Ipv4Address, Ptr< Node >) |
Private Attributes | |
uint32_t | bytesTotal |
NetDeviceContainer | devices |
Ipv4InterfaceContainer | interfaces |
std::string | m_CSVfileName |
double | m_dataStart |
uint32_t | m_nodeSpeed |
uint32_t | m_nSinks |
uint32_t | m_nWifis |
uint32_t | m_periodicUpdateInterval |
std::string | m_phyMode |
bool | m_printRoutes |
std::string | m_rate |
uint32_t | m_settlingTime |
double | m_totalTime |
NodeContainer | nodes |
uint32_t | packetsReceived |
Definition at line 48 of file dsdv-manet.cc.
DsdvManetExample::DsdvManetExample | ( | ) |
Definition at line 147 of file dsdv-manet.cc.
void DsdvManetExample::CaseRun | ( | uint32_t | nWifis, |
uint32_t | nSinks, | ||
double | totalTime, | ||
std::string | rate, | ||
std::string | phyMode, | ||
uint32_t | nodeSpeed, | ||
uint32_t | periodicUpdateInterval, | ||
uint32_t | settlingTime, | ||
double | dataStart, | ||
bool | printRoutes, | ||
std::string | CSVfileName | ||
) |
Definition at line 194 of file dsdv-manet.cc.
References CheckThroughput(), CreateDevices(), CreateNodes(), InstallApplications(), InstallInternetStack(), m_CSVfileName, m_dataStart, m_nodeSpeed, m_nSinks, m_nWifis, m_periodicUpdateInterval, m_phyMode, m_printRoutes, m_rate, m_settlingTime, m_totalTime, and SetupMobility().
Referenced by main().
|
private |
Definition at line 166 of file dsdv-manet.cc.
References bytesTotal, m_CSVfileName, m_nSinks, ns3::Now(), and packetsReceived.
Referenced by CaseRun().
|
private |
Definition at line 266 of file dsdv-manet.cc.
References ns3::YansWifiChannelHelper::AddPropagationLoss(), ns3::YansWifiChannelHelper::Create(), ns3::AsciiTraceHelper::CreateFileStream(), devices, ns3::AsciiTraceHelperForDevice::EnableAsciiAll(), ns3::PcapHelperForDevice::EnablePcapAll(), ns3::WifiHelper::Install(), m_phyMode, nodes, ns3::YansWifiPhyHelper::SetChannel(), ns3::YansWifiChannelHelper::SetPropagationDelay(), ns3::WifiHelper::SetRemoteStationManager(), ns3::WifiHelper::SetStandard(), ns3::NqosWifiMacHelper::SetType(), and ns3::WIFI_PHY_STANDARD_80211b.
Referenced by CaseRun().
|
private |
Definition at line 237 of file dsdv-manet.cc.
References ns3::NodeContainer::Create(), m_nSinks, m_nWifis, nodes, and NS_ASSERT_MSG.
Referenced by CaseRun().
|
private |
Definition at line 306 of file dsdv-manet.cc.
References ns3::NodeContainer::Get(), ns3::Ipv4InterfaceContainer::GetAddress(), ns3::Object::GetObject(), ns3::UniformRandomVariable::GetValue(), interfaces, m_dataStart, m_nSinks, m_nWifis, m_totalTime, nodes, port, ns3::OnOffHelper::SetAttribute(), SetupPacketReceive(), ns3::ApplicationContainer::Start(), and ns3::ApplicationContainer::Stop().
Referenced by CaseRun().
|
private |
Definition at line 287 of file dsdv-manet.cc.
References first::address, ns3::Ipv4AddressHelper::Assign(), devices, ns3::InternetStackHelper::Install(), interfaces, m_periodicUpdateInterval, m_printRoutes, m_settlingTime, nodes, ns3::Ipv4RoutingHelper::PrintRoutingTableAllAt(), ns3::DsdvHelper::Set(), ns3::Ipv4AddressHelper::SetBase(), ns3::InternetStackHelper::SetRoutingHelper(), and first::stack.
Referenced by CaseRun().
Definition at line 154 of file dsdv-manet.cc.
References bytesTotal, ns3::Packet::GetSize(), ns3::Now(), NS_LOG_UNCOND, packetsReceived, and ns3::Socket::Recv().
Referenced by SetupPacketReceive().
|
private |
Definition at line 245 of file dsdv-manet.cc.
References ns3::ObjectFactory::Create(), ns3::Object::GetObject(), ns3::MobilityHelper::Install(), m_nodeSpeed, nodes, ns3::ObjectFactory::Set(), ns3::MobilityHelper::SetMobilityModel(), ns3::MobilityHelper::SetPositionAllocator(), and ns3::ObjectFactory::SetTypeId().
Referenced by CaseRun().
|
private |
Definition at line 181 of file dsdv-manet.cc.
References ns3::Socket::Bind(), ns3::MakeCallback(), port, ReceivePacket(), and ns3::Socket::SetRecvCallback().
Referenced by InstallApplications().
|
private |
Definition at line 74 of file dsdv-manet.cc.
Referenced by CheckThroughput(), and ReceivePacket().
|
private |
Definition at line 80 of file dsdv-manet.cc.
Referenced by CreateDevices(), and InstallInternetStack().
|
private |
Definition at line 81 of file dsdv-manet.cc.
Referenced by InstallApplications(), and InstallInternetStack().
|
private |
Definition at line 77 of file dsdv-manet.cc.
Referenced by CaseRun(), and CheckThroughput().
|
private |
Definition at line 73 of file dsdv-manet.cc.
Referenced by CaseRun(), and InstallApplications().
|
private |
Definition at line 70 of file dsdv-manet.cc.
Referenced by CaseRun(), and SetupMobility().
|
private |
Definition at line 66 of file dsdv-manet.cc.
Referenced by CaseRun(), CheckThroughput(), CreateNodes(), and InstallApplications().
|
private |
Definition at line 65 of file dsdv-manet.cc.
Referenced by CaseRun(), CreateNodes(), and InstallApplications().
|
private |
Definition at line 71 of file dsdv-manet.cc.
Referenced by CaseRun(), and InstallInternetStack().
|
private |
Definition at line 69 of file dsdv-manet.cc.
Referenced by CaseRun(), and CreateDevices().
|
private |
Definition at line 76 of file dsdv-manet.cc.
Referenced by CaseRun(), and InstallInternetStack().
|
private |
Definition at line 68 of file dsdv-manet.cc.
Referenced by CaseRun().
|
private |
Definition at line 72 of file dsdv-manet.cc.
Referenced by CaseRun(), and InstallInternetStack().
|
private |
Definition at line 67 of file dsdv-manet.cc.
Referenced by CaseRun(), and InstallApplications().
|
private |
Definition at line 79 of file dsdv-manet.cc.
Referenced by visualizer.core.Visualizer::autoscale_view(), visualizer.core.Visualizer::center_on_node(), CreateDevices(), CreateNodes(), visualizer.core.Visualizer::get_node(), InstallApplications(), InstallInternetStack(), visualizer.core.Visualizer::scan_topology(), visualizer.core.Visualizer::select_node(), visualizer.core.Visualizer::set_follow_node(), and SetupMobility().
|
private |
Definition at line 75 of file dsdv-manet.cc.
Referenced by CheckThroughput(), and ReceivePacket().