From 32feed92ee035a11e54c366bd4b80cd90bd5a072 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Deronne?= Date: Sat, 25 May 2019 10:33:46 +0200 Subject: [PATCH] wifi: Pass number of data bits instead of number of coded bits to error models --- RELEASE_NOTES | 1 + src/wifi/model/interference-helper.cc | 2 +- src/wifi/test/wifi-phy-reception-test.cc | 5 ++--- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/RELEASE_NOTES b/RELEASE_NOTES index cafbae5b7..5116abd50 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -39,6 +39,7 @@ Bugs fixed - Bug 3027 - lte: S1 signalling is done before RRC connection establishment is finished - Issue #11 - mobility: Rectangle::GetClosestSide returns the correct side also for positions outside the rectangle - Issue #27 - wifi: Re-compute the A-MPDU after an RTS/CTS exchange fails +- Issue #28 - wifi: wifi error model: coded bits vs. data bits - Issue #32 - wifi: Example "rate-adaptation-distance.cc" fails. - Issue #33 - wifi: Issues with QosTxop::StartNextPacket - Issue #35 - wifi: Unexpected EDCA performance under virtual collisions for 802.11n diff --git a/src/wifi/model/interference-helper.cc b/src/wifi/model/interference-helper.cc index fd495a067..3d139e586 100644 --- a/src/wifi/model/interference-helper.cc +++ b/src/wifi/model/interference-helper.cc @@ -262,7 +262,7 @@ InterferenceHelper::CalculateChunkSuccessRate (double snir, Time duration, WifiM { return 1.0; } - uint64_t rate = mode.GetPhyRate (txVector); + uint64_t rate = mode.GetDataRate (txVector); uint64_t nbits = static_cast (rate * duration.GetSeconds ()); if (txVector.GetMode ().GetModulationClass () == WIFI_MOD_CLASS_HT || txVector.GetMode ().GetModulationClass () == WIFI_MOD_CLASS_VHT || txVector.GetMode ().GetModulationClass () == WIFI_MOD_CLASS_HE) { diff --git a/src/wifi/test/wifi-phy-reception-test.cc b/src/wifi/test/wifi-phy-reception-test.cc index cfffc40a4..efdc6bb24 100644 --- a/src/wifi/test/wifi-phy-reception-test.cc +++ b/src/wifi/test/wifi-phy-reception-test.cc @@ -1634,10 +1634,9 @@ TestAmpduReception::DoSetup (void) void TestAmpduReception::DoRun (void) { - WifiHelper::EnableLogComponents (); RngSeedManager::SetSeed (1); RngSeedManager::SetRun (1); - int64_t streamNumber = 3; + int64_t streamNumber = 1; double rxPowerDbm = -30; m_phy->AssignStreams (streamNumber); @@ -1663,7 +1662,7 @@ TestAmpduReception::DoRun (void) Simulator::Schedule (Seconds (1.1), &TestAmpduReception::CheckRxDroppedBitmapAmpdu2, this, 0b00000000); Simulator::Schedule (Seconds (1.2), &TestAmpduReception::ResetBitmaps, this); - + ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // CASE 2: receive two A-MPDUs (containing each 3 MPDUs) where the second A-MPDU is received with power under RX sensitivity. // The second A-MPDU is received 2 microseconds after the first A-MPDU (i.e. during preamble detection).