More About CSMA/CA on Wireless



Background.  Remember, CSMA/CA means Carriers Sense Multiple Access/Collision Avoidance.  Due to the nature of wiring and measurable voltages, Ethernet is able to sense a collision when two or more stations send at the same time.  Two stations transmitting at the same time increase the signal level on the wire, indicating to the transmitting stations that a collision has occurred.  Due to the nature of wireless via the 802.11 specifications, the wireless transmitters do not have this capability.  The 802.11 access mechanism has been designed to make great efforts to avoid all collisions.

At present we will reiterate and modify our conference call analogy that we used for CSMA/CD to apply to how CSMA/CA is implemented on wireless Ethernet.  In our CSMA/CD description, each participant wanting to speak needs to wait for everyone else to stop speaking.  Once the line is quiet, the participant can attempt to speak.  If two or more participants attempt to speak at the same time, they must stop and try again.

CSMA/CA requires more information and the telephone conference call analogy becomes the following scenario.  Though this scenario doesn't cover all the details as well as I would like, it illustrates most of the major issues.

  • Before each participant speaks, they must indicate how long they plan to speak.
    • this gives any potential speakers an idea of how long they have to wait before they have an opportunity to speak
  • Participants cannot speak until the announced duration of a previous speaker has elapsed
    • there are a number of internal clocks timing these intervals
  • Participants are unaware whether their voices are heard while they are speaking, but they will know they were able to transmit because they will receive a confirmation when they are done.
    • this is half duplex and worse!
  • If two participants happen to start speaking at the same time, they will be unaware they are speaking over each other.  The speakers will discover they are speaking over each other when they are done and they do not receive any confirmation that their voices were heard.
  • The participants wait a random amount of time to attempt to speak again, should they not receive confirmation of their transmissions.

In order to improve the accuracy of our description I need to get at least somewhat deeper into this.  Unfortunately, it may take me a couple tries to find the best level.

In order for the IEEE 802.11 specification of CSMA/CA to be implemented there needs to be an overall, what is called, DCF - Distributed Coordination Function.  But to really tie things together we need to discuss four more things, some of which are familiar from CSMA/CD.

  • Carrier Sense
  • DCF - Distributed Coordination Function
  • Acknowledgement Frames
  • RTS/CTS - Request to Send/Clear to Send for reserving some time on the transmission medium

Carrier Sense.  A station that wants to transmit on a wireless medium must sense whether it is already in use.  If it is in use, the station must defer transmission until it is available.  The busy status of the medium is determined using two things.

  1. Check the layer 1 - physical layer - to see whether a carrier is present
  2. Use the virtual carrier sense function the NAV - Network Allocation Vector

The station can check for signals to see whether the medium is available.  But in some instances, the medium might still be reserved for use by another station via the NAV.  The NAV is a timer that is updated by data frames transmitted on the medium.  It has built into time for both the transmission and the expected acknowledgement.

Remember a BSS is a broadcast domain, so anything one user sends, others on the BSS also receive.

DCF.  The DCF is mandated by IEEE 802.11.  The following diagram illustrates three basic time windows handled by the DCF.



The actual implementation gets a bit more complicated than I want to get into.  But, with wireless, a station wanting to transmit must wait a specified amount of time after the medium actually becomes available.  This time interval is called the DIFS - DCF Interframe Space.  Once this interval elapses the medium becomes available for contention.  There are also things such as random back off timers built in so that more than one station is much less likely to try to transmit at the same time when a contention window becomes available.  There are also built in provisions for those that end up getting out contended too often.

Acknowledgement Frame.  A station should receive an acknowledgement of error free transmission from its immediate transmission destination, likely an AP.  The 802.11 specifications are established so that this acknowledgement frame never has to contend for a transmission window.  They do not have to go through the random back off contention and will be transmitted within a SIFS - Short Interframe Space.  A SIFS is necessarily shorter than a DIFS.

RTS/CTS.  A potential transmitter attempts to reserve the medium using a special control frame called an RTS - Request to Send.  This RTS is sent to an AP (or something quite like it) and all stations within its range.  The RTS also contains the expected duration of the transmission.

If the RTS gains its request then a CTS - Clear to Send frame is sent back that contains a duration field value long enough for the required transmission and for the Acknowledgement Frame.  All stations within range of the AP also receive the CTS and update their NAVs so that they do not transmit during the specified interval.