[comp.dcom.modems] The real meaning of RTS/CTS

karn@faline.bellcore.com (Phil R. Karn) (08/16/87)

Remember HALF DUPLEX modems, modems that occupy the entire voice band so
they have to be switched between transmit and receive just like two-way
radios? Most are the really old clunkers like the Bell 202, now heavily used
in amateur packet radio. However there are also some relatively new clunkers
like the CCITT V.29. V.29 is now used with a whole slew of mutually
incompatible "error control units" that attempt to provide the illusion of
having a 9600 full duplex modem.

Well, the purpose of the RTS (Request-to-Send) and CTS (Clear-to-Send)
lines in the RS-232 interface is the control of these half-duplex modems.
When the terminal wants to transmit, it asserts RTS; some time later,
after it has had time to bring up the transmit carrier, the modem returns
CTS.  When the terminal is done, it drops RTS and the modem in turn
drops CTS.  This is the formal definition of RTS/CTS; they have nothing
to do with flow control in the spec.

Technically speaking, there *is* a form of flow control in the RS-232 spec:
the clock ("signal element timing") lines.  Synchronous modems provide
clocks to the terminal for both transmit and receive; the terminal doesn't
have to be set to any particular speed.  If the modem wants the terminal to
slow down (e.g., if it enters a fallback mode), it simply reduces the
transmit clock speed.  Of course, this isn't particularly useful with
asynchronous interfaces.

Phil