Carrier-sense multiple access with collision avoidance (CSMA/CA) is a multi-part process to reduce collisions on a Wi-Fi, or 802.11, medium. It's similar to Carrier sense multiple access with collision detection (CSMA/CD) that is used for wired Ethernet connections. CSMA/CA is defined in the IEEE 802.11 standard.
The key difference is that on a physical medium such as a copper collisions can literally be detected, the medium of Wi-Fi is a little less robust as the carrier waves move through the air. If a collision occurs in Wi-Fi corruption may occur and 802.11 frames are dropped or they may never arrive at their intended recipient at all. It is CSMA/CA that works to reduce the occurrence of collisions by helping stations contend to access the medium.
Part of the process of CSMA/CA is to access the medium for other use in the frequency to which a station is tuned prior to transmission. Before a station even sets up to randomly count it's way down to send a wireless frame it listens for energy on the air and for other 802.11 frames. Stations following the IEEE 802.11 standard will use a network allocation vector timer (much better known as the NAV timer) to indicate how long they need to transmit their data. Other non-transmitting stations can use this timer, counting down to a point where the medium should be free. Before this a simpler medium check is used which detects energy on the medium (the air) - this is called Clear Channel Assessment.
The Australian Communications & Media Authority, or ACMA, published a wall chart for radio frequency spectrum allocations in 2013. For RF geeks this is a beautiful representation of what services sit where in different frequencies of radio spectrum.
It's interesting to look at to see how tiny the portion of spectrum 802.11 (Wi-Fi) uses. Below is a screenshot of just a small corner of the chart and as you can see it is hard to pinpoint the 5GHz WiFi frequencies hiding in amongst this subset of data.
A couple of years ago I played around with some Mac OS X clients and a packet analyser in an attempt to gain a better understanding of what was going on between the clients when using AirDrop. I was intrigued to see if there was any interaction with local wireless infrastructure. We had been receiving assistance requests from School IT Teams regarding wireless performance where they attributed the issue to student use of AirDrop. So I took a peek at packets and frames to see if I could uncover anything that might be useful from a vendor level to better co- or inter-operate with AirDrop.
I was surprised by how efficient the data transfer was. Inter device file sharing seemed so smooth and transfers were fast. Should I have been so surprised? Of course cutting out an AP (or a hop in a single duplex network) will improve performance.
Apple’s laser focus on end user experience bypassed the thought that vendors might struggle with the concept of co-inhabiting an airspace where clients have direct wireless interaction. The implementation of AirDrop was relatively user friendly and has only improved with the integration with iOS devices. It’s this user centric vision that lead me to my next thought...
We build and optimise networks. Continuous learning is our secret to being good. Along the learning journey we will share things here...