See why two wireless senders can both hear a receiver but not each other
animation
wireless
mac
networking
csma-ca
Interactive hidden terminal animation showing carrier sensing, receiver-side collision, RTS/CTS reservation, NAV deferral, frame-size threshold trade-offs, and limits of control-frame protection.
Hidden terminalCSMA/CARTS/CTS and NAV
Hidden terminal workbench
Two senders can both reach receiver B while being too far apart to hear each other. Step through physical carrier sense, receiver collision, and RTS/CTS reservation to see why the receiver's CTS matters.
A hidden from Ccarrier-sense geometry
no NAVvirtual carrier sense
collisionreceiver result
retry neededairtime impact
TryPlace A and C 260 m apart around receiver B, use a 1200-byte frame, and compare Carrier sense only with Force RTS/CTS.
ObserveWith carrier only, both senders see idle and Receiver outcome becomes collision; CTS makes the second sender's NAV defer for 1 reserved exchange.
ExplainAcross the 260 m A-to-C separation, the senders cannot detect one another yet overlap at B; RTS/CTS moves reservation to the shared receiver.
Technical boundariesThe 3-node range model omits fading, capture, cumulative interference, exposed terminals, control-frame loss, rate adaptation, retry backoff, propagation timing, and multi-BSS contention.
Hidden terminals are diagnosed by the receiver's outcome, not by whether each sender thinks the channel is clear.
Sender viewA and C may each sense idle because they are outside each other's range.
Receiver viewB receives overlapping energy and cannot decode either frame.
CTS reachRTS/CTS helps only if C hears B's CTS and sets NAV.
OverheadControl frames can cost more than retrying tiny payloads.
Hidden Terminal Topology
A and C cannot sense each other
1. Sensecheck channel
2. Reserveno reservation
3. Sendframes pending
4. Resultreceiver outcome
Transmission Timeline
Readouts
hidden pairA and C carrier-sense relationship
RTS/CTS offreservation policy for this frame
C has no NAVvirtual carrier-sense state
collision at Bwhat the receiver experiences
retry neededairtime cost
threshold 512 BRTS/CTS decision boundary
Diagnosis
Step Transcript
Quick Reference
Hidden terminalTwo transmitters cannot hear each other, but their frames overlap at a shared receiver.
Physical carrier senseA node listens for local energy before sending. It cannot detect a sender outside its sensing range.
Virtual carrier senseRTS/CTS carries a duration. Nodes that hear CTS set NAV and defer even if they cannot hear the data frame.
How To Read The Animation
Dashed blue circles show physical carrier-sense range around A and C. The dashed green circle shows how far B's CTS can reserve the medium. If C cannot hear A and does not hear B's CTS, C may send while A is already sending.
The collision marker appears at B because receivers decode signals. A and C do not collide with themselves; they create overlapping energy at the common receiver.
Technical Accuracy Notes
RTS/CTS mitigates the hidden terminal problem; it does not guarantee collision-free operation. RTS, CTS, ACK, and data frames can still be lost, and protection depends on which nodes hear the control frames.
The 512-byte threshold used here is a teaching threshold so the trade-off is visible. Real systems use implementation-specific RTS thresholds, data rates, contention windows, retry limits, and protection modes.