#include <fstream>
#include <iostream>
#include "ns3/core-module.h"
#include "ns3/network-module.h"
#include "ns3/internet-module.h"
#include "ns3/mobility-module.h"
#include "ns3/aodv-module.h"
#include "ns3/olsr-module.h"
#include "ns3/dsdv-module.h"
#include "ns3/dsr-module.h"
#include "ns3/applications-module.h"
#include "ns3/itu-r-1411-los-propagation-loss-model.h"
#include "ns3/ocb-wifi-mac.h"
#include "ns3/wifi-80211p-helper.h"
#include "ns3/wave-mac-helper.h"
#include "ns3/flow-monitor-module.h"
#include "ns3/config-store-module.h"
#include "ns3/integer.h"
#include "ns3/wave-bsm-helper.h"
#include "ns3/wave-helper.h"
#include "ns3/yans-wifi-helper.h"
Go to the source code of this file.
Classes | |
class | ConfigStoreHelper |
The ConfigStoreHelper class simplifies config-store raw text load and save. More... | |
class | RoutingHelper |
The RoutingHelper class generates routing data between nodes (vehicles) and uses the RoutingStats class to collect statistics on routing data (application-data packet and byte counts). More... | |
class | RoutingStats |
The RoutingStats class manages collects statistics on routing data (application-data packet and byte counts) for the vehicular network. More... | |
class | VanetRoutingExperiment |
The VanetRoutingExperiment class implements a wifi app that allows VANET routing experiments to be simulated. More... | |
class | WifiApp |
The WifiApp class enforces program flow for ns-3 wifi applications. More... | |
class | WifiPhyStats |
The WifiPhyStats class collects Wifi MAC/PHY statistics. More... | |
Functions | |
static std::string | PrintReceivedRoutingPacket (Ptr< Socket > socket, Ptr< Packet > packet, Address srcAddress) |
Print a received routing packet on a string. More... | |
Variables | |
static ns3::GlobalValue | g_80211mode ("VRC80211mode", "802.11 mode (0=802.11a;1=802.11p)", ns3::UintegerValue(1), ns3::MakeUintegerChecker< uint32_t >()) |
802.11 mode (0=802.11a;1=802.11p) More... | |
static ns3::GlobalValue | g_asciiTrace ("VRCasciiTrace", "Dump ASCII trace 0=no;1=yes", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Dump ASCII trace 0=no;1=yes. More... | |
static ns3::GlobalValue | g_CSVfileName ("VRCCSVfileName", "CSV filename (for time series data)", ns3::StringValue("vanet-routing.output.csv"), ns3::MakeStringChecker()) |
CSV filename (for time series data) More... | |
static ns3::GlobalValue | g_CSVfileName2 ("VRCCSVfileName2", "CSV filename 2 (for overall simulation scenario results)", ns3::StringValue("vanet-routing.output2.csv"), ns3::MakeStringChecker()) |
CSV filename 2 (for overall simulation scenario results) More... | |
static ns3::GlobalValue | g_cumulativeBsmCaptureStart ("VRCcumulativeBsmCaptureStart", "Simulation start time for capturing cumulative BSM", ns3::TimeValue(Seconds(0)), ns3::MakeTimeChecker()) |
Simulation start time for capturing cumulative BSM. More... | |
static ns3::GlobalValue | g_fading ("VRCfading", "Fast Fading Model", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Fast Fading Model. More... | |
static ns3::GlobalValue | g_gpsAccuracyNs ("VRCgpsAccuracyNs", "GPS sync accuracy (ns)", ns3::DoubleValue(40), ns3::MakeDoubleChecker< double >()) |
GPS sync accuracy (ns) More... | |
static ns3::GlobalValue | g_logFile ("VRClogFile", "Log filename", ns3::StringValue("low99-ct-unterstrass-1day.filt.7.adj.log"), ns3::MakeStringChecker()) |
Log filename. More... | |
static ns3::GlobalValue | g_lossModel ("VRClossModel", "Propagation Loss Model", ns3::UintegerValue(3), ns3::MakeUintegerChecker< uint32_t >()) |
Propagation Loss Model. More... | |
static ns3::GlobalValue | g_mobility ("VRCmobility", "Mobility mode 0=random waypoint;1=mobility trace file", ns3::UintegerValue(1), ns3::MakeUintegerChecker< uint32_t >()) |
Mobility mode 0=random waypoint;1=mobility trace file. More... | |
static ns3::GlobalValue | g_nNodes ("VRCnNodes", "Number of nodes (vehicles)", ns3::UintegerValue(156), ns3::MakeUintegerChecker< uint32_t >()) |
Number of nodes (vehicles) More... | |
static ns3::GlobalValue | g_nodePause ("VRCnodePause", "Node pause time (s) for RWP model", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Node pause time (s) for RWP model. More... | |
static ns3::GlobalValue | g_nodeSpeed ("VRCnodeSpeed", "Node speed (m/s) for RWP model", ns3::UintegerValue(20), ns3::MakeUintegerChecker< uint32_t >()) |
Node speed (m/s) for RWP model. More... | |
static ns3::GlobalValue | g_nSinks ("VRCnSinks", "Number of sink nodes for routing non-BSM traffic", ns3::UintegerValue(10), ns3::MakeUintegerChecker< uint32_t >()) |
Number of sink nodes for routing non-BSM traffic. More... | |
static ns3::GlobalValue | g_pcap ("VRCpcap", "Generate PCAP files 0=no;1=yes", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Generate PCAP files 0=no;1=yes. More... | |
static ns3::GlobalValue | g_phyMode ("VRCphyMode", "PHY mode (802.11p)", ns3::StringValue("OfdmRate6MbpsBW10MHz"), ns3::MakeStringChecker()) |
PHY mode (802.11p) More... | |
static ns3::GlobalValue | g_phyModeB ("VRCphyModeB", "PHY mode (802.11a)", ns3::StringValue("DsssRate11Mbps"), ns3::MakeStringChecker()) |
PHY mode (802.11a) More... | |
static ns3::GlobalValue | g_port ("VRCport", "Port", ns3::UintegerValue(9), ns3::MakeUintegerChecker< uint32_t >()) |
Port. More... | |
static ns3::GlobalValue | g_protocol ("VRCprotocol", "Routing protocol", ns3::UintegerValue(2), ns3::MakeUintegerChecker< uint32_t >()) |
Routing protocol. More... | |
static ns3::GlobalValue | g_rate ("VRCrate", "Data rate", ns3::StringValue("2048bps"), ns3::MakeStringChecker()) |
Data rate. More... | |
static ns3::GlobalValue | g_routingTables ("VRCroutingTables", "Dump routing tables at t=5 seconds 0=no;1=yes", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Dump routing tables at t=5 seconds 0=no;1=yes. More... | |
static ns3::GlobalValue | g_scenario ("VRCscenario", "Scenario", ns3::UintegerValue(1), ns3::MakeUintegerChecker< uint32_t >()) |
Scenario. More... | |
static ns3::GlobalValue | g_totalTime ("VRCtotalTime", "Total simulation time (s)", ns3::DoubleValue(300.01), ns3::MakeDoubleChecker< double >()) |
Total simulation time (s) More... | |
static ns3::GlobalValue | g_traceFile ("VRCtraceFile", "Mobility trace filename", ns3::StringValue("./src/wave/examples/low99-ct-unterstrass-1day.filt.7.adj.mob"), ns3::MakeStringChecker()) |
Mobility trace filename. More... | |
static ns3::GlobalValue | g_traceMobility ("VRCtraceMobility", "Trace mobility 1=yes;0=no", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Trace mobility 1=yes;0=no. More... | |
static ns3::GlobalValue | g_trName ("VRCtrName", "Trace name", ns3::StringValue("vanet-routing-compare"), ns3::MakeStringChecker()) |
Trace name) More... | |
static ns3::GlobalValue | g_txMaxDelayMs ("VRCtxMaxDelayMs", "Tx May Delay (ms)", ns3::DoubleValue(10), ns3::MakeDoubleChecker< double >()) |
Tx May Delay (ms) More... | |
static ns3::GlobalValue | g_txp ("VRCtxp", "Transmission power dBm", ns3::DoubleValue(7.5), ns3::MakeDoubleChecker< double >()) |
Transmission power dBm. More... | |
static ns3::GlobalValue | g_txSafetyRange1 ("VRCtxSafetyRange1", "BSM range for PDR inclusion", ns3::DoubleValue(50.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange10 ("VRCtxSafetyRange10", "BSM range for PDR inclusion", ns3::DoubleValue(500.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange2 ("VRCtxSafetyRange2", "BSM range for PDR inclusion", ns3::DoubleValue(100.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange3 ("VRCtxSafetyRange3", "BSM range for PDR inclusion", ns3::DoubleValue(150.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange4 ("VRCtxSafetyRange4", "BSM range for PDR inclusion", ns3::DoubleValue(200.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange5 ("VRCtxSafetyRange5", "BSM range for PDR inclusion", ns3::DoubleValue(250.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange6 ("VRCtxSafetyRange6", "BSM range for PDR inclusion", ns3::DoubleValue(300.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange7 ("VRCtxSafetyRange7", "BSM range for PDR inclusion", ns3::DoubleValue(350.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange8 ("VRCtxSafetyRange8", "BSM range for PDR inclusion", ns3::DoubleValue(400.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_txSafetyRange9 ("VRCtxSafetyRange9", "BSM range for PDR inclusion", ns3::DoubleValue(450.0), ns3::MakeDoubleChecker< double >()) |
BSM range for PDR inclusion. More... | |
static ns3::GlobalValue | g_verbose ("VRCverbose", "Verbose 0=no;1=yes", ns3::UintegerValue(0), ns3::MakeUintegerChecker< uint32_t >()) |
Verbose 0=no;1=yes. More... | |
static ns3::GlobalValue | g_waveInterval ("VRCwaveInterval", "Interval (s) between WAVE BSMs", ns3::DoubleValue(0.1), ns3::MakeDoubleChecker< double >()) |
Interval (s) between WAVE BSMs. More... | |
static ns3::GlobalValue | g_wavePacketSize ("VRCwavePacketSize", "Size in bytes of WAVE BSM", ns3::UintegerValue(200), ns3::MakeUintegerChecker< uint32_t >()) |
Size in bytes of WAVE BSM. More... | |
$ ./ns3 run "vanet-routing-compare [Program Options]"
–CSVfileName
–CSVfileName2
–totaltime
–nodes
–sinks
–txp
–traceMobility
–protocol
–lossModel
–fading
–phyMode
–80211Mode
–traceFile
–logFile
–mobility
–rate
–phyModeB
–speed
–pause
–verbose
–bsm
–interval
–scenario
–txdist1
–txdist2
–txdist3
–txdist4
–txdist5
–txdist6
–txdist7
–txdist8
–txdist9
–txdist10
–gpsaccuracy
–txmaxdelay
–routingTables
–asciiTrace
–pcap
–loadconfig
–saveconfig
–exp
–BsmCaptureStart
Definition in file vanet-routing-compare.cc.
|
inlinestatic |
Print a received routing packet on a string.
socket | Rx socket |
packet | Rx packet |
srcAddress | source address |
Definition at line 652 of file vanet-routing-compare.cc.
References ns3::Time::As(), ns3::Node::GetId(), ns3::InetSocketAddress::GetIpv4(), ns3::Socket::GetNode(), and ns3::Now().
Referenced by RoutingHelper::ReceiveRoutingPacket().
|
static |
802.11 mode (0=802.11a;1=802.11p)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Dump ASCII trace 0=no;1=yes.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
CSV filename (for time series data)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
CSV filename 2 (for overall simulation scenario results)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Simulation start time for capturing cumulative BSM.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Fast Fading Model.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
GPS sync accuracy (ns)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Log filename.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Propagation Loss Model.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Mobility mode 0=random waypoint;1=mobility trace file.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Number of nodes (vehicles)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Node pause time (s) for RWP model.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Node speed (m/s) for RWP model.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Number of sink nodes for routing non-BSM traffic.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Generate PCAP files 0=no;1=yes.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
PHY mode (802.11p)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
PHY mode (802.11a)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Port.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Routing protocol.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Data rate.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Dump routing tables at t=5 seconds 0=no;1=yes.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Scenario.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Total simulation time (s)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Mobility trace filename.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Trace mobility 1=yes;0=no.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Trace name)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Tx May Delay (ms)
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Transmission power dBm.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
BSM range for PDR inclusion.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Verbose 0=no;1=yes.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Interval (s) between WAVE BSMs.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().
|
static |
Size in bytes of WAVE BSM.
Referenced by VanetRoutingExperiment::SetGlobalsFromConfig().