Bugzilla – Bug 2376
New A-MPDU might not be received if MPDUs of a previous A-MPDU are lost
Last modified: 2016-06-10 16:14:29 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.
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.
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?
*** Bug 2350 has been marked as a duplicate of this bug. ***
I suggest to deliver this fix, it can not hurt and it has been shown to fix some issues already.
pushed in changeset 12154:3a2f08a0d50c