802.11 backoff procedure
Last Post: February 4, 2009:
I am currently developing a model of the 802.11 MAC and physical layers (DSSS) at my work for a simulation framework my company develops. Using any public implementations is out of the question for me and no one at my workplace knows anything about 802.11 to help me.
I've went through the standard and numerous references and I'm still unclear about the backoff procedure for DCF. My uncertainty relates to the following case,
1) a send is pending
2) the medium becomes free
3) a DIFS interval elapses with the channel being free
From the standard, my understanding is that the transmission over the medium can proceed immediately after the DIFS, however, the standard also mentions that a backoff must always be followed for any transmissions. Could someone please clarify?
Debbie Dahlin and I were just discussing this at the CWNE roundtable so I have to give her props for the info as it is a little known piece to DCF arbitration.
The key component to your question is that a send is pending.
If a radio becomes ready to send before or during the DIFS time period, a backoff must occur.
If a radio becomes ready to send after the period of a DIFS has passed and the medium is clear, then no backoff timer is necessary.
I'm curious... what simulation are you building?
Thank you for your help. I think I understand your clarification but would like to ask a few follow up questions to make sure.
When you mention "becomes read to send" do you mean a new packet is constructed from a tx request?
Consider a station, call it station 1, hearing an ACK transmission between 2 other stations. Station 1 has nothing queued to send & no waiting transmission. It then receives a send request (all the while the ACK is still coming in). At this point, from what I understand, after the channel becomes free and waiting a DIFS, a backoff would need to occur?
Also 1 more question :D . Say my last transmission failed & I need to retransmit. I generate a backoff but before it can finish, my transmission life expires. If I have something queued to send next, does that next transmission reuse the backoff counter I already have?
Sorry to throw so many questions out, I very much appreciate any help, its just I've been frustrated trying to decipher the example state diagrams in the 802.11 specification over the last few weeks. The simulation is for a NATO study which needed a "generic" radio model with CSMA/CA. A higher power decided 802.11 should be used for it so here I am.