[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ns] NAV bug in 802.11 MAC



hi,
  while on the 802.11 MAC, i have another bug (could be misinterpretation on 
my part) to report. my copy of the 802.11 spec
has this to say about the EIFS (sec. 9.2.3.4):

"...The EIFS is defined to provide enough time for another STA to 
acknowledge what was, to this STA, an incorrectly received frame before this 
STA commences transmission. Reception of an error-free frame during the EIFS 
resynchronizes the STA to the actual busy/idle state of the medium, so the 
EIFS is terminated and normal medium-access (using DIFS and, if necessary, 
backoff) continues following reception of that frame."

currently, the set_nav() function does not remember if the nav_ was updated 
by an eifs_ and hence is_idle() does not adjust for the fact. thus (for 
example) if "this STA" receives an RTS during the EIFS, when it is ready to 
send the CTS (in check_pktCTRL()), its call to is_idle() will come up false. 
hence it will not respond with a CTS even though it is allowed to do so. 
similarly, a CTS correctly received during the EIFS may be ignored. the 
eifs_ is set to be long enough for either of these possibilities.

-neeraj
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.

Share information about yourself, create your own public profile at 
http://profiles.msn.com.