Hidden Node and RTS/CTS

Why two clients that can't hear each other keep colliding at the access point, and how an RTS/CTS exchange makes the AP warn everyone around it. Drag the clients to change who can hear whom, then step through what happens on the air.

RTS/CTS
Layout

Drag client A or B (the dashed circle is how far that client can hear). Each client must stay within reach of the AP. Moving a client restarts the run.

On the air, over time

Why carrier sense isn't enough

  • Wi-Fi listens before it talks (CSMA/CA): a station only transmits when it hears the channel idle. That works when everyone can hear everyone.
  • But collisions happen at the receiver, not at the sender. A and B both reach the AP, yet they can be too far apart, or behind a wall, to hear each other. Each senses an idle channel while the other is talking, both transmit, and the AP receives two overlapping frames it can't decode.
  • RTS/CTS moves the warning to the receiver. The sender asks first (RTS); the AP answers (CTS) with a Duration value. Everyone who hears the AP, including the hidden client, sets its NAV (Network Allocation Vector): a timer that says "the channel is reserved, stay quiet" even though it hears nothing.
  • Hidden nodes don't only happen between clients: two APs on the same channel, or a client at the far edge of a cell, cause the same effect. Walls and people change who can hear whom from moment to moment.

Costs and limits

  • Overhead. Every protected frame costs an RTS, a CTS and two extra SIFS gaps, around 130 µs here, sent at a low basic rate. For a 500 µs frame that's worth it if collisions are common; for short frames it isn't.
  • RTS threshold. That's why RTS/CTS is used only for frames longer than a configured size. Many drivers also switch it on automatically after repeated failed transmissions. With 802.11n/ac/ax aggregation (A-MPDUs of several milliseconds), losing a whole frame to a collision is expensive, so RTS/CTS before aggregates is common.
  • RTS frames can still collide, but they're short, so little airtime is wasted before both senders back off and retry.
  • Better fixes are in the design. Enough AP density that clients are close to their AP, sensible transmit power, and fewer clients per cell reduce hidden nodes more than RTS/CTS does.
  • For the exact microsecond timing, random backoff and many stations at once, see the 802.11 Medium Access Simulator (scenarios 4 and 5).
  • Timings here are simplified for a 5 GHz OFDM channel: SIFS 16 µs, DIFS 34 µs, 9 µs slots, a 500 µs DATA frame, a 52 µs RTS and 44 µs CTS and ACK at the basic rate. Backoff values are fixed (A draws 3 slots, B draws 12) so every run is the same.