I was trying to understand exact algorithm for Carrier Sense Multiple Access / Collision Avoidance mechanism from Forouzan's book. The book gives very detail explanation of topics. However explanation of CSMA/CA was somewhat confusing. So I checked Tanenbaum's book. I found somewhat different explanation.

For example, Forouzan says following:

  1. The sender uses persistent strategy with backoff until the channel is idle.
  2. Then it waits for DCF InterFrame Space (DIFS)
  3. Then it waits for another duration called contention window which is calculated by binary backoff strategy.

Tanenbaum says:

The station waits until the channel is idle, by sensing that there is no signal for a short period of time (called DIFS) and counts down idle slots pausing when frames are sent. It sends the frame when the counter reached 0.

I feel Tanenbaum talk about DIFS and contention window, but not the initial persistence strategy as stated in point 1 by Forouzan.

Tanenbaum says Request To Send (RTS) and Clear To Send (CTS) are optional, but nothing such is said by Forouzan.

Tanenbaum also specifies EIFS (Extended InterFrame Spacing) and AIFS (Arbitration InterFrame Spacing) which Forouzan does not talks at all.

I also checked some other reference books, but I didnt find neat explanation of algorithm used in CSMA with all steps.

PS: I am not able to add related tags like CSMA/CA, data-link-layer, media-access due to low reputation points. Please add them as desired.

  • 1
    I removed the off-topic request for resources and added appropriate tags. You should also search here to find answers like this and this, plus many others. Also, bring up the tags and see the questions and answers for the appropriate tags. You can also get the IEEE documents for 802.11. – Ron Maupin Nov 2 '19 at 18:19
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can provide and accept your own answer. – Ron Maupin Dec 15 '19 at 19:56

The "persistent strategy" that you mention seems to be related to the concept of "freezing" during the backoff. Overall, 802.11 channel access can be described in the following steps -

1/ Check if the channel is idle. Wait for an additional DIFS to see if the channel is still idle. Then transmit. 2/ If the channel is found to be busy, enter backoff. The backoff process begins with the selection of a random integer (varying between 0 and the current contention window size) and counting down multiples of time slots as per the chosen integer. During this countdown, if the channel is found to be busy, you 'freeze' the countdown and remain at the current slot number until the channel is idle again. 3/ When the countdown hits 0, you again check if the channel is idle and accordingly transmit (back to step 1).

The concepts of EIFS and AIFS are introduced in 802.11e, which is an amendment for Quality of Service (QoS) enhancements. The fact that Forouzan did not mention these concepts does not mean that they are optional or invalid; in fact, these features are actually very much a part of the channel access schemes pertaining to EDCA. Forouzan seems to have only described the channel access for legacy standards (802.11a/b/g).

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.