Bug 2761 - Packet has no Traffic ID for CTS frames when A-MPDU is used
Packet has no Traffic ID for CTS frames when A-MPDU is used
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: wifi
ns-3.26
All All
: P3 normal
Assigned To: sebastien.deronne
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2017-06-25 12:09 UTC by Varun Reddy
Modified: 2017-07-02 09:45 UTC (History)
1 user (show)

See Also:


Attachments
Add a check for CTS packets inside ForwardDown() (100.65 KB, patch)
2017-06-25 12:11 UTC, Varun Reddy
Details | Diff
Add a check for CTS packets inside ForwardDown() (681 bytes, patch)
2017-06-25 12:18 UTC, Varun Reddy
Details | Diff
Add a check for CTS packets inside ForwardDown() (664 bytes, patch)
2017-06-28 11:27 UTC, Varun Reddy
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Varun Reddy 2017-06-25 12:09:58 UTC
I'm unable to produce a script for this bug, since it does not pop up all the time. However, when I run the same script repeatedly for random TCP application start times (which in turn implies different scenarios), this bug appears. Nevertheless, I will try to post a script soon.

The problem arises in mac-low.cc when SendCtsAfterRts() is called (This does not happen all the time) and then ForwardDown() is called from within this function. Inside ForwardDown(), GetTid() is called, and since the Type ID for a CTS is not checked, it results in the fatal error (Line 163, qos-utils.cc)-      

NS_FATAL_ERROR ("Packet has no Traffic ID");

My suggestion would be to incorporate a check for CTS-type packets as well, inside ForwardDown().
Comment 1 Varun Reddy 2017-06-25 12:11:06 UTC
Created attachment 2875 [details]
Add a check for CTS packets inside ForwardDown()
Comment 2 Varun Reddy 2017-06-25 12:18:46 UTC
Created attachment 2876 [details]
Add a check for CTS packets inside ForwardDown()
Comment 3 sebastien.deronne 2017-06-27 16:24:36 UTC
Patch is OK, thanks.
Comment 4 Varun Reddy 2017-06-28 11:27:53 UTC
Created attachment 2884 [details]
Add a check for CTS packets inside ForwardDown()
Comment 5 sebastien.deronne 2017-07-02 09:45:20 UTC
Fixed in changeset 12944:12dacac685dc