RTS/CTS is one of those protocols that is widely misunderstood. At face value it appears that it’s job is some sort of “negotiation” to determine if it’s ok to talk. It reminds me a bit of my kids. “Dad, can I ask you a question?” Well, you just did dear. 🙂
“Requesting” to send is a bit of the same thing. A Wi-Fi device has to send send a frame to… request to send? No, it doesn’t do that. I truly don’t want people to know or remember what RTS/CTS stands for because it is misleading.
RTS/CTS has nothing to do with requesting access or clearing the way. If you don’t believe me, well, there is nothing I can do to help that.
Ok, you’re a believer. Read on.
RTS/CTS has the same function as toast. Yeah, like hot browned bread just out of the toaster. No one (except the English I think) eat toast plain. Americans eat toast with butter and preferably with butterand jelly. So, what is the toast good for? To carry your butter and jelly. Now, if truth be told, many of us would rather just eat the butter and the jelly out of the jar but civilized people don’t do that so we drowned some brown bread in loveliness and call ourselves sophisticated.
The purpose of toast is merely a carrier for butter and jelly. RTS/CTS is just a carrier as well. It carries something called a duration value. A duration is quite simple. It’s an amount of time that we want everyone in receiving range to stay quiet. Why do we want them to stay quiet? Because Wi-Fi is anarchy and anything that can be done to fix that can be helpful. Ok, that wasn’t as in-depth as you may have liked. Go here to see one problem it can solve: http://en.wikipedia.org/wiki/Hidden_node_problem.
When a device receives any frame (including RTS/CTS) with a duration value >0 (duration values are in microseconds) it will set something called a NAV timer. If you’ve never heard of this don’t fret. It’s just a fancy way of saying “countdown timer”.
Simply put, if any device hears a duration value, it sets it’s NAV and stays quiet at least that amount of time. Wish I could do that during family outings.
What’s the difference between an RTS and a CTS? Have you ever played Marco Polo as a kid? Someone says Marco and what do you do? You say Polo. If an RTS frame is sent to you (RTS’s are always unicast) the you MUST respond with a CTS frame. RTS frames have space for two addresses and CTS frames have space for one.
RTS and CTS frames are used quite often in Wi-Fi so when you are sniffing a network (www.sniffwifi.com) and you see them just remember that they are there to help your network. Or a denial of service attack. Ah, I love Wi-Fi. 🙂