wifi: Add 802.11ax values obtained with the theoretical model for MCS-0 to MCS-11 at 20 MHz to the wifi-bianchi example

This commit is contained in:
Sébastien Deronne
2020-10-16 13:28:19 +02:00
committed by Tom Henderson
parent 835f546f4c
commit d35d6895c3

View File

@@ -331,6 +331,151 @@ std::map<std::string /* mode */, std::map<unsigned int /* number of nodes */, do
{45, 22.8100},
{50, 22.4162},
}},
/* 11ax, maxMpdus=1 */
{"HeMcs0", {
{5, 6.3381},
{10, 5.8172},
{15, 5.5223},
{20, 5.3146},
{25, 5.1525},
{30, 5.0187},
{35, 4.9039},
{40, 4.8034},
{45, 4.7134},
{50, 4.6317},
}},
{"HeMcs1", {
{5, 11.6580},
{10, 10.7369},
{15, 10.2068},
{20, 9.8309},
{25, 9.5365},
{30, 9.2930},
{35, 9.0837},
{40, 8.9001},
{45, 8.7355},
{50, 8.5860},
}},
{"HeMcs2", {
{5, 15.9567},
{10, 14.7372},
{15, 14.0254},
{20, 13.5180},
{25, 13.1194},
{30, 12.7889},
{35, 12.5045},
{40, 12.2546},
{45, 12.0305},
{50, 11.8266},
}},
{"HeMcs3", {
{5, 19.7457},
{10, 18.2820},
{15, 17.4163},
{20, 16.7963},
{25, 16.3078},
{30, 15.9021},
{35, 15.5524},
{40, 15.2449},
{45, 14.9687},
{50, 14.7173},
}},
{"HeMcs4", {
{5, 25.8947},
{10, 24.0721},
{15, 22.9698},
{20, 22.1738},
{25, 21.5437},
{30, 21.0186},
{35, 20.5650},
{40, 20.1654},
{45, 19.8059},
{50, 19.4784},
}},
{"HeMcs5", {
{5, 30.0542},
{10, 28.0155},
{15, 26.7625},
{20, 25.8523},
{25, 25.1295},
{30, 24.5258},
{35, 24.0034},
{40, 23.5426},
{45, 23.1277},
{50, 22.7492},
}},
{"HeMcs6", {
{5, 32.6789},
{10, 30.5150},
{15, 29.1708},
{20, 28.1907},
{25, 27.4107},
{30, 26.7583},
{35, 26.1931},
{40, 25.6941},
{45, 25.2446},
{50, 24.8343},
}},
{"HeMcs7", {
{5, 34.1710},
{10, 31.9398},
{15, 30.5451},
{20, 29.5261},
{25, 28.7140},
{30, 28.0342},
{35, 27.4449},
{40, 26.9245},
{45, 26.4554},
{50, 26.0271},
}},
{"HeMcs8", {
{5, 37.6051},
{10, 35.2296},
{15, 33.7228},
{20, 32.6160},
{25, 31.7314},
{30, 30.9895},
{35, 30.3455},
{40, 29.7760},
{45, 29.2623},
{50, 28.7929},
}},
{"HeMcs9", {
{5, 39.5947},
{10, 37.1424},
{15, 35.5731},
{20, 34.4169},
{25, 33.4911},
{30, 32.7138},
{35, 32.0385},
{40, 31.4410},
{45, 30.9016},
{50, 30.4086},
}},
{"HeMcs10", {
{5, 39.5947},
{10, 37.1424},
{15, 35.5731},
{20, 34.4169},
{25, 33.4911},
{30, 32.7138},
{35, 32.0385},
{40, 31.4410},
{45, 30.9016},
{50, 30.4086},
}},
{"HeMcs11", {
{5, 41.8065},
{10, 39.2749},
{15, 37.6383},
{20, 36.4282},
{25, 35.4575},
{30, 34.6414},
{35, 33.9316},
{40, 33.3031},
{45, 32.7355},
{50, 32.2164},
}},
};
std::map<std::string /* mode */, std::map<unsigned int /* number of nodes */, double /* calculated throughput */> > bianchiResultsDifs =
@@ -578,6 +723,151 @@ std::map<std::string /* mode */, std::map<unsigned int /* number of nodes */, do
{45, 23.9353},
{50, 23.5618},
}},
/* 11ax, maxMpdus=1 */
{"HeMcs0", {
{5, 6.3746},
{10, 5.8670},
{15, 5.5782},
{20, 5.3742},
{25, 5.2147},
{30, 5.0829},
{35, 4.9696},
{40, 4.8703},
{45, 4.7813},
{50, 4.7004},
}},
{"HeMcs1", {
{5, 11.7574},
{10, 10.8735},
{15, 10.3606},
{20, 9.9954},
{25, 9.7084},
{30, 9.4704},
{35, 9.2654},
{40, 9.0853},
{45, 8.9235},
{50, 8.7763},
}},
{"HeMcs2", {
{5, 16.1281},
{10, 14.9742},
{15, 14.2930},
{20, 13.8045},
{25, 13.4192},
{30, 13.0986},
{35, 12.8219},
{40, 12.5784},
{45, 12.3594},
{50, 12.1598},
}},
{"HeMcs3", {
{5, 20.0089},
{10, 18.6480},
{15, 17.8309},
{20, 17.2410},
{25, 16.7736},
{30, 16.3837},
{35, 16.0465},
{40, 15.7491},
{45, 15.4813},
{50, 15.2369},
}},
{"HeMcs4", {
{5, 26.3492},
{10, 24.7107},
{15, 23.6964},
{20, 22.9553},
{25, 22.3640},
{30, 21.8683},
{35, 21.4379},
{40, 21.0571},
{45, 20.7134},
{50, 20.3991},
}},
{"HeMcs5", {
{5, 30.6683},
{10, 28.8843},
{15, 27.7540},
{20, 26.9210},
{25, 26.2528},
{30, 25.6906},
{35, 25.2012},
{40, 24.7671},
{45, 24.3746},
{50, 24.0151},
}},
{"HeMcs6", {
{5, 33.4062},
{10, 31.5485},
{15, 30.3527},
{20, 29.4662},
{25, 28.7527},
{30, 28.1508},
{35, 27.6259},
{40, 27.1597},
{45, 26.7376},
{50, 26.3507},
}},
{"HeMcs7", {
{5, 34.9671},
{10, 33.0739},
{15, 31.8436},
{20, 30.9282},
{25, 30.1900},
{30, 29.5665},
{35, 29.0221},
{40, 28.5382},
{45, 28.0997},
{50, 27.6975},
}},
{"HeMcs8", {
{5, 38.5714},
{10, 36.6144},
{15, 35.3124},
{20, 34.3355},
{25, 33.5438},
{30, 32.8728},
{35, 32.2854},
{40, 31.7623},
{45, 31.2874},
{50, 30.8512},
}},
{"HeMcs9", {
{5, 40.6674},
{10, 38.6851},
{15, 37.3466},
{20, 36.3371},
{25, 35.5165},
{30, 34.8197},
{35, 34.2087},
{40, 33.6638},
{45, 33.1688},
{50, 32.7137},
}},
{"HeMcs10", {
{5, 40.6674},
{10, 38.6851},
{15, 37.3466},
{20, 36.3371},
{25, 35.5165},
{30, 34.8197},
{35, 34.2087},
{40, 33.6638},
{45, 33.1688},
{50, 32.7137},
}},
{"HeMcs11", {
{5, 43.0043},
{10, 41.0039},
{15, 39.6294},
{20, 38.5865},
{25, 37.7358},
{30, 37.0116},
{35, 36.3756},
{40, 35.8076},
{45, 35.2909},
{50, 34.8154},
}},
};
// Parse context strings of the form "/NodeList/x/DeviceList/x/..." to extract the NodeId integer
@@ -1176,6 +1466,7 @@ int main (int argc, char *argv[])
cmd.AddValue ("nMinStas", "Minimum number of stations to start with", nMinStas);
cmd.AddValue ("nMaxStas", "Maximum number of stations to start with", nMaxStas);
cmd.AddValue ("nStepSize", "Number of stations to add at each step", nStepSize);
cmd.AddValue ("plotBianchiModel", "First bit corresponds to the DIFS model, second bit to the EIFS model", plotBianchiModel);
cmd.AddValue ("validate", "Enable/disable validation of the ns-3 simulations against the Bianchi model", validate);
cmd.AddValue ("maxRelativeError", "The maximum relative error tolerated between ns-3 results and the Bianchi model (used for regression, i.e. when the validate flag is set)", maxRelativeError);
cmd.AddValue ("frequency", "Set the operating frequency band: 2.4, 5 or 6", frequency);