examples: increase regression coverage of wifi rate managers

This commit is contained in:
Sébastien Deronne
2017-12-27 09:23:12 +01:00
parent b137c16157
commit 8b2874456d
2 changed files with 16 additions and 8 deletions

View File

@@ -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"),

View File

@@ -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;
}