[comp.unix.i386] uucico problem with flow control

haugen@bulus3.BMA.COM (John M. Haugen) (08/10/89)

I recently have been having problems with uucico having problems receiving
large files from my news feed.  When run with Uutry, I see bunches of
"alarm " messages and eventually the transfer fails. 

My suspicion is flow control is not being used/set up correctly by uucico.
This in turn is causing a loss of data.

My modem is a Telebit TrailBlazerPlus/T200 set to run at 9600 baud and to use
XON/XOFF flow control.  My OS is 386ix 2.0.2 from Interactive Systems.

I did a "stty -a </dev/tty00" which is the port the modem is connected to while
uucico was running and got back the following:

>speed 9600 baud; line = 0; intr = DEL; quit = ^|; erase = #; kill = @; eof = ^f; eol = ^a; swtch = ^`
>-parenb -parodd cs8 -cstopb hupcl cread -clocal -loblk 
>-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -iuclc 
>-ixon -ixany -ixoff 
>-isig -icanon -xcase -echo -echoe -echok -echonl -noflsh 
>-opost -olcuc -onlcr -ocrnl -onocr -onlret -ofill -ofdel 

IXON and IXOFF are not ON!!  I have search through all the documents that I
have trying to specify that uucico should use IXON/IXOFF protocol to no avail.

For that matter, I have never seen any reference to the hardware control lines
that are part of the tty lines.

Is there a way to configure uucico to use IXON/IXOFF flow control?  Is there
a way to specify the use of the hardware flow control?  

Thanks for any help you can provide!

John M. Haugen             Domain:  haugen@BMA.COM
Bull Micral of America     UUCP:    ...!uunet!bulus3!haugen
1970 Oakcrest Ave. #300    ATT:  612-633-5660
St. Paul, MN  55113-2624

jeq@laidbak.UUCP (Jonathan E. Quist) (08/15/89)

In article <208@bulus3.BMA.COM> haugen@bulus3.BMA.COM (John M. Haugen) writes:
>I recently have been having problems with uucico having problems receiving
>large files from my news feed.  When run with Uutry, I see bunches of
>"alarm " messages and eventually the transfer fails. 
>
>My suspicion is flow control is not being used/set up correctly by uucico.
>This in turn is causing a loss of data.
>
>My modem is a Telebit TrailBlazerPlus/T200 set to run at 9600 baud and to use
>XON/XOFF flow control.  My OS is 386ix 2.0.2 from Interactive Systems.

This is your problem.  Uucp sends raw binary data.  Unless the compression
scheme used by netnews guarantees no XON/XOFF characters in the data
stream, the data file being transferred may trigger flow control
on anything in the data link that's checking for it.  Even if you
are sending plain text, the packet headers used in the uucp protocol
will eventually generate an XOFF (control-S) character, which will stop
the whole works.  Set everything that's settable for no XON/XOFF,
and it should work.  Any data errors will be caught and corrected
by the uucp protocol.



