diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 3b121036c..9c2a7ab4f 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -52,6 +52,7 @@ Bugs fixed - Bug 2838 - wifi: ht-wifi-network crashes with RTS/CTS enabled and frequency set to 2.4GHz - Bug 2843 - spectrum, wifi: Incorrect channel width and center frequency provided for non-HT PPDUs when building SpectralDensity - Bug 2848 - wifi: Association ID not correctly set upon association +- Bug 2849 - lte: Received RLC and PDCP PDUs are missing in the stats files - Bug 2854 - wifi: he-wifi-network crashes when frequency is set at 2.4 GHz Known issues diff --git a/src/lte/helper/radio-bearer-stats-calculator.cc b/src/lte/helper/radio-bearer-stats-calculator.cc index 6269e946b..a9181a195 100644 --- a/src/lte/helper/radio-bearer-stats-calculator.cc +++ b/src/lte/helper/radio-bearer-stats-calculator.cc @@ -272,8 +272,7 @@ RadioBearerStatsCalculator::WriteUlResults (std::ofstream& outFile) { NS_LOG_FUNCTION (this); - // Get the unique IMSI / LCID list - + // Get the unique IMSI/LCID pairs list std::vector < ImsiLcidPair_t > pairVector; for (Uint32Map::iterator it = m_ulTxPackets.begin (); it != m_ulTxPackets.end (); ++it) { @@ -283,6 +282,14 @@ RadioBearerStatsCalculator::WriteUlResults (std::ofstream& outFile) } } + for (Uint32Map::iterator it = m_ulRxPackets.begin (); it != m_ulRxPackets.end (); ++it) + { + if (find (pairVector.begin (), pairVector.end (), (*it).first) == pairVector.end ()) + { + pairVector.push_back ((*it).first); + } + } + Time endTime = m_startTime + m_epochDuration; for (std::vector::iterator it = pairVector.begin (); it != pairVector.end (); ++it) { @@ -318,7 +325,7 @@ RadioBearerStatsCalculator::WriteDlResults (std::ofstream& outFile) { NS_LOG_FUNCTION (this); - // Get the unique IMSI list + // Get the unique IMSI/LCID pairs list std::vector < ImsiLcidPair_t > pairVector; for (Uint32Map::iterator it = m_dlTxPackets.begin (); it != m_dlTxPackets.end (); ++it) { @@ -328,6 +335,14 @@ RadioBearerStatsCalculator::WriteDlResults (std::ofstream& outFile) } } + for (Uint32Map::iterator it = m_dlRxPackets.begin (); it != m_dlRxPackets.end (); ++it) + { + if (find (pairVector.begin (), pairVector.end (), (*it).first) == pairVector.end ()) + { + pairVector.push_back ((*it).first); + } + } + Time endTime = m_startTime + m_epochDuration; for (std::vector::iterator pair = pairVector.begin (); pair != pairVector.end (); ++pair) {