In wikipedia it is stated:

Request to Send (RTS) frame: The RTS and CTS frames provide an optional collision reduction scheme for access points with hidden stations. A station sends a RTS frame as the first step in a two-way handshake required before sending data frames.

Why would the RTS/CTS method be optional in IEEE 802.11 and not used every time to provide collision reduction (minimization of hidden/external problem)?


The reason it is optional is that in 802.11 RTS and CTS are management frames. Management frames are sent at the lowest base/basic/required data rate supported by all clients associated to the ESS, which is typically much lower than the data rates used for normal unicast traffic.

The reason for this is that only the data rates that are configured as base/basic/required for the ESS must be supported by all clients connecting to the BSS (this means that if you want to support older clients the required data rates cannot include data rates from newer standards). Therefore those are the only data rates that can be used that are guaranteed to be able to understood by all clients.

This means that RTS and CTS frames will then use a disproportionate amount of "airtime" and make use of the spectrum much less efficient. As an example (very basic/rough), consider that you have a small data frame to transmit at 600 Mbps. However, the base data rate for the ESS is 12 Mbps (a moderately decent signal for 802.11a/g clients which most networks still support). The RTS and CTS frames may each take as much as 50 times the airtime of the data frame. This takes the total transmit time from one "time slot" to 101 "time slots." Much less efficient.

An alternative solution that has some of the benefits of RTS/CTS but is more efficient is the CTS-to-Self mechanism. This allows a wireless station to send itself a CTS frame, clearing the air for it's transmission. This doesn't alleviate issues such as the hidden node problem, but does decrease the impact on the efficiency.

Most networks do not utilize either RTS/CTS or CTS-to-Self as they can have more of a negative impact on performance than the problems they are trying to alleviate.


Well, to answer my own question, it is optional because it is worth using only when having long messages to send. For something that could be send fast, it would be probably wiser to just send it instead of protecting it with RTS/CTS and sending (most probably) obsolete control packets.

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.