examples: increase regression coverage of wifi rate managers
This commit is contained in:
@@ -45,7 +45,15 @@ cpp_examples = [
|
||||
("80211e-txop --simulationTime=1 --verifyResults=1", "True", "True"),
|
||||
("wifi-multi-tos --simulationTime=1 --nWifi=16 --useRts=1 --useShortGuardInterval=1", "True", "True"),
|
||||
("wifi-tcp", "True", "True"),
|
||||
("wifi-hidden-terminal", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Arf", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Aarf", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Aarfcd", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Onoe", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Amrr", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Minstrel", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Cara", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Rraa", "True", "True"),
|
||||
("wifi-hidden-terminal --wifiManager=Rrpaa", "True", "Ideal"),
|
||||
("wifi-spectrum-per-example --distance=52 --index=3 --wifiType=ns3::SpectrumWifiPhy --simulationTime=1", "True", "True"),
|
||||
("wifi-spectrum-per-example --distance=24 --index=31 --wifiType=ns3::YansWifiPhy --simulationTime=1", "True", "False"),
|
||||
("wifi-spectrum-per-interference --distance=24 --index=31 --simulationTime=1 --waveformPower=0.1", "True", "True"),
|
||||
|
||||
@@ -40,8 +40,8 @@
|
||||
|
||||
using namespace ns3;
|
||||
|
||||
/// Run single 10 seconds experiment with enabled or disabled RTS/CTS mechanism
|
||||
void experiment (bool enableCtsRts)
|
||||
/// Run single 10 seconds experiment
|
||||
void experiment (bool enableCtsRts, std::string wifiManager)
|
||||
{
|
||||
// 0. Enable or disable CTS/RTS
|
||||
UintegerValue ctsThr = (enableCtsRts ? UintegerValue (100) : UintegerValue (2200));
|
||||
@@ -71,9 +71,7 @@ void experiment (bool enableCtsRts)
|
||||
// 5. Install wireless devices
|
||||
WifiHelper wifi;
|
||||
wifi.SetStandard (WIFI_PHY_STANDARD_80211b);
|
||||
wifi.SetRemoteStationManager ("ns3::ConstantRateWifiManager",
|
||||
"DataMode",StringValue ("DsssRate2Mbps"),
|
||||
"ControlMode",StringValue ("DsssRate1Mbps"));
|
||||
wifi.SetRemoteStationManager ("ns3::" + wifiManager + "WifiManager");
|
||||
YansWifiPhyHelper wifiPhy = YansWifiPhyHelper::Default ();
|
||||
wifiPhy.SetChannel (wifiChannel);
|
||||
WifiMacHelper wifiMac;
|
||||
@@ -174,14 +172,16 @@ void experiment (bool enableCtsRts)
|
||||
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
std::string wifiManager ("Arf");
|
||||
CommandLine cmd;
|
||||
cmd.AddValue ("wifiManager", "Set wifi rate manager (Aarf, Aarfcd, Amrr, Arf, Cara, Ideal, Minstrel, Onoe, Rraa)", wifiManager);
|
||||
cmd.Parse (argc, argv);
|
||||
|
||||
std::cout << "Hidden station experiment with RTS/CTS disabled:\n" << std::flush;
|
||||
experiment (false);
|
||||
experiment (false, wifiManager);
|
||||
std::cout << "------------------------------------------------\n";
|
||||
std::cout << "Hidden station experiment with RTS/CTS enabled:\n";
|
||||
experiment (true);
|
||||
experiment (true, wifiManager);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user