|
Bugzilla – Full Text Bug Listing |
| Summary: | wifi: Setting Duration field for Ack frames | ||
|---|---|---|---|
| Product: | ns-3 | Reporter: | Tom Henderson <tomh> |
| Component: | wifi | Assignee: | sebastien.deronne |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | ns-bugs |
| Priority: | P5 | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | All | ||
|
Description
Tom Henderson
2016-03-19 01:51:31 UTC
Checking back the standard (section 7.2): ... the duration value is the value obtained from the Duration field of the immediately previous data or management frame, minus the time, in microseconds, required to transmit the ACK frame and its SIFS interval. If the calculated duration includes a fractional microsecond, that value is rounded up to the next higher integer. I thus think our code is following standard rules and the way we compute the duration should not be changed. If this assert is triggered, this means that something else is wrong beforehand. We would need a test case to reproduce it and try to fix what is going wrong. I found this in the 802.11-2012 standard in section 8.3.1.4: "For ACK frames sent by non-QoS STAs, if the More Fragments bit was equal to 0 in the Frame Control field of the immediately previous individually addressed data or management frame, the duration value is set to 0. In other ACK frames sent by non-QoS STAs, the duration value is the value obtained from the Duration/ID field of the immediately previous data, management, PS-Poll, BlockAckReq, or BlockAck frame minus the time, in microseconds, required to transmit the ACK frame and its SIFS interval. If the calculated duration includes a fractional microsecond, that value is rounded up to the next higher integer." I will add some comment to the text to clarify this, and also change the NS_ASSERT to an NS_ASSERT_MSG asking people for a testcase if they hit this assert. I am going to mark as NEEDINFO for a few days to see if we obtain a breaking testcase, and if none posted, close this issue after ns-3.25 release. (In reply to Tom Henderson from comment #2) > I will add some comment to the text to clarify this, and also change the > NS_ASSERT to an NS_ASSERT_MSG asking people for a testcase if they hit this > assert. pushed in changeset a995220916a8 Tom, Now that the release has passed, can this be closed? I think this can be closed, right? patch already pushed: closing bug |