wifi: Remove Holland (solves #278)
This commit is contained in:
@@ -67,6 +67,7 @@ us a note on ns-developers mailing list.</p>
|
||||
<h2>Changed behavior:</h2>
|
||||
<ul>
|
||||
<li>The default <b>TCP congestion control</b> has been changed from NewReno to CUBIC.</li>
|
||||
<li>The 802.11a-like PHY configuration known as <b>Holland</b> has been removed from the wifi module. It was added in the 2005 timeframe for Wi-Fi rate control research but hasn't been used for quite some time.</li>
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
|
||||
@@ -27,6 +27,7 @@ requirements (Note: not all ns-3 features are available on all systems):
|
||||
New user-visible features
|
||||
-------------------------
|
||||
- (sixlowpan) Added support for stateful (i.e., context-based) RFC6282 compression.
|
||||
- (wifi) Holland PHY configuration has been removed from the model
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
|
||||
@@ -241,7 +241,6 @@ int main (int argc, char *argv[])
|
||||
gnuplot.GenerateOutput (std::cout);
|
||||
|
||||
gnuplot = Gnuplot ("rate-control.png");
|
||||
wifi.SetStandard (WIFI_STANDARD_holland);
|
||||
|
||||
NS_LOG_DEBUG ("arf");
|
||||
experiment = Experiment ("arf");
|
||||
|
||||
@@ -67,10 +67,6 @@ WifiStandard ConvertStringToStandard (std::string version)
|
||||
{
|
||||
standard = WIFI_STANDARD_80211p;
|
||||
}
|
||||
else if (version == "holland")
|
||||
{
|
||||
standard = WIFI_STANDARD_holland;
|
||||
}
|
||||
else if (version == "80211n_2_4GHZ")
|
||||
{
|
||||
standard = WIFI_STANDARD_80211n_2_4GHZ;
|
||||
@@ -107,8 +103,8 @@ int main (int argc, char *argv[])
|
||||
|
||||
CommandLine cmd (__FILE__);
|
||||
cmd.AddValue ("simulationTime", "Simulation time in seconds", simulationTime);
|
||||
cmd.AddValue ("apVersion", "The standard version used by the AP: 80211a, 80211b, 80211g, 80211p, holland, 80211n_2_4GHZ, 80211n_5GHZ, 80211ac, 80211ax_2_4GHZ or 80211ax_5GHZ", apVersion);
|
||||
cmd.AddValue ("staVersion", "The standard version used by the station: 80211a, 80211b, 80211g, 80211_10MHZ, 80211_5MHZ, holland, 80211n_2_4GHZ, 80211n_5GHZ, 80211ac, 80211ax_2_4GHZ or 80211ax_5GHZ", staVersion);
|
||||
cmd.AddValue ("apVersion", "The standard version used by the AP: 80211a, 80211b, 80211g, 80211p, 80211n_2_4GHZ, 80211n_5GHZ, 80211ac, 80211ax_2_4GHZ or 80211ax_5GHZ", apVersion);
|
||||
cmd.AddValue ("staVersion", "The standard version used by the station: 80211a, 80211b, 80211g, 80211_10MHZ, 80211_5MHZ, 80211n_2_4GHZ, 80211n_5GHZ, 80211ac, 80211ax_2_4GHZ or 80211ax_5GHZ", staVersion);
|
||||
cmd.AddValue ("apRaa", "Rate adaptation algorithm used by the AP", apRaa);
|
||||
cmd.AddValue ("staRaa", "Rate adaptation algorithm used by the station", staRaa);
|
||||
cmd.AddValue ("apHasTraffic", "Enable/disable traffic on the AP", apHasTraffic);
|
||||
|
||||
@@ -601,7 +601,7 @@ int main (int argc, char *argv[])
|
||||
|
||||
wifiMac.SetType ("ns3::AdhocWifiMac",
|
||||
"Ssid", StringValue ("Testbed"));
|
||||
wifi.SetStandard (WIFI_STANDARD_holland);
|
||||
wifi.SetStandard (WIFI_STANDARD_80211a);
|
||||
wifi.SetRemoteStationManager (experiment.GetRateManager ());
|
||||
|
||||
NS_LOG_INFO ("Scenario: " << experiment.GetScenario ());
|
||||
|
||||
@@ -256,7 +256,6 @@ The following values for WifiStandard are defined in
|
||||
WIFI_STANDARD_80211b,
|
||||
WIFI_STANDARD_80211g,
|
||||
WIFI_STANDARD_80211p,
|
||||
WIFI_STANDARD_holland,
|
||||
WIFI_STANDARD_80211n_2_4GHZ,
|
||||
WIFI_STANDARD_80211n_5GHZ,
|
||||
WIFI_STANDARD_80211ac,
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
// By default, the 802.11a standard using IdealWifiManager is plotted. Several command line
|
||||
// arguments can change the following options:
|
||||
// --wifiManager (Aarf, Aarfcd, Amrr, Arf, Cara, Ideal, Minstrel, MinstrelHt, Onoe, Rraa)
|
||||
// --standard (802.11a, 802.11b, 802.11g, 802.11n-5GHz, 802.11n-2.4GHz, 802.11ac, 802.11-holland, 802.11p-10MHz, 802.11p-5MHz)
|
||||
// --standard (802.11a, 802.11b, 802.11g, 802.11n-5GHz, 802.11n-2.4GHz, 802.11ac, 802.11p-10MHz, 802.11p-5MHz)
|
||||
// --serverShortGuardInterval and --clientShortGuardInterval (for 802.11n/ac)
|
||||
// --serverNss and --clientNss (for 802.11n/ac)
|
||||
// --serverChannelWidth and --clientChannelWidth (for 802.11n/ac)
|
||||
@@ -186,7 +186,7 @@ int main (int argc, char *argv[])
|
||||
cmd.AddValue ("clientNss", "Set nss of the client (valid only for 802.11n or ac)", clientNss);
|
||||
cmd.AddValue ("serverShortGuardInterval", "Set short guard interval of the server (802.11n/ac/ax) in nanoseconds", serverShortGuardInterval);
|
||||
cmd.AddValue ("clientShortGuardInterval", "Set short guard interval of the client (802.11n/ac/ax) in nanoseconds", clientShortGuardInterval);
|
||||
cmd.AddValue ("standard", "Set standard (802.11a, 802.11b, 802.11g, 802.11n-5GHz, 802.11n-2.4GHz, 802.11ac, 802.11-holland, 802.11p-10MHz, 802.11p-5MHz, 802.11ax-5GHz, 802.11ax-2.4GHz)", standard);
|
||||
cmd.AddValue ("standard", "Set standard (802.11a, 802.11b, 802.11g, 802.11n-5GHz, 802.11n-2.4GHz, 802.11ac, 802.11p-10MHz, 802.11p-5MHz, 802.11ax-5GHz, 802.11ax-2.4GHz)", standard);
|
||||
cmd.AddValue ("wifiManager", "Set wifi rate manager (Aarf, Aarfcd, Amrr, Arf, Cara, Ideal, Minstrel, MinstrelHt, Onoe, Rraa)", wifiManager);
|
||||
cmd.AddValue ("infrastructure", "Use infrastructure instead of adhoc", infrastructure);
|
||||
cmd.Parse (argc,argv);
|
||||
@@ -252,7 +252,6 @@ int main (int argc, char *argv[])
|
||||
serverStandards.push_back (StandardInfo ("802.11n-5GHz", WIFI_STANDARD_80211n_5GHZ, serverChannelWidth, 3, 30, 0, 35, 80 * channelRateFactor));
|
||||
serverStandards.push_back (StandardInfo ("802.11n-2.4GHz", WIFI_STANDARD_80211n_2_4GHZ, serverChannelWidth, 3, 30, 0, 35, 80 * channelRateFactor));
|
||||
serverStandards.push_back (StandardInfo ("802.11ac", WIFI_STANDARD_80211ac, serverChannelWidth, 5, 50, 0, 55, 120 * channelRateFactor));
|
||||
serverStandards.push_back (StandardInfo ("802.11-holland", WIFI_STANDARD_holland, 20, 3, 27, 0, 30, 60));
|
||||
serverStandards.push_back (StandardInfo ("802.11p-10MHz", WIFI_STANDARD_80211p, 10, 3, 27, 0, 30, 60));
|
||||
serverStandards.push_back (StandardInfo ("802.11p-5MHz", WIFI_STANDARD_80211p, 5, 3, 27, 0, 30, 60));
|
||||
serverStandards.push_back (StandardInfo ("802.11ax-5GHz", WIFI_STANDARD_80211ax_5GHZ, serverChannelWidth, 5, 55, 0, 60, 120 * channelRateFactor));
|
||||
@@ -264,7 +263,6 @@ int main (int argc, char *argv[])
|
||||
clientStandards.push_back (StandardInfo ("802.11n-5GHz", WIFI_STANDARD_80211n_5GHZ, clientChannelWidth, 3, 30, 0, 35, 80 * channelRateFactor));
|
||||
clientStandards.push_back (StandardInfo ("802.11n-2.4GHz", WIFI_STANDARD_80211n_2_4GHZ, clientChannelWidth, 3, 30, 0, 35, 80 * channelRateFactor));
|
||||
clientStandards.push_back (StandardInfo ("802.11ac", WIFI_STANDARD_80211ac, clientChannelWidth, 5, 50, 0, 55, 120 * channelRateFactor));
|
||||
clientStandards.push_back (StandardInfo ("802.11-holland", WIFI_STANDARD_holland, 20, 3, 27, 0, 30, 60));
|
||||
clientStandards.push_back (StandardInfo ("802.11p-10MHz", WIFI_STANDARD_80211p, 10, 3, 27, 0, 30, 60));
|
||||
clientStandards.push_back (StandardInfo ("802.11p-5MHz", WIFI_STANDARD_80211p, 5, 3, 27, 0, 30, 60));
|
||||
clientStandards.push_back (StandardInfo ("802.11ax-5GHz", WIFI_STANDARD_80211ax_5GHZ, clientChannelWidth, 5, 55, 0, 60, 160 * channelRateFactor));
|
||||
|
||||
@@ -237,17 +237,6 @@ int main (int argc, char *argv[])
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 12:
|
||||
wifi.SetStandard (WIFI_STANDARD_holland);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
apDevice = wifi.Install (phy, macAp, wifiApNode.Get (0));
|
||||
phySta = GetYansWifiPhyPtr (staDevice);
|
||||
// We expect channel 36, width 20, frequency 5180
|
||||
NS_ASSERT (phySta->GetChannelNumber () == 36);
|
||||
NS_ASSERT (phySta->GetChannelWidth () == 20);
|
||||
NS_ASSERT (phySta->GetFrequency () == 5180);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 13:
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -259,7 +248,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5220);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 14:
|
||||
case 13:
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -274,7 +263,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5200);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 15:
|
||||
case 14:
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -290,7 +279,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5220);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 16:
|
||||
case 15:
|
||||
Config::SetDefault ("ns3::WifiPhy::ChannelNumber", UintegerValue (44));
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -306,7 +295,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5220);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 17:
|
||||
case 16:
|
||||
// Test that setting Frequency to a non-standard value will zero the
|
||||
// channel number
|
||||
Config::SetDefault ("ns3::WifiPhy::Frequency", UintegerValue (5281));
|
||||
@@ -320,7 +309,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5281);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 18:
|
||||
case 17:
|
||||
// Test that setting Frequency to a standard value will set the
|
||||
// channel number correctly
|
||||
Config::SetDefault ("ns3::WifiPhy::Frequency", UintegerValue (5500));
|
||||
@@ -334,7 +323,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5500);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 19:
|
||||
case 18:
|
||||
// Define a new channel number
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -346,7 +335,7 @@ int main (int argc, char *argv[])
|
||||
phySta->SetAttribute ("ChannelNumber", UintegerValue (99));
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 20:
|
||||
case 19:
|
||||
// Test how channel number behaves when frequency is non-standard
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -373,7 +362,7 @@ int main (int argc, char *argv[])
|
||||
NS_ASSERT (phySta->GetFrequency () == 5180);
|
||||
PrintAttributesIfEnabled (printAttributes);
|
||||
break;
|
||||
case 21:
|
||||
case 20:
|
||||
// Set both channel and frequency to consistent values
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
|
||||
@@ -790,9 +790,6 @@ WifiHelper::SetStandard (WifiPhyStandard standard)
|
||||
case WIFI_PHY_STANDARD_80211g:
|
||||
m_standard = WIFI_STANDARD_80211g;
|
||||
return;
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
m_standard = WIFI_STANDARD_holland;
|
||||
return;
|
||||
// remove the next value from WifiPhyStandard when deprecation ends
|
||||
case WIFI_PHY_STANDARD_80211n_2_4GHZ:
|
||||
m_standard = WIFI_STANDARD_80211n_2_4GHZ;
|
||||
|
||||
@@ -90,19 +90,6 @@ OfdmPhy::OfdmPhy (OfdmPhyVariant variant /* = OFDM_PHY_DEFAULT */, bool buildMod
|
||||
m_modeList.emplace_back (mode);
|
||||
}
|
||||
break;
|
||||
case OFDM_PHY_HOLLAND:
|
||||
NS_LOG_LOGIC ("Use Holland configuration");
|
||||
NS_LOG_LOGIC ("Add OfdmRate6Mbps to list");
|
||||
m_modeList.emplace_back (GetOfdmRate6Mbps ());
|
||||
NS_LOG_LOGIC ("Add OfdmRate12Mbps to list");
|
||||
m_modeList.emplace_back (GetOfdmRate12Mbps ());
|
||||
NS_LOG_LOGIC ("Add OfdmRate18Mbps to list");
|
||||
m_modeList.emplace_back (GetOfdmRate18Mbps ());
|
||||
NS_LOG_LOGIC ("Add OfdmRate36Mbps to list");
|
||||
m_modeList.emplace_back (GetOfdmRate36Mbps ());
|
||||
NS_LOG_LOGIC ("Add OfdmRate54Mbps to list");
|
||||
m_modeList.emplace_back (GetOfdmRate54Mbps ());
|
||||
break;
|
||||
case OFDM_PHY_10_MHZ:
|
||||
for (const auto & rate : bwRatesMap.at (10))
|
||||
{
|
||||
|
||||
@@ -44,7 +44,6 @@ namespace ns3 {
|
||||
enum OfdmPhyVariant
|
||||
{
|
||||
OFDM_PHY_DEFAULT,
|
||||
OFDM_PHY_HOLLAND,
|
||||
OFDM_PHY_10_MHZ,
|
||||
OFDM_PHY_5_MHZ
|
||||
};
|
||||
@@ -56,10 +55,6 @@ enum OfdmPhyVariant
|
||||
* This class is also used for the 10 MHz and 5 MHz bandwidth
|
||||
* variants addressing vehicular communications (default is 20 MHz
|
||||
* bandwidth).
|
||||
* It is also used for the Holland configuration detailed in this paper:
|
||||
* Gavin Holland, Nitin Vaidya and Paramvir Bahl, "A Rate-Adaptive
|
||||
* MAC Protocol for Multi-Hop Wireless Networks", in Proc. of
|
||||
* ACM MOBICOM, 2001.
|
||||
*
|
||||
* Refer to IEEE 802.11-2016, clause 17.
|
||||
*/
|
||||
|
||||
@@ -1116,7 +1116,6 @@ RegularWifiMac::ConfigureStandard (WifiStandard standard)
|
||||
}
|
||||
case WIFI_STANDARD_80211g:
|
||||
SetErpSupported (true);
|
||||
case WIFI_STANDARD_holland:
|
||||
case WIFI_STANDARD_80211a:
|
||||
case WIFI_STANDARD_80211p:
|
||||
cwmin = 15;
|
||||
|
||||
@@ -412,7 +412,6 @@ SpectrumWifiPhy::GetBandBandwidth (void) const
|
||||
{
|
||||
case WIFI_PHY_STANDARD_80211a:
|
||||
case WIFI_PHY_STANDARD_80211g:
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
case WIFI_PHY_STANDARD_80211b:
|
||||
case WIFI_PHY_STANDARD_80211n:
|
||||
case WIFI_PHY_STANDARD_80211ac:
|
||||
|
||||
@@ -889,12 +889,6 @@ WifiPhy::ConfigureDefaultsForStandard (void)
|
||||
// Channel number should be aligned by SetFrequency () to either 172 or 171
|
||||
NS_ASSERT ((GetChannelWidth () == 10 && GetChannelNumber () == 172) || (GetChannelWidth () == 5 && GetChannelNumber () == 171)) ;
|
||||
break;
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
SetChannelWidth (20);
|
||||
SetFrequency (5180);
|
||||
// Channel number should be aligned by SetFrequency () to 36
|
||||
NS_ASSERT (GetChannelNumber () == 36);
|
||||
break;
|
||||
case WIFI_PHY_STANDARD_80211n:
|
||||
SetChannelWidth (20);
|
||||
if (m_band == WIFI_PHY_BAND_2_4GHZ)
|
||||
@@ -1111,17 +1105,6 @@ WifiPhy::Configure80211p (void)
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
WifiPhy::ConfigureHolland (void)
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
AddPhyEntity (WIFI_MOD_CLASS_OFDM, Create<OfdmPhy> (OFDM_PHY_HOLLAND));
|
||||
|
||||
SetSifs (MicroSeconds (16));
|
||||
SetSlot (MicroSeconds (9));
|
||||
SetPifs (GetSifs () + GetSlot ());
|
||||
}
|
||||
|
||||
void
|
||||
WifiPhy::Configure80211n (void)
|
||||
{
|
||||
@@ -1293,9 +1276,6 @@ WifiPhy::ConfigureStandardAndBand (WifiPhyStandard standard, WifiPhyBand band)
|
||||
case WIFI_PHY_STANDARD_80211p:
|
||||
Configure80211p ();
|
||||
break;
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
ConfigureHolland ();
|
||||
break;
|
||||
case WIFI_PHY_STANDARD_80211n:
|
||||
Configure80211n ();
|
||||
break;
|
||||
|
||||
@@ -1162,11 +1162,6 @@ private:
|
||||
* supported rates for 802.11p standard.
|
||||
*/
|
||||
void Configure80211p (void);
|
||||
/**
|
||||
* Configure WifiPhy with appropriate channel frequency and
|
||||
* supported rates for Holland.
|
||||
*/
|
||||
void ConfigureHolland (void);
|
||||
/**
|
||||
* Configure WifiPhy with appropriate channel frequency and
|
||||
* supported rates for 802.11n standard.
|
||||
|
||||
@@ -46,12 +46,6 @@ enum WifiPhyStandard
|
||||
WIFI_PHY_STANDARD_80211_5MHZ,
|
||||
/** OFDM PHY (Clause 17 - amendment for 10 MHz and 5 MHz channels) */
|
||||
WIFI_PHY_STANDARD_80211p,
|
||||
/** This is intended to be the configuration used in this paper:
|
||||
* Gavin Holland, Nitin Vaidya and Paramvir Bahl, "A Rate-Adaptive
|
||||
* MAC Protocol for Multi-Hop Wireless Networks", in Proc. of
|
||||
* ACM MOBICOM, 2001.
|
||||
*/
|
||||
WIFI_PHY_STANDARD_holland,
|
||||
/** HT PHY for the 2.4 GHz band (clause 20) */
|
||||
/** this value is NS_DEPRECATED_3_32 */
|
||||
WIFI_PHY_STANDARD_80211n_2_4GHZ,
|
||||
@@ -87,8 +81,6 @@ inline std::ostream& operator<< (std::ostream& os, WifiPhyStandard standard)
|
||||
return (os << "802.11g");
|
||||
case WIFI_PHY_STANDARD_80211p:
|
||||
return (os << "802.11p");
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
return (os << "802.11a-holland");
|
||||
case WIFI_PHY_STANDARD_80211n:
|
||||
return (os << "802.11n");
|
||||
case WIFI_PHY_STANDARD_80211ac:
|
||||
@@ -147,7 +139,6 @@ enum WifiStandard
|
||||
WIFI_STANDARD_80211b,
|
||||
WIFI_STANDARD_80211g,
|
||||
WIFI_STANDARD_80211p,
|
||||
WIFI_STANDARD_holland,
|
||||
WIFI_STANDARD_80211n_2_4GHZ,
|
||||
WIFI_STANDARD_80211n_5GHZ,
|
||||
WIFI_STANDARD_80211ac,
|
||||
@@ -175,8 +166,6 @@ inline std::ostream& operator<< (std::ostream& os, WifiStandard standard)
|
||||
return (os << "802.11g");
|
||||
case WIFI_STANDARD_80211p:
|
||||
return (os << "802.11p");
|
||||
case WIFI_STANDARD_holland:
|
||||
return (os << "802.11a-holland");
|
||||
case WIFI_STANDARD_80211n_2_4GHZ:
|
||||
return (os << "802.11n-2.4GHz");
|
||||
case WIFI_STANDARD_80211n_5GHZ:
|
||||
@@ -211,7 +200,6 @@ const std::map<WifiStandard, WifiStandardInfo> wifiStandards =
|
||||
{ WIFI_STANDARD_80211b, { WIFI_PHY_STANDARD_80211b, WIFI_PHY_BAND_2_4GHZ, WIFI_MAC_STANDARD_80211 } },
|
||||
{ WIFI_STANDARD_80211g, { WIFI_PHY_STANDARD_80211g, WIFI_PHY_BAND_2_4GHZ, WIFI_MAC_STANDARD_80211 } },
|
||||
{ WIFI_STANDARD_80211p, { WIFI_PHY_STANDARD_80211p, WIFI_PHY_BAND_5GHZ, WIFI_MAC_STANDARD_80211 } },
|
||||
{ WIFI_STANDARD_holland, { WIFI_PHY_STANDARD_holland, WIFI_PHY_BAND_5GHZ, WIFI_MAC_STANDARD_80211 } },
|
||||
{ WIFI_STANDARD_80211n_2_4GHZ, { WIFI_PHY_STANDARD_80211n, WIFI_PHY_BAND_2_4GHZ, WIFI_MAC_STANDARD_80211n } },
|
||||
{ WIFI_STANDARD_80211n_5GHZ, { WIFI_PHY_STANDARD_80211n, WIFI_PHY_BAND_5GHZ, WIFI_MAC_STANDARD_80211n } },
|
||||
{ WIFI_STANDARD_80211ac, { WIFI_PHY_STANDARD_80211ac, WIFI_PHY_BAND_5GHZ, WIFI_MAC_STANDARD_80211ac } },
|
||||
|
||||
@@ -29,13 +29,11 @@ cpp_examples = [
|
||||
("wifi-phy-configuration --testCase=18", "True", "False"),
|
||||
("wifi-phy-configuration --testCase=19", "True", "False"),
|
||||
("wifi-phy-configuration --testCase=20", "True", "False"),
|
||||
("wifi-phy-configuration --testCase=21", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11a --rtsThreshold=0 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarf --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -43,7 +41,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Aarfcd --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -51,7 +48,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Amrr --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -59,7 +55,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Arf --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -67,7 +62,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Cara --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -75,7 +69,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Onoe --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -83,7 +76,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Rraa --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
@@ -91,13 +83,11 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11a --maxSlrc=1 --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Minstrel --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=MinstrelHt --standard=802.11n-5GHz --serverChannelWidth=20 --clientChannelWidth=20 --serverShortGuardInterval=800 --clientShortGuardInterval=800 --serverNss=1 --clientNss=1 --stepTime=0.1", "True", "False"),
|
||||
@@ -167,7 +157,6 @@ cpp_examples = [
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11a --stepTime=0.1", "True", "True"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11b --serverChannelWidth=22 --clientChannelWidth=22 --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11g --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11-holland --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11p-10MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11p-5MHz --stepTime=0.1", "True", "False"),
|
||||
("wifi-manager-example --wifiManager=Ideal --standard=802.11n-5GHz --serverChannelWidth=20 --clientChannelWidth=20 --serverShortGuardInterval=800 --clientShortGuardInterval=800 --serverNss=1 --clientNss=1 --stepTime=0.1", "True", "False"),
|
||||
|
||||
@@ -794,10 +794,9 @@ PhyHeaderSectionsTest::DoRun (void)
|
||||
// 11a (OFDM)
|
||||
txVector.SetPreambleType (WIFI_PREAMBLE_LONG);
|
||||
|
||||
// -> one iteration per variant: default, Holland, 10 MHz, and 5 MHz
|
||||
// -> one iteration per variant: default, 10 MHz, and 5 MHz
|
||||
std::map<OfdmPhyVariant, std::size_t> variants { //number to use to deduce rate and BW info for each variant
|
||||
{ OFDM_PHY_DEFAULT, 1},
|
||||
{ OFDM_PHY_HOLLAND, 1},
|
||||
{ OFDM_PHY_10_MHZ, 2},
|
||||
{ OFDM_PHY_5_MHZ, 4}
|
||||
};
|
||||
|
||||
@@ -1082,18 +1082,6 @@ SetChannelFrequencyTest::DoRun ()
|
||||
// case 12:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
wifi.SetStandard (WIFI_STANDARD_holland);
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
phySta = GetYansWifiPhyPtr (staDevice);
|
||||
// We expect channel 36, width 20, frequency 5180
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetChannelNumber (), 36, "802.11 5Mhz configuration");
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetChannelWidth (), 20, "802.11 5Mhz configuration");
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5180, "802.11 5Mhz configuration");
|
||||
}
|
||||
{
|
||||
// case 13:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
staDevice = wifi.Install (phy, macSta, wifiStaNode.Get (0));
|
||||
@@ -1103,7 +1091,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5220, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 14:
|
||||
// case 13:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
@@ -1118,7 +1106,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5200, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 15:
|
||||
// case 14:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
phy.Set ("ChannelNumber", UintegerValue (44));
|
||||
@@ -1135,7 +1123,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5220, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 16:
|
||||
// case 15:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
@@ -1153,7 +1141,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5220, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 17:
|
||||
// case 16:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
// Test that setting Frequency to a non-standard value will zero the
|
||||
@@ -1168,7 +1156,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5281, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 18:
|
||||
// case 17:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
@@ -1183,7 +1171,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5500, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 19:
|
||||
// case 18:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
wifi.SetStandard (WIFI_STANDARD_80211n_5GHZ);
|
||||
@@ -1195,7 +1183,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
phySta->SetAttribute ("ChannelNumber", UintegerValue (99));
|
||||
}
|
||||
{
|
||||
// case 20:
|
||||
// case 19:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
// Test how channel number behaves when frequency is non-standard
|
||||
@@ -1223,7 +1211,7 @@ SetChannelFrequencyTest::DoRun ()
|
||||
NS_TEST_ASSERT_MSG_EQ (phySta->GetFrequency (), 5180, "802.11 5GHz configuration");
|
||||
}
|
||||
{
|
||||
// case 21:
|
||||
// case 20:
|
||||
WifiHelper wifi;
|
||||
wifi.SetRemoteStationManager ("ns3::IdealWifiManager");
|
||||
// Set both channel and frequency to consistent values
|
||||
|
||||
@@ -113,7 +113,6 @@ WifiOfdmMaskSlopesTestCase::WifiOfdmMaskSlopesTestCase (const char* str, WifiPhy
|
||||
freq = 2412;
|
||||
// no break on purpose
|
||||
case WIFI_PHY_STANDARD_80211a:
|
||||
case WIFI_PHY_STANDARD_holland:
|
||||
NS_ASSERT (bw == 20);
|
||||
m_actualSpectrum = WifiSpectrumValueHelper::CreateOfdmTxPowerSpectralDensity (freq, bw, refTxPowerW, bw, -20.0, -28.0, outerBandMaximumRejection);
|
||||
break;
|
||||
@@ -330,13 +329,6 @@ WifiTransmitMaskTestSuite::WifiTransmitMaskTestSuite ()
|
||||
20, maskSlopesLeft, maskSlopesRight, tol),
|
||||
TestCase::QUICK);
|
||||
|
||||
// 11a (holland)
|
||||
NS_LOG_FUNCTION ("Check slopes for 11a (holland)");
|
||||
// same slopes as 11a (same PHY layer)
|
||||
AddTestCase (new WifiOfdmMaskSlopesTestCase ("11a (holland)", WIFI_PHY_STANDARD_holland, WIFI_PHY_BAND_5GHZ,
|
||||
20, maskSlopesLeft, maskSlopesRight, tol),
|
||||
TestCase::QUICK);
|
||||
|
||||
// 11g
|
||||
NS_LOG_FUNCTION ("Check slopes for 11g");
|
||||
// same slppes as 11g
|
||||
|
||||
Reference in New Issue
Block a user