bug 509: backoff CW growth is invalid

This commit is contained in:
Timo Bingmann
2009-02-24 14:33:17 +01:00
parent d698a38195
commit 257fd2079e

View File

@@ -74,10 +74,8 @@ DcfState::ResetCw (void)
void
DcfState::UpdateFailedCw (void)
{
uint32_t cw = m_cw;
cw *= 2;
cw = std::min (m_cwMax, cw);
m_cw = cw;
// see 802.11-2007, section 9.9.1.5
m_cw = std::min ( 2 * (m_cw + 1) - 1, m_cwMax);
}
void
DcfState::UpdateBackoffSlotsNow (uint32_t nSlots, Time backoffUpdateBound)