Bug 2376 - New A-MPDU might not be received if MPDUs of a previous A-MPDU are lost
New A-MPDU might not be received if MPDUs of a previous A-MPDU are lost
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: wifi
ns-3.25
All All
: P5 major
Assigned To: sebastien.deronne
:
: 2350 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2016-04-18 12:39 UTC by Alexander Krotov
Modified: 2016-06-10 16:14 UTC (History)
2 users (show)

See Also:


Attachments
Proposed fix (1.12 KB, patch)
2016-04-18 12:39 UTC, Alexander Krotov
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Krotov 2016-04-18 12:39:47 UTC
Created attachment 2389 [details]
Proposed fix

YansWifiPhy processes the case when some frame with preamble is received while m_mpdusNum > 0 (it means that phy expects more MPDUs) by setting m_mpdusNum to 0. However, if the frame received is A-MPDU itself, YansWifiPhy should extract m_mpdusNum from A-MPDU tag instead of simply resetting it to 0. Otherwise, it will ignore all subsequent MPDUs with message stating that it did not receive preamble, while in fact it has received it:
http://code.nsnam.org/ns-3-dev/file/beca17a5a9b9/src/wifi/model/yans-wifi-phy.cc#l649

Proposed fix is attached.
Comment 1 sebastien.deronne 2016-04-19 16:21:09 UTC
It looks ok.
I also saw some enhancements quite related to this issue in YansWifiPhy, so I will post a slightly reworked patch for this bug.
Comment 2 sebastien.deronne 2016-04-20 02:29:55 UTC
Forget about my previous comment, my patch is more related to a different case, so another thread should be opened for this.

But then I actually do not see any test case where this is causing issue, although your patch looks ok. Could you please attach your test case?
Comment 3 sebastien.deronne 2016-04-21 03:43:54 UTC
*** Bug 2350 has been marked as a duplicate of this bug. ***
Comment 4 sebastien.deronne 2016-06-04 07:36:07 UTC
I suggest to deliver this fix, it can not hurt and it has been shown to fix some issues already.
Comment 5 sebastien.deronne 2016-06-10 16:14:29 UTC
pushed in changeset 12154:3a2f08a0d50c