Jonathan Quist
Interactive Systems Corporation
Naperville, IL
{lot's-o-places}!laidbak!jeq

dyer@spdcc.COM (Steve Dyer) (08/15/89)

You can't use ^S/^Q flow control with uucico, since the 'g' protocol
expects a transparent 8-bit channel.  This isn't a problem with the
TB+ in PEP mode since ^S/^Q won't be sent, but it will be a problem
at slower speeds.  I assume you have the TB+ fixed at 9600 or 19.2k baud.
Some people (not me) have reported success with a fixed baud rate and
^S/^Q turned off on the modem.  Alternately, you can reconfigure the
Telebit to use the speed of the incoming modem.


-- 
Steve Dyer
dyer@ursa-major.spdcc.com aka {ima,harvard,rayssd,linus,m2c}!spdcc!dyer
dyer@arktouros.mit.edu

paul@dialogic.UUCP (The Imaginative Moron) (08/16/89)

In article <208@bulus3.BMA.COM> haugen@bulus3.BMA.COM (John M. Haugen) writes:
>I recently have been having problems with uucico having problems receiving
>large files from my news feed.  When run with Uutry, I see bunches of
>"alarm " messages and eventually the transfer fails. 
>
>My suspicion is flow control is not being used/set up correctly by uucico.
>This in turn is causing a loss of data.
>
> [ stuff about using XON/XOFF for flow control ]
>
>John M. Haugen             Domain:  haugen@BMA.COM
>Bull Micral of America     UUCP:    ...!uunet!bulus3!haugen
>1970 Oakcrest Ave. #300    ATT:  612-633-5660
>St. Paul, MN  55113-2624

OK, let's clear up a few misconceptions first, then get down to the
nitty gritty.... 

uucp does not use xon/xoff. It has a number of internal packetizing
protocols (most common being g-protocol) that use ACK/NACK and
timeouts to re-send corrupted packets. Think about it - how can it use
XON/XOFF ? Those charaters could be a legitimate part of the data
stream.

The problem you are having is because the standard ISC asy driver
using regular PC serial ports cannot deal with prolonged bursts of
9600 (or even 4800) packets. It loses characters, thus causing both
receiver and sender to pause; the sender waiting for an ACK, teh
receiver waiting for more data (it has a packet size and counts).
Eventually, the receiver times out, sends a NACK, and the sender
re-tries.  This holds true even when the Telebit is spoofing g-protocol.

The fix is to change the asy driver and the serial card UART. We have
a driver which we got via a reference from this group. You can get it
from:

Macro Computer Solutions
1-312-566-8910

Ask for the SDK serial driver for 386/ix.

It's $50 for the driver - well worth it.  With 16550 SIO chips in a
standard PC serial card, it will do 19.2K easily.  16550 have a FIFO
in them which the driver detects and enables. They are plug compatible
with the more usual 16450 (I think that's the number ..).  Try and get
a card with one on. I've heard that National are discontinuing this
chip, but have not had this confirmed. 

If 9600 is acceptable, you may be able to do it with a regular serial
card and the new driver. Also, the above driver supports dumb multi-line cards such as the Digiboard COM8.

Hope this helps.
-- 
Paul Bennett			paul@dialogic.UUCP, ..!uunet!dialogic!paul
Dialogic Corp, 129 Littleton Road, Parsippany, NJ 07054 (201) 334-8450 x 194
"Englands Monarchy is how old ? 1000 years ? Jesus, you guys must have
a hell of a lot of laws! " 			Anon. sysadmin

pim@cti-software.nl (Pim Zandbergen) (08/16/89)

haugen@bulus3.BMA.COM (John M. Haugen) writes:

>I recently have been having problems with uucico having problems receiving
>large files from my news feed.  When run with Uutry, I see bunches of
>"alarm " messages and eventually the transfer fails. 

>My modem is a Telebit TrailBlazerPlus/T200 set to run at 9600 baud and to use
>XON/XOFF flow control.  My OS is 386ix 2.0.2 from Interactive Systems.
^^^^^^^^^

Several people have explained that uucp does not use XON/XOFF.
I would like to add to this that the reason for the alarm messages
probarly is because the modem got stuck on a ^S in the data stream.

Reprogram yout modem not to use XON/XOFF.
-- 
Pim Zandbergen                                 internet : pim@cti-software.nl
CTI Software BV                                uucp     : ..!uunet!ctisbv!pim
Laan Copes van Cattenburch 70                  phone    : +31 70 542302
2585 GD The Hague, The Netherlands             fax      : +31 70 512837

mark@zok.UUCP (Mark W. Snitily) (08/16/89)

In article <4255@ursa-major.SPDCC.COM> dyer@ursa-major.spdcc.COM (Steve Dyer) writes:
>You can't use ^S/^Q flow control with uucico, since the 'g' protocol
>expects a transparent 8-bit channel.  This isn't a problem with the
>TB+ in PEP mode since ^S/^Q won't be sent, but it will be a problem
>at slower speeds.  I assume you have the TB+ fixed at 9600 or 19.2k baud.
>Some people (not me) have reported success with a fixed baud rate and
>^S/^Q turned off on the modem.  Alternately, you can reconfigure the
>Telebit to use the speed of the incoming modem.

The original posting was regarding uucico alarms.  Since this was the
same problem I had, thought I'd share some useful info.  Vernon Schryver
(vjs@calcite.UUCP) told me about the following solution.  Thanks Vernon!

   My TB+ is fixed at 19.2k baud and the ^S/^Q is turned off.  Running
386/ix 2.0.1 on a noname 25MHz clone.  Had a typical serial I/O card
with 16450 UART chips.  In this configuration uucico was reporting a
multitude of alarms and (when receiving) the throughput was only in
the 400-500 chars/sec range.

   I'm now receiving in the range of 800-1100 chars/sec with no uucico
alarms!

   Here's the trick:

   (1) Replace the 16450 UART chip(s) with 16550A chips.  (Here in silly
valley the 16550A costs about $14.00 at a local electronics store.)
Hopefully your serial card has sockets and you can simply replace the
UART chip.  If not, either try some fancy soldering (40 pins) or else
get a cheap card with sockets.  The data sheet for the 16550A is in
National Semiconductor's "Microcommunication Elements Databook."

   (2) Replace the ISC 386/ix asy device driver with Jim Murray's PD
device driver.  It was posted a few months ago in comp.unix.microport.
His address as listed in the README file is:
   Jim Murray              encore!cloud9!jjmhome!jjm
   2 Mohawk Circle         harvard!m2c!jjmhome!jjm
   Westboro Mass 01581     jjm%jjmhome@m2c.m2c.org
   USA                     voice (508) 366-2813

   His device driver was written for uport, but I've installed it on 386/ix
2.0.1 with no major problems.  You have to read up on how to install a new
386/ix device driver because installation on uport is totally different.

   Hope this speeds up a few 386 TB+ configurations out there.

-- Mark W. Snitily
   (408) 252-0456 (voice with answering machine)
... {amdcad, ardent, athertn, claris, daisy, limbo, mips, sgi, voder} !zok!mark

terry@eecea.eece.ksu.edu (Terry Hull) (08/16/89)

In article <4255@ursa-major.SPDCC.COM> you write:
>You can't use ^S/^Q flow control with uucico, since the 'g' protocol
>expects a transparent 8-bit channel.  This isn't a problem with the
>TB+ in PEP mode since ^S/^Q won't be sent, but it will be a problem
>at slower speeds.  
I am lost here.  I understand how the TB modems could keep from
sending XON/XOFF sequences between them, but both the sending and
receiving computers will have to see the sequences.  It seems like
this would be a problem no matter what mode the modem was in.  Can
someone expalin why this is not true?

>I assume you have the TB+ fixed at 9600 or 19.2k baud.
>Some people (not me) have reported success with a fixed baud rate and
>^S/^Q turned off on the modem.  Alternately, you can reconfigure the
>Telebit to use the speed of the incoming modem.
I am running my TB+ fixed at 19200 (even for 1200 baud uucico
connections) and I have only encountered one problem.  I MUST run 
UUCP spoofing when I use a 9600 or 19200 uucico transfer.  For cu use,
I turn on XON/XOFF because it seems that cu is hard-wired to use
software handshaking.  I am using XENIX 2.3.1 with a dumb Digiboard 
and I get from 800 to 1400 cps depending on the other system and the
phone line quality.  
-- 
Terry Hull 
Department of Electrical and Computer Engineering, Kansas State University
Work:  terry@eecea.eece.ksu.edu, rutgers!ksuvax1!eecea!terry
Play:  terry@tah386.manhattan.ks.us, rutgers!ksuvax1!eecea!tah386!terry