rts/cts - a tutorial on flow control

Robert Viduya robert at gitpyr.UUCP
Sun May 26 23:34:21 AEST 1985


> The ultimate problem here is two slightly-different definitions of what
> "data" is.  Narrowly speaking, the ASCII control characters are just that --
> *control* characters, not data -- and hence they *are* out-of-band as far
> as transmission of ASCII text goes.

And what if I want to send a program binary?  Doesn't that, from this point
of view, qualify as 'data'?

> 
> CTS/RTS is workable at short range, but since those wires were never meant
> for flow control, much hardware (modems, local networks, dumb terminal
> multiplexors) won't handle it.  (What *were* CTS and RTS meant for, you
> ask?  For turning around half-duplex modems.)
> 

Halfway correct.  CTS/RTS has slightly different meanings when operating either
under half-duplex or full-duplex mode.  To quote from the EIA RS-232-C
standard - Aug, 1969 (editted appropriately):

	"Request To Send (to DCE (data communication equipment)):

		This circuit is used to condition the local DCE
		for data transmission and, on a half duplex channel,
		to control the direction of data transmission of
		the local DCE.

		On one way only channels or duplex channels, the ON
		condition maintains the DCE in the transmit mode.
		The OFF condition maintains the DCE in non-transmit
		mode.

		On a half duplex channel, the ON condition maintains
		the DCE in transmit mode and inhibits the receive mode.
		The OFF condition maintains the DCE equipment in
		receive mode.
	
	 Clear To send (from DCE):
		
		Signals on this circuit are generated by the DCE to
		indicate whether or not the data set is ready to
		transmit data.

		The ON condition together with the ON condition on
		interchange circuits RTS, DSR and, where implemented,
		DTR, is an indication to the DTE (data terminal equipment)
		that signals presented on circuit TD (transmit data)
		will be transmitted to the communication channel.

		The OFF condition is an indication to the DTE that
		it should not transfer data across the interface
		on circuit TD."

That last paragraph has the phrase 'flow-control' written all over
it.  Unfortunately, the EIA standard only allows the DCE (modem, network
box, etc) to flow control the DTE (terminal, computer).  It gives no
provisions for allowing the DTE to flow-control the DCE.  The Ungermann/Bass
(sp?) boxes, when set up for RTS/CTS flow control stayed as close to the
standard as they could and still allowed for bi-direction flow-control.
I'll spare you the details, but I believe they will work properly when
connected to a DTE the strictly adheres to the standard.

			robert
-- 
Robert Viduya
Georgia Institute of Technology

...!{akgua,allegra,amd,hplabs,ihnp4,masscomp,ut-ngp}!gatech!gitpyr!robert
...!{rlgvax,sb1,uf-cgrl,unmvax,ut-sally}!gatech!gitpyr!robert



More information about the Comp.unix mailing list