Stations send RTS/CTS packets before sending data packets
RTS/CTS packets are represented by one circle. Data packets are represented by
two circles. Data packets move slower than RTS/CTS packets.
First, A wants to send a data packet to B, so it broadcasts a RTS packet.
When B receives the RTS packet from A, it replies with a CTS packet.
At the same time, C sends a RTS packet to B. B however, doesn't reply
to C because it is waiting for the data packet from A. So, C waits. The waiting time
is calculated using the exponential backoff function.
After B has received the packet from A, C sends a RTS packet again.
This time, B replies because it is ready to receive
the data packet from C. No collision occurred due to the RTS/CTS packets.